写点什么

华为云分布式数据库和高性能数据库技术内幕

  • 2020-04-03
  • 本文字数:1642 字

    阅读完需:约 5 分钟

华为云分布式数据库和高性能数据库技术内幕

伴随着云时代的发展,数据库的故事仍然在继续。无论是商业版 Oracle 还是开源社区版 MySQL,数据库技术从烟囱式发展到联邦式,再演进到分布式,上云方式也从 DIY(Do It Yourself)上云、服务化上云到云原生设计。他们越来越被广泛关注,并以燎原之势影响着现代企业的方方面面。


那么,数据库到底有哪些技术原理及内幕呢?


众所周知,在云计算的背景下,企业 IT 业务正走向跨地区、全球化部署,IT 应用软件逐渐云化、分布式化。数据库作为承载企业业务和应用的关键,其基于云场景架构设计,具备跨地区分布式部署的能力要求也日益凸显。


如前文所述,数据库技术的演进,是从烟囱式、到联邦式、再到分布式的一个过程。

烟囱式数据库

烟囱式数据库普遍采取主备从多副本部署架构,通过 Proxy 统一响应 APP 的读写请求,主要适用于访问流量较稳定,压力不大的单数据库系统,支撑单业务系统。


它的主要挑战在于可用性和扩展性方面。可用性取决于具体方案,一般不具备 Region 容灾能力,扩展性受限于从库扩展节点数和最大实例性能。

联邦式数据库

联邦式数据库将数据分片部署到各个数据节点上,通过数据库中间件统一响应 APP 的读写请求,主要适用于松耦合、异构的多数据库系统,用于集成垂直构建的多个业务系统场景。


其主要挑战是可用性、扩展性和功能方面。可用性受限于数据分片也就是 Sharding 方案,扩展性需要人工操作分库扩容,风险大、需停机,功能方面无跨库事务和联结,不支持复杂 SQL 查询。

分布式数据库

分布式数据库的 SQL 层、执行层、存储层分层解耦、独立扩展,主要适用于面向云分布式场景,要求极致扩展性、高可用性的数据库系统,支撑跨地区的大规模业务系统。


由于部署方面需要有足够的跨地区数据中心机房和计算、存储、网络等资源,管理方面需要有跨地区数据中心的数据库系统的管控能力,所以主要挑战在于部署和管理方面。


值得一提的是,数据库技术的演进,与新时代下的企业应用场景变化有很大关系。当前,全球企业应用上云比例在 50%左右,而两年后将提升到 60%左右。企业应用的加速上云,推动了数据库加速向云迁移。传统数据库管理系统 DBMS 快速向云迁移,转化成为数据库云服务 DBaaS 的形式继续支持企业应用。

企业上云的演变过程

早前:企业上云的模式主要是 DIY,即用户需要自行购买云服务器,自行安装、部署、维护和升级数据库。


优点:部分利用了云化基础设施服务的便利性和可靠性;


缺点:运维开销跟传统云下方式不变,使用商业数据库依然要支付昂贵的 license 授权费用,数据库规格变更和升级困难,备份和容灾恢复复杂,很难实施。


后来:演变为服务化模式,用户只需购买数据库云服务,直接使用,无需购买云服务器,无需安装、部署、维护和升级数据库。


优点:应用无需修改,数据库即开即用,按需付费,弹性扩容,按需升级,具有跨 AZ 和跨 Region 的可靠性保障;


缺点:用户使用习惯需要稍微改变下。


云原生设计模式时代:用户将选择全新的基于云架构设计的分布式数据库服务。


优点:数据库即开即用,按需付费,可以超大规模部署,超强的弹性扩容,按需升级,具有跨 AZ 和跨 Region 的可靠性保障;


缺点:是应用有跨地区重构的代价和学习成本,需要用户有一定的软件设计和实现能力。


不难看出,企业想不通过外力实现数据库上云,有很长的路要走。然而在市场千变万化、机遇稍纵即逝的今天,留给企业的时间又有多少呢?


时值第九届中国数据库技术大会开启在即,华为云数据库首席架构师将出席本次大会,并带来《华为 Cloud Native 分布式数据库技术》和《 MySQL 云数据库的性能优化和发展趋势》两场主题演讲。


在这次讲座中,将介绍华为 Cloud Native 分布式数据库高可靠、高性能、易扩展等金融级的关键特性,并重点剖析其技术原理,深入揭开其背后的技术内幕。此外还将带领大家回顾 MySQL 关键性能特征,介绍 MySQL 云服务的现状,以及华为云为提高云上 MySQL 的性能所做的工作,讨论进一步改进 MySQL 在云上性能的挑战和机遇。


本文转载自华为云产品与解决方案公众号。


原文链接:https://mp.weixin.qq.com/s/nEn3arHL7KvBVFjd7DteRg


2020-04-03 13:301082

评论

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

程序员晋升指南!13年顶级架构设计经验的锦囊妙计与实践分享

互联网架构师小马

Java 架构

一文走进 SQL 编译-语义解析

KaiwuDB

KaiwuDB SQL编译

执行器-Query 执行详解

KaiwuDB

KaiwuDB Query执行

源生创新 云享未来|GOTC全球开源技术峰会华为云云原生精彩时刻

华为云开发者联盟

云原生 后端 华为云 华为云开发者联盟 企业号 6 月 PK 榜

如何理解 REST 和 RPC 之间的差异?

Apifox

程序员 RPC Rest 协议 RPC调用

在百度生态用达人营销赋能品牌生意增长 | 度星选白皮书

说山水

开发一次、运行多端:Weex与小程序容器的卓越优势解析

FinFish

Weex 跨端开发 小程序容器 跨端框架 跨端技术

揭秘Spring依赖注入和SpEL表达式

华为云开发者联盟

开发 华为云 华为云开发者联盟 企业号 6 月 PK 榜

参与赢大奖!阿里云机器学习平台PAI助力开发者激发AIGC潜能

阿里云大数据AI技术

阿里云 AIGC

政务云建设提速,天翼云夯实智慧政务数字底座

天翼云开发者社区

云计算 大数据

KW 新闻 | KaiwuDB 亮相数字中国并发布离散制造场景解决方案

KaiwuDB

数字中国 KaiwuDB 离散制造业解决方案

低代码赛道拥挤 生态聚合成为破局关键

力软低代码开发平台

【有奖调研】互联网新型社交,华为在找“元服务搭子”,快来集合!

HarmonyOS SDK

HMS Core

MySQL 8.0.29 instant DDL 数据腐化问题分析

GreatSQL

greatsql greatsql社区

Navicat Premium将关系和实体添加到概念模型的方法

背包客

macos MySQL 数据库 Mac 软件 Navicat Premium

TCMalloc 技术细节详解

KaiwuDB

KaiwuDB TCMalloc

破防了!阿里用17个真实企业级项目阐述Java系统分析与架构设计

互联网架构师小马

Java 架构设计 系统分析

CloudOps自动化运维套件助力企业更好上云、用云、管云

阿里云弹性计算

云计算 大数据 阿里云 物联网

Java获取本机IP

Geek_7ubdnf

Sentinel熔断降级的规则及实现原理

互联网架构师小马

Java sentinel 熔断降级

什么是低代码(Low-Code)?

优秀

低代码 低代码Low-Code 低代码是什么

面试官:如何实现开关降级

互联网架构师小马

Java sentinel aop 开关降级

集结开发者力量,6月17日华为开发者联创日·深圳站即将启航!

说山水

人民日报:天翼云持续拓展云网基础设施覆盖广度和深度

天翼云开发者社区

云计算

当GaussDB遇上了毕昇编译器

华为云开发者联盟

数据库 后端 华为云 华为云开发者联盟 企业号 6 月 PK 榜

AIGC时代,设计软件应该做什么?丨AIGC X 企业服务

ToB行业头条

微服务高并发:授权与系统自适应功能的实现原理

互联网架构师小马

授权 系统自适应

抓包分析RST信号

蓝胖子的编程梦

TCP Wireshark tcpdump RST 报文 Connection reset

正式启动|2023中国高校计算机大赛—大数据挑战赛火热报名中!

云智慧AIOps社区

大数据 AI 算法 运维 智能运维

华为云分布式数据库和高性能数据库技术内幕_语言 & 开发_华为云产品与解决方案_InfoQ精选文章