图数据库 Nebula Graph RC1 发行说明

NebulaGraph
 NebulaGraph
发布于 2019年11月05日
收藏 14

Nebula Graph:一个开源的分布式图数据库。作为唯一能够存储万亿个带属性的节点和边的在线图数据库,Nebula Graph 不仅能够在高并发场景下满足毫秒级的低时延查询要求,还能够实现服务高可用且保障数据安全性。

图数据库 Nebula RC1 主要更新

本次 RC1 主要增强了 nGQL,新增 LIMIT , GROUP BY 等语句;算法方面增加了最短路径,全路径搜索。 Storage 层新增 PUT/GET 接口,支持 scale out/in,以及新增了 Golang 客户端以及多线程 Golang 数据导入工具。

nGQL

  • 新增 LIMIT 指定返回的记录数。(#750)
  • 管道操作中支持 YIELD 指定返回类型。(#745)
  • 新增 ORDER BY 对结果集进行排序 (#537)
  • 新增 udf_is_in 来查询特定集合的数据。(#1096)
  • 新增 DELETE VERTEX 删除指定的 vertex 和相关联的出入边。 (#868)
  • 新增 UUID() 函数生成唯一值. (#958#961#1031)
  • 支持逻辑运算符 XORORAND 和 NOT. (#858)
  • 支持 TIMESTAMP 数据类型. (#843)
  • 针对 STRING 数据类型,支持更多函数操作,比如 upper()trim()lower()substr() 等. (#841)
  • 逻辑运算中支持类型转换 (#964)
  • 新增 SHOW CONFIGS 获取指定服务 [meta/storage/graph] 的配置项, GET CONFIGS 获取指定配置项值 and UPDATE CONFIGS 修改配置项值. (#504)
  • SHOW HOSTS 新增 Leader 信息。(#918)
  • 支持 FIND PATH 最短路径、全路径搜索 (#847)
  • GO 支持多个 edge types 的图查询。(#699)
  • 优化了源代码的编译流程。 (#1047#948#1083)

Storage

  • 新增 PUT/GET 接口. (#977)
  • 支持 Leader balance. (#731#881)
  • 支持 HTTP API 获取性能指标。(比如 QPS, Latency AVG/ P99/ P999 等) (#872#1136)
  • 支持 Scaling out/in。 (#421#444#795#881#998)
  • Meta client 支持重试, 默认是 3 次. (#814)

Tools

  • 新增 Golang Importer 工具,支持多线程从 CSV 导入数据.

Change

  • 更改了 storaged 的配置模板

Others

  • 将 metad , storaged 和 graphd 拆到不同 Image 中。增加 Dockerfiles 创建镜像。 (#923)
  • 新增 Golang 客户端,将客户端移到各自的 Repositories 下(vesoft-inc/nebula-go 和 vesoft-inc/nebula-java)。

Coming Soon

  • 支持数据 Snapshot, 数据回滚功能
  • 增强从 Hive 数据导入功能
  • Storage 层支持集群缩容
  • 引入 CI/CD
本站文章除注明转载外,均为本站原创或编译。欢迎任何形式的转载,但请务必注明出处,尊重他人劳动共创开源社区。
转载请注明:文章转载自 OSCHINA 社区 [http://www.oschina.net]
本文标题:图数据库 Nebula Graph RC1 发行说明
加载中

精彩评论

Goopand
Goopand
和Neo4j比,怎么样?有用过的来说说哈。
dangleptr
dangleptr
图数据库: 处理类似社交网络、交易网络这种超大规模网络的一个database
分布式:数据不是仅仅存在一个PC服务器上的(比如一台小型机),而是存储在多台PC服务器上。这样成本相比小型机更低。
数据复制:分布式要解决的问题就是多台机器之间的数据一致性,工业界有一些协议来保证这种一致性。Nebula用的是Raft协议。所以不会出现“一个节点还没复制到数据查不到“

最新评论(5

Goopand
Goopand
和Neo4j比,怎么样?有用过的来说说哈。
海钓的猫
海钓的猫
也想知道下,目前感觉图数据库几乎被 neo4j 一家独占了
能说下你们的优势吗
NebulaGraph
NebulaGraph
Neo4j 是个本质单机版,分布式架构也是把图结构放在单机上,通常如果数据量到亿级别就会明显性能问题。 Nebula 把所有的点和边都打散,做成完全的分布式。因此对于横向扩展的能力不一样,特别是当数据量单机无法存放或者处理的时候,如果要存储几十亿甚至万亿级别的点、边时,就能体现分布式的能力。
Nebula 和 Neo4j 二者开发语言不一样,Neo4j 是 Java,Nebula 是 C++。
开源中国首席罗纳尔多
开源中国首席罗纳尔多
您好,请问数据库分布式是指什么?多个数据库数据是复制的吗会不会有一个节点还没复制到数据查不到?
dangleptr
dangleptr
图数据库: 处理类似社交网络、交易网络这种超大规模网络的一个database
分布式:数据不是仅仅存在一个PC服务器上的(比如一台小型机),而是存储在多台PC服务器上。这样成本相比小型机更低。
数据复制:分布式要解决的问题就是多台机器之间的数据一致性,工业界有一些协议来保证这种一致性。Nebula用的是Raft协议。所以不会出现“一个节点还没复制到数据查不到“
返回顶部
顶部