0
点赞
收藏
分享

微信扫一扫

【数据库系列】NebulaGraph部署与使用



博客目录

  • 一.基础准备
  • 1.参考文档
  • 2.依赖说明
  • 二.部署 NebulaGraph
  • 1.拉取代码
  • 2.启动容器
  • 三.连接 NebulaGraph
  • 1.查看容器
  • 2.进入容器
  • 3.连接服务端
  • 4.查看集群状态
  • 四.基础 SQL
  • 1.显示 hosts
  • 2.创建 SPACE
  • 3.创建 TAG
  • 4.插入知识图谱元数据
  • 5.退出
  • 五.常见查询
  • 1.显示顶点
  • 2.显示边
  • 3.所有节点的关联关系
  • 4.指定名词的关系查询
  • 5.删除顶点
  • 6.删除 space


一.基础准备

1.参考文档

参考文档

2.依赖说明

使用 Docker Compose 可以基于准备好的配置文件快速部署 NebulaGraph 服务,仅建议在测试 NebulaGraph 功能时使用该方式。

应用程序

推荐版本

官方安装参考

Docker

最新版本

https://docs.docker.com/engine/install/

Docker Compose

最新版本

https://docs.docker.com/compose/install/

Git

最新版本

https://git-scm.com/download/

【数据库系列】NebulaGraph部署与使用_新版本_02

二.部署 NebulaGraph

1.拉取代码

git clone -b release-3.6 https://github.com/vesoft-inc/nebula-docker-compose.git

2.启动容器

# 工作目录
cd  /data/nebula-docker-compose/

# 启动
docker-compose up -d

三.连接 NebulaGraph

1.查看容器

docker-compose ps

2.进入容器

docker exec -it nebula-docker-compose-console-1 /bin/sh

3.连接服务端

./usr/local/bin/nebula-console -u root -p nebula --address=graphd --port=9669

默认情况下,身份认证功能是关闭的,只能使用已存在的用户名(默认为root)和任意密码登录。如果想使用身份认证,请参见身份认证。

4.查看集群状态

【数据库系列】NebulaGraph部署与使用_Docker_03

四.基础 SQL

1.显示 hosts

show hosts;

2.创建 SPACE

CREATE SPACE IF NOT EXISTS course(vid_type=FIXED_STRING(256), partition_num=1, replica_factor=1);

3.创建 TAG

USE course;

CREATE TAG IF NOT EXISTS entity(name string);
CREATE EDGE IF NOT EXISTS relationship(relationship string);
CREATE TAG INDEX IF NOT EXISTS entity_index ON entity(name(256));

4.插入知识图谱元数据

insert vertex entity values "鲁迅":("鲁迅");
insert vertex entity values "作家":("作家");
insert edge relationship values "鲁迅"->"作家":("是");

5.退出

# 退出数据库
exit

#退出容器
exit

【数据库系列】NebulaGraph部署与使用_docker_04

五.常见查询

1.显示顶点

# 显示顶点字段
show tags;

# 显示所有实体
match (e) return e;

# 显示名称
match (e) return e.`entity`.`name`;

2.显示边

# 返回会去重

# 显示边字段
show edges;

# 边的解释信息,关系

MATCH ()-[e]->() RETURN e

3.所有节点的关联关系

# 不会去重
MATCH ()-[e:relationship]-() RETURN e
MATCH ()-[e]-() RETURN e

4.指定名词的关系查询

MATCH (p:`entity`)-[e:relationship]->(m:`entity`)\
  WHERE p.`entity`.`name` == '鲁迅'\
RETURN p.`entity`.`name`, e.relationship, m.`entity`.`name`;

5.删除顶点

DELETE VERTEX "鲁迅";

6.删除 space

# 删除space
DROP SPACE course;

觉得有用的话点个赞 👍🏻 呗。
❤️❤️❤️本人水平有限,如有纰漏,欢迎各位大佬评论批评指正!😄😄😄

💘💘💘如果觉得这篇文对你有帮助的话,也请给个点赞、收藏下吧,非常感谢!👍 👍 👍

🔥🔥🔥Stay Hungry Stay Foolish 道阻且长,行则将至,让我们一起加油吧!🌙🌙🌙

【数据库系列】NebulaGraph部署与使用_Docker_05


举报

相关推荐

0 条评论