logo
咨询企业版

周边工具

重磅!NebulaGraph Desktop 官宣,有奖公测邀约!

数量有限,前十位在论坛和 GitHub 反馈的同学,将获得 NebulaGraph 限量款周边礼盒!

▌一、愿景

Why Desktop

NebulaGraph 是一个分布式开源图数据库,凭借其高性能、高可扩展性的架构设计,已成为全球开发者和企业的首选方案之一。然而,对于许多用户(尤其是开发者和运维人员)而言,图数据库的使用仍面临以下痛点:

1. 部署复杂:传统部署依赖本地服务器网络和环境,新手需熟悉多步骤配置;

2. 工具碎片化:需切换多种工具(如命令行客户端、Jupyter Notebook、可视化工具)完成数据操作、算法开发与结果分析;

3. 学习成本高:nGQL 语法、分布式集群管理等技能需长期积累。

NebulaGraph Desktop 应运而生,旨在通过一体化解决方案解决上述痛点,其核心价值包括:

1. 零配置启动部署:内置轻量级容器运行时(基于 Docker),支持一键启动本地 NebulaGraph 实例

2. 全生命周期管理:集成数据操作(nGQL 编辑器)、可视化分析、算法调试、集群监控等功能

3. 开发者友好:提供模板化脚本、调试工具与文档指引,降低学习成本。

开源愿景

NebulaGraph Desktop 是 NebulaGraph 开源生态的重要补充,作为完全开源的项目,遵循 Apache 2.0 协议,鼓励全球开发者共同参与功能迭代与生态扩展,长期愿景:

  • 降低图技术使用门槛

  • 推动 NebulaGraph 生态多元化

  • 构建开放协作的开源开发者社区

▌二、技术架构

NebulaGraph-Desktop 基于 Electron + React + TypeScript 构建,架构设计亮点包括:

1.前后端分离:

  • 前端:基于 React 实现交互界面,使用 Ant Design 组件库保证一致性;

  • 后端:通过 Node.js 封装 NebulaGraph 客户端 API,管理容器生命周期。

2.容器管理:

  • 使用 Dockerode 库与 Docker Daemon 交互,动态创建 NebulaGraph 容器;

  • 数据持久化:通过 Volume 挂载确保实例重启后数据不丢失。

3.通信协议:

  • 前后端通过 IPC(进程间通信) 传递指令与数据,保障跨进程操作的高效性。

NebulaGraph Desktop 主要功能模块包括:

1.本地实例管理

  • 一键部署 NebulaGraph 单机或集群环境,支持版本切换与自动更新;

  • 实时监控服务状态(如 graphd、storaged、metad 进程资源占用)。

2.可视化查询与数据管理

  • 图形化 nGQL 编辑器,支持语法高亮、自动补全与执行计划可视化;

  • 数据导入/导出工具,兼容 CSV, JSON 等格式,支持与 Nebula Exchange 兼容;

  • 基于力导向布局渲染图数据,支持节点/边属性筛选、社区着色分析。

3.算法开发与调试

  • 集成 ng_ai 算法套件,提供 PageRank、Louvain 等算法的可视化配置与运行;

  • 支持调用 NebulaGraph Python Client 编写脚本,并直接调试;

  • 将算法输出(如节点权重)写回图数据库,生成持久化数据。

4.集群运维与扩展

  • 开发者可提交自定义插件(如数据迁移工具、性能分析模块);

  • 支持同时连接本地与云端 NebulaGraph 集群,统一监控状态。

▌三、下载安装

支持 Windows、macOS ,从 GitHub Releases 下载对应安装包即可

https://github.com/wey-gu/NebulaGraph-Desktop

  • 首次启动自动检测并安装依赖(如 Docker)

  • 在“实例管理”界面选择 NebulaGraph 版本(如 v3.8.0),点击“Start All”;

  • 自动完成镜像拉取、端口映射与配置文件生成,大概 5 分钟内即可运行

  • 实例启动后,自动生成默认账号(root/nebula)并开放 9669(graphd)、9779(storaged)等端口

  • 使用内置的 nGQL 控制台执行查询;

▌四、如何参与共建

https://github.com/wey-gu/NebulaGraph-Desktop/blob/main/DEVELOPMENT.md

1. 代码开发,如:

  • 修复 Issues 列表中的 bug

  • 实现 Feature Requests(如 支持暗黑主题)

2. 文档优化,如:

  • 完善 DEVELOPMENT.md 中的开发指南

  • 完善产品功能文档

3. 测试与产品反馈,如:

  • 参与公测,在 GitHub 仓库提交遇到的 bug 或 feat

  • 在 NebulaGraph 论坛分享使用经验