【问题标题】:Berkeley DB File SplittingBerkeley DB 文件拆分
【发布时间】:2011-12-18 13:24:26
【问题描述】:

我们的应用程序使用 berkeley db 进行临时存储和持久性。一个新问题出现了,大量数据来自各种输入源。现在底层文件系统不支持如此大的文件大小。无论如何要拆分 berkeley DB文件分成逻辑段或分区,而不会丢失其中的数据。我还需要使用 berkeley DB 属性进行设置,而不是为这个简单的任务进行繁琐的编程。

【问题讨论】:

    标签: berkeley-db


    【解决方案1】:

    据我所知,BDB 不支持您这样做。但是,您可以通过创建多个数据库自己实现它。

    我之前使用 BDB 以编程方式进行过此操作。即我的代码将一个可能很大的索引文件划分为单独的文件,并在这些子文件上创建了一个顶级主索引。

    【讨论】:

    • 很好,但是有没有办法让 berkeley DB 本身提供这样的功能。
    【解决方案2】:

    现代 BDB 可以使用 DB_CONFIG(推荐)或 API 调用添加其他目录。

    看看这些指令(和相应的 API 调用)是否有帮助: add_data_dir set_create_dir 设置数据目录 set_lg_dir set_tmp_dir

    请注意,添加这些指令不太可能透明地“正常工作”,但使用 db_dump/db_load 重新创建使用这些指令配置的数据库文件应该不会太难。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多