Jé *_*eue 6 java berkeley-db key-value-store
Berkeley DB(JE)许可可能是交易杀手.我有一个Java应用程序转到一小部分客户,但由于它是一个桌面应用程序,我的价格不能支持单个实例许可.
是否有推荐的Java替代Berkeley DB? 商业或其他方面(良好的键值存储实现可以变得非常重要,我更愿意推迟其他地方的维护).我需要的不仅仅是一个哈希存储,因为我需要迭代后续的关键子集,基本的哈希存储将是O(m*n)搜索,我希望在桌面计算机上存储大约为50-60GiB.您可以推荐的任何人都可以将其后备存储保存在单个文件中吗?
你一定要尝试JDBM2,它可以做你想要的:
此外:
UPDATE
该项目现已发展为MapDB http://www.mapdb.org
我认为SQLite正是你想要的:免费(公共域),单文件数据库,零配置,小占用空间,快速,跨平台等.这里是一个包装器列表,有一节用于Java.看一下sqlite4java,在这里阅读更多有关Java + SQLite的内容.
--- 看到文件大小后编辑 ---
50 到 60 GiB 文件!看来您必须知道您的数据库引擎不会立即将所有内容加载到内存中,并且在处理/清理卸载的数据支持块方面非常有效。
我不知道 Cloudscape 是否能够胜任这项任务,如果不能,我也不会感到惊讶。
---原帖如下---
Cloudscape 通常符合要求。它比 Berkeley DB 稍大一点,但它获得了足够的吸引力,甚至可以与某些 JDK 产品一起分发。