Python 遗留伯克利数据库

Posted

技术标签:

【中文标题】Python 遗留伯克利数据库【英文标题】:Python Legacy Berkeley Database 【发布时间】:2012-12-24 12:49:35 【问题描述】:

我正在使用一个用 Python 编写的程序,该程序最后一次更新是在 2003 年。我现在一切正常,除了一个导入:

from BDBStorage.BerkeleyBase import BerkeleyConfig

这看起来像是一个非常旧版本的 berkeley 数据库模块,将在 Python 3 中弃用。我能找到的唯一参考是:http://buildbot.zope.org/Packages/BDBStorage/BerkeleyBase.py?graph=1.8&only_with_tag=bsddb3Storage_1_0beta4。

不幸的是,该软件没有文档,并且无法联系到构建它的团队。

有没有人见过类似的东西?

用法如下:

berkeley_config = BerkeleyConfig()
berkeley_config.logdir = os.path.join(base_dir, "bdb_log")
berkeley_config.frequency = 3600
db_retriever = BerkeleyDatabaseRetriever(
    database_dir = os.path.join(base_dir, "dating_db"),
    config = berkeley_config)

【问题讨论】:

它看起来有点像BDB storage backend for Zope,它是已弃用的bsddb Python 模块(现在维护externally to Python here)的包装器 诅咒!这对我来说似乎太费力了。我可能会使用不同的软件。 【参考方案1】:

A checkout of 794bb3cfcd04dcd309c28ae214a59003be49d0a5 in the Zope repo 包含您正在寻找的 BDBStorage 模块,

$ python -c 'from BDBStorage.BerkeleyBase import BerkeleyConfig'
Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "BDBStorage/BerkeleyBase.py", line 31, in <module>
    from ZODB.lock_file import LockFile
ImportError: No module named ZODB.lock_file

它需要单独安装ZODB moudle。 ZODB 模块仍在积极开发中,但我怀疑旧的 BDBStorage 模块可能需要 2003 年左右的旧版本(据我所知,上次修改 BDBStorage 模块时)

看起来开始工作不会很有趣..

【讨论】:

以上是关于Python 遗留伯克利数据库的主要内容,如果未能解决你的问题,请参考以下文章

含10,000 Python问题,伯克利联合团队推出新的代码生成评价基准

python实现一个简单的网络聊天程序

UC伯克利提出多任务框架SLIP

综述 | 伯克利《高效神经网络推理的量化方法》

LeCun带两位UC伯克利华人博士提出「循环参数生成器」

6何为伯克利数据分析栈BDASMP3