赞
踩
前几天和社区小伙伴友好交流(闲聊),不少加入 NebulaGraph 的小伙伴虽然对图感兴趣,但是因为业务调整或者是时间缘故,最终没能用上 NebulaGraph。而他们当中不少的小伙伴说,春节我打算好好学习一番。既然大家有此打算,那 Nebula 一定要来助力一番。
本文是一份极度友好,你即便只会一个开机操作不懂任何数据库,你也能获得像是下图这样的直观关系图谱。
* 注:本文虽然看过篇幅很长,大多数是为了方便新手对照加入了大量的图片供参考,别担心用上图数据库的过程很复杂:它真的很简单,几分钟就搞定了~
本文作者是一个 SQL 都不会写的小运营,她根据文档完成了 NebulaGraph 的部署和可视化工具 NebulaGraph Studio、NebulaGraph Explorer 的部署,以及完成了简单的图探索。优秀如你,一定可以完成本次的 NebulaGraph 图库打卡活动~
本文所用操作系统为 macOS,采用 Docker 和云服务两种方式来部署 NebulaGraph。如果你采用 Docker 部署方式,而操作系统为 Windows,记得自行搜索“Windows 如何安装使用 Docker Desktop”。
如果你已经完成了部署,会用 NebulaGraph Studio 之类的图探索工具。那么,你可以试试由思为提供的进阶实践教程(难度依次增加):
为了降低难度(其实是没有 Linux 机器),本次部署采用了 Docker 方式,按照文档:https://docs.nebula-graph.com.cn/3.6.0/4.deployment-and-installation/2.compile-and-install-nebula-graph/3.deploy-nebula-graph-with-docker-compose/,一步步执行。
你可以按照文档一步步操作,也可以只看本文完成 Docker 的部署安装。
首先,安装 Docker Compose。这里我们直接安装 Docker Desktop(Docker 桌面版),它提供了 Docker Compose。点击此处:https://www.docker.com/products/docker-desktop/,自行完成安装。
安装完成之后,点击你的 Docker 图标,运行 Docker。
当你看到上图,状态栏有 Docker 的图标,说明你的 Docker 环境已 ready。我们可以来验证下:打开你的 terminal,输入命令:docker-compose version
,有像下图一样的返回结果,说明你的 Docker 可以开始工作了。
现在有 Docker Compose 了,我们来安装下图数据库。
还是那个执行了 Docker 版本查询的 terminal,输入命令:
git clone -b release-3.6 https://github.com/vesoft-inc/nebula-docker-compose.git
让命令运行一段时间,看到下图:
好的,到此为止。你已经有了优秀的图数据库 NebulaGraph,完成了它的部署。
下面,我们来启动 NebulaGraph。非常简单的两条命令,还是在 terminal 里执行:
# 切到 nebula-docker-compose 目录
cd nebula-docker-compose
# 拉起服务
docker-compose up -d
看到上图,说明你的 NebulaGraph 的服务已经启动。
现在 NebulaGraph 已经启动了,一般来说现在就是连接它,执行什么 SQL boy 的日常 CRUD 操作——往数据库里加点数据、做些查询。
先前,我们提到了 NebulaGraph Studio 和 NebulaGraph Explorer 你可以理解是一个 Web 客户端,我们会用浏览器来连接 NebulaGraph。作为一个附加学习,下面是通过 nebula-console 来连接 NebulaGraph。
还是在之前那个执行了 docker-compose up -d
的 terminal,用命令 docker-compose ps
看下目前 Docker 中服务名:
nebula-docker-compose git:(release-3.6) docker-compose ps
NAME IMAGE COMMAND SERVICE CREATED STATUS PORTS
nebula-docker-compose-console-1 docker.io/vesoft/nebula-console:v3.5 "sh -c 'for i in `se…" console 44 seconds ago Up 40 seconds
nebula-docker-compose-graphd-1 docker.io/vesoft/nebula-graphd:v3.6.0 "/usr/local/nebula/b…" graphd 44 seconds ago Up 41 seconds (healthy) 0.0.0.0:9669->9669/tcp, 0.0.0.0:55153->19669/tcp, 0.0.0.0:55154->19670/tcp
nebula-docker-compose-graphd1-1 docker.io/vesoft/nebula-graphd:v3.6.0 "/usr/local/nebula/b…" graphd1 44 seconds ago Up 41 seconds (healthy) 0.0.0.0:55152->9669/tcp, 0.0.0.0:55150->19669/tcp, 0.0.0.0:55151->19670/tcp
nebula-docker-compose-graphd2-1 docker.io/vesoft/nebula-graphd:v3.6.0 "/usr/local/nebula/b…" graphd2 44 seconds ago Up 41 seconds (healthy) 0.0.0.0:55157->9669/tcp, 0.0.0.0:55155->19669/tcp, 0.0.0.0:55156->19670/tcp
nebula-docker-compose-metad0-1 docker.io/vesoft/nebula-metad:v3.6.0 "/usr/local/nebula/b…" metad0 44 seconds ago Up 43 seconds (healthy) 9560/tcp, 0.0.0.0:55131->9559/tcp, 0.0.0.0:55132->19559/tcp, 0.0.0.0:55133->19560/tcp
nebula-docker-compose-metad1-1 docker.io/vesoft/nebula-metad:v3.6.0 "/usr/local/nebula/b…" metad1 44 seconds ago Up 43 seconds (healthy) 9560/tcp, 0.0.0.0:55130->9559/tcp, 0.0.0.0:55128->19559/tcp, 0.0.0.0:55129->19560/tcp
nebula-docker-compose-metad2-1 docker.io/vesoft/nebula-metad:v3.6.0 "/usr/local/nebula/b…" metad2 44 seconds ago Up 43 seconds (healthy) 9560/tcp, 0.0.0.0:55136->9559/tcp, 0.0.0.0:55134->19559/tcp, 0.0.0.0:55135->19560/tcp
nebula-docker-compose-storaged0-1 docker.io/vesoft/nebula-storaged:v3.6.0 "/usr/local/nebula/b…" storaged0 44 seconds ago Up 42 seconds (health: starting) 9777-9778/tcp, 9780/tcp, 0.0.0.0:55140->9779/tcp, 0.0.0.0:55141->19779/tcp, 0.0.0.0:55142->19780/tcp
nebula-docker-compose-storaged1-1 docker.io/vesoft/nebula-storaged:v3.6.0 "/usr/local/nebula/b…" storaged1 44 seconds ago Up 42 seconds (health: starting) 9777-9778/tcp, 9780/tcp, 0.0.0.0:55144->9779/tcp, 0.0.0.0:55145->19779/tcp, 0.0.0.0:55143->19780/tcp
nebula-docker-compose-storaged2-1 docker.io/vesoft/nebula-storaged:v3.6.0 "/usr/local/nebula/b…" storaged2 44 seconds ago Up 42 seconds (health: starting) 9777-9778/tcp, 9780/tcp, 0.0.0.0:55139->9779/tcp, 0.0.0.0:55137->19779/tcp, 0.0.0.0:55138->19780/tcp
这里要注意 nebula-console 这个镜像对应的服务名 nebula-docker-compose-console-1,用 nebula-console 连接 NebulaGraph 时需要用到它。
在 terminal 继续执行命令 docker exec -it nebula-docker-compose-console-1 /bin/sh
,此时终端需要你输入 NebulaGraph 的账号、密码信息:
./usr/local/bin/nebula-console -u root -p nebula1234 --address=graphd --port=9669
在本文示例中设定账号 -u
为 root,密码 -p
为 nebula1234。你可以根据自己的喜好,修改为你记得住的密码。而上面语句的地址 --address
和端口 --port
直接用默认的 graphd 和 9669 即可。
等你通过账号和密码连接上 nebula-console 之后,你便可以进行相关的数据库操作,比如:你可以看下相关的服务状态。
还是根据文档:https://docs.nebula-graph.com.cn/3.6.0/nebula-studio/deploy-connect/st-ug-deploy/#docker_studio 走下。
先下载 nebula-studio 的 tar 包:3.8.0 版本,将下载的包放到你的 nebula-docker-compose 文件所在的目录下。
terminal 在 nebula-docker-compose 目录的情况下,执行下面的命令、打开对应的 tar 包:
mkdir nebula-graph-studio-3.8.0 && tar -zxvf nebula-graph-studio-3.8.0.tar.gz -C nebula-graph-studio-3.8.0
将 terminla 的目录切到 nebula-graph-studio-3.8.0 这个目录下:
cd nebula-graph-studio-3.8.0
如果你查看过 nebula-graph-studio-3.8.0 里的内容,里面就一个 .yaml 文件和说明文档,那如何搞到 nebula-studio 的镜像呢?下面的命令就是拉取相关的 nebula-studio:
docker-compose pull
现在看下上面命令的执行结果:
现在,我们来启动下 nebula-studio 服务:在刚才的 terminla 执行下面的命令
docker-compose up -d
看到下面的 nebula-graph-studio-380-web-1 已经是状态为 Started(绿色),
我们可以在浏览器终端打开 127.0.0.1:7001 访问 nebula-stuido:
在 graphd 部分填入你本机真实 IP,账号和密码可输入:root / nebula。至此,恭喜你已经有了玩转图数据库的环境。
刚我们搞了 Docker 的 NebulaGraph、NebulaGraph Studio 的部署安装,这里有一键完成之前的捷径。
前提,你得装好 Docker Desktop。打开 Docker,看到界面左侧的菜单栏有“Extension”:
添加扩展之后,在搜索框里输入:Nebula 便能找到对应的 NebulaGraph 扩展:
点击安装之后,你便能看到 NebulaGraph Extension 已经安装在你的 Docker Desktop 里。点击【Studio】:
好的 nebula-studio 服务启动
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。