2019年公司搭建微服务平台,实现分布式部署,各服务性能及效率得到稳步提升,并已经趋于稳定。为了进一步提升服务性能,经过服务调研需要对Mysql数据服务进行高可用及高性能的升级。之前服务器部署采用服务器单独安装Mysql已经无法承担现有服务的突发事件,经过2周的调研,对阿里云、腾讯云、亚马逊的Mysql服务进行调研比对,最终选定腾讯云的TDSQL。

一、腾讯云TDSQL简介

腾讯云数据库(TDSQL-Tencent Distributed MySQL)是随着腾讯业务规模不断扩大而 发展起来的,其定位是基于互联网分布式架构的金融级数据库。从 2004 年开始,腾讯充值 等计费类业务快速发展,传统方案已经无法支撑日益增长的需求,通过多年摸索,最终选择 兼容 MySQL 协议的分布式架构。并根据业务需求推动数据库架构不断革新。截止到 2019 年,腾讯云数据库 TDSQL 经过 15 年的发展,已经覆盖公有云、专有云部署模式,为银行、 保险、证券,财付通、腾讯充值,阅文集团,区块链等 5000 多个金融类业务提供底层支撑。

优势:

1、数据安全:

TDSQL定位是基于互联网分布式架构的金融级数据库。在这个大数据时代,数据和数据库安全比以往任何时候都更加珍贵。公司产品也有很高的安全性要求。

2、数据一致性:

分布式架构中,数据的强一致尤为重要。如果出现数据丢失,就意味会给组织或用户带来直接的金钱方面的损失,甚至影响企业的商誉和信誉。多数开源不适用于共享存储架构,基于主从高可用架构难以做到既满足性能又保 障主库出问题时数据不丢失,无法满足业务高并发需求。

3、服务可用性:

高可用性和减少停机时间是数据库系统的目标,公司业务需要 24*7 无障碍 运行。 所以搭建一个数据库高可用环境已经成为很多企业迫切的需求。 确保企业中计算资源的持续可用是各个数据库管理员(DBA)的主要目标。

4、服务扩展性:

业务在采购之初很难准确预测未来业务增长的速度和总量,这就导致业务不得不采购比 自己实际需求更多的资源。

应用场景:

大型应用(超高并发实时交易场景)

电商、金融、O2O、社交应用、零售、SaaS 服务提供商,普遍存在用户基数大(百万级或以上)、营销活动频繁、核心交易系统数据库响应日益变慢的问题,制约业务发展。

物联网数据(PB 级数据存储访问场景)

在工业监控和远程控制、智慧城市的延展、智能家居、车联网等物联网场景下,传感监控设备多、采样率高、数据规模大。通常存储一年的数据就可以达到 PB 级甚至 EB,而传统基于 x86 服务器架构和开源数据库的方案根本无法存储和使用如此大的数据量。

文件索引(万亿行数据毫秒级存取)

作为云服务平台,存在大量的图片、文档、视频数据,数据量都在亿级 - 万亿级,服务平台通常需要将这些文件的索引存入数据库,并在索引层面提供实时的新增、修改、读取、删除操作。

二、TDSQL 解决方案服务架构

TDSQL 可以提供公有云、专有云两种部署方案,可以提供关系型数据库实例、分布式数据库实例、分析性数据库实例

同时 TDSQL 具备虚拟化多租户、强同步复制、线程池、热点更新、内核优化等能 力,能够为用户提供事前、事中、事后的全维度安全方案,获得了多项国际和国家认证。

TDSQL集群架构具有较高的灵活性,简化了各个 节点之间的通信机制,也简化了对于硬件的需求。这不仅意味着 TDSQL 的关系型实例、分布式实例、分析性实例可以混合部署在同一集群中,也意味着即使是简单的 x86 服务器,也可以搭建出类似于小型机、共享存储等一样稳定可靠的数据库。

分片(Sharding):

是由数据库节点组(SET)和 SQL Engine(SQL Engine)和支撑系 统组成一主多从数据库,也是水平拆分后承载数据的基本单元;

节点组(SET):

由数据库节点(DataNode)组成的,通常包括一个主、从节点的集合。

SQL 引擎层(SQL Engine):

账号鉴权、管理连接、SQL 解析、分配路由的 SQL Engine 模块;SQL Engine 可以混合部署在数据库节点(DataNode)之上,也可以独立部署在一 台物理机中。SQL Engine 也是采用分布式架构设计,提供并行负载和高可用容灾能力;

InnoDB引擎

产品功能

高度兼容 MySQL 关系型实例:

即可以理解为 MySQL/MariaDB 主从高可用架构的数据库,因此其完全兼 容 MySQL/MariaDB。 分布式实例:我们的设计理念是让用户像使用普通 MySQL 一样使用分布式数据库。因 此 TDSQL 设计淡化水平拆分的概念,无需用户手动去配置分表逻辑,无需用户额外去部署 管理中间件,只需要在建表是指定分表关键字即可。分布式实例也高端兼容 MySQL,您可 以用连接 MySQL 的方式去连接 TDSQL 的分布式实例,可以使用熟悉的对象映射框架使用 TDSQL 的分布式实例。

强同步复制(MAR)

由于数据库中记录了数据,想要通过高可用架构实现切换,数据必须是完全一致且同步 的,所以数据同步技术是数据库高可用方案的基础,通常数据同步的流程如下图 腾讯云分布式数据库解决方案 版权所有:腾讯云计算(北京)有限责任公司 第14页 共64页 当前,开源 MySQL 数据库数据复制包括异步复制、半同步复制两种。这两种复制技术 的主要问题是,节点故障时,有可能导致数据丢失或错乱。而且,这类复制技术以串行复制 为主,性能相对比较低。而腾讯自主研发了的基于 MySQL 协议的并行多线程强同步复制方 案(Multi-thread Asynchronous Replication,MAR),在应用发起请求时,只有当从 节点(Slave)节点返回成功信息后,主节点(Master)节点才向应用应答请求成功(如下流程 图);这样就可以确保主从节点数据完全一致。

三、TDSQL平台系统应用

赤兔运营平台(chitu)& 云数据库管理系统:

赤兔运营平台基于 TDSQL 定制开发的一套综合的业务运营和管理平台,将 数据库的管理特点,将网络管理、系统管理、监控服务有机整合在一起。

云的运维的呈现两极化趋势,一方面是高星级业务的精细化运维,一方面是大量 的普通数据库运维需求。基于云数据库运维层面差异化、数量多、变化快等特点,

TDSQL 提供了两套平台:赤兔运营平台&云数据库管理系统;以应对不同场景不同客户的需求。

赤兔运营平台:

从管理员视角,提供 TDSQL 的全部运维功能,可管理 TDSQL 集群的物 理资源、调度决策系统、备份与恢复系统、可用区管理、实例管理、智能性能分析与监控告 警、主要工具等,主要用于腾讯内部或企业 IT 运维团队使用。

云数据库管理系统:

从租户视角,提供 TDSQL 实例的运维功能,可管理 TDSQL 数据库 实例,包括实例申请与退还、系统监控与告警、备份与恢复、性能优化等,主要用于云的客 户或业务团队使用。 赤兔运营平台&云数据库管理系统 两个运维平台配合使用,可有效覆盖绝大部分运维需 求,极大的释放 DBA 的常规工作,让 DBA 有精力投入到优化业务等工作中。由于使用对象 腾讯云分布式数据库解决方案 版权所有:腾讯云计算(北京)有限责任公司 第27页 共64页 和设计差异的差异,在不同场景下,管理平台选件会有所不同,如下表格:

智能性能分析(扁鹊系统):

是 TDSQL 提供包括数据采集,自动处理,性能检测、SQL 性能检测、业务诊断等多种智能工具的集合,并根据分析结果提供智能优化建议。

例如:

1、性能检测与健康评估:数据库定期采集关键的性能指标并上报,当数据库出现波动时往往伴随着 一些监控指标的变动,虽然可以通过监控曲线得出这一结论,但这种排查比较“机械”,当 DBA 管理数据库实例较多时,很难全部照顾到。扁鹊系统将腾讯多年的运营经验,诊断过程通过规则 配置的方式沉淀在系统中,并利用深度学习组件不断强化对规则修订。扁鹊系统应用这些规则, 结合监控数据,将数据库一段时间内的状态信息进行分析,形成检测报告告知用户。并对其中问 题可能的原因和解决方案反馈出来。通过检测报告中的问题,根据业内通用的打分方式对数据库 进行打分,方便您快速的解一段时间内 DB 的健康情况。

2、实时检测:业务常常会遇到 SQL 执行被卡住导致业务频繁超时的问题,通常的原因是慢查询较 多,或长时间有锁等。扁鹊系统提供了实时检测工具,帮助用户快速定位当前的数据库性能问题。 3、慢查询分析:慢查询常常会引起 DB 响应慢,CPU 消耗过高等多种问题,而引起慢查询的原因常 常是因为索引缺失或索引设计不合理导致的,这也常常需要 DBA 手动分析 SQL,结合 SQL 涉及 的表结构找出缺失的索引反馈给用户。扁鹊系统可自动分析并合并同类慢查询,并通过可视化方 腾讯云分布式数据库解决方案 版权所有:腾讯云计算(北京)有限责任公司 第29页 共64页 式展示出来,配合 SQL 优化功能,可有效协助 DBA 优化业务。

4、 SQL 优化:同一条 SQL 语句,不同的写法,是否有索引等,性能可能不一样;扁鹊系统中提供 的智能 SQL 优化工具,可以帮助您写出更好的 SQL 或针对性地优化。 说明: 因篇幅限制,本文不在一一列举。我们将扁鹊系统与赤兔运营平台进行深度集 成,因此您在使用赤兔的过程中,可以无缝使用扁鹊系统。公有云云数据库管理系统正在逐步集成中。

技术选型解决方案之腾讯云TDSQL数据库实战相关推荐

  1. 腾讯云TDSQL数据库核心技术理论取得进展 ,同时发布数据异常检测工具

    近日,腾讯云和中国人民大学在数据库基础研究上有了进展,聚焦在"数据异常"领域,这是数据库可串行化理论体系中的重要概念. 数据异常是打开并发访问控制技术大门的金钥匙.在数据库行业中, ...

  2. 腾讯云TDSQL数据库信创演进与实践

    日前,在中国电子信息行业联合会面向行业优秀品牌教育培育<2020-2021年度优秀创新软件产品>的征集中,腾讯云分布式数据库TDSQL管理系统成功入选,并荣获"年度优秀软件产品& ...

  3. 腾讯云TDSQL数据库交付运维初级工程师-腾讯云CloudLite认证(TCA)考试部分试题

    有些题目我也不太清楚正确答案,望体谅,毕竟也只是腾讯封装的一个产品,MySQL的题目还是能保证的.本人也只是想混一个证书而已. 1 . 关于TDSQL(MySQL版)备份恢复说法正确的是?C A . ...

  4. 腾讯云TDSQL官宣:全球招人!

    腾讯云TDSQL数据库团队招人了!近期,腾讯云TDSQL团队开放大量岗位机会,面向全球寻找未来同行的数据库工程师大牛.每一位加入的伙伴,都将可在这里获得广阔的技术创新发展平台.丰富的国产数据库产业应用 ...

  5. 腾讯云分布式数据库TDSQL的十年自主可控之路

    3月12日,腾讯云全新发布自主可控金融业务支撑平台,该平台集中整合腾讯云在基础架构.数据库.大数据以及人工智能等技术场景中的优势能力,致力于帮助金融机构在数字化转型过程中构建全方位自主可控技术体系.其 ...

  6. 为什么说腾讯云TDSQL是金融行业的“杀手锏”级应用?

    我们都知道,金融行业IT架构复杂.信息化要求较高,更强调系统架构的可靠性和稳定性.如果一个解决方案在金融行业得到了验证,就意味着该解决方案将打上"可信"的标签,这可能是腾讯云为什么 ...

  7. 腾讯云TDSQL,从数据库巨人身上撕开一道口子

    金融行业现状 目前国内大中型银行主要以国外厂商提供的大型主机和数据库解决方案来进行系统构建.由于近年来金融业务量的不断增长,以及银行数字化转型成为必然趋势.目前以国外大型主机和数据库为核心的架构已无法 ...

  8. 腾讯云 TDSQL 在 PostgreSQL 领域的‘‘再次突破’’

    日前,第 11 届 PostgreSQL 中国技术大会圆满落幕,大会上腾讯云多位顶级技术达人携手亮相,分别对腾讯云 PostgreSQL 系列产品技术亮点和创新实践案例进行了深入解读,针对 TDSQL ...

  9. 腾讯云分布式数据库技术分享

    目前国内分布式数据库背景: 1.数据爆发增长:大数据时代,万物互联,业务数据量爆发增长,传统服务器读.写.存储,等遇到多方面压力过大. 2. 扩展时效性:传统数据库进行高性能硬件的升级扩展时,进行数据 ...

最新文章

  1. 【错误记录】Groovy 工程编译报错 ( java.lang.NoClassDefFoundError: org/apache/tools/ant/util/ReaderInputStream )
  2. 中国大学MOOC 计算机组成原理第1章测试
  3. 潭州课堂25班:Ph201805201 爬虫基础 第九课 图像处理- PIL (课堂笔记)
  4. 搭建Servlet在线视频
  5. pythonweb自动化测试实例_[转载]python webdriver自动化测试实例
  6. C语言内存的动态分配
  7. iOS底层探索之多线程(一)—进程和线程
  8. The Apache Software Foundation Announces Apache® Zeppelin™ as a Top-Level Project
  9. 未来手机、电脑和网络将整合为一块
  10. Office 365管理员指引 7 ——Lync 用户配置
  11. pic系列单片机c语言编程与应用实例,PIC系列单片机C语言编程与应用实例
  12. c语言编译器模拟流水灯,流水灯C语言代码(修改)!
  13. 洛谷OJ - P1156 - 垃圾陷阱
  14. 草根程序员转型做项目管理走过的点点滴滴_康奈尔笔记法介绍
  15. 计算机论文题目_基于java的毕业设计题目_50例
  16. M - Help Hanzo (大数区间素数筛)
  17. 研一Python基础课程第一周课后习题分享(含代码)
  18. adb shell获取root权限
  19. 分析ajax爬取搜狗美女图片
  20. u盘容量影响计算机运行速度,影响U盘运行速度的原因有哪些

热门文章

  1. 电力系统中的惯量是什么?储能在系统频率稳定中起作用的方法
  2. corrosion 靶机(ffuf模糊测试,命令执行)
  3. 远程桌面 快捷键大全
  4. 安装VASP5.4.4编译 libfftw3xf_intel.a 碰到的:ICC COMMAND NOT FOUND问题
  5. 计算机网络码分复用怎么计算,计算机网络——物理层和信道复用(频分、时分、码分)技术...
  6. PCB入门学习— CHIP类PCB封装的创建
  7. 四类社交产品的运营模式和运营手段
  8. 孙俪香港产女或获港籍 明星进优才为事业为添子
  9. linux wait 信号丢失,wait函数族和SIGCHLD信号的关系
  10. MySQL常用语句(CURD)