TBase 企业级分布式 HTAP 数据库管理系统开源项目

我要开发同款
匿名用户2019年11月07日
46阅读
开发技术C/C++
所属分类数据库相关、数据库服务器
授权协议BSD 3-Clause

作品详情

TBase是腾讯数据平台团队在开源的PostgreSQL基础上研发的企业级分布式HTAP数据库管理系统:

具备高性能可扩展的分布式事务能力,支持RC和RR两种隔离级别;

通过安全、管理、审计三权分立体系,提供全方位的数据安全保证机制;

支持高性能分区表,可使得数据检索效率成倍提升;

SQL方面兼容2003标准、PostgreSQL语法和常用Oracle函数&数据类型、窗口函数等;

提供大小商户数据分离、冷热数据分离等高效的数据治理能力

TBase架构:

集群中有三种节点类型,各自承担不同的功能,通过网络连接成为一个系统。这三种节点类型分别是:

Coordinator:协调节点,对外提供接口,负责数据的分发和查询规划,多个节点位置对等,每个节点都提供相同的数据库视图,CN存储系统的全局元数据。

Datanode:处理存储本节点相关的元数据,每个节点还存储数据的一个分片。在功能上,DN节点负责完成执行协调节点分发的执行请求。

GTM: 全局事务管理器(Globaltransactionmanager.),负责管理集群事务信息,同时管理集群的全局对象,比如序列,除此之外GTM上不提供其他的功能。

TBase功能介绍:

分布式事务全局一致性能力:通过拥有自主专利的分布式事务一致性技术,包括两阶段提交(TwoPhaseCommit)以及全局时钟(GlobalTimestamp)的策略来保证在全分布式环境下的事务一致性。

SQL兼容能力:SQL2003标准、PostgreSQL语法、常用Oracle函数&数据类型、UDF/UDAF、常见窗口函数、JSON/JSONB/XML/数组等多种NoSQL类型、递归WITH、无锁DDL操作、扩展插件等。

HTAP能力:提供OLTP以及OLAP两个平面视角,OLTP业务运行在datanode主节点上,OLAP业务运行在datanode节点的备节点上,二者的数据同步采用流复制的方式来进行。

读写分离能力:提供了读写和只读两个平面视角,读写流量请求由主节点来处理,只读流量请求由备节点来处理,主备节点的数据同步采用流复制的方式来进行。

卓越的数据安全保障能力:通过三权分立的体系,将传统数据库系统DBA的角色分解为三个相互独立的角色:安全管理员、审计管理员、数据管理员;基于此提出安全策略,主要细分为三个部分:数据加密、数据脱敏访问、强制访问控制,三者组合提供多个层级的数据安全保障能力。

高效的数据治理能力:数据倾斜治理,用以解决数据分布不均带来的存储以及性能压力;冷热数据分级存储,用以降低业务的存储成本、提升热数据的性能。

多核并行计算能力:节点内部采用了并行计算,根据表大小同时启动多个进程来协同完成一个查询。

多租户能力:基于节点组nodegroup的集群内多租户解决方案,做到数据库集群内部的业务和资源隔离,多个业务在TBase内部相互隔离的运行。

多级容灾能力:采用强同步复制来保证主从数据完全一致,保障主节点故障时数据无丢失;提供基于任意时间点的恢复特性来防止误操作带来的数据丢失。

在线扩容能力:通过引入shardmap层(shardmap中每一项存储shardid和DN的映射关系),在新加节点时,只需要把一些shardmap中的shardid映射到新加的节点,并把对应的数据搬迁过去就可以了,大大缩短扩容时间。

丰富的周边生态能力:PostGIS、异构数据复制、LVS负载均衡、FDW联邦能力等。

 TBase适用场景:

在国产化落地、业务核心领域去O场景;

对HTAP混合事务分析应用模型有需要的业务场景;

对物联网地理信息系统有需求的业务场景;

对实时高并发环境下的分布式事务强一致性有要求的业务(如金融、证券等业务)场景;

对企业级数据安全、审计、治理应用相关功能有需求的业务场景;

对高可用、异地容灾、7*24小时服务能力有需求的业务场景;

有海量存储计算需求、弹性扩容、在线扩容需求的业务场景;

对异构数据互通共享有需求的业务场景。

声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论