Database

NebulaGraph:开源分布式图数据库

NebulaGraph 是一个开源分布式图数据库,专为处理万亿级边缘数据而设计,具有毫秒级延迟和无共享架构。

Keeping this site alive takes effort — your support means everything.
無程式碼也能輕鬆打造專業LINE官方帳號!一鍵導入模板,讓AI助你行銷加分! 無程式碼也能輕鬆打造專業LINE官方帳號!一鍵導入模板,讓AI助你行銷加分!
NebulaGraph:开源分布式图数据库

图数据库对于需要大规模遍历复杂关系的应用至关重要。由 vesoft-inc 开发的 NebulaGraph 是一个从头开始设计的分布式图数据库,用于处理万亿级边缘数据集,具有毫秒级查询延迟。

与将分布式附加到单节点设计上的图数据库不同,NebulaGraph 采用无共享架构构建,其中每个组件都是水平可扩展的。存储、计算和元数据被解耦,允许独立扩展。结果是一个可以从笔记本成长到 100+ 节点集群而无需架构更改的图数据库。

架构组件

组件功能可扩展性
Meta 服务集群元数据、架构管理Raft 共识
Storage 服务搭配自动分片的数据持久化线性水平
Graph 服务查询计算和执行线性水平
Monitor 服务集群健康与性能集中式

查询处理流程

查询通过 Graph 服务进入,在那里被解析、规划和优化。执行计划分散到 Storage 服务节点,每个节点返回部分结果,然后聚合为最终结果。

性能特性

指标NebulaGraphNeo4jJanusGraphAmazon Neptune
最大图大小100 万亿1000 亿100 亿1000 亿
查询延迟(10 亿边)2ms5ms15ms8ms
写入吞吐量1M/s50K/s100K/s200K/s
节点扩展性100+有限50+托管

关键能力

NebulaGraph 支持 nGQL 查询语言(类似于图形的 SQL)、ACID 事务、全文搜索和图算法。它与 Spark、Flink 和 Kafka 集成用于数据管线,并支持用于图形探索的可视化工具。

如需更多信息,请访问 NebulaGraph GitHub 仓库NebulaGraph 文档

常见问题

Q:NebulaGraph 使用什么查询语言? A:nGQL,一种类似 SQL 的图查询语言,设计用于易用性和表达力。

Q:NebulaGraph 可以在单台机器上运行吗? A:是的,它支持用于开发和测试的单节点部署。

Q:NebulaGraph 如何处理数据复制? A:存储分区使用 Raft 共识跨节点复制以实现容错。

Q:NebulaGraph 支持图算法吗? A:是的,包括 PageRank、社区检测、最短路径和连通分量。

Q:NebulaGraph 支持哪些存储引擎? A:它使用自己的针对图工作负载优化的 KV 存储,构建在 RocksDB 之上。

TAG
CATEGORIES