本文主要是介绍【TiDB 二】TiDB核心特性,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
TiDB架构组成
TiDB集群主要包括三个核心组件:
- TiDB Server:负责接收SQL请求,通过PD中存储的元数据找到数据存在哪个TiKV上,并与TiKV交互将查询结果返回用户
- PD Server:整个集群的管理者,主要存储元数据(数据库、数据表相关的信息),能够实现负载均衡、分配全局唯一的事务ID
- TiKV Server:负责真正存储数据,本质上是一个KV(键值型)存储引擎
此外,还有用于解决用户OLAP(在线分析处理,可以理解为数据分析)需求的TiSpark组件,简化云上部署的TiDB Operator组件
TiDB核心特性
两大核心特性为:水平扩展、高可用
所有特性如下:
- 高度兼容MySQL:大多数情况,无需修改代码即可将MySQL迁移到TiDB(运维可以将TiDB作为一个从库挂到MySQL的主从架构中)
- 分布式事务:在分布式存储场景中,支持事务的ACID特性
- 一站式HTAP解决方案:HTAP为Hybrid Transactional/Analytical Processing,意为混合式事务/分析处理,结合TiDB Spark组件能够使用一份存储同时处理 OLTP(事务增删改查)、OLAP(数据分析)。这跟使用MySQL做OLAP需要多保存一份离线数据(非实时的冗余存储)是不一样的
- 云原生SQL数据库:支持公有云、私有云和混合云,使用TiDB Operator组件能够简化上云
- 水平弹性扩展:通过简单增加新节点(TiDB Server/ TiKV Server/ PD Server)可以实现TiDB的水平扩展,应对高并发和海量数据场景
- 金融级可用:相比于传统的主从复制方案,基于Raft的多数派选举协议可以提供金融级的100%数据强一致性保证
高可用
TiDB、TiKV、PD这三个组件都能容忍部分实例失效,不影响整个集群的可用性
这篇关于【TiDB 二】TiDB核心特性的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!