Windows下安装JanusGraph(踩坑记录)

近期由于项目需求,需要使用JanusGraph,安装过程踩了无数的坑,特此记录下。也希望能让以后看到这篇文章的人少走弯路吧。
特此感谢家辉大神!安装过程中大部分都是看的他的教程,他的链接会贴在后面。

安装说明

JanusGraph有很多部署方式,可以选择不同的存储后端和索引后端。最常见的部署方式有以下三种:

  1. JanusGraph + Berkeley + ES : 主要用于小型环境
  2. JanusGraph + Cassandra + ES : 主要用于无Hadoop的环境
  3. JanusGraph + HBase + ES: 主要用于Hadoop集成的环境

由于我们项目只需要用JanusGraph解决一小部分数据问题,所以选用了最简单的1进行安装

JanusGraph+Berkeley+ES 安装

前提条件:因为JanusGraph是用Java语言开发的,因此在安装之前要搭配好JDK1.8环境
版本选择:我选择了JanusGraph0.3.1

下载

可以直接从该链接下载,JanusGraph0.3.1在最底下。

Windows下安装JanusGraph(踩坑记录)_第1张图片

安装配置
  1. 解压JanusGraph
    解压刚刚下载好的压缩包到任意目录,我是解压到D盘的根目录当中。
  2. 下载Hadoop的本地工具
    下载该链接,将其放入janusgraph-0.3.1-hadoop2\bin目录下。
  3. 启动ES
    JanusGraph自带了ElasticSearch,进入JanusGraph解压目录的elasticsearch\bin下面,直接双击elasticsearch.bat,即可启动ElasticSearch。
  4. 启动JanusGraph控制台
    通过命令行进入janusgraph-0.3.1-hadoop2\bin目录下,输入gremlin.bat进行启动。出现该界面即表明启动成功 。
    Windows下安装JanusGraph(踩坑记录)_第2张图片
    注意:运行命令行的时候。要以管理员身份运行,同时如果直接点击bin下面的gremlin.bat运行可以会出现系统找不到指定文件错误(踩坑的我)。
JanusGraph的基本使用

在Gremlin控制台模式下,以berkeley+es的方式开启Graph实例,如下:
gremlin> graph = JanusGraphFactory.open(‘conf/janusgraph-berkeleyje-es.properties’)
==>standardjanusgraph[berkeleyje:H:\ssdgreen\janusgraph-0.3.1-hadoop2\conf…/db/berkeley]
获取图遍历句柄:
gremlin> g = graph.traversal()
==>graphtraversalsource[standardjanusgraph[berkeleyje:H:\ssdgreen\janusgraph-0.3.1-hadoop2\conf…/db/berkeley], standard]
创造一个节点:
gremlin> g.addV(‘person’).property(‘name’,‘Dennis’)
==>v[4176]
查询刚创建的节点:
gremlin> g.V().has(‘name’, ‘Dennis’).valueMap()
==>[name:[Dennis]]

开启JanusGraph的远程服务

可以利用gremlin-server.bat启动JanusGraph的远程服务

gremlin-server.yaml配置修改

gremlin-server.yaml在janusgraph-0.3.1-hadoop2\conf\gremlin-server目录下。
修改时最好不要用记事本打开。
由于我们使用的是janusgraph+berkeleyje+es,所以将graph链接改为如下图所示,host可以不进行修改,我这里改成了我自己IP地址,方便后续利用Graphexp进行可视化,后面文章会讲到。
Windows下安装JanusGraph(踩坑记录)_第3张图片

修改janusgraph-berkeleyje-es-server.properties(重点重点重点)

把janusgraph-berkeleyje-es-server.properties里面的index.search.hostname改为127.0.0.1。这个坑浪费我三天时间。
Windows下安装JanusGraph(踩坑记录)_第4张图片

启动远程服务

通过命令行进入janusgraph-0.3.1-hadoop2\bin目录下,输入gremlin-server.bat进行启动。出现那个小猪,不报错,最后出现port8182即启动成功。

通过gemrlin_python进行连接

我们项目使用的python,所以。。。。
安装gremlinpython包
直接上代码吧

from gremlin_python.driver.driver_remote_connection import DriverRemoteConnection
from gremlin_python.process.anonymous_traversal import traversal
from gremlin_python.structure.graph import Graph

connect = DriverRemoteConnection('ws://192.168.___._:8182/gremlin', 'g')
graph = traversal().withRemote(connect)
graph.addV('person').property('name','Dennis').next()
print(graph.V().values('name').toList())

这里的192.168.___._改成你之前在gremlin-server.yaml填的host地址,如果你当时没修改,那就填127.0.0.1。运行后输出‘Dennis’,表明连接成功。

后续关于其他gremlin_python的语句如果有时间再整理

参考资料:

https://blog.csdn.net/gobitan

你可能感兴趣的:(Windows下安装JanusGraph(踩坑记录))