分布式数据库TiDB在商业银行的设计与实践.docx

分布式数据库TiDB在商业银行的设计与实践.docx

  1. 1、本文档共10页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

????

???

分布式数据库TiDB在商业银行的设计与实践

???

?

?

?

?

???

???

?

???

?

?

?

目录

TOC\o1-3\h\z\u分布式数据库TiDB在商业银行的设计与实践 1

一、设计目标 3

二、业务要求 4

1、业务数据估算 4

2、设备需求估算 4

三、整体架构设计 5

1、逻辑架构设计 5

2、物理位置规划 6

四、运维方案设计 6

1、高可用方案 6

2、存储方案 7

3、监控与告警 7

4、备份与恢复 9

5、日常运维方案 10

6、灾备方案 11

7、应用适配和优化 12

五、结语 12

关系型数据库的发展经历了漫长岁月,这些数据库大家都非常熟悉,包括交易型、分析型的很多数据库产品和技术。TiDB分布式数据库是新一代开源分布式NewSQL数据库,整个产品的结构非常清晰,计算跟数据存储层分离,这是现代大部分分布式数据处理系统通常都会倾向和考虑采用的架构:

最底层“TiKV”层,是分布式数据库的存储引擎层,不只是用来存取和管理数据,同时也负责执行对数据的并行运算。在TiKV之上即是“TiDB”层,为分布式数据库的SQL引擎层,处理关系型数据库诸如连接会话管理、权限控制、SQL解析、优化器优化、执行器等核心功能。此外,还有一个承担集群大脑角色的集中调度器,叫做“PD”,同时整体架构中还会融合一些运维管理工具,包括部署、调度、监控、备份等。

TiDB可实现自动水平伸缩,强一致性的分布式事务,基于Raft算法的多副本复制等重要NewSQL特性,并且也满足我行对于高可用、高性能、高可扩展性的要求。TiDB部署简单,在线弹性扩容不影响业务,异地多活及自动故障恢复保障数据安全,同时兼容MySQL协议,使迁移使用成本降到极低。这篇文章中,我们将详细介绍TiDB在我行的设计与实践。

一、设计目标

我们在设计TiDB分布式数据库集群时,需要考虑多方面的需求,因此,制定了以下内容,作为项目的设计目标。

二、业务要求

1、业务数据估算

我们设计的TiDB分布式数据库集群在一期计划承载一套业务系统,该系统为我行核心支付交易系统。在采购设备之前,我们根据业务的发展规模进行了合理估算,得出了预期日交易量、数据规模、数据增长率等信息。

2、设备需求估算

设备需求按照第一年的数据量和日交易量进行规划,并综合考虑了数据副本数和磁盘空间可用率,因此需要规划足够的冗余存储容量。此外,TiDB集群还需要中控机对集群进行统一管理、需要监控机进行集群监控、需要服务器进行数据备份,因此,还要考虑这些服务器的规划。

除了生产集群,我们还设计了从集群,作为异地灾备使用。生产集群和灾备集群之间通过binlog同步数据,我们选用了Kafka作为binlog同步工具,因此,需要考虑Kafka服务器的配置规划。

至此,我行的TiDB集群所需的设备均已规划完毕,详情如下:

设备角色

生产集群TiKV

生产集群TiDB/PD

中控机

监控机

备份服务器

Kafka服务器

从集群服务器

三、整体架构设计

我们的TiDB集群为两地三中心多活架构,并且设计了主从集群的灾备部署,本章节我们将详细介绍架构设计。

1、逻辑架构设计

架构说明:

(1)整个集群采用主从结构,主集群作为生产集群,承担日常生产服务,从集群通过binlog异步同步主集群数据,作为灾备集群使用。

(2)主集群(生产集群)采用两地三中心架构,分别为同城IDC1、同城IDC2、异地IDC3。

(3)从集群与主集群通过binlog完成数据同步。

2、物理位置规划

(1)IDC1、IDC2各配置两个机柜,均用于部署生产主集群,IDC3一个机柜用于部署生产主集群,另一个机柜用于部署灾备从集群。

(2)每个IDC配置两台万兆交换机(以主备模式部署),主集群各台机器内部通信、从集群各台机器内部通信、主从集群之间都是使用万兆网络。

(3)全局DNS下挂载三个IDC的负载均衡,各IDC种负载均衡挂载各自中心内部的TiDB服务器,以千兆网环境对外提供业务服务。

四、运维方案设计

1、高可用方案

高可用是TiDB数据库的特性之一,TiDB/TiKV/PD这三个组件都能容忍部分实例失效,不影响整个集群的可用性。我行的TiDB生产集群,由生产中心、同城灾备中心、异地灾备中心共同实现两地三中心多活高可用部署方案。下面,我们将从不同的维度来分析集群的高可用性。

(1)从服务器角色的角度

集群中的服务器有三个角色:TiDB、TiKV、PD,我们从这三个角色来分析集群的高可用性。

TiDB是无状态的,以实例为单位通过前端的负载

您可能关注的文档

文档评论(0)

周澈 + 关注
实名认证
内容提供者

天堂湖

1亿VIP精品文档

相关文档