什么是分布式数据库和TIDB 整体架构

技术什么是分布式数据库和TIDB 整体架构这篇文章给大家介绍什么是分布式数据库和TIDB 整体架构,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。TIDB 是一个分布式,强一致的可水平扩展的关系型数据

本文向您介绍分布式数据库和TIDB的整体架构。内容非常详细。感兴趣的朋友可以参考一下,希望对你有所帮助。

TIDB是一个分布式、强一致性和水平可扩展的关系数据库。在TIDB设计之初,它专注于四个设计点。

1横向扩展,横向扩展是设计之初最基本的要求,通过增加机器来扩展存储容量和计算能力。

2高可用性,TIDB是一个具有许多节点的分布式数据库。对于节点故障和数据库滚动升级,需要解决少量节点故障的问题。

Acid事务,虽然有些数据库为了更高效地存储和处理数据,放弃了SQL和事务,但是在生产中的事务场景中,事务是非常重要的。另一个主要原因是,如果事务的问题不是存储在本地,而是通过业务或中间件来解决,很难实现高效率。

4SQL支持,MYSQL支持,使得数据库整体使用变得容易。

下面是TIDB的结构图。

什么是分布式数据库和TIDB  整体架构

TIDB存储引擎是TIKV数据库存储引擎,采用分层架构实现。

1笔交易

2 MVCC

3筏

4本地kv存储

容灾能力和特点

高度分层,底层为ROCKSDB,数据存储通过raft高度可用。高度分层的主要原因是分层切换可以更独立地进行。数据存储在多个副本中,通过raft实现了很强的一致性。多个副本中只有一个领导者,其他节点都是追随者。其中,领导者和追随者的价值观是不固定的。领导者失败后,通过算法选择追随者转变为领导者的角色转换。

Raft本身支持一个数据的强大且一致的多个副本。如何对分布式数据进行切片,如何将不同的切片放在不同的位置,需要一种基于哈希切片或范围划分的切片算法。但是,因为数据库可能涉及连续的值查询,所以使用范围切片更合理。划分存储KEY的空间,主要是根据KEY VALUE存储的阈值,默认将数据除以96MB。

下图显示了多节点系统中节点区域从节点1到节点4的过程。

什么是分布式数据库和TIDB  整体架构

那么问题来了,在数据迁移的过程中,谁来控制整个迁移,Placement Driver集群来控制。

什么是分布式数据库和TIDB  整体架构

如上图所示,另外,在事务模型中,PD的领导者会根据时间算法提供一个时间戳作为事务的标签,整体设计理念是去中心化。在3.0之前,乐观锁被用作锁,它不是在数据事务中被锁定,而是在提交过程中被锁定。3.0提供悲观锁,类似于传统数据库的锁设计。

Tidbsql引擎

下图是整个TIDB SQL层的图表。

什么是分布式数据库和TIDB  整体架构

什么是分布式数据库和TIDB  整体架构

如果计算COUNT,那么TIDB PD知道这些数据在哪个区域,并且该区域根据条件在哪里累加和求和满足条件的数据。最后,每个区域将自己的累计和汇总到TIDB服务器,并汇总该和。

4 DDL在线修改,TIDB按照f1-schema-change的思路设计整个DDL操作。可以具体参考以下文献,总结几句。

什么是分布式数据库和TIDB  整体架构

1给出修改DDL操作的时间范围。

2在DDL操作中,每个区域将提供两种状态,可以删除也可以写入。

3租约的概念,在系统中设置的租约到期后,需要重新加载SCHEMA。

什么是分布式数据库和TIDB的整体架构将在这里分享,我希望

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/129610.html

(0)

相关推荐

  • 第二篇Scrum冲刺博客

    技术第二篇Scrum冲刺博客 第二篇Scrum冲刺博客1
    1.1每天举行站立式会议
    由于我们是不同班而且有男生和女生,所以大家都很难抽出时间参加站立式会议,所以我们改为微信会议1.2昨天已完成工作成员

    礼包 2021年11月24日
  • 抖音刷1w赞费用,抖音买赞一元1000个赞

    技术抖音刷1w赞费用,抖音买赞一元1000个赞抖音刷1w赞费用,抖音买赞一元1000个赞抖音刷点赞介绍,获取点赞有两种方法:一种是正规,一种是灰色捷径的
    短视频抖音火了,火得不能再火了,从大人到小孩几乎没有不知道抖音的,

    测评 2021年11月13日
  • 如何Python代码快速解析、整理上万份数据文件

    技术如何Python代码快速解析、整理上万份数据文件如何Python代码快速解析、整理上万份数据文件,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所

    攻略 2021年12月4日
  • 对MySQL性能影响关系紧密的配置参数有哪些

    技术对MySQL性能影响关系紧密的配置参数有哪些这篇文章主要介绍对MySQL性能影响关系紧密的配置参数有哪些,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!(一)连接连接通常来自Web 服务器,下面

    攻略 2021年12月8日
  • 前端异步请求axios的介绍与用法

    技术前端异步请求axios的介绍与用法 前端异步请求axios的介绍与用法官网
    http://www.axios-js.com/
    axios是什么1.Axios是一个基于promise的HTTP库,可以

    礼包 2021年11月24日
  • 水结冰的温度是多少度,水结冰的温度是0还是-4

    技术水结冰的温度是多少度,水结冰的温度是0还是-4水结冰的温度是0℃水结冰的温度是多少度。在常压环境下,冰的熔点为0℃,0℃水冻结成冰时,体积会增大约1/9(水体积最小时为4℃)。据观测,封闭条件下水冻结时,体积增加所产

    生活 2021年10月26日