前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >[学习笔记] TiDB学习笔记(三)

[学习笔记] TiDB学习笔记(三)

原创
作者头像
菜刀兔
发布2022-01-02 14:16:50
1.1K2
发布2022-01-02 14:16:50
举报
文章被收录于专栏:菜菜小屋

本文是《极客时间》-《TiDb极简入门》的学习笔记。传送门:https://time.geekbang.org/opencourse/videointro/100089601


TiDB的HTAP之路

HTAP(Hybrid Transaction and Analytical Process,混合事务和分析处理)

同时支持OLTP 和OLAP,支持实时分析。

OLTP(在线交易): 关注高并发,低延迟

OLAP(在线分析): 更关注吞吐量

1. 分布式数据库式在大数据规模下提供HTAP的基础

2. TiDB-serer最大程序下推算法与Hash/Join关键算子提供了基础的AP能力

TiDB可以比喻成一个大号的Mysql, 最早TiDB是为了解决在线业务的分库分表问题,由于以下特性:

1. 海量存储允许多数据源汇聚,数据实时同步

2.支持标准sql,多表关联快速出结果

3.同名多业务模块,支持分表聚合后可以任务纬度查询

4.TiDB最大下推机制,以及并行hash join等算子,决定的TiDb在表关联上的优势

这些特性很适合数据中台的一些业务,被意外应用于数据中台,提供了一些基础的AP能力

3. 借助生态,让spark跑在Tikv上

但是TiDB的最初定位是面向OLTP的系统,针对OLAP,很容易造成OOM,所以引入了spark,分装为Ti-spark,缓解了数据中台算力的问题。但spark只能提供低并发的重量级查询,中小规模的AP查询会导致资源消耗高。

4.行列混合引擎,列式引擎提供实时写入能力

这时候OLTP的查询和TIspark用的同一套底层存储TiKv,OLTP和OLAP的资源在软件层面上很难实现隔离

物理隔离是最好的资源隔离

列存天然对OLAP查询友好,列式存储对批量写入友好,对实时更新不友好。借鉴了LSM的思想,在列式引擎上引入了delta tree的方法,最终实现了一个支持准实时更新的列式引擎:Ti-flash(用于OLAP数据副本).

5.行列引擎采取raft-base replication,解决了数据同步效率

如何将副本同步到列式引擎?

Ti-Flash以Raft Learner的方式接入Multi-Raft组,使用异步方式传输数据,对Tikv产生非常小的负担,当数据同步到Ti-flash, 会被从行格式拆解为列格式。

6.TiDB-servert统一技术服务

7.Mpp解决计算节点的扩展与并行计算

OLAP的场景里,经常会出现大表关联,之前的架构中join是无法下推的,引入了MPP计算框架

TiDB关键技术创新

1. 自动分片技术式更细维度弹性的基础

2. 弹性的分片构成了动态的系统

3. multi-raft将复制组更离散

4.基于multi-raft实现写入的线性扩展

5.基于multi-raft实现跨IDC单表多节点写入

6.去中心化的分布式事务

7. Local Read and Geo-partition

8.更大数据容量下的TP和AP融合

9.数据服务的统一

TiDB典型应用场景及用户案例

1. OLTP Scale

2. Real-Time HTAP

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • TiDB的HTAP之路
    • 1. 分布式数据库式在大数据规模下提供HTAP的基础
      • 2. TiDB-serer最大程序下推算法与Hash/Join关键算子提供了基础的AP能力
        • 3. 借助生态,让spark跑在Tikv上
          • 4.行列混合引擎,列式引擎提供实时写入能力
            • 5.行列引擎采取raft-base replication,解决了数据同步效率
              • 6.TiDB-servert统一技术服务
                • 7.Mpp解决计算节点的扩展与并行计算
                • TiDB关键技术创新
                • TiDB典型应用场景及用户案例
                相关产品与服务
                TDSQL MySQL 版
                TDSQL MySQL 版(TDSQL for MySQL)是腾讯打造的一款分布式数据库产品,具备强一致高可用、全球部署架构、分布式水平扩展、高性能、企业级安全等特性,同时提供智能 DBA、自动化运营、监控告警等配套设施,为客户提供完整的分布式数据库解决方案。
                领券
                问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档