IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> TiDB数据库 -> 正文阅读

[大数据]TiDB数据库

目录

TiDB数据库简介

TiDB 架构

TiDB Server

TiKV Server

PD Server


TiDB数据库简介

TiDB 工具下载 | PingCAP Docs

TiDB 是一款结合了传统的关系型数据库和?NoSQL?数据库特性的新型分布式数据库。基于Google 公司的Google Spanner / F1论文设计的开源分布式数据库,而 Spanner/F1 是 Google 公司研发的可扩展的、多版本、全球分布式、可同步复制的数据库。TiDB是第一个把数据分布在全球范围内的系统,并且支持外部一致性的分布式事务。TiDB在设计时追求无限水平扩展,具备强一致性和高可用性,支持分布式事务的处理。TiDB的目标是为在线交易处理(OnlineTransactional Processing, OLTP)和在线分析处理(Online Analytical Processing, OLAP)场景提供一站式的解决方案,支持MySQL数据库的数据向TiDB迁移,包括分库、分表后的MySQL集群也可通过工具进行实时迁移。

TiDB 架构

TiDB具有无限水平扩展和高可用性的特点,通过简单地增加新节点即可实现计算和存储能力的扩展,轻松地应对高并发、海量数据的应用场景。TiDB的整体架构参考 Google Spanner/F1 的设计,也分为 TiDB 和 TiKV 上下两层。TiDB 对应的是Google F1,是一层无状态的 SQL 层,负责与客户端交互,对客户端体现的是MySQL网络协议,且客户端需要通过一个本地负载均衡器将SQL 请求转发到本地或最近的数据中心中的TiDB服务器。TiDB服务器负责解析用户的SQL语句,生成分布式的查询计划,并翻译成底层Key-Value操作发送给TiKV,TiKV是真正存储数据的地方,对应的是 Google Spanner,是一个分布式 Key-Value 数据库,支持弹性水平扩展、 自动的灾难恢复和故障转移以及 ACID 跨行事务。TiDB架构采用PD集群来管理整个分布式数据库,PD服务器在 TiKV节点之间以Region作为单位进行调度,将部分数据迁移到新添加的节点上,完成集群调度和负载均衡。TiDB 的集群架构如下图所示:

从上图中可以看出,TiDB集群架构主要由TiDB节点、PD(Placement Driver)节点和TiKV节点3个组件构成。通常TiDB集群架构推荐至少部署3个TiKV节点、3个PD节点和2个TiDB节点,随着业务量的增长,可按照需求相应地添加TiKV或者TiDB节点

TiDB Server

TiDB Server完成与客户端的交互,兼容绝大多数的MySQL语法属于SQL层。在集群里多个客户端通过负载均衡组件将SQL请求转送至不同的TiDB Server,TiDB Server负责解析SQL请求,获取请求内容,然后进行合法性验证和类型推导,接着进行查询优化,包括逻辑优化和物理优化,优化完成后构建执行器,最后把数据从TiKV中取出来进行计算,将最终结果反馈给客户端。处理请求流程如下图所示:

TiDB Server是无状态的,每个TiDB Server都是平等的,其本身并不存储数据只负责计算,并可以进行无限水平扩展。当集群中单个TiDB Server实例失效时,可以重启这个实例或部署一个新的实例来提高集群的可用性。

TiKV Server

TiKV Server主要负责数据的存储,是一个分布式的提供事务的键值(Key-Value)存储引擎,存储的是键值对(Key-Value pair),并按照 Key 的二进制顺序进行有序存储。TiKV Server 将整个 Key-Value 空间分成很多段,每一段都是一系列连续的 Key,这一段称为 Region。TiKV Server 将 Region 作为存储数据的基本单元,每个 Region 负责存储一定大小的数据。每个 TiKV Server 负责多个 Region,并使用 Raft 协议来为每个 Region 做备份,可用于保持数据的一致性和数据容灾, 通过 PD Server 进行负载均衡调度。

PD Server

PD Server是TiDB中的全局中心总控节点,它是以集群的方式部署的,负责整个集群的调度,如数据的迁移及负载均衡等,也负责全局 ID 的生成,以及全局时间戳 TSO 的生成等。PD还保存着整个集群TiKV的元信息,即某个Key存储在哪个TiKV节点上,负责为TiDB Server提供路由功能。

TiDB

TIDB数据库查询效率非常快 单表5000W数据量 全表扫描查询耗时只需2s。

  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2022-07-21 21:37:17  更:2022-07-21 21:39:46 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/20 0:02:50-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码