我的服务器应用程序存储不同大小的文件。数据库大小高达2-4 TB,其中约90%的文件小于100kb,其余文件大小为2 GB。
根据以下条件,这是存储这些文件的最佳方式:
*数据库应该是可移植的。
它是实际的解决方案,因为索引,元数据等存储在SQLite3数据库中。现在它是一个害虫复制1000万单个小文件所以我更喜欢在档案中存储小文件,如1000x 2gb文件。
*某些文件非常大,因此BLOB存储可能会出现性能问题
另外一些较大的(5 mb - 2gb)文件可能需要RandomAccess读取,这对大多数归档系统来说是不可能的
*有些交易需要一次读取数千个小文件
..这对BLOB有效,但我不确定像zip存档这样的东西在这种情况下是否会表现良好。在大多数情况下,服务器可以将所有这些文件放在一个存档中,但可能必须以随机顺序读取对象。
*存储的文件不应该(直接)可执行,但不需要加密
你会推荐哪种系统?