我有一些大的(200 GB 是正常的)平面数据文件,我想将它们存储在某种数据库中,以便可以快速且直观地以逻辑组织数据的方式访问它。可以将其视为大量非常长的录音,其中每个录音的长度(样本)相同,并且可以被视为一行。其中一个文件通常包含大约 100,000 条记录,每个记录长度为 2,000,000 个样本。
将这些记录作为 BLOB 数据行存储在关系数据库中很容易,但在许多情况下,我只想将整个数据集的某些列(例如,样本 1,000-2,000)加载到内存中。什么是最节省内存和时间的方法?
请不要犹豫,询问您是否需要对我的数据细节进行更多说明,以便提出建议。
编辑:澄清数据维度...一个文件包括:100,000 行(记录)乘 2,000,000 列(样本)。我研究过的大多数关系数据库在一个表中最多允许几百到几千行。再说一次,我对面向对象的数据库知之甚少,所以我有点想知道这样的东西在这里是否有帮助。当然,任何好的解决方案都是非常受欢迎的。谢谢。
编辑:澄清数据的使用......数据只能由我将编写的自定义桌面/分布式服务器应用程序访问。每个数据“集”(到目前为止我称之为 200 GB 文件)都有元数据(收集日期、过滤器、采样率、所有者等)。还有与每个记录相关的元数据(我希望它是表格中的一行,所以我可以为每条记录元数据添加列)。所有元数据都是一致的。即,如果某个记录存在特定的元数据,则该文件中的所有记录也都存在该元数据。样本本身没有元数据。每个样本是 8 位普通的二进制数据。