写点什么

华为云新型分布式数据库 Taurus 之谜

  • 2019-11-26
  • 本文字数:1692 字

    阅读完需:约 6 分钟

华为云新型分布式数据库 Taurus 之谜

3 月 30 日,由中国 MySQL 用户组主办的 ACMUG 全国巡讲深圳站圆满结束,华为云新一代企业级分布式数据库 Taurus 亮相技术峰会,其一系列高精尖特性背后的设计理念和技术原理也在外界的期盼中徐徐展现。


Taurus 是华为云自研的最新一代云原生分布式数据库,完全兼容 MySQL 8.0,采用计算与存储分离、日志即数据的架构设计,支持 1 写 15 读,性能达到原生 MySQL 的 7 倍。此外,Taurus 构建在共享分布式存储上,存储空间最高达 128T,能跨 AZ 部署。


纵观业界,华为云 Taurus 无论是功能还是性能,均走在了数据库领域的最前沿。那么,Taurus 又是如何推陈出新一步步走到今天的呢?

云上 MySQL 架构的不足

当前,对于 RDS for MySQL,各大云厂商基本都采用主备高可用模式、主备间使用 Binlog 复制(有些厂商采用 DRBD),该架构下每添加一个从库都需要全栈式资源。这导致了一些问题:


  1. 资源浪费

  2. 备库往往不承担流量;复制线程会消耗主库/从库计算资源,造成计算资源浪费;EVS 的 3 副本冗余机制下,最大需要 3*(N+1)个副本,造成存储资源浪费;以及多种数据需要走存储网络进行刷盘,造成网络资源浪费等。

  3. 扩展性不佳

  4. 添加只读时需要拷贝数据,重放 binlog,对于大数据量情况下速度很慢,尤其是采用本地盘方案。主从复制延迟问题会让主备倒换受影响,难于保证 RTO。此外,采用物理备份、逻辑备份时备份恢复速度很慢, 1T 以上数据量都以小时计,使得数据库扩展性受限。


数据库作为承载业务和应用的核心所在,提供高扩展、高性能、高可用的分布式服务日渐成为用户刚需。如何兼容 MySQL 生态、对原有 MySQL 应用无需任何改造就能轻松迁移?如何存储互联网业务下的海量数据?如何保障无缝弹性扩容、高可用、高并发性能?而现在,这些问题都找了答案。

华为云 Taurus 分布式架构满足用户数据库高要求

华为云的宗旨一向是想客户之所想,急客户之所需,华为云数据库 Taurus 也正是在这样的背景下诞生。


架构上,Taurus 采用计算与存储分离,日志即数据,将 IO 密集型负载卸载到存储节点完成。Taurus 还充分利用云存储的能力,实现存储层实现独立容错和自愈服务和共享访问(单写多读)。


此外,Taurus 还采用软硬件结合,充分利用 RDMA 网络、NVME SSD 等硬件优势,对内核进行深度优化,使性能有大幅提升。


对于大量对数据库有高要求的行业而言,华为云 Taurus 的推出无异于“雪中送炭”。不但性能强悍,而且数据安全可靠、业务有保障,可广泛应用于下面的应用场景。

强悍性能支撑业务拓展

随着 SaaS 应用在企业级市场的切入,高吞吐和高性价比随之成为大型互联网公司、传统大企业对数据库的要求。一方面,庞大的业务和高吞吐量使得开源库无法解决数据处理问题,另一方面,SQL Server、Oracle 等商用数据库的 license 费用也成为企业高成本的一大忧患。


Taurus 具有 RDMA、V5CPU、Optane 等硬件优势和数据库逻辑下推、释放算力、减少网络开销的架构优势,完全兼容 MySQL 8.0 并提供 7 倍于原生 MySQL 的性能,对用户而言不用改造业务就能充分享受超高性能的数据库服务。且成本只有商用数据库的 1/10。

极致可靠助力金融行业实现数据 0 丢失

故障闪恢复


受监管诉求驱动,可靠性和可用性是金融行业的核心诉求。第一要务是数据不能丢,其次是故障秒级恢复。但传统 MySQL 并不能支持此高要求。


Taurus 的共享存储架构,将数据持久化放入新一代存储中,充分保障数据强一致性和 0 丢失。Taurus 的存储 3 副本容错能力,使得数据库的单点故障 0 中断得以实现,加之对跨 AZ 部署和跨 Region 容灾的支持,让计算节点故障秒级恢复不再是难题。

多维扩展和海量存储

满足游戏行业高速发展需求


轻资产,快速扩容作为游戏行业使用云数据库驱动力,其主要目标在于解决无法预测用户流量以及产生的数据量、业务高峰时用户体验会受到影响甚至要停服扩容的问题。


Taurus 基于云虚拟化,单节点可规格变更,且计算节点支持双向扩展,支持 1 写 15 读,扩展比达 0.9。此外数据存储池化后最大可支持 128TB 容量,且存储按需计费, 扩容不中断业务,计算节点扩容也不会带来存储成本上升。


Taurus 的愿望很简单,希望用户同时享受商业级的技术服务和开源软件的生态红利。


本文转载自 HW 云数据库公众号。


2019-11-26 08:00851

评论

发布
暂无评论
发现更多内容

在线脑图思维导图生成工具

入门小站

工具

王者荣耀商城异地多活架构设计

Fingal

架构实战营

Dio —— Flutter 网络请求之王者

岛上码农

flutter 移动端开发 4月月更 跨平台开发 安卓 ios

区块链交易所源码开发搭建,多种交易所系统开发

Geek_56201b

区块链 交易所开发 区块链交易所搭建

消息队列存储消息数据的 MySQL 表格

AragornYang

架构训练营 架构实战营

关于OpenHarmony3.1,想随便聊一点

坚果

OpenHarmony 4月月更

SpringBoot文件上传临时目录找不到的问题

爱好编程进阶

Java 面试 后端开发

东方园林召开2022年度全员大会

科技大数据

泛型真的会让程序变慢吗?(Go1.18新特性)

蔡超

golang 编程 编程、 Go 语言

15 张图 | 深入理解 OpenFeign 远程调用的架构原理

悟空聊架构

Feign 4月日更 悟空聊架构 openfeign 4月月更

如何从 Java 的 List 中删除第一个元素

HoneyMoose

HttpClient使用详解与实战一:普通的GET和POST请求

乌龟哥哥

4月月更

Spring学习--面向抽象编程(模拟Spring的简单实现)

爱好编程进阶

Java 面试 后端开发

[Day17]-[动态规划]打家劫舍

方勇(gopher)

LeetCode 数据结构和算法

设计消息队列存储消息数据的 MySQL 表格

孙强

架构师实战营

Zookeeper+ActiveMQ集群搭建

爱好编程进阶

Java 面试 后端开发

咨询公司也要挑客户吗?

秋去冬来春未远

数字化 信息化 客户 咨询

读《Software Engineering at Google》(07)

术子米德

架构师成长笔记

CNCF生态蓝图的八个领域及路线图概述

穿过生命散发芬芳

4月月更

linux之read命令

入门小站

Android C++系列:C++最佳实践4多重继承与虚继承

轻口味

c++ android 4月月更

残酷春天里的中国科技(三):持续缠绕的科技封锁线

脑极体

一文了解异步编程基础

宇宙之一粟

Python 异步编程 4月月更

SpringCloudRPC远程调用核心原理:feign

爱好编程进阶

Java 面试 后端开发

SpringCloudRPC远程调用核心原理:FeignRPC动态代理实例创建流程

爱好编程进阶

Java 面试 后端开发

spring-cloud-kubernetes官方demo运行实战

程序员欣宸

#Kubernetes# spring-cloud java 4月月更

在线CSV转多行数据工具

入门小站

工具

嵌入式进阶从小白到内核大神学习全攻略(学习路线+学习书籍+练习项目)

简说Linux内核

Linux 驱动开发 嵌入式开发 linux内核、 内核工程师

残酷春天里的中国科技(二):和全球供应链一起“仰卧起坐”

脑极体

GitOps的12个痛点

俞凡

DevOps 研发效能 gitops

为什么选择学习 Sanic 框架

宇宙之一粟

4月月更 sanic

华为云新型分布式数据库 Taurus 之谜_语言 & 开发_HW云数据库_InfoQ精选文章