我有一个应用程序正在接收数千个(比如50,000个)主题的数据。
每个数据元组包含subjectId和文本数据。
我正在寻找一个可嵌入的Java数据库,它将为我提供以下功能:
理想情况下,Berkeley JE数据库似乎符合我的要求,除了它的键值数据库和我的数据本身就是多值的。我不确定这是否会导致重复数据的性能问题。
这个简单的元组架构还有哪些其他可嵌入选项?
答案 0 :(得分:0)
如果您希望db为您索引数据,您需要一个面向文档的数据库。如果您只需要按键查找,则可以使用kyro或协议缓冲区等方式自行序列化数据。如果你可以使用模式,SQLite或Derby可以是很好的解决方案。 OrientDB或Neo4j是可以嵌入的图形数据库。 OrientDB不太成熟,但拥有更好的许可证。 Cassandra是一个面向列的商店,您可以运行嵌入式。 LevelDB和Bitcask是数据库库。两者都有很好的许可证,但可能是其他语言的端口,可能没有完整的功能集。如果你不能在内存中设置完整的密钥,LevelDB是一个更好的选择。