We don’t allow questions seeking recommendations for software libraries, tutorials, tools, books, or other off-site resources. You can edit the question so it can be answered with facts and citations.
Closed 2 years ago.
The community reviewed whether to reopen this question 2 years ago and left it closed:
Original close reason(s) were not resolved
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(9)
C/C++
用 C 语言编写,公共领域,“ndbm”的重新实现
用 C/C++ 编写,嵌入式 NoSQL 数据库引擎,BSD 许可,类似于 SQLite。
用 C/C++ 编写,嵌入式 NoSQL 数据库引擎,Apache 许可证 2.0。
Java
C/C++
Written in C, Public Domain, Reimplementation of "ndbm"
written in C/C++, Embedded NoSQL Database Engine, BSD-Licensed, Similar to SQLite.
Written in C/C++, Embedded NoSQL Database Engine, Apache License 2.0.
Java
您可以查看东京内阁。 它是 qdbm/gdbm 的后继者,如果您决定扩展,它有一个很好的网络前端可用。
编辑:
另一个变体是京都内阁; 由同一个人开发,但据说更容易使用。
You could look at Tokyo Cabinet. Its the successor to qdbm/gdbm, and if you decide to scale has a nice network front-end available.
Edit:
Another variant is Kyoto Cabinet; developed by the same person, but supposedly easier to use.
SQLite 是公共领域,这意味着您可以将其用于任何目的,并且得到广泛使用和支持。
SQLite is public domain, meaning you can use it for any purpose whatsoever, and is widely used and supported.
您可以通过简单的间接级别从任何 dbm(甚至 qdbm)中获得显着改进的性能和改进的并行性:只需获取密钥并对它们进行散列,然后使用 data_dir/H(key)/ 作为数据库来存储这些密钥。 将哈希输出限制为较小的值(例如 255)以获得最佳结果。
这种方法有很多好处,很容易概括:
哈希可能甚至不需要加密安全; 只是大部分都是统一的。 DJB 的 cdb 哈希 在大多数情况下效果很好。
You can get much improved performance out of any dbm (even qdbm) and improved parallelism with a simple level of indirection: Simply take your keys and hash them, and use
data_dir/H(key)/
as the database to store those keys. Limit the hash output to a small value (say) 255 for best results.This approach has a number of benefits, easily summarized:
The hash probably doesn't even need to be cryptographically secure; just mostly uniform. DJB's cdb hash works well in most cases.
如果您使用的是 Windows,则可以使用内置的 esent 数据库引擎。 http://blogs.msdn.com/windowssdk/archive/2008/10/23/esent-extensible-storage-engine-api-in-the-windows-sdk.aspx
If you are on Windows then you can use the builtin esent database engine. http://blogs.msdn.com/windowssdk/archive/2008/10/23/esent-extensible-storage-engine-api-in-the-windows-sdk.aspx
您可以尝试 JDBM。 它是一个具有磁盘持久性的免费 (Apache 2) 键值存储。 简单的API和高性能
You could try JDBM. It is a free (Apache 2) key-value store with disk persistence. Simple API and high performance
Postgres 或 HSQLDB 甚至可能 H2 数据库
Postgres or HSQLDB and possible even H2 database
db4o 非常便宜且速度快,但它只能与 java 或 .net 一起使用
db4o is pretty cheap and fast but it can only be used with java or .net
Firebird 是你最好的朋友。
Firebird is your best friend.