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

时间:2008-09-25 15:36:21

标签: c# windows file-io 64-bit isam

我们有一些非常大的数据文件(5 gig到1TB),我们需要快速读/写访问。由于我们有一个固定的记录大小,似乎某种形式的ISAM将是要走的路。但很高兴听到其他建议。

理想情况下,该解决方案将拥有Apache或LGPL风格的许可证,但如果必须,我们将付款。

必须拥有:

可扩展 - 至少1 TB文件
稳定 - 要么不破坏数据,要么具有快速恢复过程 在X64 Windows上运行良好

很高兴:

可以参加2阶段提交
内在压缩设施
便携式* nix平台
C#API或Java API

谢谢,

特伦斯

2 个答案:

答案 0 :(得分:3)

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

  • 可扩展:最大数据库大小 是16TB。已有多TB数据库 用于生产。
  • 稳定:崩溃恢复 预写日志。
  • X64 Windows:ESENT是其中的一部分 Windows,所以它出现在你的 64位机器。

很高兴:

  • 2阶段提交:否。
  • 压缩:否。
  • 便携式* nix:否。
  • C#API或Java API:不是真的(Codeplex上有一个C#互操作层,但它不完整)。

文档在这里:http://msdn.microsoft.com/en-us/library/ms684493(VS.85).aspx

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

答案 1 :(得分:1)

尝试Berkeley DB。意见各不相同,但它可扩展,稳定(如果你使用所有必要的层),AFAIK在x64窗口上运行良好。也可以移植到* nix并具有C和Java API。不了解C#API。