TigerGraph平台概览
Last updated
Last updated
TigerGraph是世界上第一个且唯一的“原生并行图(NPG)”数据库系统。它是一个功能完备的、可分布式部署的图分析平台,并支持互联网级别的海量实时数据分析。TigerGraph的原生并行图同时与本地存储和计算模块共同工作,其工作模式类似于并行运算引擎,支持实时的图数据更新。它的一系列强大功能使得它拥有以下这些得天独厚的优势:
高速数据加载和建图 - 每台计算机每小时可加载高达50-150GB的数据。
高速并行图算法执行 - 每台计算机每秒钟可以遍历数以亿计的点或边。
支持通过REST端点实时更新和插入数据 - 在20台普通的商用计算机上,可以实现每天20亿次实时图操作,涉及1000亿个点和6000亿条边。
能够将实时数据分析与海量离线数据处理相结合 - 目前市面上唯一拥有此功能的系统。
请访问我们的网站( www.tigergraph.com.cn),您可以在资料中心部分找到对应的白皮书和其他技术资料。
TigerGraph平台被设计为可以部署在通用的Linux服务器上,其核心组件(GSE和GPE)由C++编写以实现最好的性能表现。平台的设计初衷便是能够完美适配现有的IT使用环境,尽量不需要客户做出任何改变。
数据来源 : 本平台内包含一个高弹性高性能的数据加载模块。该模块可以实时在线将结构化或半结构化数据以数据流方式导入平台中。
平台架构 : 本平台既可以本地部署,也可以部署在云上,甚至也可以以两种方式混合部署。
与现有应用集成 : 本平台提供REST风格的API,可用于将用户现有的数据结构或工作流整合到TigerGraph平台中。
下面的图表展示了TigerGraph平台各组件之间的关系:
在TigerGraph平台内部,我们使用消息传递的方式来协同内部的各个组件。而RESTPP(一种REST风格的服务器)则扮演着任务管理的核心角色。用户可以自行决定如何同系统交互。
GSQL 客户端 - 一个TigerGraph实例支持多个GSQL客户端,GSQL客户端支持远程部署。
GraphStudio - 一个图形化的用户界面,提供了绝大多数GSQL的基础功能。
REST API - 使用该API可以通过RESTPP直接与数据平台通信,该方法可大幅提升企业级应用在海量查询请求情况下的性能表现。
gAdmin - gAdmin是用于管理系统的工具。
术语名称
说明
DDL
数据定义语言(Data Definition Language)是一组用于定义数据库纲目的命令集。GSQL语言内含DDL命令。而在GraphStudio中,它是一个功能组件,叫做Design Schema。
Dictionary (DICT)
字典是一块共享的存储空间,用于记录图存储相关配置和状态信息的源数据。它包含了目录(即catalog,内含数据库纲目,加载作业和查询)。
DML
数据操作语言(Data Manipulation Language)是一组用于添加、修改和删除数据库内数据的命令集。通常情况下,尽管查询命令不修改数据,我们也认为它是DML的一部分。GSQL语言包含了完整的DML功能,包括了查询、添加、修改和删除的功能呢。
gadmin
gadmin是用于配置和管理TigerGraph系统的工具。它类似于mysql数据库中的mysqladmin工具。
gbar
gbar工具(即Graph Backup and Restore)用于备份和恢复图数据。
GPE
图处理引擎(Graph Processing Engine)是一个系统组件,它从REST++服务器中接收图数据查询和修改请求,并返回结果。
Graph Store
图存储是图数据的存储空间,它既是一个逻辑概念也是一个物理概念。图存储不仅存储图数据,也提供了内存级别的高速数据访问能力。 我们之所以使用“图存储”一词,是想将其与其他传统的图数据库区别开来。
GraphStudio UI
GraphStudio UI是一个基于Web浏览器的可视化用户交互界面。 用户可以使用它来轻松操作图数据库。 GraphStudio是除了GSQL Shell之外又一种操作数据库的工具,它包括了以下组件: 数据库纲目设计器、数据映射器、数据加载器、图浏览器以及查询编辑器。(即Schema Designer, Data Mapper, Data Loader, Graph Explorer, Query Editor)
GSE
图存储引擎(Graph Storage Engine)是用于操作图存储的组件。
GSQL
用于解释和执行图处理操作的用户程序,它包括了(a) 纲目定义, (b) 数据加载, (c) 数据更新和 (d) 数据查询。
GSQL Language
操作GSQL程序所使用的语言。
GSQL Shell
一个交互式的命令界面,用于执行GSQL程序
HA
高可用(High Availability)是一个业界通用的定义,表示一整套基于高级别可用性(例如高吞吐或高在线时间)而设计的计算机系统,通常情况下其可用性级别远高于单机系统。
IDS
ID服务(ID Service)是GSE组件的一部分,用于将数据对象的用户ID(外部ID)翻译成对应的图存储ID(内部ID)。
IUM
即安装、升级和维护(即Installation, Upgrade, Maintenance),它们都由gadmin工具完成。
Kafka
一个免费且开源的的高带宽分布式消息系统,由Apache软件基金会开发。由于本平台的架构基于分布式的消息协同,所以Kafka组件在TigerGraph系统安装时会默认自动安装在系统内,用于整个TigerGraph平台的消息传递功能。详见:https://kafka.apache.org/
MultiGraph
多图架构使得一张全局图可以在逻辑上被分割为多张子图的组合。每张子图都拥有各自独立的用户权限配置。 子图与子图之间可以重叠,这意味着每张子图内即可以保存私有数据,也可以保存公共数据。
Native Parallel Graph
原生并行图是一种技术,它从底层原理上支持了图数据库的高并行运算能力和高扩展性。该技术的核心在于其引入了基于点的“数据+运算”能力。
Nginx
一个免费开源的高性能HTTP服务器和转换代理软件。 在TigerGraph安装时会自动安装Nginx软件。详见:https://nginx.org/en/
REST++ 或 RESTPP
用于处理客户端RESTful请求的服务器组件。该组件的功能包括接收和审核REST请求,调用GPE组件以及返回处理结果。 此外, REST++组件为用户提供了大量现成的端点和API, 帮助用户自行定制查询逻辑或处理返回的结果。
Single Sign-On (SSO)
单点登录(SSO)使用户可以使用同一套身份信息登录多个不同的系统。
TigerGraph Platform
一个实时图数据分析软件平台。TigerGraph平台提供完备的功能帮助用户创建和管理图数据库,以及执行图数据查询和分析操作。该平台包含的组件有:图存储、图存储引擎、图处理引擎、REST++服务器、GSQL、GraphStudio,以及一些第三方软件,例如Apache Kafka和Zookeeper。
TigerGraph System
即TigerGraph平台及其语言。 但某些时候基于上下文,该词语也可能包含了其他可选的TigerGraph组件。
Zookeeper
一个由Apache软件基金会开发的免费开源软件,作为一个集中式的服务,用于维护配置信息、命名服务、分布式同步以及提供组服务。在部署分布式TigerGraph系统时该软件会自动安装。详见https://zookeeper.apache.org/