报名参加CloudWeGo黑客松,奖金直推双丰收! 了解详情
写点什么

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

  • 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:301002

评论

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

电商性能测试实战 | JMeter 插件 Ultimate Thread Group 完成梯度递增场景的压测

霍格沃兹测试开发学社

Chrome操作指南——入门篇(四) command

Augus

Chrome开发者工具 9月月更

测试必会 | 通过容器化 Python Web 应用掌握 Docker 容器核心技能

霍格沃兹测试开发学社

软件测试最常用的 SQL 命令 | 通过实例掌握基本查询、条件查询、聚合查询

霍格沃兹测试开发学社

面试 | 今日头条测试开发岗位面试题目回顾

霍格沃兹测试开发学社

业务场景抽离,助力测试提效

转转技术团队

如何深入学习前端培训技术知识

小谷哥

测试面试真题 | 从屡次碰壁到成长蜕变,半年拿下某大厂 60W 年薪测试开发 Offer!

霍格沃兹测试开发学社

测试面试真题|工作2年,从小厂到大厂,薪资翻倍是怎样的体验?

霍格沃兹测试开发学社

Github点击破百万!这部《从零开始学架构》神书就此霸榜

Java-fenn

Java 程序员 java面试 Java面试题 Java面试Java面试题

测试面试题集锦(三)| 计算机网络和数据库篇(附答案)

霍格沃兹测试开发学社

墨天轮沙龙 | 庚顿数据姚羽:实时数据技术赋能流程工业,保障业务连续性

墨天轮

数据库 国产数据库 实时数据库

大数据生态安全框架的实现原理与最佳实践(下篇)

明哥的IT随笔

大数据 hdfs hive 数据安全

用 Pytest+Allure 生成漂亮的 HTML 图形化测试报告

霍格沃兹测试开发学社

聊聊后端Web开发框架(Python)的简单使用

霍格沃兹测试开发学社

跨平台API对接(Python)的使用

霍格沃兹测试开发学社

面试 | Python 自动化测试技术面试真题

霍格沃兹测试开发学社

技术分享 | 黑盒测试方法论-判定表

霍格沃兹测试开发学社

Chrome操作指南——入门篇(三)

Augus

Chrome开发者工具 9月月更

车联网该怎样跳过车企设置的红线

Geek_99967b

小程序

本周四晚19:00知识赋能第八期第1课丨ArkUI框架整体设计

OpenHarmony开发者

OpenHarmony

天翼云铸牢国云安全,护航千行百业

天翼云开发者社区

测试面试题集锦(二)| 测试工具篇(附答案)

霍格沃兹测试开发学社

测试面试题集锦(五)| 自动化测试与性能测试篇(附答案)

霍格沃兹测试开发学社

测试面试题集锦(六)| 软素质篇与反问面试官篇(附答案)

霍格沃兹测试开发学社

版本控制神器GitHub的基本使用与踩坑,教你一铲子填平!

霍格沃兹测试开发学社

Chrome操作指南——入门篇(二)

Augus

Chrome开发者工具 9月月更

web前端培训开发技术前景怎么样?

小谷哥

打造国云安全品牌,铸牢企业云上安全防线

天翼云开发者社区

该如何测客户端专项测试?

霍格沃兹测试开发学社

软件测试最常用的 SQL 命令(二) | 高级 Join 多表查询

霍格沃兹测试开发学社

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