Nebula
Graph是一款非常专业且优秀的开源图数据库,作为一款开源的、分布式的、易扩展的原生图数据库,能够承载数十亿个点和数万亿条边的超大规模数据集,并且提供了毫秒级查询,该数据库专门用于存储庞大的图形网络并从中检索信息,不仅可以将图形中的数据高效存储为点和边,还可以将属性附加到点和边上,Nebula
Graph中的数据模型使用了五种数据结构来保存数据,并将这些数据存储在有向属性图,同时Nebula
Graph由Graph服务、Meta服务和Storage服务三种服务构成,欢迎有需要的用户下载体验
DDL & DML:支持在线的数据定义语言(DDL)及数据操纵语言(DML)。
图探索:支持正/反向、双向图探索,GO minHops TO maxHops 获取指定步数区间的关系。
聚合操作:聚合函数 GROUP BY 、排序函数 ORDER BY 、限定函数 LIMIT 自由组合返回所需数据。
组合查询:UNION, UNION DISTINCT , INTERSECT , MINUS 对数据集进行组合查询。
管道操作: 管道操作符 | 前面查询语句的输出可作为管道符后面语句的输入。
用户定义变量:支持将可将查询结果暂时存储在用户自定义的变量中,并在随后查询语句中使用。
索引: 支持索引、联合索引,以及对已存在的数据建立索引。 LOOKUP ON 用于对建立索引的属性进行快速查找。
权限管理: 支持用户权限认证,支持用户角色访问控制。可轻松对接现有用户认证系统。 Nebula Graph 提供五种角色权限: GOD 、 ADMIN 、 DBA 、 USER 和 GUEST 。
采样:对于超级顶点支持蓄水池采样, 在只遍历一遍数据 O(n) 的情况下,随机的抽取 k 个元素。
集群快照:支持以集群维度创建快照,提供在线的数据备份功能,快速恢复。
TTL:支持设置数据的有效期,清理过期数据、释放资源。
Job Manager:Job 管理调度工具,目前支持 COMPACT 和 FLUSH 操作。
运维操作
支持在线扩缩容、负载均衡
HOSTS 管理 Storage 服务器
CONFIGS 管理配置项
图算法:支持全路径 / 最短路径算法。
提供 OLAP 接口,对接图计算平台。
支持多种字符集、字符编码。
开源
Nebula Graph是在Apache 2.0和Commons Clause 1.0条款下开发的。越来越多的人,如数据库开发人员、数据科学家、安全专家、算法工程师,都参与到Nebula Graph的设计和开发中来,欢迎访问Nebula Graph GitHub主页参与开源项目。
高性能
基于图数据库的特性使用C++编写的Nebula Graph,可以提供毫秒级查询。众多数据库中,Nebula Graph在图数据服务领域展现了卓越的性能,数据规模越大,Nebula Graph优势就越大。详情请参见Nebula Graph benchmarking。
易扩展
Nebula Graph采用shared-nothing架构,支持在不停止数据库服务的情况下扩缩容。
易开发
Nebula Graph提供Java、Python、C++和Go等流行编程语言的客户端,更多客户端仍在开发中。详情请参见Nebula Graph clients。
高可靠访问控制
Nebula Graph支持严格的角色访问控制和LDAP(Lightweight Directory Access Protocol)等外部认证服务,能够有效提高数据安全性。详情请参见验证和授权。
生态多样化
Nebula Graph开放了越来越多的原生工具,例如Nebula Graph Studio、nebula-console、Nebula Graph Exchange等。此外,Nebula Graph还具备与Spark、Flink、HBase等产品整合的能力,在这个充满挑战与机遇的时代,大大增强了自身的竞争力。
兼容openCypher查询语言
Nebula Graph查询语言,也称为nGQL,是一种声明性的、兼容openCypher的文本查询语言,易于理解和使用。详细语法请参见nGQL指南。
灵活数据建模
您可以轻松地在Nebula Graph中建立数据模型,不必将数据强制转换为关系表之类的结构,而且可以自由增加、更新和删除属性。详情请参见数据模型。
广受欢迎
腾讯、vivo、美团和京东数科等科技巨头都在使用Nebula Graph。详情请参见Nebula Graph官网。
适用场景
Nebula Graph可用于各种基于图的业务场景。为节约转换各类数据到关系型数据库的时间,以及避免复杂查询,建议您使用Nebula Graph。
欺诈检测
金融机构必须仔细研究大量的交易信息,才能检测出潜在的金融欺诈行为,并了解某个欺诈行为和设备的内在关联。这种场景可以通过图形建模,然后借助Nebula Graph,可以很容易地检测出诈骗团伙或其他复杂诈骗行为。
实时推荐
Nebula Graph能够及时处理访问者产生的实时信息,并且精准推送文章、视频、产品和服务。
知识图谱
自然语言可以转化为知识图谱,存储在Nebula Graph中。用自然语言组织的问题可以通过智能问答系统中的语义解析器进行解析并重新组织,然后从知识图谱中检索出问题的可能答案,提供给提问人。
社交网络
人际关系信息是典型的图形数据,Nebula Graph可以轻松处理数十亿人和数万亿人际关系的社交网络信息,并在海量并发的情况下,提供快速的好友推荐和工作岗位查询。
Docker Compose部署Nebula Graph
前提条件
主机上安装如下应用程序。
如果您使用非root用户部署Nebula Graph,请授权该用户Docker相关的权限。详细信息,请参见Manage Docker as a non-root user。
启动主机上的Docker服务。
如果您已经通过Docker Compose在主机上部署了另一个版本的Nebula Graph,为避免兼容性问题,需要您删除目录nebula-docker-compose/data。
说明:如果您需要备份服务数据,请参见使用BR备份数据 TODO: 未和v2.0.0一起发布。
部署和连接Nebula Graph
通过Git克隆nebula-docker-compose仓库的master分支到您的主机。
禁止:master分支包含最新的Nebula Graph开发版本的Docker Compose解决方案。请不要在生产环境使用此版本。
切换至目录nebula-docker-compose。
执行如下命令启动Nebula Graph服务。
说明: 如果长期未更新镜像,请先更新Nebula Graph镜像和Nebula Console镜像。
说明: 上述服务的更多信息,请参见架构总览。
连接Nebula Graph。
1. 使用Nebula Console镜像启动一个容器,并连接到Nebula Graph服务所在的网络(nebula-docker-compose_nebula-net)中。
1. 通过Nebula Console连接Nebula Graph。
说明:默认情况下,身份认证功能是关闭的,可以使用任意用户名和密码登录。如果想使用身份认证,请参见身份认证。
1. 执行如下命令检查nebula-storaged进程状态。
执行两次exit 可以退出容器。
查看Nebula Graph服务的状态和端口
执行命令docker-compose ps可以列出Nebula Graph服务的状态和端口。
Nebula Graph默认使用9669端口为客户端提供服务,如果需要修改端口,请修改目录nebula-docker-compose内的文件docker-compose.yaml,然后重启Nebula Graph服务。
查看Nebula Graph服务的数据和日志
Nebula Graph的所有数据和日志都持久化存储在nebula-docker-compose/data和nebula-docker-compose/logs目录中。
目录的结构如下:
停止Nebula Graph服务
您可以执行如下命令停止Nebula Graph服务:
如果返回如下信息,表示已经成功停止服务。
说明:命令docker-compose down -v将会删除所有本地Nebula Graph的数据。如果您使用的是developing或nightly版本,并且有一些兼容性问题,请尝试这个命令。
管理Nebula Graph服务
Nebula Graph使用脚本nebula.service管理服务,包括启动、停止、重启、中止和查看。
nebula.service的默认路径是/usr/local/nebula/scripts,如果修改过安装路径,请使用实际路径。
语法
启动Nebula Graph服务非容器部署执行如下命令启动Nebula Graph服务:
容器部署
在nebula-docker-compose/目录内执行如下命令启动Nebula Graph服务:
停止Nebula Graph服务禁止:请勿使用kill -9 命令强制终止进程,否则可能较小概率出现数据丢失。
非容器部署
执行如下命令停止Nebula Graph服务:
容器部署
在nebula-docker-compose/目录内执行如下命令停止Nebula Graph服务:
说明:命令docker-compose down -v将会删除所有本地Nebula Graph的数据。如果您使用的是developing或nightly版本,并且有一些兼容性问题,请尝试这个命令。
查看Nebula Graph服务非容器部署
执行如下命令查看Nebula Graph服务状态:
如果返回如下结果,表示Nebula Graph服务正常运行。
如果返回类似如下结果,表示Nebula Graph服务异常,可以根据异常服务信息进一步排查,或者在Nebula Graph社区寻求帮助。
Nebula Graph服务由Meta服务、Graph服务和Storage服务共同提供,这三种服务的配置文件都保存在安装目录的etc目录内,默认路径为/usr/local/nebula/etc/,您可以检查相应的配置文件排查问题。
容器部署
在nebula-docker-compose目录内执行如下命令查看Nebula Graph服务状态:
如果服务有异常,您可以先确认异常的容器名称(例如nebula-docker-compose_graphd2_1),然后执行docker ps查看对应的CONTAINER ID(示例为2a6c56c405f5),最后登录容器排查问题。
连接Nebula Graph
Nebula Graph支持多种类型客户端,包括CLI客户端、GUI客户端和流行编程语言开发的客户端。本文将概述Nebula Graph客户端,并介绍如何使用原生CLI客户端Nebula。
使用Nebula Console连接Nebula Graph前提条件Nebula Graph服务已启动。如何启动服务,请参见启动和停止Nebula Graph服务。
运行Nebula Console的机器和运行Nebula Graph的服务器网络互通。
操作步骤
在nebula-console页面,确认需要的版本,单击Assets。
说明:建议您选择最新版本。
在Assets区域找到机器运行所需的二进制文件,下载文件到机器上。
(可选)为方便使用,重命名文件为nebula-console。
说明:在Windows系统中,请重命名为nebula-console.exe。
在运行Nebula Console的机器上执行如下命令,为用户授予nebula-console文件的执行权限。
说明:Windows系统请跳过此步骤。
在命令行界面中,切换工作目录至nebula-console文件所在目录。
执行如下命令连接Nebula Graph。
- Linux或macOS
- Windows
参数说明如下。
nGQL兼容openCypher 9吗?
nGQL部分兼容openCypher 9。
在Nebula Graph Issues中已经列出已知的不兼容项。如果您发现这种类型的新问题,请提交问题并附带incompatible标签。您可以通过关键字compatibility搜索兼容性问题。
哪里可以找到更多nGQL的示例?
您可以在Nebula Graph GitHub的features目录内查看超过2500条nGQL示例。
features目录内包含很多.features格式的文件,每个文件都记录了使用nGQL的场景和示例。例如:
示例中的关键字说明如下
Nebula Graph支持 W3C 的RDF(SPARQL 或 GraphQL)吗?
不支持。
Nebula Graph的数据模型是属性图,是一个强Schema系统,不支持RDF标准。
Nebula Graph的查询语言也不支持SPARQL和GraphQL。
返回消息中time spent的含义是什么?
将命令SHOW SPACES返回的消息作为示例:
第一个数字1235表示数据库本身执行该命令花费的时间,即查询引擎从客户端接收到一个查询,然后从存储服务器获取数据并执行一系列计算所花费的时间。
第二个数字1934表示从客户端角度看所花费的时间,即从客户端发送请求、接收结果,然后在屏幕上显示结果所花费的时间。
可以在CREATE SPACE时设置replica_factor为偶数(例如设置为2)吗?
不要这样设置。
Storage服务使用Raft协议(多数表决),为保证可用性,要求出故障的副本数量不能达到一半。
如果replica_factor=2,当其中一个副本故障时,就会导致系统无法工作;如果replica_factor=4,只能有一个副本可以出现故障,这和replica_factor=3是一样。以此类推,所以replica_factor设置为奇数即可。
建议您在生产环境中设置replica_factor=3,测试环境中设置replica_factor=1,不要使用偶数。
如何处理报错[ERROR (-7)]: SyntaxError: syntax error near?
大部分情况下,查询语句需要有YIELD或RETURN,请检查您的查询语句是否包含。
Cygwin
808 KB/2020-08-17Cygwin(UNIX模拟环境)是许多自由软件的集合,最初由CygnusSolutions开发,用于各种版本的MicrosoftWindows上,运行UNIX类系统。Cygwi
Vbs To Exe
1.45 MB/2020-08-17VbsToExe绿色中文版是一款vb转exe的工具。VbsToExe简单易用,而且VbsToEXE转换器自带中文,界面简洁操作简单,需要这款转换工具的朋友可以下载使用。
Visual Studio 2015 Community
5.8 GB/2020-08-17微软终于发布了VisualStudio2015简体中文版,下载吧第一时间提供VisualStudio2015官方中免费文版下载。VS2015提供了跨平台开发的功能,支持从Windows到Linux、甚至iOS和Android的开发!
Cygwin x64
832 KB/2020-08-17Cygwin是一个在windows平台上运行的类UNIX模拟环境,是cygnussolutions公司开发的自由软件(该公司开发的著名工具还有eCos,不过现已被Redhat收购
sql数据库备份恢复助手
1.77 MB/2020-08-17sql数据库备份恢复助手是一款能够帮助sql数据库备份与恢复的工具,软件完美支持自动/手工方式备份本地/局域网(远程)数据库,无限复合式备份任务,支持备份文件通过Lan/Ftp/云
Navicat for MySQL
17.34 MB/2020-08-17NavicatforMySQL是一个强大的MySQL数据库管理和开发工具。Navicat为专业开发者提供了一套强大的足够尖端的工具,但它对于新用户仍然是易于学习。使用了极好的图形用户界面(GUI)...
jEdit
3.72 MB/2020-08-17jEdit官方中文版是一个用Java语言开发的文本编辑器,在GPL下发布。它可以在Windows、Linux、MacOS等多种平台下运行,并且有很多插件,可以扩充基本功能。它也支
Aptana Studio
127.97 MB/2020-08-17AptanaStudio官方版是一个集成式的Web应用程序开发环境,它不仅可以作为独立的程序运行,而且还可以作为eclipse插件使用。AptanaStudio可以支持多种AJA
UltraEdit
phpMyAdmin
WinHex
EmEditor Professional(文本的编辑工具)
JSCompress
Java反编译器
Resource Hacker
AutoHotkey(自动安装脚本编写工具)
Oracle SQL Handler
贪玩娱乐苹果官方下载
老式水果机单机版
老式水果机下载手机版
彩虹多多专享版
炸金花下载官方下载
角落棋牌官方网站
狂暴捕鱼官网504.1
老式水果机下载
一木棋牌官方旧版本客户端
您可能感兴趣的专题
男生必备
男生们看过来!
安卓装机必备
女生必备
女生必备app是拥有众多女性用户的手机软件,作为一个女生,生活中像淘宝、京东这类线上购物软件可以说是少不了的,小红书这种穿搭、化妆分享平台也很受欢迎,类似于西柚大姨妈、美柚这种专为女生打造的生理期app更是手机必备,还有大家用的最多拍照美颜app是绝对不能忘记的,除此之外对于一些追星女孩来说,微博也是一个必不可少的软件。超多女生必备软件尽在下载吧!
迅雷看看使用教程
迅雷看看播放器是一款多功能在线高清多媒体视频播放器,支持本地播放与在线视频点播,采用P2P点对点传输技术,可以在线流畅观看高清晰电影。不仅如此,迅雷看看不断完善用户交互和在线产品体验,让您的工作与生活充满乐趣。
驱动精灵
驱动精灵是一款集驱动管理和硬件检测于一体的、专业级的驱动管理和维护工具。驱动精灵为用户提供驱动备份、恢复、安装、删除、在线更新等实用功能,也是大家日常生活中经常用到的实用型软件之一了。
拼音输入法
对于电脑文字输入,拼音输入法是一种非常受欢迎的输入法,搜狗拼音输入法、百度拼音输入法、QQ拼音输入法、谷歌拼音输入法、紫光拼音输入法、智能拼音输入法等,你在用哪款呢?一款好用适合自己的拼音输入法一定对您平时帮助很大!下载吧收集了最热门国人最喜欢用的拼音输入法给大家。
b站哔哩哔哩怎么使用
很多人都喜欢在b站哔哩哔哩上观看视频,不单是因为可以提前看到一些视频资源,B站的一些弹幕、评论的玩法也是被网友们玩坏了!下面下载吧小编带来了b站哔哩哔哩怎么使用的教程合集!希望能帮到你啦!
抖音短视频app
抖音短视频app,这里汇聚全球潮流音乐,搭配舞蹈、表演等内容形式,还有超多原创特效、滤镜、场景切换帮你一秒变大片,为你打造刷爆朋友圈的魔性短视频。脑洞有多大,舞台就有多大!好玩的人都在这儿!