HugeGraph 正在参加 2021 年度 OSC 中国开源项目评选,请投票支持!
HugeGraph 在 2021 年度 OSC 中国开源项目评选 中已获得 {{ projectVoteCount }} 票,请投票支持!
2021 年度 OSC 中国开源项目评选 正在火热进行中,快来投票支持你喜欢的开源项目!
2021 年度 OSC 中国开源项目评选 >>> 中场回顾
HugeGraph 获得 2021 年度 OSC 中国开源项目评选「最佳人气项目」 !
授权协议 Apache
开发语言 Java
操作系统 跨平台
软件类型 开源软件
所属分类 数据库相关图数据库
开源组织 百度
地区 国产
投 递 者 张义-zhoney
适用人群 未知
收录时间 2019-11-15

软件简介

HugeGraph 是一款易用、高效、通用的开源图数据库系统(Graph Database), 实现了 Apache TinkerPop3 框架及完全兼容 Gremlin 查询语言, 具备完善的工具链组件,助力用户轻松构建基于图数据库之上的应用和产品。HugeGraph 支持百亿以上的顶点和边快速导入,并提供毫秒级的关联关系查询能力(OLTP), 并可与 Hadoop、Spark 等大数据平台集成以进行离线分析(OLAP)。

HugeGraph 典型应用场景包括深度关系探索、关联分析、路径搜索、特征抽取、数据聚类、社区检测、 知识图谱等,适用业务领域有如网络安全、电信诈骗、金融风控、广告推荐、社交网络和智能机器人等。

本系统的主要应用场景是解决百度安全事业部所面对的反欺诈、威胁情报、黑产打击等业务的图数据存储和建模分析需求,在此基础上逐步扩展及支持了更多的通用图应用。

主要特性

HugeGraph 支持在线及离线环境下的图操作,支持批量导入数据,支持高效的复杂关联关系分析,并且能够与大数据平台无缝集成。 HugeGraph 支持多用户并行操作,用户可输入 Gremlin 查询语句,并及时得到图查询结果,也可在用户程序中调用 HugeGraph API 进行图分析或查询。

本系统具备如下特点:

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

本系统的功能包括但不限于:

  • 支持从多数据源批量导入数据(包括本地文件、HDFS 文件、MySQL 数据库等数据源),支持多种文件格式导入(包括 TXT、CSV、JSON 等格式)
  • 具备可视化操作界面,可用于操作、分析及展示图,降低用户使用门槛
  • 优化的图接口:最短路径(Shortest Path)、K 步连通子图(K-neighbor)、K步到达邻接点(K-out)、个性化推荐算法 PersonalRank 等
  • 基于 Apache TinkerPop3 框架实现,支持 Gremlin 图查询语言
  • 支持属性图,顶点和边均可添加属性,支持丰富的属性类型
  • 具备独立的 Schema 元数据信息,拥有强大的图建模能力,方便第三方系统集成
  • 支持多顶点 ID 策略:支持主键 ID、支持自动生成 ID、支持用户自定义字符串 ID、支持用户自定义数字 ID
  • 可以对边和顶点的属性建立索引,支持精确查询、范围查询、全文检索
  • 存储系统采用插件方式,支持 RocksDB、Cassandra、ScyllaDB、HBase、MySQL、PostgreSQL、Palo 以及 InMemory 等
  • 与 Hadoop、Spark GraphX 等大数据系统集成,支持 Bulk Load 操作
  • 支持高可用 HA、数据多副本、备份恢复、监控等

组件

  • HugeGraph-Server: HugeGraph-Server 是 HugeGraph 项目的核心部分,包含 Core、Backend、API 等子模块;
    • Core:图引擎实现,向下连接 Backend 模块,向上支持 API 模块;
    • Backend:实现将图数据存储到后端,支持的后端包括:Memory、Cassandra、ScyllaDB、RocksDB、HBase 及 MySQL,用户根据实际情况选择一种即可;
    • API:内置 REST Server,向用户提供 RESTful API,同时完全兼容 Gremlin 查询。
  • HugeGraph-Client:HugeGraph-Client 提供了 RESTful API 的客户端,用于连接 HugeGraph-Server,目前仅实现 Java 版,其他语言用户可自行实现;
  • HugeGraph-Loader:HugeGraph-Loader 是基于 HugeGraph-Client 的数据导入工具,将普通文本数据转化为图形的顶点和边并插入图形数据库中;
  • HugeGraph-Spark:HugeGraph-Spark 能在图上做并行计算,例如 PageRank 算法等;
  • HugeGraph-Studio:HugeGraph-Studio 是 HugeGraph 的 Web 可视化工具,可用于执行 Gremlin 语句及展示图;
  • HugeGraph-Tools:HugeGraph-Tools 是 HugeGraph 的部署和管理工具,包括管理图、备份/恢复、 Gremlin 执行等功能。

界面展示

展开阅读全文

代码

的 Gitee 指数为
超过 的项目

评论

点击加入讨论🔥(11) 发布并加入讨论🔥
发表了资讯
2021/04/01 15:34

HugeGraph 图数据库获 Apache TinkerPop 官方认证

Apache软件基金会(Apache Software Foundation, ASF)是世界上最大的开源软件基金会,Apache目前拥有超过350个开源项目。 TinkerPop 是Apache基金会旗下的顶级项目,是一个面向实时事务处理以及批量、分析型图分析的图计算框架,其核心模块是TinkerPop Gremlin引擎。百度安全自研的图数据库HugeGraph实现了Apache TinkerPop3框架及完全兼容Gremlin查询语言,近期得到Apache TinkerPop的正式官方认证,并纳入其提供商列表大力推...

2
9
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
发表了博客
{{o.pubDate | formatDate}}

{{formatAllHtml(o.title)}}

{{parseInt(o.replyCount) | bigNumberTransform}}
{{parseInt(o.viewCount) | bigNumberTransform}}
没有更多内容
暂无内容
发表了问答
{{o.pubDate | formatDate}}

{{formatAllHtml(o.title)}}

{{parseInt(o.replyCount) | bigNumberTransform}}
{{parseInt(o.viewCount) | bigNumberTransform}}
没有更多内容
暂无内容
Apache Thrift <0.12.0 绕过验证漏洞
证书验证不恰当
Apache Thrift 是一个可扩展,跨语言服务 RPC 框架。 Apache Thrift 受影响版本的 TSaslTransport 只在 DEBUG 模式中开启了「确定 SASL 握手是否已成功完成」的 assert(断言),但是生产环境没有设置验证,可能导致绕过 SASL 协商。
CVE-2018-1320 MPS-2019-0104
2023-12-20 20:10
Connect2id Nimbus JOSE+JWT 存在对异常或异常情况的不当检查漏洞
对异常条件的处理不恰当
Connect2id Nimbus JOSE+JWT是Connect2id公司的一款基于Java的开源JWT(JSON Web Tokens)实现。 受影响版本存在对异常或异常情况的不当检查漏洞,原因是对解析 JWT 时可能会抛出各种未做处理的异常。攻击者可以通过此缺陷导致应用程序崩溃(获取应用程序崩溃而泄露得信息)或实现身份验证绕过。
CVE-2019-17195 MPS-2019-13154
2023-12-20 20:10
Apache Thrift <0.13.0 拒绝服务漏洞
不可达退出条件的循环(无限循环)
Apache Thrift 是一个可扩展,跨语言服务 RPC 框架。 Apache Thrift 受影响版本的 TProtocol 在处理非 T_VOID 或 T_STOP 类型时没有抛出异常,可能让服务陷入无限循环,导致服务停止响应甚至崩溃。
CVE-2019-0205 MPS-2019-13876
2023-12-20 20:10
SOFA-Hessian 代码问题漏洞
反序列化
【漏洞存在争议】SOFA-Hessian是一款开源的二进制序列化协议。 SOFA-Hessian 4.0.2及之前版本中存在代码问题漏洞,该漏洞源于程序没有将com.caucho.naming.Qname和com.sun.org.apache.xpath.internal.objects.Xstring加入黑名单。远程攻击者可借助特制的序列化对象利用该漏洞执行任意命令。
CVE-2019-9212 MPS-2019-1978
2023-12-20 20:10
Junit 信息泄露漏洞
不安全的临时文件
Junit是个人开发者的一个开放源代码的Java测试框架。 JUnit4 4.13.1之前版本存在信息泄露漏洞,该漏洞源于测试规则TemporaryFolder包含一个本地信息泄露漏洞。在类似Unix的系统中,系统的临时目录在该系统上的所有用户之间共享。因此,在将文件和目录写入此目录时,默认情况下,相同系统上的其他用户都可以读取它们。此漏洞不允许其他用户覆盖这些目录或文件的内容。 这是一个信息披露的漏洞。如果JUnit测试编写了敏感信息,这个漏洞才会造成敏感信息泄露。
CVE-2020-15250 MPS-2020-15183
2023-12-20 20:10
Google Guava 访问控制错误漏洞
关键资源权限分配不当
Google Guava是美国谷歌(Google)公司的一款包括图形库、函数类型、I/O和字符串处理等的Java核心库。 Guava 30.0版本之前存在访问控制错误漏洞,该漏洞源于Guava存在一个临时目录创建漏洞,允许访问机器的攻击者可利用该漏洞潜在地访问由Guava com.google.common.io.Files.createTempDir() 创建的临时目录中的数据。攻击者可以利用该漏洞访问临时文件目录。
CVE-2020-8908 MPS-2020-17429
2023-12-20 20:10
Apache Thrift 资源管理错误漏洞
拒绝服务
Apache Thrift是美国阿帕奇(Apache)基金会的一个用于跨平台开发的框架。 该框架存在资源管理错误漏洞,使用 Thrift 的应用程序在收到声明容器大小大于有效负载的消息时不会出错。 因此,恶意 RPC 客户端可能会发送短消息,这将导致大量内存分配,从而可能导致拒绝服务。
CVE-2020-13949 MPS-2021-1609
2023-12-20 20:10
netplex json-smart-v 分布式拒绝服务攻击
对因果或异常条件的不恰当检查
netplex json-smart是开源的一个JSON Java解析器。 netplex json-smart-v1 through 2015-10-23 and json-smart-v2 through 2.4 存在分布式拒绝服务攻击,该漏洞源于NumberFormatException 没有捕获到异常,它可能会导致使用该库的程序崩溃或暴露敏感信息。
CVE-2021-27568 MPS-2021-2102
2023-12-20 20:10
json-smart 存在拒绝服务漏洞
越界写入
json-smart 是一个开源的 Java JSON 解析器。 json-smart 的受影响版本中的解析器存在拒绝服务漏洞,漏洞源于 JSONParserByteArray.java 类中的 indexOf 函数读取未闭合的单引号(如:'c)时会产生 ArrayIndexOutOfBoundsException 异常,攻击者可利用此漏洞通过精心设计的 Web 请求导致拒绝服务 (DOS)。
CVE-2021-31684 MPS-2021-7737
2023-12-20 20:10
commons-codec:commons-codec 存在信息泄露漏洞
未授权敏感信息泄露
commons-codec:commons-codec 是一个包含各种格式(如 Base64 和 Hexadecimal)的简单编码器和解码器的包。 此软件包的受影响版本容易受到信息泄露的影响。当没有可以编码为字符串的字节数组值时,Base32 方法实现不会拒绝它,而是将其解码为任意值,该值可以使用相同的实现再次重新编码。这会导致信息泄露漏洞,攻击者可利用此漏洞获取通过base 32 字符串隧道传输的敏感信息。
MPS-2022-11853
2023-12-20 20:10
org.apache.tinkerpop:gremlin-core 存在XXE漏洞
XXE
Apache TinkerPop为一个图形计算框架。 Apache TinkerPop受影响版本容易受到通过 GraphMLReader 进行 XML 外部实体 (XXE) 注入的攻击,由于GraphMLReader类默认启用了 DTD 和外部实体,攻击者可利用此漏洞进行XML外部实体注入攻击。
MPS-2022-12129
2023-12-20 20:10
Apache Thrift <0.9.3 SSL DOS 和不安全协商漏洞
拒绝服务
Apache Thrift 是一个可扩展,跨语言服务 RPC 框架。 Apache Thrift 受影响版本中使用的 SSL 由于使用问题和版本老旧,导致存在拒绝服务漏洞和不安全协商。程序在关闭 SSL 期间 TSSLSocket 可能被利用来进行拒绝服务攻击,并且默认使用的 SSL 库允许不安全的 SSLv3 协商。
MPS-2022-12148
2023-12-20 20:10
FasterXML Jackson-databind 拒绝服务漏洞
拒绝服务
FasterXML Jackson是美国FasterXML公司的一款适用于Java的数据处理工具。jackson-databind是其中的一个具有数据绑定功能的组件。 当使用 JDK 序列化来序列化和反序列化 JsonNode 值时,受影响版本容易受到拒绝服务 (DoS) 的攻击。
MPS-2022-12500
2023-12-20 20:10
snakeYAML <1.31 存在拒绝服务漏洞
拒绝服务
snakeYAML 是一个将 YAML 文件与 Java 对象相互转换的开源代码库。 snakeYAML 在 1.31 之前的版本中在解析恶意(如多层嵌套的集合)的 YAML 文件时存在基于堆栈的缓冲区溢出漏洞( java.lang.StackOverflowError)。如果 snakeYAML 解析不受信任的 YAML 文件或者解析的数据直接由攻击者可控时,snakeYAML 容易受到拒绝服务的影响,通过限制集合的嵌套深度可缓解此漏洞。
CVE-2022-25857 MPS-2022-5144
2023-12-20 20:10
Apache Ivy <2.5.1 路径穿越漏洞
路径遍历
Apache Ivy 是一个用于管理(记录、跟踪、解决和报告)项目依赖关系的工具。 Apache Ivy 在2.5.1之前的版本中,由于对使用zip、jar或war进行打包的本地制品文件(artifact),Apache Ivy 提取压缩包时不会验证其中的目标路径名。 攻击者可利用此漏洞通过构造包含恶意路径名(如 ../ )的压缩包将其写入到本地文件系统上执行 Ivy 的用户具有写入权限的任何位置。
CVE-2022-37865 MPS-2022-53784
2023-12-20 20:10
Apache Ivy <2.5.1 路径遍历漏洞
路径遍历
Apache Ivy 是一个用于管理(记录、跟踪、解决和报告)项目依赖关系的工具。 Apache Ivy 在2.5.1之前的版本中存在路径遍历漏洞,当从远程仓库中下载 artifacts 到本地时,如果 artifacts 中的模块名、版本名或组织名中包含恶意字符串如( ../ ),恶意文件将存储在本地缓存或存储库之外的任意位置,攻击者可利用此漏洞创建任意恶意文件,或者覆盖本地缓存中原有的 artifacts。
CVE-2022-37866 MPS-2022-53785
2023-12-20 20:10
snakeYAML <1.31 存在基于堆栈的缓冲区溢出漏洞
栈缓冲区溢出
snakeYAML 是一个将 YAML 文件与 Java 对象相互转换的开源代码库。 snakeYAML 在 1.31 之前的版本中在解析恶意(如包含值非常大的正则表达式)的 YAML 文件时存在基于堆栈的缓冲区溢出漏洞( java.lang.StackOverflowError)。如果 snakeYAML 解析不受信任的 YAML 文件或者解析的数据直接由攻击者可控时,snakeYAML 容易受到拒绝服务的影响,通过限制匹配的值的长度可缓解此漏洞。
CVE-2022-38751 MPS-2022-56040
2023-12-20 20:10
snakeYAML <1.32 存在基于堆栈的缓冲区溢出漏洞
栈缓冲区溢出
snakeYAML 是一个将 YAML 文件与 Java 对象相互转换的开源代码库。 snakeYAML 在 1.32 之前的版本中在解析恶意(如包含递归数据)的 YAML 文件时存在基于堆栈的缓冲区溢出漏洞,例如 snakeYAML 的 load(String yaml)方法解析 &a\n- *a\n- *a:\n- *a 时会发生 java.lang.StackOverflowError 报错。如果 snakeYAML 解析不受信任的 YAML 文件或者解析的数据直接由攻击者可控时,snakeYAML 容易受到拒绝服务的影响。
CVE-2022-38752 MPS-2022-56041
2023-12-20 20:10
snakeYAML <1.31 存在拒绝服务漏洞
栈缓冲区溢出
snakeYAML 是一个将 YAML 文件与 Java 对象相互转换的开源代码库。 snakeYAML 在 1.31 之前的版本中在解析恶意(如包含递归数据或过长的正则表达式内容)的 YAML 文件时存在基于堆栈的缓冲区溢出漏洞( java.lang.StackOverflowError)。如果 snakeYAML 解析不受信任的 YAML 文件或者解析的数据直接由攻击者可控时,snakeYAML 容易受到拒绝服务的影响。
CVE-2022-38750 MPS-2022-56051
2023-12-20 20:10
snakeYAML <1.31 存在基于堆栈的缓冲区溢出漏洞
拒绝服务
snakeYAML 是一个将 YAML 文件与 Java 对象相互转换的开源代码库。 snakeYAML 在 1.31 之前的版本中在解析恶意(如包含递归数据或过长的正则表达式内容)的 YAML 文件时存在基于堆栈的缓冲区溢出漏洞(java.lang.StackOverflowError)。如果 snakeYAML 解析不受信任的 YAML 文件或者解析的数据直接由攻击者可控时,snakeYAML 容易受到拒绝服务的影响。
CVE-2022-38749 MPS-2022-56081
2023-12-20 20:10
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
11 评论
288 收藏
分享
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部