nebula是否支持复杂树形结构查询,比如从某个节点向上找他所有的祖宗,以及向下找所有的孩子节点

各位大佬,最近我们某汽车集团在准备图数据库的选型,所以有几个问题想请教一下,先表示感谢。

  1. 汽车的Bom结构是一个比较复杂的树形结构,现在mysql已经很难承受这种树的增删改查的操作了,比如我想从某个子节点向上查找他的所有的祖宗节点,从某个子节点向下查找他所有的孩子节点,而且查找出来之后,还需要更新某个子节点的所有父节点的相关属性,或者更新某个子节点的所有子节点的相关属性。目前我们使用mysql的设计,只能从根节点遍历所有子节点查找,不能从某个子节点向上查找,所有效率比较低。

2.nebula提供的java的client端,是否支持与spring 的整合,因为使用的是spring boot框架,而且想麻烦问下Java的client端的操作树的性能如何

3.nebula是否支持两棵树的比对功能,比如两棵树型结构上某些节点增、删、改、替换这种操作,是否能通过相关功能比对出来两棵树形结构的差异

4.nubula是否支持事务

5.集群是否免费使用,都有哪些具体得收费项目

感谢大佬!

  1. 汽车的Bom结构是一个比较复杂的树形结构,现在mysql已经很难承受这种树的增删改查的操作了,比如我想从某个子节点向上查找他的所有的祖宗节点,从某个子节点向下查找他所有的孩子节点,而且查找出来之后,还需要更新某个子节点的所有父节点的相关属性,或者更新某个子节点的所有子节点的相关属性。目前我们使用mysql的设计,只能从根节点遍历所有子节点查找,不能从某个子节点向上查找,所有效率比较低。

Nebula 的设计使得从确定的节点出向(对应您的向下)入向(对应您的向上)的边拓展代价都很小哈(用 GO、MATCH 都可以做到,您可以都试试看),可以很方便去取得这个信息。如果更新的话,需要在应用代码里在取得之后用数据更新的 query 去写入。

  1. nebula提供的java的client端,是否支持与spring 的整合,因为使用的是spring boot框架,而且想麻烦问下Java的client端的操作树的性能如何

暂时还没有现成的 spring boot 集成,欢迎关注这个 issue https://github.com/vesoft-inc/nebula-java/issues/420 , 操作树指的是对数据库里的图数据读写对么,java 性能可以的

  1. nebula是否支持两棵树的比对功能,比如两棵树型结构上某些节点增、删、改、替换这种操作,是否能通过相关功能比对出来两棵树形结构的差异

这个还没有,欢迎您找到类似的实现,或者描述您的需求,提给社区来哈!

  1. nubula是否支持事务

Nebula 有 TOSS(存储侧的事务),还没有完整的事务保证,未来会支持,但是时间还不确定,主要是这个的需求其实不大,您有强的事务要求对么?

感谢老师的回复,
对于spring的支持,我们可能需要集成nebula提供的java client,
事务的话是需要强一致的

老师还有个问题,从mysql同步到nebula是否有相关的同步工具?费用是多少

集群的话也跟neo4j一样,是收费的么?目前不太清楚nebula中,哪些是收费的项目

同步的话,你可以用 Exchange,是免费的啦,参考文档 导入 MySQL 数据 - Nebula Graph Database 手册

目前我们分社区版和开源版,社区版本支持分布式部署的,所以你可以先用社区版试试我们是否可以满足你的业务需求

1 个赞

您可以看对比哈:

企业版有一些增强的周边功能,还有支持、服务

社区版支持集群的哈

此话题已在最后回复的 30 天后被自动关闭。不再允许新回复。