hugegraph

HugeGraph图数据库各类索引功能对比

▼魔方 西西 提交于 2021-02-15 13:05:42
HugeGraph Database Index HugeGraph图数据库的索引支持比较全面,图数据库的索引一般包括几方面: 图索引/边索引(graph-index):主要用于加速获取顶点的关联边,一般使用邻接表或十字链表等方式,也可以使用hash索引。hugegraph使用的是邻接表。 超级点索引(vertex-centric-index):主要用于加速获取超级顶点的部分关联边,比如查询12315号码这个点最近一周的通话边。hugegraph通过sortkey实现的,相当于增强版邻接表。 普通属性索引(secondary-index):主要用于加速根据属性来检索顶点、或根据属性来检索边,数据库一般使用btree或hash实现。 可通过比较大小来检索的属性索引(range-index):主要用于加速根据属性范围来检索顶点或边,比如age>18的人,数据库一般使用btree实现。 可根据前缀+比较大小来检索的属性索引(shard-index):主要用于加速根据属性范围来检索顶点或边,比如city=Beijing && age>18的人。 可全文检索的属性索引(search-index):主要用于加速根据属性值中的任意文本段或词语来检索顶点或边,比如city contains Bay的人。 以上索引在HugeGraph图数据库中均支持,属性索引在HugeGraph实现根据存储而定

图数据库对比:Neo4j vs Nebula Graph vs HugeGraph

家住魔仙堡 提交于 2020-10-23 11:04:03
本文系腾讯云安全团队李航宇、邓昶博撰写 图数据库在挖掘黑灰团伙以及建立安全知识图谱等安全领域有着天然的优势。为了能更好的服务业务,选择一款高效并且贴合业务发展的图数据库就变得尤为关键。本文挑选了几款业界较为流行的开源图数据库与 Nebula Graph 进行了多角度的对比。 图数据库介绍 Neo4j Neo4j 是目前业界广泛使用的图数据库,包含社区版本和商用版本,本文中使用社区版本。 HugeGraph HugeGraph 是百度基于 JanusGraph 改进而来的分布式图数据库,主要应用场景是解决百度安全事业部所面对的反欺诈、威胁情报、黑产打击等业务的图数据存储和图建模分析需求。具有良好的读写性能。 Nebula Graph Nebula Graph 是一款开源的分布式图数据库,采用 shared-nothing 分布式架构,擅长处理千亿节点万亿条边的超大规模数据集,从而更好地服务企业级应用。 测试硬件环境 性能对比 我们使用不同量级的图从入库时间,一度好友查询,二度好友查询,共同好友查询几个方面进行了对比,结果如下: 可以看到在导入性能上,数据量小的时候 Nebula Graph 的导入效率稍慢于 Neo4j,但在大数据量的时候Nebula Graph 的导入明显优于其他两款图数据库;在 3 种查询场景下, Nebula Graph 的效率都明显高于 Neo4j,与

图数据库调研

女生的网名这么多〃 提交于 2020-09-25 18:33:28
概述 本文转自:http://tang.love/2018/08/31/graph_database_research/ 这里记录一下图数据相关的调研结论。下面是图数据库的定义: A graph database is a database that uses graph structures for semantic queries with nodes, edges and properties to represent and store data. 注意,这里只是说了通过 提供类似图的语义查询功能,并没有规定图的存储结构。图数据库的主要优点: 更好,更快速的查询和分析; 更简单和更自然的数据建模; 同时支持实时更新和查询; 数据结构的灵活性。 图数据库是所有数据管理系统中成长最快的分类,下面分别从图检索语言和图数据库两个方面来介绍图数据市场的发展。 图检索语言 这里主要对比下面: Cypher :Neo4j 的查询语言称作 Cypher,Cypher 是对图形的声明查询语言,使用图形模式匹配作为主要的机制作 图形数据选择(包括只读和变更操作)。Cypher 的声明模式匹配性质意味着可以通过描述想从它那里得到什么查询图形数据。 SPARQL :面向 RDF(Resource Description Framework)的三元组数据,W3C 标准,无 schema