linux部署Hugegraph

news/2024/10/6 4:21:42/文章来源:https://www.cnblogs.com/sxFu/p/18286085

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

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/738823.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ComfyUI进阶篇:ComfyUI核心节点(一)

ComfyUI进阶篇:ComfyUI核心节点(一)前言:学习ComfyUI是一场持久战。当你掌握了ComfyUI的安装和运行之后,会发现大量五花八门的节点。面对各种各样的工作流和复杂的节点种类,可能会让人感到不知所措。在这篇文章中,我们将用通俗易懂的语言对ComfyUI的核心节点进行系统梳理,…

springboot实现登录demo

springboot,Jwt认证,登录实现简单的登录功能 实体类 定义实体类为User3类。 使用@Data:提供类的get,set,equals,hashCode,canEqual,toString方法; 使用@AllArgsConstructor:提供类的全参构造 使用@NoArgsConstructor:提供类的无参构造 类代码如下 @Data @AllArgsCon…

csv 导出工具

csv 导出工具一般大数据量导出 都会选择 csv 格式,就是存文本格式,相比excel 轻量级,同样数据量 csv 文件更小。工具类,分页导出 /*** Author: lyc* Date: 2024/07/05 16:27*/ @Slf4j public class CsvUtils {/*** 大数量导出** @param fileName 生成文件地址* @para…

虚拟ECU:纯电动汽车发展下的新选择

​人类文明的进步是一个不断自我否定、自我超越的过程。21世纪以来,随着科技进步和经济社会发展,能源和交通系统已从独立于自然环境的孤立系统,转变为与自然、技术、社会深度耦合的复杂系统。为实现可持续发展和应对气候变化,世界各国都在积极推进能源结构调整和技术创新,…

Python多线程-线程池ThreadPoolExecutor

1. 线程池 不是线程数量越多,程序的执行效率就越快。线程也是一个对象,是需要占用资源的,线程数量过多的话肯定会消耗过多的资源,同时线程间的上下文切换也是一笔不小的开销,所以有时候开辟过多的线程不但不会提高程序的执行效率,反而会适得其反使程序变慢,得不偿失。 为…

一个用来画拉氏图的简单Python脚本

这里我提供了一个用于画拉氏图的Python脚本源代码,供大家免费使用。虽然现在也有很多免费的平台和工具可以用,但很多都是黑箱,有需要的开发者可以直接在这个脚本基础上二次开发,定制自己的拉氏图绘制方法。技术背景 关于拉氏图的更多介绍,可以参考下这篇博客,这里简单引述…

如何实现超大场景的三维模型(3D)轻量化

三维工厂K3DMaker是一款三维模型浏览、分析、轻量化、顶层合并构建、几何校正、格式转换、调色裁切等功能专业处理软件。可以进行三维模型的网格简化、纹理压缩、层级优化等操作,从而实现三维模型轻量化。轻量化压缩比大,模型轻量化效率高,自动化处理能力高;采用多种算法对…

HP惠普笔记本使用问题和开启TPM

HP电脑使用 开机按F10,进入BIOS,如果是英文,切换到 Advanced,选择 Display Language,选择 简体中文然后返回上一页,切换到 安全引导配置 选择“启用传统支持和禁用安全引导”,然后F10 保存退出 开机+ESC是进入主菜单,可以从这里选择,进入引导 HP电脑在桌面使用快捷键…

Mysql之基本操作(库,表,用户管理)

库中有表,表中有数据 一、查看帮助信息点击查看代码 mysql> help create //help 后面跟上具体命令可以查看帮助二、查看支持的字符集点击查看代码 show charset; //查看支持的字符集 默认拉丁文字 latin1utf8 | UTF-8 Unicode //阉割版的 utf8mb4 | UTF-8 Unicode …

海康SDK报错Structure.getFieldOrder()

就是你调用的这个结构体以及其引用的其他结构体,可能没有getFieldOrder()的方法,你只要按照顺序把他填上去就好了。比如 public static class NET_DVR_TIME extends Structure {//校时结构参数public int dwYear; //年public int dwMonth; //月public int dwDa…

数字证书的应用场景有哪些?

在当今数字化飞速发展的时代,数字证书作为保障信息安全和身份认证的重要工具,发挥着越来越关键的作用。那么,数字证书究竟在哪些场景中得到了广泛的应用呢? 一、电子商务领域 在电子商务交易中,数字证书确保了交易双方的身份真实性和交易数据的完整性、保密性。例如,当消…

jenkins引用多个maven配置

普通项目都是用maven打包,有个特殊的项目是用到单独本地的maven库。 jenkins配置maven构建选项选择对应的maven名称即可本帖子也是纯手工制作,转载请标明出处-----------burukku(づ。◕ᴗᴗ◕。)づ