linux部署Hugegraph

HugeGraph是一款易用、高效、通用的开源图数据库系统(Graph Database)。

一、基本概述

  • 功能特性:HugeGraph实现了Apache TinkerPop3框架,并完全兼容Gremlin查询语言,具备完善的工具链组件,助力用户轻松构建基于图数据库之上的应用和产品。它支持百亿以上的顶点和边快速导入,并提供毫秒级的关联关系查询能力(OLTP),同时支持大规模分布式图分析(OLAP)。
  • 典型应用场景:深度关系探索、关联分析、路径搜索、特征抽取、数据聚类、社区检测、知识图谱等。适用业务领域包括网络安全、电信诈骗、金融风控、广告推荐、社交网络和智能机器人等。

二、功能特点

  1. 易用性:
    • 支持Gremlin图查询语言与RESTful API,同时提供图检索常用接口。
    • 具备功能齐全的周边工具,降低用户使用门槛。
  2. 高效性:
    • 在图存储和图计算方面做了深度优化,提供多种批量导入工具,轻松完成百亿级数据快速导入。
    • 通过优化过的查询达到图检索的毫秒级响应,支持数千用户并发的在线实时操作。
  3. 通用性:
    • 支持Apache Gremlin标准图查询语言和Property Graph标准图建模方法。
    • 支持基于图的OLTP和OLAP方案,集成Apache Hadoop及Apache Spark大数据平台。
  4. 可扩展性:
    • 支持分布式存储、数据多副本及横向扩容。
    • 内置多种后端存储引擎,也可插件式轻松扩展后端存储引擎。
  5. 开放性:
    • 代码开源(Apache 2 License),客户可自主修改定制,选择性回馈开源社区。

三、核心组件模块

  • HugeGraph-Server:项目的核心部分,包含Core、Backend、API等子模块。Core负责图引擎实现,Backend实现图数据存储到后端,API则内置REST Server,向用户提供RESTful API,同时完全兼容Gremlin查询。
  • HugeGraph-Client:提供了一个RESTful API客户端,用于连接到HugeGraph-Server。目前仅实现Java版,其他语言用户可自行实现。
  • HugeGraph-Loader:基于HugeGraph-Client的数据导入工具,将普通文本数据转化为图形的顶点和边并插入图形数据库中。
  • HugeGraph-Computer:分布式图处理系统(OLAP),是Pregel的一个实现,可以运行在Kubernetes上。
  • HugeGraph-Hubble:Web可视化管理平台,一站式可视化分析平台,涵盖从数据建模到数据快速导入,再到数据的在线、离线分析以及图的统一管理的全过程。
  • HugeGraph-Tools:部署和管理工具,包括管理图、备份/恢复、Gremlin执行等功能。

四、数据表示与存储

  • 数据表示:采用Property Graph模型,每个顶点/边由唯一的VertexId/EdgeId标识,属性存储在对应点/边内部。
  • 存储系统:支持多种后端存储引擎,如RocksDB、Cassandra、ScyllaDB、HBase、MySQL、PostgreSQL等,采用插件方式扩展。

五、应用场景与案例

HugeGraph在多个领域都有广泛的应用,如解决反欺诈、威胁情报、黑产打击等业务的图数据存储和建模分析需求,同时也逐步扩展及支持了更多的通用图应用。

综上所述,HugeGraph凭借其易用性、高效性、通用性、可扩展性和开放性,在图数据库领域具有显著的优势和广泛的应用前景。

六、部署

版本:hugegraph-0.12.0.tar.gz

将包上传至目标主机解压    tar -xzvf hugegraph-0.12.0.tar.gz  -C /usr/local/

修改配置文件     vim /usr/local/hugegraph-0.12.0/conf/graphs/hugegraph.properties

修改cassandra的地址和账密

初始化数据库

cd /usr/local/hugegraph-0.12.0/bin

sh init-store.sh

启动服务

sh start-hugegraph.sh

 

posted @ 2024-07-05 16:26  sxFu9528  阅读(4)  评论(0编辑  收藏  举报