TiDB中有哪些组件?【TiDB架构图解】

TiDB 集群主要包括三个核心组件:TiDB Server,PD Server 和 TiKV Server。此外,还有用于解决用户复杂 OLAP 需求的 TiSpark 组件和简化云上部署管理的 TiDB Operator 组件。

TiDB中有哪些组件?【TiDB架构图解】

TiDB架构图解

TiDB中有哪些组件?【TiDB架构图解】

TiDB中有哪些组件?【TiDB架构图解】

  1. TiDB Server

  TiDB Server 负责接收 SQL 请求,处理 SQL 相关的逻辑,并通过 PD 找到存储计算所需数据的 TiKV 地址,与 TiKV 交互获取数据,最终返回结果。TiDB Server 是无状态的,其本身并不存储数据,只负责计算,可以无限水平扩展,可以通过负载均衡组件(如LVS、HAProxy 或 F5)对外提供统一的接入地址。

  2. PD Server

  Placement Driver (简称 PD) 是整个集群的管理模块,其主要工作有三个:一是存储集群的元信息(某个 Key 存储在哪个 TiKV 节点);二是对 TiKV 集群进行调度和负载均衡(如数据的迁移、Raft group leader 的迁移等);三是分配全局唯一且递增的事务 ID。

  PD 通过 Raft 协议保证数据的安全性。Raft 的 leader server 负责处理所有操作,其余的 PD server 仅用于保证高可用。建议部署奇数个 PD 节点。

  3. TiKV Server

  TiKV Server 负责存储数据,从外部看 TiKV 是一个分布式的提供事务的 Key-Value 存储引擎。存储数据的基本单位是 Region,每个 Region 负责存储一个 Key Range(从 StartKey 到 EndKey 的左闭右开区间)的数据,每个 TiKV 节点会负责多个 Region。TiKV 使用 Raft 协议做复制,保持数据的一致性和容灾。副本以 Region 为单位进行管理,不同节点上的多个 Region 构成一个 Raft Group,互为副本。数据在多个 TiKV 之间的负载均衡由 PD 调度,这里也是以 Region 为单位进行调度。

  4. TiSpark

  TiSpark 作为 TiDB 中解决用户复杂 OLAP 需求的主要组件,将 Spark SQL 直接运行在 TiDB 存储层上,同时融合 TiKV 分布式集群的优势,并融入大数据社区生态。至此,TiDB 可以通过一套系统,同时支持 OLTP 与 OLAP,免除用户数据同步的烦恼。

  5. TiDB Operator

  TiDB Operator 提供在主流云基础设施(Kubernetes)上部署管理 TiDB 集群的能力。它结合云原生社区的容器编排最佳实践与 TiDB 的专业运维知识,集成一键部署、多集群混部、自动运维、故障自愈等能力,极大地降低了用户使用和管理 TiDB 的门槛与成本。

文章来源于:王晴儿网页设计博客 欢迎分享交流,转载请注明出处

本文来自投稿,不代表重蔚自留地立场,如若转载,请注明出处https://www.cwhello.com/262322.html

如有侵犯您的合法权益请发邮件951076433@qq.com联系删除

(0)
黑马程序员黑马程序员订阅用户
上一篇 2023年5月6日 23:43
下一篇 2023年5月6日 23:43

相关推荐

  • 如何在PHP中使用RESTful架构。

    随着互联网技术的发展,RESTful架构已经成为了一种主流的Web API设计风格。与传统的Web服务相比,RESTful架构更加灵活、可扩展、易于维护,因此越来越多的Web开发人员开始使用它来设计和开发前后端交互的API。本文…

    2023年5月22日
    03
  • 我来教你显卡后面的数字代表什么。

    显卡后面的数字通常代表了显卡型号和性能等级,它是显卡制造商为了区分不同产品而设定的编号,这些数字可以给消费者提供关于显卡性能、定位以及与其他型号比较时的直观信息,下面我们将详细探讨显卡型号数字的含义…

    2024年6月11日
    00
  • 我来分享网站架构SEO优化方案技巧。

    搜索引擎优化工作分为站内,站外,我们都知道站内也好,站外也好如果做不好,seo的工作将无法进行下去。我们知道搜索引擎是软件程序,既有长处也有短处。做为SEO,运营整个网站必须要调整整个网站的精简架构,让搜…

    2023年6月22日
    00
  • 企业网站制作应当选php还是Java。

    很多的人咨询企业网站制作应当选php还是Java?下面就由小编为大家介绍一下。 网站建设中php和Java的区别: 第一、系统安全性 php开发的程序:别人拿到代码后,很容易被修改; Java开发的程序:只能看到一些编译好的类…

    2022年10月30日
    013
  • Doris架构中包含哪些技术?

    Doris主要整合了Google Mesa(数据模型),Apache Impala(MPP Query Engine)和Apache ORCFile (存储格式,编码和压缩)的技术。为什么要将这三种技术整合?Mesa可以满足我们许多存储需求的需求,但是Mesa本身不提供SQL…

    2023年8月30日
    02
  • 经验分享国外云主机租用。

    美国云主机租用如何提高生产力 随着互联网技术的不断发展,越来越多的企业和个人开始使用云主机作为其网站、应用和数据存储的解决方案,美国云主机因其稳定性、速度和高性价比而受到广泛关注,如何通过租用美国云主…

    2024年7月5日
    00
  • 云桌面是甚么怎样连接服务器云桌面的主流架构包括甚么。

    云桌面的主流架构包括 VDI (Virtual Desktop Infrastructure)、VDC (Virtual Desktop Cloud) 和 DaaS (Desktop as a Service)。 云桌面是一种基于云计算技术的远程桌面服务,它可以让用户通过互联网访问远程计算机…

    2024年7月9日
    00
  • 关于b75主板可以用e3吗。

    当我们讨论计算机硬件兼容性时,特别是主板和中央处理单元(CPU)之间的兼容性,我们必须考虑多个因素,对于B75主板能否使用E3系列CPU的问题,我们需要了解B75主板的规格以及E3 CPU的特性。 B75主板概述 B75主板是…

    2024年6月13日
    00

联系我们

QQ:951076433

在线咨询:点击这里给我发消息邮件:951076433@qq.com工作时间:周一至周五,9:30-18:30,节假日休息