文档介绍:图数据库 Nebula ?Graph 是什么
       
 
 
 
 
 
 
 
     
     
     
 
 
 
图数据库(英语:Graph Database)是一个使用图结构进行语义查询的数据库。该系统的关键概念是图,形式上是点 (Node 或者 Vertex) 和边 (Edge 或者 Relationship) 的集合。一个顶点代表一个实体,比如,某个人,边则表示两个实体间的关联关系,比如 “你关注 Nebula Graph”的关注关系。图广泛存在于现实世界中,从社交网络到风控场景、从知识图谱到智能推荐。
Nebula Graph 是什么
Nebula Graph 是一款开源的分布式图数据库,擅长处理千亿个顶点和万亿条边的超大规模数据集。提供高吞吐量、低延时的读写能力,内置 ACL 机制和用户鉴权,为用户提供安全的数据库访问方式。
作为一款高性能高可靠的图数据库,Nebula Graph 提供了线性扩容的能力,支持快照方式实现数据恢复功能。在查询语言方面,开发团队完全自研开发查询语言——nGQL,并且后续会兼容 OpenCypher 接口,让 Neo4j 的用户可无缝衔接使用 Nebula Graph。
Nebula Graph 特性
开源 :Nebula Graph 代码开源,采用 Apache License,用户可以从 GitHub 下载源码自己编译,部署。欢迎提交 pr,成为 Contributor。
可扩展性 :存储计算相分离的架构,当存储空间或计算资源不足时,支持对两者独立进行扩容,避免了传统架构需要同时扩容导致的经济效率低问题。云计算场景下,能实现真正的弹性计算。提供线性扩展的能力。
高可用 :全对称分布式集群,无单点故障。并且支持多种类型快照方式实现数据恢复,保证在局部失败的情况下服务的高可用性。
HTAP : 支持 OLTP 实时查询的同时提供了 OLAP 的接口,真正在同一份数据上提供实时在线更新的前提下,也提供复杂分析和挖掘的能力。
安全性 :内置授权登录与 ACL 机制,提供用户安全的数据库访问方式,也可接入 LDAP 认证。
类 SQL 查询语言 nGQL :类 SQL 的风格减少了程序员迁移的成本,同时具有表达能力强的优点。
Nebula Graph 架构
Nebula Graph 功能
基础功能
多图空间 :支持多图空间,不同的图空间的数据物理隔离,并且可设置不同的副本数,以应对不同的可用性要求。
顶点 :支持基本增删改查操作,支持多种顶点类型,也支持同一顶点有多种类型。
边 :支持基本增删改查操作,支持有向图,支持节点间存在同一种类型或者不同类型的多条边。
Schema :Tag / EdgeType 支持多种数据类型,支持对属性设置默认值。一个点可以设置多个 Tag。
聚合操作 :聚合函数 GROUP BY、排序函数 ORDER BY、限定函数 LIMIT 自由组合返回所需数据。
组合查询 :UNION,UNION DISTINCT,INTERSECT,MINUS 对数据集进行组合查询。
条件查询/更新 :IF...RETURN 和 UPDATE ... WHEN 根据指定条件查询