什么是TuGraph

本文主要介绍TuGraph社区版的主要功能和特性,以及TuGraph企业版和社区版的差异。

1. 简介

TuGraph图数据库由蚂蚁集团与清华大学联合研发,构建了一套包含图存储、图计算、图学习、图研发平台的完善的图技术体系,拥有业界领先规模的图集群,解决了图数据分析面临的大数据量、高吞吐率和低延迟等重大挑战,是蚂蚁集团金融风控能力的重要基础设施,显著提升了欺诈洗钱等金融风险的实时识别能力和审理分析效率,并面向金融、工业、政务服务等行业客户。

2. TuGraph社区版

2022年9月,TuGraph单机版开源,提供了完备的图数据库基础功能和成熟的产品设计,支持TB级别的数据规模,为用户管理和分析复杂关联数据提供了高效、易用、可靠的平台。

TuGraph社区版于2022年9月开源,提供了完整的图数据库基础功能和成熟的产品设计(如ACID兼容的事务、编程API和配套工具等),适用于单实例部署。社区版支持TB级别的数据规模,为用户管理和分析复杂关联数据提供了高效、易用、可靠的平台,是学习TuGraph和实现小型项目的理想选择。

3. TuGraph特性

TuGraph是支持大数据量、低延迟查找和快速图分析功能的高效图数据库。TuGraph也是基于磁盘的数据库,支持存储多达数十TB的数据。TuGraph提供多种API,使用户能够轻松构建应用程序,并使其易于扩展和优化。

它具有如下功能特征:

  • 属性图模型

  • 实时增删查改

  • 多重图(点间允许多重边)

  • 多图(大图与多个子图)

  • 完善的ACID事务处理,隔离级别为可串行化(serializable)

  • 点边索引、全文索引

  • 混合事务和分析处理(HTAP),支持图查询、图分析、图学习

  • 主流图查询语言(OpenCypher、ISO GQL等)

  • 支持OLAP API,内置30多种图分析算法

  • 基于C++/Python的存储过程,含事务内并行Traversal API

  • 提供图可视化工具

在性能和可扩展性方面的支持:

  • 千万点/秒的高吞吐率

  • TB级大容量

  • 高可用性支持

  • 高性能批量导入

  • 在线/离线的备份恢复

4. 数据模型

4.1. 图模型

TuGraph是一个具备多图能力的强类型、有向属性图数据库。

  • 图项目:每个数据库服务可以承载多个图项目(多图),每个图项目可以有自己的访问控制配置,数据库管理员可以创建或删除指定图项目。

  • 点:指实体,一般用于表达现实中的实体对象,如一部电影、一个演员。

    • 主键:用户自定义的点数据主键,默认唯一索引,在对应的点类型中唯一。

    • VID:点在存储层自动分配图项目中的唯一ID,用户不可修改。

    • 上限:每个图项目存储最多2^(40)个点数据。

  • 边:用于表达点与点之间的关系,如演员出演电影。

    • 有向边:边为有向边。若要模拟无向边,用户可以创建两个方向相反的边。

    • 多条边:两个点数据之间可以有多条边数据。当前TuGraph支持重复边,如要确保边边唯一,需要通过业务策略实现。

    • 上限:两个点数据之间存储最多2^(32)条边数据。

  • 属性图:点和边可以具有与其关联的属性,每个属性可以有不同的类型。

  • 强类型:每个点和边有且仅有一个标签,创建标签后,修改属性数量及类型有代价。

    • 指定边的起/终点类型:可限制边的起点和终点点类型,支持同类型边的起点和终点的点类型不同,如个人转账给公司、公司转账给公司;当指定边的起/终点类型后,可增加多组起/终点类型,不可删除已限制的起/终点类型。

    • 无限制模式:支持不指定边的起点和终点的点类型,任意两个点类型间均可创建该类型的边数据。注:当指定边的起/终点类型后无法再采用无限制模式。

4.2. 数据类型

TuGraph支持多种可用于属性的数据类型。具体支持的数据类型如下:

数据类型

最小值

最大值

描述

BOOL

false

true

布尔值

INT8

-128

127

8位整型

INT16

-32768

32767

16位整型

INT32

- 2^31

2^31 - 1

32位整型

INT64

- 2^63

2^63 - 1

64位整型

DATE

0000-00-00

9999-12-31

“YYYY-MM-DD” 格式的日期

DATETIME

0000-00-00 00:00:00

9999-12-31 23:59:59

“YYYY-MM-DD HH:mm:ss” 格式的日期时间

FLOAT

32位浮点数

DOUBLE

64位浮点数

STRING

不定长度的字符串

BLOB

二进制数据(在输入输出时使用Base64编码)

4.3. 索引

TuGraph支持对点或边的属性创建索引,以提升查询效率。

  • 索引可以是唯一或非唯一索引。

  • 如果为点标签创建了唯一索引,在修改该标签的点时,会先执行数据完整性检查,以确保该索引的唯一性。

  • 每个索引都基于一个点或边的一个属性创建,可以对同一点或边的多个属性创建索引。

  • BLOB类型的属性不能建立索引。

5. TuGraph企业版

企业版对商业化功能支持更加完善,包括分布式集群架构,覆盖探索、研发、服务、运维管理全生命周期的一站式图平台,在线、近线、离线的图计算引擎,支持流式、大数据类数据源,多地多中心的部署形态,以及专家支持服务等。企业版是商业化解决方案的理想选择。

如需商业支持,请联系我们:

  • 电话:400-903-0809

  • 邮件:tugraph@service.alipay.com

  • 官网:https://tugraph.antgroup.com