课程名称:201+2.1 when to use tidb
学习时长:
20
课程收获:
了解了TIDB的适用场景和不适用场景。以及小表场景下的优化方案。
课程内容:
1.OLTP场景
TIDB特性;
- tidb语法和MYSQL兼容
- 支持二级索引
- 支付ACID
- 弹性水平扩展,没有容量上限,对应用无感知
适合场景:
- 更适合海量数据场景
- 更适合访问模式比较随机场景,访问最好是均匀的,像SAS服务,客户关心自己的数据。访问相对随机。
需注意场景:小表类业务
原因是因为容易形成热点数据。但可通过如下优化。
2.real-time htap
- 适合混合事务系统,分析事务系统
- 在OLTP业务中可使用TIFLASH提供OLAP查询,避免干扰业务系统,并获取最新数据。
- 综合数据平台
如果你有多种不同的数据源(oltp,流数据平台等),你希望进行OLAP查询,可使用TIDB作为综合数据平台实现。
如下图所示:
3.tipark
可通过TIPARK打通TIDB和其他生态系统的通道。比如HADOOP。
对于你如下工作场景很有帮助:
- 迭代过程
比如传统ETL JOB
- 联合数据集
联合大量不同数据源的数据集
大量数据清洗和排序工作
如下图所示:
可在你已有的SPARK环境可使用TIPARK提供对TIDB数据的读取分析。剩下工作和之前场景工作无差异。
4.不太适合场景
- 单机可满足业务需求
- 业务有非常重度分析场景
比如多张表每张表超过上亿数据,你希望有笛卡尔积,关联等操作。并且有大量中间结果,中间结果超过TIDB物理机内存。
- OLTP场景要求延迟要求亚毫秒级,如要求低级1毫秒。
redis可满足该需求。
学习过程中参考的其他资料
https://docs.pingcap.com/zh/tidb/stable/troubleshoot-hot-spot-issues#使用-tidb-dashboard-定位热点表