Dgraph集群安装搭建

Dgraph集群安装搭建

dgraph图数据库简单介绍

Dgraph 是一个具有图形后端的水平可扩展和分布式 GraphQL 数据库。它提供 ACID 事务、一致复制和线性化读取。它是从头开始构建的,用于执行一组丰富的查询。作为原生 GraphQL 数据库,它严格控制数据在磁盘上的排列方式,以优化查询性能和吞吐量,减少集群中的磁盘寻道和网络调用。

Dgraph 的目标是提供Google生产级别的规模和吞吐量,并以足够低的延迟为超过 TB 的结构化数据提供实时用户查询。Dgraph 支持GraphQL 查询语法,并通过 GRPC 和 HTTP 以JSON和Protocol Buffers响应。

Dgraph 与其他图形数据库的比较

在这里插入图片描述

搭建后的效果

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-dZlJj4d6-1666693851590)(Dgraph%E9%9B%86%E7%BE%A4%E5%AE%89%E8%A3%85%E6%90%AD%E5%BB%BA%201622a396c70a49cf9fa681782bf70f3c/Untitled.png)]

📢 相关节点介绍
在这里插入图片描述

Dgraph 集群由不同的节点(Zero、Alpha)组成,每个节点都有不同的用途。

  1. Dgraph Zero控制 Dgraph 集群,将服务器分配给一个组,并在服务器组之间重新平衡数据。
  2. Dgraph Alpha托管谓词和索引。谓词要么是与节点关联的属性,要么是两个节点之间的关系。索引是可以与谓词相关联的标记器,以启用使用适当函数的过滤。
  3. Ratel服务于 UI 以运行查询、突变和改变模式。

📢 如果需要Ratel安装方式可以评论留言

下面开始介绍如何搭建

安装方式:docker-compose

启动命令

docker-compose up -d

关闭命令

docker-compose down

docker-compose.xml

💡 下面是三个zero节点,6个alpha节点,可根据实际机器个数进行调整

version: "3.2"
services:
  zero:
    image: dgraph/dgraph:v21.12-slash
    volumes:
      - /tmp/data:/dgraph
    ports:
      - 5080:5080
      - 6080:6080
    restart: on-failure
    command: dgraph zero --my=10.11.32.15:5080 --replicas 3 --raft="idx=1"
    networks:
      - net-test
  alpha:
    image: dgraph/dgraph:v21.12-slash
    volumes:
      - /tmp/data/d0:/dgraph
    ports:
      - 7080:7080
      - 8080:8080
      - 9080:9080
    deploy:
      replicas: 1
    restart: on-failure
    command: dgraph alpha --my=10.11.32.15:7080 --zero=10.11.32.15:5080,10.11.36.115:5080,10.11.35.248:5080 --security whitelist=0.0.0.0/0
    networks:
      - net-test
  alpha1:
    image: dgraph/dgraph:v21.12-slash
    volumes:
      - /tmp/data/d1:/dgraph
    ports:
      - 7081:7081
      - 8081:8081
      - 9081:9081
    restart: on-failure
    command: dgraph alpha --my=10.11.32.15:7081 --zero=10.11.32.15:5080,10.11.36.115:5080,10.11.35.248:5080 --security whitelist=0.0.0.0/0 -o 1
    networks:
      - net-test
networks:
  net-test:
    ipam:
      config:
        - subnet: 192.168.255.0/24
version: "3.2"
services:
  zero:
    image: dgraph/dgraph:v21.12-slash
    volumes:
      - /tmp/data:/dgraph
    ports:
      - 5080:5080
      - 6080:6080
    restart: on-failure
    command: dgraph zero --my=10.11.36.115:5080 --replicas 3 --peer 10.11.32.15:5080 --raft="idx=2"
    networks:
      - net-test
  alpha:
    image: dgraph/dgraph:v21.12-slash
    volumes:
      - /tmp/data/d0:/dgraph
    ports:
      - 7080:7080
      - 8080:8080
      - 9080:9080
    deploy:
      replicas: 1
    restart: on-failure
    command: dgraph alpha --my=10.11.36.115:7080 --zero=10.11.32.15:5080,10.11.36.115:5080,10.11.35.248:5080 --security whitelist=0.0.0.0/0
    networks:
      - net-test
  alpha1:
    image: dgraph/dgraph:v21.12-slash
    volumes:
      - /tmp/data/d1:/dgraph
    ports:
      - 7081:7081
      - 8081:8081
      - 9081:9081
    restart: on-failure
    command: dgraph alpha --my=10.11.36.115:7081 --zero=10.11.32.15:5080,10.11.36.115:5080,10.11.35.248:5080 --security whitelist=0.0.0.0/0 -o 1
    networks:
      - net-test
networks:
  net-test:
    ipam:
      config:
        - subnet: 192.168.255.0/24
version: "3.2"
services:
  zero:
    image: dgraph/dgraph:v21.12-slash
    volumes:
      - /tmp/data:/dgraph
    ports:
      - 5080:5080
      - 6080:6080
    restart: on-failure
    command: dgraph zero --my=10.11.35.248:5080 --replicas 3 --peer 10.11.32.15:5080 --raft="idx=3"
    networks:
      - net-test
  alpha:
    image: dgraph/dgraph:v21.12-slash
    volumes:
      - /tmp/data/d0:/dgraph
    ports:
      - 7080:7080
      - 8080:8080
      - 9080:9080
    deploy:
      replicas: 1
    restart: on-failure
    command: dgraph alpha --my=10.11.35.248:7080 --zero=10.11.32.15:5080,10.11.36.115:5080,10.11.35.248:5080 --security whitelist=0.0.0.0/0
    networks:
      - net-test
  alpha1:
    image: dgraph/dgraph:v21.12-slash
    volumes:
      - /tmp/data/d1:/dgraph
    ports:
      - 7081:7081
      - 8081:8081
      - 9081:9081
    restart: on-failure
    command: dgraph alpha --my=10.11.35.248:7081 --zero=10.11.32.15:5080,10.11.36.115:5080,10.11.35.248:5080 --security whitelist=0.0.0.0/0 -o 1
    networks:
      - net-test
networks:
  net-test:
    ipam:
      config:
        - subnet: 192.168.255.0/24
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值