OrientDB-集群概念的问题

OrientDB-集群概念的问题,orientdb,Orientdb,我在orient db中遇到群集问题。所以我想确定我对集群的理解是正确的,如果你能帮我解决这个问题,那就太好了 我对集群的理解 首先,我想确保正确理解集群的概念:对我来说,集群是数据的子集,一个集群可以包含不同的类,一个类可以包含在不同的集群中,对吗 例如,我有数据: {"name": "john", "sports": "tennis", "gender": "male", "@class": "assistant"} {"name": "susan", "sports": "hockey",

我在orient db中遇到群集问题。所以我想确定我对集群的理解是正确的,如果你能帮我解决这个问题,那就太好了

我对集群的理解 首先,我想确保正确理解集群的概念:对我来说,集群是数据的子集,一个集群可以包含不同的类,一个类可以包含在不同的集群中,对吗

例如,我有数据:

{"name": "john", "sports": "tennis", "gender": "male", "@class": "assistant"}
{"name": "susan", "sports": "hockey", "gender": "female", "@class": "assistant"}
{"name": "peter", "sports": "hockey", "gender": "male", "@class": "trainee"}
{"name": "mary", "sports": "tennis", "gender": "female", "@class": "trainee"}
然后我可以有这样的集群:

cluster:Male {john, peter}
cluster:Tennis {john, mary}
TwitterTweet --originalTweet--> TwitterTweet
TwitterTweet --postedBy--> TwitterUser
TwitterTweet --hasHashtag--> Hashtag
对OrientDB中集群的这种理解正确吗

我的集群问题 将新数据插入数据库时,我希望将数据添加到特定集群。我的数据是json格式的。群集已存在。但是在使用以下命令插入之后,集群仍然是空的。这是通过使用JavaAPI和web界面实现的

INSERT INTO cluster:Test CONTENT {"name": "john", "@class": "assistant"}
请求时,将保存数据本身:

SELECT FROM assistant
我确实找到了条目,但该条目不在cluster:Test中。我做错了什么


编辑2014/03/26

我的用例 实际上,我把推特保存在我的数据库中。我正在通过给定的关键字搜索Twitter。我的班级模型如下所示:

  • 推特
  • 推特用户
  • 标签
(Tweet和User上面有一个TwitterBaseClass)我有这样的优势:

cluster:Male {john, peter}
cluster:Tennis {john, mary}
TwitterTweet --originalTweet--> TwitterTweet
TwitterTweet --postedBy--> TwitterUser
TwitterTweet --hasHashtag--> Hashtag
我认为进行高效请求的最佳实践是为每个关键字创建一个集群。例如,当我有关键词“shark”和“dog”时,我会收到关于shark和dog的推文,它们都存储在不同集群的同一个图表中


非常感谢您的帮助,提前感谢
路德维希


东方db v。1.7-rc1

您应该通过API或SQL将集群“测试”添加到类助手中:

alter class assistant addcluster test

在下一个版本2.0中,您不能将多个集群关联到一个类,因此为了与将来的版本保持兼容,最好使用类继承来分割多个集群上的记录

编辑2014-10-08:


这不再是事实,在2.0中,您不能在任何集群中存储记录,但应该声明它是X类的主机记录。因此类可以有多个集群。我们使用此功能管理分布式。

您好,Lvca,谢谢您的回答。不幸的是,它仍然不起作用。现在,我将集群ID添加到类中。还有其他想法吗?你能回答我的第一个问题吗?我对集群的理解是否正确?对不起,我在一读时还没有理解这个问题。当CONTENT关键字覆盖集群时,这似乎是一个bug。从1.7x开始,我们不鼓励对同一个类使用不同的集群,因为未来的优化之一是删除一些开发人员使用的这个特性。您愿意使用1类->1集群并使用继承来拥有多个类/集群吗?它适用于您的用例吗?嘿,Lvca,对我来说,集群的概念——据我所知——真的很棒,我更愿意保留这个特性。我编辑了我的问题,为我的用例提供了更多细节。我认为每次添加一个新关键字时创建一个子类是可行的,但这不是处理集群的更好方法吗----[[毫无疑问,我的问题似乎得到了回答,因为有一个bug,映射1类->多个集群将在以后的版本中被删除。你能写一个新的答案来总结这一点,这样我就可以接受吗?]----你能更详细地说明在2.0中情况将如何变化吗?有路线图张贴在任何地方吗?谢谢