阳振坤:分布式技术引领关系数据库发展

简介: 近日,HI COOL 全球创业者峰会在北京召开,OceanBase 创始人兼首席科学家阳振坤受邀出席了本次大会,并发表了《阳振坤:分布式技术引领关系数据库发展》的主题演讲,分享了全球主流关系型数据库发展的几个重要阶段以及对分布式数据库的畅想。以下为分享实录:从 1969 年 IBM 研究员 E.F.Codd 博士提出了“关系模型”以来,整个数据库行业开始进入关系数据库的时代。经过了几十年的发展,关系数据库成为了整个社会的关键信息基础设施,今天,我们所有的生活,不管是交通、通讯、商业,还是其他,基本都建立在关系数据库的基础之上。

image.png

关系数据库之所以成为今天信息社会的基础设施,是因为它提供的记账、转账和算账等的功能以及这些功能的事务属性,即事务的 ACID:原子性、一致性、隔离性和持久性。这些能力为商业、政务、互联网等等提供了很大的便利。

image.png

与此同时,信息社会基础设施的角色,也对关系数据库的系统稳定性、数据正确性、服务可靠性等提出了很高的要求,再加上关系数据库本身的复杂性和技术挑战,因此研制一个可在生产中使用的关系数据库门槛非常高、难度非常大。

image.png

今天最主流的关系数据库都是集中式的,尽管支撑了当今整个信息社会,但集中式数据库面临了很大的挑战。


第一, 难以扩展。集中式本质上其实是个单机系统,它依赖单一的共享存储。


第二,成本高昂。因为整个系统的可靠性、稳定性以及性能都建立在单个硬件的可靠性、稳定性和性能的基础上,这使得成本居高不下。


互联网时代的到来让这个问题变得更加严重,在互联网时代之前,比方说商场或银行或酒店柜台,不管有多少顾客,这些柜台的数量是稳定、确定的,此时整个系统只要按照最大的操作员数量来进行设计、测试,系统就能很好的工作,不管有多少人排队,系统的最大流量都不会超过设计流量。


到了互联网时代,每个人、每部手机都成了一个操作员,整个业务的流量,增长了 100 倍、1000 倍甚至是更多,并且业务流量在短时间内还可能迅速增加或降低,此时如果还按照最大的流量来搭建系统,可能要搭建一个几亿个操作员的流量的系统,甚至更大。


不止如此,访问量、并发量的激增还带来了数据量的巨大增长,企业需要对这些数据进行分析处理(即算账),但这个数据量已经远远超出了单个集中式数据库的存储容量。对于交易处理,人们还可以对业务做拆分,把业务拆小,让每个拆小后的业务可以运行在一个单机数据库上,就像人员和轻型装备可以分开用多架小飞机进行空运一样。但是,当人们要对这些海量数据进行分析处理的时候,就必须有一个容量足够大的数据库,就像一些重型装备,比如坦克、大炮等,无法拆小后用小飞机空运,而必须有大飞机才行。对于数据库,这种大飞机就是分布式数据库。

image.png

过去的几十年来,学术界讲 “One Size doesn't Fit all ”,一个尺寸不能适合所有人。但是,从企业家的角度来看是另外一回事,因为企业期望一个系统可以解决其业务问题,这样能让企业把更多精力放到业务上。

也许有人说,并不是什么场合都需要像“大飞机”这样的大数据库,分布式数据库只有大企业或者至少大中型企业才需要。事实上,大、中型企业肯定用得到分布式数据库,但是小微企业依然能够从分布式数据库中间受益。

image.png

以上图这个企业的业务曲线为例,很多时间业务量都在一个比较低的水位上,只有某些时段在一个较高的水位上,这也是几乎所有企业的业务特征。


今天的服务器的计算和存储能力越来越强悍,根据这个企业的最高业务流量来配置一台高性能的数据库服务器,确实就可以支撑这个企业的业务,但是这有很大的浪费。因为在大多数时候,服务器的处理能力没有得到充分发挥。采用分布式数据库,可以有另外一个思路,平时它的数据库是一台配置比较低的虚拟机服务器,如果业务流量增加了,利用分布式的能力随时增加虚拟服务器,业务流量更大时,虚拟服务器数量还可以再进一步增加,当业务高峰过了以后,这些虚拟服务器就可以逐步减掉,这样大幅度降低了企业成本。


image.png

关系数据库的研制十分困难,分布式关系数据库的研制更加困难,分布式关系数据库是否可行?这儿我们一起看两个现实中的例子。一个是 Google 的 Spanner,可能很多人了解它是从分布式存储直接跨到分布式数据库的;另一个是中国的 OceanBase 数据库,是从半分布式数据库到高可用数据库再到分布式关系数据库,虽然两者的技术路径不一样,但是结果是殊途同归。


我的汇报就到这里,谢谢大家。

相关文章
|
1天前
|
存储 供应链 安全
区块链技术原理及应用:深入探索分布式账本技术
【4月更文挑战第30天】区块链,从加密货币的底层技术延伸至多元领域,以其分布式账本、去中心化、不可篡改性及加密技术重塑数据存储与交易。核心组件包括区块、链和节点,应用涵盖加密货币、供应链管理、金融服务等。尽管面临扩展性等挑战,未来潜力无限。
|
1天前
|
存储 负载均衡 Go
【Go 语言专栏】使用 Go 语言实现分布式数据库操作
【4月更文挑战第30天】本文探讨了使用Go语言实现分布式数据库操作,强调其在并发性能、网络编程、语法简洁和跨平台性上的优势。关键技术和步骤包括数据分片、数据同步、负载均衡及故障转移。通过实例分析和挑战解决,展示了Go语言在大规模数据处理中的高效与可靠性,为开发者提供指导。
|
2天前
|
SQL 监控 关系型数据库
TiDB 分布式数据库快速入门详解
这些示例展示了TiDB的一些基本操作。实际使用时,你可能需要根据具体的业务需求和环境进行调整和优化。
|
2天前
|
存储 运维 物联网
【专栏】OceanBase 是一种分布式数据库系统
【4月更文挑战第29天】OceanBase 是一款先进的分布式数据库系统,以其分布式架构、高扩展性、高可用性和强一致性特点,应对大规模数据处理挑战。它支持混合负载,适用于金融、电商和物联网等领域,提供高性能、低成本的解决方案。尽管面临技术复杂性、数据迁移和性能优化等问题,通过合理策略可克服挑战。随着技术发展,OceanBase 在数字化时代将持续发挥关键作用。
|
3天前
|
存储 安全 数据管理
新一代数据库技术:融合区块链与分布式存储的未来趋势
传统数据库技术在数据安全性和分布式处理方面存在局限,而新一代数据库技术正日益融合区块链和分布式存储,为数据管理带来革命性变革。本文探讨了这一趋势的发展方向,以及如何利用新技术实现更高效的数据管理与保护。
|
3天前
|
运维 关系型数据库 分布式数据库
PolarDB产品使用合集之在选择分布式数据库时,主要考虑是什么
PolarDB产品使用合集涵盖了从创建与管理、数据管理、性能优化与诊断、安全与合规到生态与集成、运维与支持等全方位的功能和服务,旨在帮助企业轻松构建高可用、高性能且易于管理的数据库环境,满足不同业务场景的需求。用户可以通过阿里云控制台、API、SDK等方式便捷地使用这些功能,实现数据库的高效运维与持续优化。
|
6天前
|
存储 安全 数据管理
新一代数据库技术:融合区块链的分布式存储系统
传统数据库技术在面对日益增长的数据量和复杂的数据管理需求时显现出局限性。本文介绍了一种新一代数据库技术:融合区块链的分布式存储系统。通过将区块链技术与传统数据库相结合,实现了数据的分布式存储、安全性和透明度,以及去中心化的特性。这一技术的应用将极大地推动数据库系统的发展,为数据管理带来全新的解决方案。
|
6天前
|
存储 安全 数据管理
新一代数据库技术:融合区块链的分布式数据存储系统
传统数据库系统面临着数据安全性、可信度和去中心化等挑战,而区块链技术的兴起为解决这些问题提供了新的思路。本文介绍了一种新一代数据库技术,将区块链技术与传统的分布式数据存储系统相融合,实现了更高水平的数据安全性和可信度,以及去中心化的优势。通过结合区块链的不可篡改性和分布式存储系统的高性能,这一新型数据库技术将在未来的数据管理领域发挥重要作用。
|
7天前
|
存储 分布式计算 Hadoop
基于Hadoop分布式数据库HBase1.0部署及使用
基于Hadoop分布式数据库HBase1.0部署及使用
|
7天前
|
SQL Java 数据库连接
Java从入门到精通:2.3.1数据库编程——学习JDBC技术,掌握Java与数据库的交互
ava从入门到精通:2.3.1数据库编程——学习JDBC技术,掌握Java与数据库的交互