请问nebula为什么快?相比较janus做了哪些改进?

请问nebula为什么快?相比较janus做了哪些改进?
在数据导入和数据查询两个方便

您好,和其他数据库相比的话我感觉是各有所长吧,不好说谁好谁坏。对于nebula本身的架构,我想介绍一下:
从查询计算上来说,nebula可以部署多个graphd的进程,对用户的请求来说多个graphd进程可以并行工作。
从存储上来说,对storaged进行了水平分布,将所有的数据根据hash分布到了不同的partition和节点中。有效优化了数据规模和多点并发的问题。

嗯,这些是在存储和计算上做的工作,大概了解。我想请问下在做图遍历的时候,是怎么样的一个检索过程。例如边的定义如下图,我需要查询二度关联内的所有点,会怎么搜索呢? 前缀匹配?一个点一个点的检索?希望能解答下

检索的过程跟RocksDB的特性有关吗? 利用了他的哪行特性呢?(其实我想跟HBASE对比下 :grinning:

个人认为主要是后端存储的改进,本地嵌入式的kv存储 要比 hbase 查询效果好太多了。

Nebula Graph 使用RocksDB作为Storage Engine,并通过Raft协议保证了Leader | Follower Partition之间的数据一致性。
Nebula Graph存储层的接口定义个人感觉比较清晰,会很容易的支持其他第三方存储,包括HBase。

HBase多了一个HDFS,多了一次网络。

嗯,可以介绍下nebula是如何进行2度3度搜索的吗?很好奇

引用下另一个问题下的回答不知能否帮到你
来自
https://discuss.nebula-graph.com.cn/t/topic/1201

go语句会从起点开始一步步通过广度优先的方法遍历邻边