上述讲到的水平扩展的分布式数据库架构,我们把数据分配多个分片,然后通过强大的SQL引擎来做相应的分发,并且做基层的下推,将数据下推到各个节点去做相应的数据运算,最后汇聚数据,来为用户提供可平滑扩展的分布式数据库架构

在计算存储分离的分布式数据库架构。我们认为,改变用户的已有使用习惯是很难的,但是培养一个新习惯也许还可行。因此,在某些传统的商业数据库模式下,改变用户使用Oracle的模式会有相应的阻力。但是,对于传统的Oracle它还是一种Share的模式,所以我们布局了这种分布式数据库的架构,将计算跟存储分离,区别在于它是一种日志级的数据库。

我们在上层、在交换机的三个节点是纯计算节点,这些计算节点可以完全兼容MySQL或者Postgre的协议,然后数据的日志通过网络交换机下发到底层的DB节点,让底层的存储节点来感知日志,再把日志逐步的回放。

这种架构的优势是存储层面可以水平扩展,当用户拉起一个读取节点的时候,可以瞬间启动一个读取节点,不用做相应的数据重放。另一个优势是它不像Oracle模式整页刷新,也不依赖于IP交换机的模式,而是只在交换机层面去传输日志,所以基本上一个传统的万众交换机就能满足这种业务场景。因此,在整体的成本或性能上都是一种非常有性价比的技术架构

除了技术架构的优势,再来分享一下腾讯云数据库在用户功能层面(产品化层面)的一些设计理念。我们认为一款优秀的数据库应该遵循5个特点:

1、数据强一致

腾讯云是基于主从架构的“并行多线程强同步复制方案”,以保证数据的强一致,整体上可以保证主从节点这种默认强度的模式下,性能还不亚于原生的异构同步。TDSQL真正跑起来之后比原生的异构同步的性能还要高,其实就是要靠这种强同步的逻辑,再加上多线程的同步方案做一定的改造。

2、金融级高可用

腾讯云提供了跨机房容灾、跨地域容灾等多种模式来保证整个金融级别的高可用。在系列功能上,我们提供了多达384项监控指标、进程保护机制、系统免切机制、毫秒级切换机制等,通过SQL-Engine的路由,保证一个整体毫秒级的切换,提供6个9以上的金融级别的高可用。

3、高安全性

安全性分为事前、事中、事后三个维度:事前是指在攻击发生之前,采取某些措施保证数据库不被黑客所攻击。腾讯云提供了传输层加密、数据层加密、权限细粒度鉴权等事前的监控策略。

事中是指真正攻击已经发起,我们需要采取一些保护策略。首先,腾讯云有内核级的安全策略、内置的SQL防火墙,我们可以配置那些安全性非常差的SQL命令,收到这条SQL命令之后,直接阻塞攻击,这也是一种内置防火墙的机制。其次是防误操作机制,比如像delete全表或者join表结构等命令,都会被系统默认过滤掉,不会真正下发到命令解析器做出相应操作。

事后是指上述操作已经被执行之后,整个产品体系有一套标准的溯源功能。腾讯云的事后安全审计策略,一方面是有全部的运维操作审计、数据库层面的审计,在不耗费性能情况下,能够将全部的数据库操作记录下来,包括读操作(比如某些数据被拖走时,我们可以查到哪个IP、在什么时间点、用什么账号、采用什么模式、拿走了哪些数据,以尽量减少数据损失)。另外还有服务器审计、超级权限控制等。

4、良好的扩展性

扩展性分为两类,一类是资源层面的扩展,一类是功能层面的扩展。

资源层面的扩展,腾讯云提供两种模式。从集中式的实例可以一键扩展到分布式实例,然后分布式实例也可以自动挂载多个分片来加分片,自动的做数据重分布、平滑的数据迁移。用户可以在刚开始使用时选择较低的配置,然后随着业务的爆发,可以直接多加分片,并且整个的操作过程是全部平滑的,对于性能的损失基本都为零。

功能层面的扩展,比如热点更新的扩展,支持更大存储的引擎(RocksDB),产品中支持这种写量超大、数据量超大的场景,以及适配于物联网的传感器数据。另外还提供了像JSON、线程池等扩展。

5、便捷的运维

便捷的运维性也有两个维度,首先我们要把运维系统做的足够便捷,其次还要基于AI、数据模型的算法,提供更优化的数据库工具,来为用户提供更加便利的功能。

运维系统方面,腾讯云为业务方提供云数据库管理系统,通过租户视角,使用者在一键化的控制台上做相应的实例申请与退还、系统监控、备份与恢复、性能优化等。同时为运维方提供运营平台,从管理员的角度,提供TDSQL的全部运维功能,可管理TDSQL集群的物理资源、调度决策系统、备份与恢复系统、可用区管理、实例管理等。

运维工具方面,腾讯云为用户提供了一套智能管家运维服务,叫DBbrain。可以支持多种数据库实例,包括MySQL、Redis、MongoDB等,通过采集它们的监控数据,然后去做相应的审计日志的上传与抽取,包括MySQL数据分析;然后基于这些整体数据,再做数据的计算跟加工,基于现在数据性能的点、数据库的日志、MySQL整体等推算出全盘的审计数据,直接做实例的诊断,告诉用户在哪个时间点、哪些SQL语句、哪些调用导致了数据库性能在什么时间点、出现了什么异常。

同时我们还在做微信端的打通,用户未来在自己的微信公众号或者微信小程序上,就可以实时的操作数据库,脱离电脑的束缚,实时通过微信小程序对数据库做相应的操作和运维。

本文由博客一文多发平台 OpenWrite 发布!

自主研发数据库TDSQL和TBase核心架构揭秘和实践相关推荐

  1. 干货帖 | TDSQL-A核心架构揭秘

    5月18日,腾讯云首款分布式分析型数据库TDSQL-A正式发布公有云版本. TDSQL-A作为领先的分析型数据库,是腾讯首款分布式分析型数据库,采用全并行无共享架构,具有自研列式存储引擎,支持行列混合 ...

  2. 阿里云自主研发云原生数据库POLARDB的开拓之路

    <创新.进化.竞合.开放--阿里云自主研发云原生数据库POLARDB的开拓之路> 阿里云ApsaraDB数据库 高级产品专家 贺军 前言 数据库作为信息时代平台科技(CPU/芯片.PC/手 ...

  3. 007:Scrapy核心架构和高级运用

    本篇内容: Scrapy核心架构和其组件的功能 Scrapy的工作流 Scrapy的中文输出储存 介绍CrawSpider 编写了一个爬虫实战来进行我们的mysql数据库操作 Scrapy的核心架构 ...

  4. 医院AI智能随访电话机器人-北京联络加Loojion自主研发

    一.背景 1.1 概述 AI智能随访管理平台,通过在院内放置随访服务,直接接入医院管理系统(HIS等),精准实现自动识别患者添加导入和设置随访计划,并可自动邀请患者加入,进行随访. AI人工智能机器人 ...

  5. 阿里云官方出品:全面总结阿里云云原生架构方法论与实践经验

    本书亮点 阿里云官方出品,阿里云智能总裁.阿里巴巴首席技术官等推荐,全面总结阿里云云原生架构方法论与实践经验. 读者对象 开发人员:本书可帮助开发人员熟悉云原生架构的相关技术,使之能够从宏观架构的角度 ...

  6. 【大咖有约】美丽说冯超:美丽说数据库架构变迁及自主研发中间件应用

    美丽说数据库及中间件负责人冯超先生将作为DTCC 2016中国数据库技术大会特邀嘉宾出席.并将于5月13日大会"数据库性能优化"专场分享题为<美丽说数据库架构变迁及自主研发中 ...

  7. 腾讯分布式数据库TDSQL金融级能力的架构原理解读

    导语:为帮助开发者更好地了解和学习分布式数据库技术,2020年3月,腾讯云数据库.云加社区联合腾讯TEG数据库工作组特推出为期3个月的国产数据库专题线上技术沙龙<直播预告 | 你想了解的国产数据 ...

  8. 深度揭秘腾讯云新一代企业级HTAP数据库TBase核心概念

    腾讯云PostgreSQL-XZ(PGXZ)经过公司内部多年业务的打磨,在2017年改名为TBase后,正式对外推出,目前已在政务.医疗.公安.消防.电信.金融等行业等行业的解决方案中大量应用.TBa ...

  9. 天云数据:Hubble数据库系统自主研发率99.62%,是真正的信创数据库

    软件是新一代信息技术的灵魂,是数字经济发展的基础,是制造强国.网络强国.数字中国建设的关键支撑.2021年,工信部印发的<"十四五"软件和信息技术服务业发展规划>明确指 ...

最新文章

  1. 织梦php首页老是自动恢复,dede首页网址自动加上index.html问题解决方法
  2. 行业第一份应用报告,伯克利盘点当前企业如何使用区块链
  3. poj 1208 Web Navigation(堆栈操作)
  4. java ee cdi_Java EE CDI限定词:快速浏览
  5. Java中Lambda表达式与方法引用和构造器引用
  6. LeetCode 1376. 通知所有员工所需的时间(DFS)
  7. Catch That Cow【广搜】
  8. IAAS云计算产品畅想-云主机产品内涵
  9. Pytorch——保存训练好的模型参数
  10. ble mesh 学习笔记(9)telink的mesh-lpn代码分析
  11. SpringBoot的报错找不到Mapper(解决:required a bean of type com.xxx.mapper.UserMapper that could not be found)
  12. 【Xubuntu】多种方法设置xubuntu-18.04开机启动
  13. 相当全的JS及.NET正则表达式语法
  14. 如何进bios设置ssd固态硬盘为第一启动
  15. Proteus的安装和介绍及51单片机电路仿真
  16. 基于verilog的CRC校验(汇总)
  17. 如何注册登录Google浏览器
  18. 海力士EMMC5.0及5.1系列对比详解
  19. 黑客攻防专题三:名词介绍
  20. 华升富士达电梯调试软件、故障分析软件,PMC,EEC,ROM

热门文章

  1. 通过实验对比十大排序算法
  2. Matlab2018b 破解错误License Manager Error -8 ..... Licensing error: -8523
  3. linux无法关闭防火墙设置,Linux关闭防火墙以及设置允许端口
  4. iOS 之 安装pods 项目配置 及删除项目中的pods
  5. oracle 乱码 utf8,oracle中文乱码的解决方法
  6. 2020阿里实习生招聘笔试题
  7. 【洛谷题解/TJOI2007】P3853路标设置
  8. 瑞盟视频数模转换器MS2502-适合于数字电视、电脑视频处理及雷达信号处理等数字视频应用
  9. 实验3——无线局域网组网与管理实验
  10. 【深度学习】跟李沐学ai 线性回归 从零开始的代码实现超详解