Nebula Graph是一款拥有超高人气的开源图数据库。最好用的原生图数据库Nebula Graph。作为开源,分布式,易于扩展的本机地图数据库,可以携带数十亿个点和数十万亿的大规模数据集,并提供毫秒查询,专门用于存储庞大的存储。图形网络和检索信息,不仅可以高度存储图形中的数据,还可以将属性附加到点和边缘。星云图中的数据模型使用五个数据结构来保存数据,并在View属性图中存储这些数据,并且星云图由图形服务,元服务和存储服务组成三个服务。我们欢迎有需要的用户下载体验。
软件功能:
DDL&DML:支持在线数据定义语言(DDL)和数据操作语言(DML)。
图探索:支持正/反向,双向地图探索,Go Minhops到Maxhops获得了指定的步骤扩展坞之间的关系。
聚合操作:聚合函数组按,排序功能顺序按,有限函数限制自由组合返回所需的数据。
组合查询:Union,Union Distinct,InterSect,minus组合数据集。
管道操作:管道操作员|前面查询语句的输出可以用作背后的车道的输入。
用户定义的变量:支持将临时存储在用户定义的变量中的用户定义的变量中,并用于后续查询语句。
索引:支持索引,联合索引和现有数据的索引。查找用于快速查找建立索引的属性。
权限管理:支持用户权限身份验证,支持用户角色访问控制。您可以轻松停靠现有的用户身份验证系统。星云图提供了五个角色权利:上帝,管理员,DBA,用户和访客。
采样:对于超级电视,采样储库样品,K个元素仅随机提取数据O(n)overdue。
群集快照:支持在集群维度中创建快照,提供在线数据备份功能,快速恢复。
TTL:支持设置数据的有效期,清理过期数据和释放资源。
职位管理器:作业管理调度工具,目前支持Compact和Flush操作。
操作和维护
支持在线扩展容量,负载平衡
主机管理存储服务器
配置管理配置项
图算法:支持全路径/最短路径算法。
提供OLAP接口以计算平台。
支持各种字符集,字符编码。
软件特色:
开源
星云图是在Apache 2.0和Commons第1.0节下开发的。越来越多的人,如数据库开发人员,数据科学家,安全专家,算法工程师,都参与了星云图的设计和开发,欢迎参加星云图Github主页来参加开源项目。
高性能
根据使用C ++中写入的星云图的图表数据库的特征,您可以提供毫秒查询。在众多数据库中,星云图表在地图数据服务领域表现出优异的性能。数据大小越大,大星云图的优势。有关详细信息,请参阅星云图形基准。
易于扩展
星云图使用一个共享的架构,该体系结构支持扩展容量而不停止数据库服务。
轻松开发
星云图提供了具有流行编程语言的客户,如Java,Python,C ++以及Go,更多的客户仍在开发中。有关详细信息,请参阅星云图形客户端。
高可靠的访问控制
星云图支持严格的角色访问控制和外部身份验证服务,如LDAP(轻量级目录访问协议),以有效地提高数据安全性。有关详细信息,请参阅验证和授权。
生态多样性
星云图打开了越来越多的本机工具,例如星云图工作室,星云控制台,星云图交换等。此外,星云图还具有集成Spark,Flink,HBase等产品的能力,这极大地提高了这一时代挑战性和机遇的竞争力。
兼容OpenCyper查询
星云图查询语言,也称为ngql,是一个声明性,兼容OpenC关字符文本查询语言,易于理解和使用。有关详细语法,请参阅NGQL指南。
灵活的数据建模
您可以在星云图中轻松创建数据模型,不必将数据转换为关系表等结构,并且可以自由增加,更新和删除属性。有关详细信息,请参阅数据模型。
受欢迎的
腾讯,体内,美国任务和景东刁迪等技术巨头正在使用星云图。有关详细信息,请参阅星云图官方网站。
适用的场景
星云图可以用于各种图形业务场景。建议您使用Nebul
一个图形,以将各种数据转换为关系数据库,并避免复杂查询。
欺诈识别
金融机构必须仔细研究大量交易信息,以检测潜在的金融欺诈,理解欺诈行为和设备的内在关联。这种情况可以通过图形建模,然后使用星云图,您可以轻松地检测欺诈团伙或其他复杂的欺诈。
实时推荐
星云图可以处理访问者生成的实时信息,以及准确推动文章,视频,产品和服务。
知识地图
自然语言可以转换为知识映射,存储在星云图中。可以通过智能Q&A系统中的语义解析器解析和重组自然语言组织的问题,然后从知识贴图中检索可能的答案,提供一个提问者。
社交网络
人际关系信息是典型的图形数据。星云图可以很容易地处理数十亿人和数十万亿人际关系的社交网络信息,并在大规模群众的情况下提供快速的朋友推荐和工作查询。
常见问题;
ngql与OpenC关机9兼容吗?
NGQL部分与OpenC关机9兼容。
在星云图问题中已列出已知的不兼容项目。如果您发现此类问题,请提交问题并附带不兼容的选项卡。您可以通过关键字兼容搜索兼容性问题。
我在哪里可以找到ngql的例子?
您可以在星云图Github的“功能目录”中查看超过2,500个NGQL示例。
功能目录包含大量的文件格式,每个文件记录的场景和ngql的示例。例如:
下面描述了示例中的关键字
星云图支持W3C RDF(SPARQL或GraphQL)?
不支持。
星云图的数据模型是一个属性图,一个不支持RDF标准的强模式系统。
星云图的查询语言不支持SPARQL和GraphQL。
时间划分的含义是什么?
作为Show Spaces返回的消息的示例:
第一号码1235表示在数据库本身上花费的时间,即查询引擎从客户端接收查询,然后从存储服务器获取数据并执行一系列计算。
第二号码1934表示从客户端,即,从客户端发送请求,然后在屏幕上拍摄结果。
创建空间时,您可以将replica_factor设置为偶数(例如,设置为2)。
不要设置这个。
存储服务使用RAFT协议(大多数投票)来确保可用性,未通过失败的副本数量无法达到一半。
如果replica_factor = 2,当一个副本出现故障时,它将导致系统工作;如果replica_factor = 4,只有一个副本可能是错误,这与replica_factor = 3相同。在此中,replica_factor设置为奇数。
建议您在生产环境中设置replica_factor = 3。在测试环境中设置replica_factor = 1,甚至不使用。
如何处理错误[错误(-7)]:syntaxError:语法错误附近?
在大多数情况下,查询语句需要收益或返回,请检查是否包含您的查询语句。
官方教程:
Docker撰写部署星云图
前提
在主机上安装以下应用程序。
如果使用非root用户部署星云图,请授权用户Docker相关的权限。有关更多信息,请参阅将Docker视为非root用户。
启动主机上的Docker服务。
如果您通过Docker编写在主机上部署了另一个版本的星云图,则需要删除兼容性问题,并且您需要删除目录NeBula-Docker-Compose /数据。
注意:如果您需要备份服务数据,请参阅使用BR备份数据TODO:未发布V2.0.0。
部署和连接星云图
通过Git Clone Nebula-Docker-Compose仓库到您的主人分支机构。
禁止:Master Branches包含Docker Compose解决方案的最新的星云图开发版本。请不要在生产环境中使用此版本。
切换到目录NeBula-Docker-Compose。
启用以下命令启动星云图服务。
描述:如果您还没有更新镜像长时间,请更新星云图镜像和星云控制台图像。
注意:有关上述服务的更多信息,请参阅体系结构概述。
连接星云图。
1.使用星云控制台映像启动容器,并连接到网状图形服务的网络(Nebula-Docker-Compose_neb)连接。
1.通过星云控制台连接星云图。
注意:默认情况下,Identity身份验证功能已关闭,您可以使用任何用户名和密码登录。如果要使用身份验证,请参阅身份验证。
1.执行以下命令以检查NeBula-Storage过程状态。
执行退出可以退出容器两次。
查看星云图服务的状态和端口
执行docker-compose ps以列出星云图服务的状态和端口。
星云图默认使用9669端口以提供客户端。如果您需要修改端口,请修改文件docker-compose.yaml在nebula-docker-compose目录中,然后重新启动星云图服务。
查看星云图服务的数据和日志
星云图的所有数据和日志都持续存在于NeBula-Docker-Compose / Data和Nebula-Docker Compose / Logs目录中。
目录的结构如下:
停止星云图服务
您可以执行以下命令来停止Nebula图形服务:
如果返回以下信息,则表示已成功停止服务。
描述:命令Docker-Compose Down -V将删除所有本地星云图的数据。如果您使用的是开发或夜间版本以及一些兼容性问题,请尝试此命令。
管理星云图服务
星云图使用脚本nebula.service管理服务,包括启动,停止,重新启动,中止和查看。
nebula.service的默认路径是/ usr / local / nebula / scripts,如果修改安装路径,请使用实际路径。
语法
启动Nebula图形服务非容器部署执行以下命令以启动Nebula图形服务:
集装箱部署
执行以下命令开始
nebula-docker-compose /目录中的星云图服务:
停止Nebula图形服务禁止:不要使用Kill -9命令强制终止过程,否则可能会发生数据丢失。
非容器部署
执行以下命令以停止Nebula图形服务:
集装箱部署
执行以下命令以停止Nebula-Docker-Compose /目录中的Nebula图形服务:
描述:命令Docker-Compose Down -V将删除所有本地星云图的数据。如果您使用的是开发或夜间版本以及一些兼容性问题,请尝试此命令。
查看Nebula图服务非容器部署
执行以下命令以查看NeBula图形服务状态:
如果返回以下结果,则意味着星云图服务正常运行。
如果返回类似的结果,则意味着可以根据异常服务信息进一步调查星云图服务异常,或者在星云图社区中的帮助。
星云图服务由元服务,图形服务和存储服务提供。三个服务配置文件保存在安装目录的etc目录中,默认路径为/ usr / local / nebula / etc /,您可以检查相应的配置文件调查问题。
集装箱部署
在NeBula-Docker-Compose目录中执行以下命令以查看NeBula图形服务状态:
鼻
如果服务具有异常,则可以确认异常的容器名称(例如Nebula-Docker-Compose_graphd2_1),然后执行Docker PS以查看相应的容器ID(示例是2A6C56C405F5),最后登录容器故障排除问题。
连接星云图
星云图支持多种类型的客户端,包括CLI客户端,GUI客户端和客户端开发开发的客户端。本文将概述星云图客户端,并介绍如何使用本机CLI客户端星云。
使用Nebula控制台连接星云图先决条件启动了星云图服务。有关如何启动服务,请参阅启动和停止星云图服务。
运行Nebua控制台机器并运行星云图互操作性的服务器网络。
脚步
在“星云控制台”页面中,确认所需的版本,单击“资产”。
注意:建议您选择最新版本。
找到机器在资产区域中运行所需的双信用,将文件下载到机器。
(可选)方便使用,重命名文件是Nebula-Console。
注意:在Windows系统中,将其重命名为NeBula-console.exe。
在运行NeBula控制台的计算机上执行以下命令,以将用户的执行权限授予NeBula-Console文件。
描述:Windows系统跳过此步骤。
在命令行界面中,将工作目录切换到星云控制台文件所在的目录中。
执行以下命令以连接星云图。
- Linux或MacOS
- Windows.
参数如下所述。