linux环境下安装可操作图库语言Gremlin的图框架HugeGraph

原创/朱季谦

图数据库是一项比较前沿而逐渐热门的技术,是NoSql数据库的一种,它应用图形理论存储实体之间的关系信息,最主要的组成有两种,结点集和连接结点的边。常见的图数据库有Neo4j,JanuasGraph,Tigergraph等,其中,Gremlin是一种操作图数据库的图语言,它是Apache ThinkerPop框架下的图遍历语言,是声明式的也是声明式的。

 

Gremlin 语言包括三个基本的操作:

  • map-step:对数据流中的对象进行转换;
  • filter-step:对数据流中的对象就行过滤;
  • sideEffect-step:对数据流进行计算统计;

Tinkerpop3 模型核心概念

  • Graph: 维护节点&边的集合,提供访问底层数据库功能,如事务功能
  • Element: 维护属性集合,和一个字符串label,表明这个element种类
  • Vertex: 继承自Element,维护了一组入度,出度的边集合
  • Edge: 继承自Element,维护一组入度,出度vertex节点集合.
  • Property: kv键值对
  • VertexProperty: 节点的属性,有一组健值对kv,还有额外的properties 集合。同时也继承自element,必须有自己的id, label.
  • Cardinality: 「single, list, set」 节点属性对应的value是单值,还是列表,或者set。

那么HugeGraph又是什么呢?

 

根据官网上的介绍,HugeGraph是一款易用、高效、通用的开源图数据库系统(Graph Database),实现了Apache TinkerPop3框架及完全兼容Gremlin查询语言,支持百亿以上的顶点和边快速导入,并提供毫秒级的关联关系查询能力(OLTP),并可与Hadoop、Spark等大数据平台集成以进行离线分析(OLAP)。

HugeGraph是百度自主研发的图数据库,在2018年8月开始对外开源,我们之前做一款图库产品时技术选型就是选了HugeGraph,总体感觉这个技术比较前沿也比较厉害,但存在一个小缺点,它暂时不支持分布式。

 

最近打算把图数据库语言Gremlin学习一波,可通过图形化HugeGraph框架来学习。

学习的第一步,当然是从安装环境开始,下面,我就把之前的安装教程分享出来:

 

网盘下载核心安装包HugeGraph Server包和图形界面HugeGraph Studio包(截图是目前最新版本)。

linux环境下安装可操作图库语言Gremlin的图框架HugeGraph

网盘下载地址:

链接:https://pan.baidu.com/s/11qPFOFU-d9nxGEdws4zggQ
提取码:pqpy

一.先安装HugeGraph Server。

1.把压缩包放在你选择放的文件夹里,进行解压:

tar -zxvf hugegraph-0.10.4.tar.gz

linux环境下安装可操作图库语言Gremlin的图框架HugeGraph

解压完成后,进入到已解压的文件目录里,执行:vim conf/rest-server.properties,进入到编辑状态,将restserver.url改成:http://0.0.0.0:8080,代表本机以及其他机器都可以访问,修改完成后,:wq保存退出。

linux环境下安装可操作图库语言Gremlin的图框架HugeGraph

2.配置文件修改完后,需对后端做初始化操作,执行指令:

bin/init-store.sh

执行成功会打印以下信息:

linux环境下安装可操作图库语言Gremlin的图框架HugeGraph

初始化完成后,自动生成一个corksdb-data的文件,这个文件禁止删除,它是与数据存储相关的文件,HugeGraph其实可以与Hbase等第三方组件集成,可在conf目录下的hugegraph.properties文件中进行配置。linux环境下安装可操作图库语言Gremlin的图框架HugeGraph

3.接下来就可以启动HugeGraph Server服务了,执行指令:

bin/start-hugegraph.sh

执行成功后,会打印以下信息:

linux环境下安装可操作图库语言Gremlin的图框架HugeGraph

最后,输入jps,若出现HugeGraph Server的进程,则证明已经安装启动成功。

 

二.接下来,就开始安装启动图形化HugeGraph Studio

1.解压HugeGraph Studio压缩包:

tar -zxvf hugegraph-studio-0.10.0.tar.gz

解压完成后,进入已解压的文件目录里,执行指令:vim conf/hugegraph-studio.properties,进行配置文件编辑状态:

其中,studio.server.port填8088,studio.server.host填0.0.0.0,可令本机与本机之外的机器访问,graph.server.host填的是HugeGraph Server所在机器的地址IP,其安装在虚拟机192.168.200.128机器上,graphGraph Server.port对应的是HugeGraph Server配置设置的8080端口,只需修改设置下图截图ip与端口即可。

linux环境下安装可操作图库语言Gremlin的图框架HugeGraph

2.安装完成后,即可执行指令bin/hugegraph-studio.sh进行启动操作,成功启动后,显示打印以下信息:

linux环境下安装可操作图库语言Gremlin的图框架HugeGraph

在浏览器测试运行下,输入1+3,若能显示[4],即已经完整启动完成,可在以下Studio界面玩Gremlin图数据库语言了。

linux环境下安装可操作图库语言Gremlin的图框架HugeGraph

过程遇到的问题:

刚开始,我参考网上一些教程,把HugeGraph Studio的配置文件中graph.server.host改成0.0.0.0。

linux环境下安装可操作图库语言Gremlin的图框架HugeGraph

发现可以出现图形化界面,但是,在操作运行时,报了“Failed to connect HugeGraphServer.com.baidu.hugeGraph.rest.ClientException:Failed to do request的错误,后经检查,发现这里不能填对应HugeGraph Server配置文件里设置的0.0.0.0,而需要填HugeGraph Server所在的机器Ip,例如其所在虚拟机Ip,这样才能正常运行。

linux环境下安装可操作图库语言Gremlin的图框架HugeGraph

图数据库是一项很前沿的技术,欢迎小伙伴关注我,我会把学习笔记做成专栏记录下来。

上一篇:如何使用gremlin python在gremlin服务器上提交更改


下一篇:DataStax Astra——云端的Cassandra