良好的ISAM库或者其他简单的文件管理器,用于Windows x64上的大文件

时间:2020-03-06 14:43:41  来源:igfitidea点击:

我们有一些非常大的数据文件(5 GB至1 TB),需要快速读取/写入访问。由于我们的记录大小是固定的,因此某种形式的ISAM似乎是可行的方法。但是很高兴听到其他建议。

理想情况下,该解决方案将具有Apache或者LGPL样式的许可证,但如果需要的话,我们将付款。

必须具备:

可扩展至少1 TB的文件
稳定状态不会破坏数据或者具有快速恢复过程
在X64 Windows上运行良好

很高兴有:

可以参与2期提交
内部压缩设施
可移植到* nix平台
CAPI或者Java API

谢谢,

特伦斯

解决方案

试试伯克利DB。意见不一,但它具有可扩展性,稳定性(如果我们使用所有必要的图层),并且AFAIK在x64窗口上运行良好。还可以移植到* nix并具有C和Java API。不了解CAPI。

我们还可以使用Windows内置的ESENT数据库引擎。根据要求:

  • 可扩展:最大数据库大小为16TB。多TB数据库已用于生产中。
  • 稳定:使用预写日志记录进行崩溃恢复。
  • X64 Windows:ESENT是Windows的一部分,因此它存在于64位计算机上。

很高兴有:

  • 2阶段提交:否。
  • 压缩:否
  • 可移植到* nix:不。
  • C#API或者Java API:并非如此(Codeplex上有一个C#互操作层,但还不完整)。

该文档位于:http://msdn.microsoft.com/zh-cn/library/ms684493(VS.85).aspx

我们可以通过下载Windows SDK来获取头文件和lib。