[转帖]9.1 TiDB HTAP 的特点
HTAP 是 Hybrid Transactional / Analytical Processing 的缩写。这个词汇在 2014 年由 Gartner 提出。传统意义上,数据库往往专为交易或者分析场景设计,因而数据平台往往需要被切分为 TP 和 AP 两个部分,而数据需要从交易库复制到分析型数据库以便快速响应分析查询。而新型的 HTAP 数据库则可以同时承担交易和分析两种智能,这大大简化了数据平台的建设,也能让用户使用更新鲜的数据进行分析。
作为一款优秀的 HTAP 数据数据库,TiDB 除了优异的交易处理能力,也具备了良好的分析能力。
1. 数据库设计上的矛盾点
传统交易数据库在处理混合负载时有如下两个核心矛盾无法解决:
- 行存对于分析场景不友好
- 无法做到业务负载隔离
为了解决上述两个核心矛盾,作为 TiKV 扩展的列存储方案 TiFlash 应运而生,它有如下优势:
- 可更新列式存储设计,在提供高速更新能力的同时,提供高效的批量读取性能
- 配合源于 ClickHouse 的极致向量化计算引擎,更少的废指令,SIMD 加速
- 不影响 TiKV 稳定运行的前提下,提供一致性的读取保证,以及实时查询业务数据的能力
- TiDB 可以智能选择使用行存或者列存
2. 可更新列式存储引擎 Delta Tree
TiFlash 配备了可更新的列式存储引擎。列存更新的主流设计是 Delta Main 方式,基本思想是,由于列存块本身更新消耗大,因此往往设计上使用缓冲层容纳新写入的数据。然后再逐渐和主列存区进行合并。TiFlash 也使用了类似的 Delta Main 设计,从这个意义而言,LSM 也可用于列存更新。具体来说,Delta Tree 利用树状结构和双层 LSM 结合的方式处理更新,以规避单纯使用 LSM 设计时需要进行的多路归并。通过这种方式,TiFlash 在支持更新的同时也具备高速的读性能。

3. 实时且一致的复制体系
TiFlash 无缝融入整个 TiDB 的 Multi-Raft 体系。它通过 Raft Learner 进行数据复制,通过这种方式 TiFlash 的稳定性并不会对 TiKV 产生影响。例如 TiFlash 节点宕机或者网络延迟,TiKV 仍然可以继续运行无碍且不会因此产生抖动。于此同时,该复制协议允许在读时进行极轻量的校对以确保数据一致性。另外,TiFlash 可以与 TiKV 一样的方式进行在线扩容缩容,且能自动容错以及负载均衡。

4. 完整的业务隔离
由于 TiFlash 的列存复制设计,用户可以选择单独使用与 TiKV 不同的另一组节点存放列存数据。另外不论是 TiDB 还是 TiSpark,计算层都可以强制选择行存或者列存,这样用户可以毫无干扰地查询在线业务数据,为实时 BI 类应用提供强力支持。
智能的行列混合模式
如果不使用上述隔离模式进行查询,TiDB 也可经由优化器自主选择行列。这套选择的逻辑与选择索引类似:优化器根据统计信息估算读取数据的规模,并对比选择列存与行存访问开销,做出最优选择。通过这种模式,用户可以在同一套系统方便地同时满足不同特型的业务需求。例如一套物流系统需要同时支持点查某订单信息,也需要进行大规模聚合统计某一时间段内货物派送和分发的汇总信息,利用 TiDB 的行列混合体系可以很简单实现,且完全无需担心不同系统间数据复制带来的不一致。

5. 更快的业务接入速度
同时兼备行存和列存的优势,让用户能更容易地接入业务。利用传统手段,用户往往需要将在线数据导出到分析平台才能进行分析,而这中间涉及了复杂的 ETL 或者数据传输管道维护,另外不同系统之间数据如何保持一致,如何进行格式转换也是很费思量的事情。因此,整个业务接入过程往往要花费数天甚至数周。而使用 TiDB 则可以帮助你大大简化这个过程。
6. 未来规划
TiFlash 在未来计划支持不依赖 TiKV 的直接写入,当做 TiKV 的冷备存储等功能,这样 TiDB HTAP 体系将变得更加完整。
[转帖]9.1 TiDB HTAP 的特点的更多相关文章
- TiDB 深度实践之旅--真实“踩坑”经历
美团点评 TiDB 深度实践之旅(9000 字长文 / 真实“踩坑”经历) 4 PingCAP · 154 天前 · 3956 次点击 这是一个创建于 154 天前的主题,其中的信息可能已经有所发 ...
- 新一代数据库TiDB在美团的实践
1. 背景和现状 近几年,基于MySQL构建的传统关系型数据库服务,已经很难支撑美团业务的爆发式增长,这就促使我们去探索更合理的数据存储方案和实践新的运维方式.而随着分布式数据库大放异彩,美团DBA团 ...
- 美团在TIDB方面的实践
摘自-https://www.v2ex.com/t/508094 一.背景和现状 在美团,基于 MySQL 构建的传统关系型数据库服务已经难于支撑公司业务的爆发式增长,促使我们去探索更合理的数据存储方 ...
- 小试国产开源HTAP分布式NewSQL数据库TiDB-v5.3.0
概述 定义 TiDB官网 https://pingcap.com/zh/ 最新版本为5.3.0 TiDB GitHub源码 https://github.com/pingcap/tidb TiDB是由 ...
- 最火的分布式 HTAP 数据库 TiDB - 入门实践教程
偶然在某篇博客看到了 TiDB,一个融合 OLTP 和 OLAP 的分布式开源数据库, GitHub 上 Star 很多,然后 watch 了,发现 commit 和 pull request 一直都 ...
- [转帖]OLTP、OLAP与HTAP
OLTP.OLAP与HTAP https://blog.csdn.net/ZG_24/article/details/87854982 OLTP On-Line Transaction Proce ...
- TiDB 架构及设计实现
一. TiDB的核心特性 高度兼容 MySQL 大多数情况下,无需修改代码即可从 MySQL 轻松迁移至 TiDB,分库分表后的 MySQL 集群亦可通过 TiDB 工具进行实时迁移. 水平弹性扩展 ...
- TiDB
由于目前的项目把mysql换成了TiDb,所以特意来了解下tidb.其实也不能说换,由于tidb和mysql几乎完全兼容,所以我们的程序没有任何改动就完成了数据库从mysql到TiDb的转换,TiDB ...
- TiDB 部署及数据同步
简介 TiDB 是 PingCAP 公司受 Google Spanner / F1 论文启发而设计的开源分布式 HTAP (Hybrid Transactional and Analytical Pr ...
- TIDB数据集群部署
TIDB 数据库集群 一.TiDB数据介绍 1.1.TiDB数据简介 TiDB 是 PingCAP 公司设计的开源分布式 HTAP (Hybrid Transactional and Analytic ...
随机推荐
- 五菱宝骏车机升级教程【嘟嘟桌面或ES文件管理器】
文章来源:https://www.djww.net/607.html 简介 越来越多的汽车厂商自研车机系统,其实就是在原来安卓的基础上加入自己的元素,然后禁用某些功能从而实现禁止用户安装第三方app. ...
- GaussDB(DWS)条件表达式函数返回错误结果集排查
摘要:条件表达式函数中出现结果集不一致问题,我们首先要考虑是否入参数据类型不一致导致出参不一致. 本文分享自华为云社区<GaussDB(DWS)条件表达式函数返回错误结果集排查>,作者:y ...
- KubeEdge和Kuiper“双剑合并”,轻松解决边缘流式数据处理
摘要:KubeEdge 是一个开源的边缘计算平台,它在Kubernetes原生的容器编排和调度能力之上,扩展实现了 云边协同.计算下沉.海量边缘设备管理.边缘自治等能力.KubeEdge还将通过插件的 ...
- 基于OpenHarmony L2设备,如何用IoTDeviceSDKTiny对接华为云
摘要:本文主要讲解如何基于L2设备对接华为云IoTDA,以DAYU200开发板,采用IoTDeviceSDKTiny对接华为云IoTDA,当然这里也可以采用其他OpenHarmony的富设备. 本文分 ...
- 冠军斩获10万奖金!首届“域见杯”医检AI开发者大赛精彩落幕
摘要:首届"域见杯"医检AI开发者大赛精彩落幕. 8月24日,由广州市科学技术局指导,金域医学和华为云共同打造的中国第三方医检行业首个开发者大赛--"域见杯"医 ...
- 复杂查询so easy ,GaussDB(for Cassandra)推Lucene引擎全新解决方案
摘要:复杂查询so easy!GaussDB(for Cassandra)新特性来袭. 本文分享自华为云社区<来了!GaussDB(for Cassandra)新特性亮相>,作者:Gaus ...
- vue3,对比 vue2 有什么优点?
摘要:Vue3新版本的理念成型于 2018 年末,当时的 Vue 2 已经有两岁半了.比起通用软件的生命周期来这好像也没那么久,Vue3在2020年正式推出,在源码和API都有较大变化,性能得到了显著 ...
- CWE 视图层级关系解析:节点关系查询
本文分享自华为云社区<CWE视图层级关系的解析 之 CWE节点关系的查询>,作者: Uncle_Tom. 1. CWE 转换成 SQLite 表 依据<CWE视图层级关系的解析 之 ...
- 译文丨伯克利对serverless的看法:简化云编程
摘要:Serveless计算的目标和机会是让云编程者像使用高级语言那样受益. 本文分享自华为云社区<简化云编程,伯克利对serverless的看法(翻译)>,作者: 二手雄狮. 译者言: ...
- 最后一天,CDMP数据治理认证高分训练营(9-10月)开放报名!
大家好,我是独孤风,一位曾经的港口煤炭工人,目前在某国企任大数据负责人,公众号大数据流动主理人. 首先告诉大家一个好消息,在大家共同的努力下,我们的CDMP国际数据治理认证训练营(7-8月)基本收官, ...