Java 创建一个noSql数据库,最好的源代码是什么?

Java 创建一个noSql数据库,最好的源代码是什么?,java,rest,nosql,comments,sharding,Java,Rest,Nosql,Comments,Sharding,我一直想要一个专门为存储大量嵌套/线程注释而构建的nosql数据库。实现可能会在java中完成,因为这是我最擅长的。我真的很喜欢ElasticSearch建立一个集群并将数据放入其中是多么简单,我希望我的产品能够分享这些相同的品质。以下是我心目中的特点: 1) 跨群集自动/手动分片 2) 跨群集的自动/手动索引 3) 全文搜索(可能通过lucene或elasticSearch) 4) REST/JSON API 5) 按ID检索任何注释 6) 可以使用或不使用子节点检索注释 7) 可以使用指定的

我一直想要一个专门为存储大量嵌套/线程注释而构建的nosql数据库。实现可能会在java中完成,因为这是我最擅长的。我真的很喜欢ElasticSearch建立一个集群并将数据放入其中是多么简单,我希望我的产品能够分享这些相同的品质。以下是我心目中的特点:

1) 跨群集自动/手动分片
2) 跨群集的自动/手动索引
3) 全文搜索(可能通过lucene或elasticSearch)
4) REST/JSON API
5) 按ID检索任何注释
6) 可以使用或不使用子节点检索注释
7) 可以使用指定的深度检索注释树
8) 可以检索注释树,可以按时间或等级进行筛选
9) 可以为整个注释树重新设置父级


我正在寻找的是一些特殊的代码或特定的算法,我可以在深入研究这个项目之前进行研究。有人能推荐几个地方开始吗?

因为问题中的标记表示Java,所以我 建议查看OrientDB

以下是源代码:

以及架构:

对于big boy(群集、超缩放)功能,请查看HBase和Accumulo:

希望这有帮助。

Edmon

这其中大部分将是您构建的应用程序的功能,而不是您使用的数据库。其余的(可能不包括全文搜索),任何现有的NoSQL数据库都应该能够处理。为什么你不能使用一个已经存在的数据库呢?你是想自己写,还是想用一个你喜欢的、用Java编写的数据库呢?我自己写数据库的原因大约80%是为了好玩,另外20%是因为我从来没有真正对存储嵌套注释的传统解决方案感到满意。我认为能够启动一个集群来存储/搜索reddit规模的大量评论会很酷。