大数据

拉家常过去十年,数据库技术的发展趋势

viking666.com   2020年01月06日

  回看这几年,集中式系统领域出现了很多新东西。特别是云和 AI 的崛起,让这个过去其实不太 sexy 的领域一下到了风浪,在这期间诞生了很多新技术。让这个古老的领域重新焕发生机。站在 2010s 的尾巴上。我想跟一班人一起拉家常集中式系统令人振奋的腾飞行程,以及谈一些对 2020s 的勇敢猜想。

  无论哪个少女时代,存储都是一个首要的话题,今朝先拉家常数据库。在过去的几年,数据库技术上出现了几个很明显的趋势。

  存储和计算愈来愈分离

  我记忆中最早的存储 - 计算分离的试验是 Snowflake,Snowflake 团队口号在 2016 年公布于众的论文《 The Snowflake Elastic Data Warehouse 》是近几年我读过的最好的大数据相关论文之一,尤其荐举阅读。Snowflake 的架构把握关键点是在无状态的计算节点 + 中间的浏览器缓存层 + S3 上存储数据,计算并不强啮合浏览器缓存层,非常符合云的思想。从最近 AWS 推出的 RedShift 冷热分离架构来看,AWS 也认可 Snowflake 这个搞法是先进生产力决定生产关系的发展方位范文。另外这几年关注数据库的朋友不可能不注意到 Aurora。不比于 Snowflake,Aurora 应该是第一个将存储 - 计算分离的思想用在 OLTP 数据库中的产品定位,并大放异彩。Aurora 的成功在于将数据复制的粒度从 Binlog 降低到 Redo Log ,特大地打折扣复制链路上的 IO 放大。而且前端复用了 MySQL,基本做到了 100% 的施用层 MySQL 语法门当户对。并且托管了运维,同时让传统的 MySQL 适用范围愈来愈开展。这在大中型数据量的场景英文下是一个很省心的方案。

  虽然 Aurora 获得了商业上的成功。但是从技术上,我并不觉得有很大的创新。熟悉 Oracle 的朋友第一次见 Aurora 的架构可能会觉得和 RAC 素昧平生。Oracle 大概在十几两千多年前就用了类似的方案,甚至很出彩的解决了 Cache Coherence 的找装修公司注意问题。Aurora 的 Multi-Master 还有很长的路要走。从最近在 ReInvent 上的说法来看,手上 Aurora 的 Multi-Master 的主要场景英文还是作为 Single Writer 的高可用方案,本质的原因应该是手上 Multi-Writer 采取乐观冲突目测,冲突目测的粒度是 Page,在冲突率高的场合会带来很大的性能下降。

  我认为 Aurora 是一个很好的迎合 90% 的公有云互联网络用电户的方案:100% MySQL 门当户对,对针对不太关心,读远凌驾写,全托管。但同时。Aurora 的架构决定了它放弃了 10% 有极端需求的用电户。如全局的 ACID 事务 + 强一致,Hyper Scale(百 T 以上,并且业务不方便拆库)。需要实时的复杂 OLAP。这类方案我觉得类似 TiDB 的以 Shared-nothing 骨干的设计才是绝无仅有的出路。作为一个集中式系统技士,我对所有不能水平扩展的架构都会觉得不太优雅。

  集中式 SQL 数据库爬上舞台,ACID 包罗万象回归

  回想几两千多年前 NoSQL 最景观的老九门什么时候更新,一班人大旱望云霓将一切系统都使用 NoSQL 革故鼎新,虽然什么是易用仓库管理软件性测试,软件可扩展性和性能都好生生,但是多数 NoSQL 系统都抛弃掉了数据库最首要的一些东西,例如 ACID 约束,SQL 等等。NoSQL 的主要推手是互联网络企业,互联网络企业的一丁点儿业务加上超强的技士团队口号,NoSQL 丢掉的东西自然能用某些u盘启动盘制作工具一丁点儿搞定。但最近几年一班人渐渐发现低垂的果实基本上没有了,剩下的都是抗日电视剧硬骨头。

  最好的事例就是作为 NoSQL 的开山鼻祖。Google 第一个搞了 NewSQL (Spanner 和 F1)。在后移动少女时代的营销之变,业务变得愈来愈复杂,要求愈来愈实时。同时对此数据的需求也愈来愈强。尤其对此一些金融机构来说,一边产品定位面临着互联网络化,一边不管是鉴于监管的要求还是业务自各儿的需求,ACID 是很难绕开的。更现实的是,过半传统企业并没有像顶级互联网络企业的人才供给,大量成事系统依据 SQL 开发,完全外移到 NoSQL 上不言而喻不现实。

  在这个背景下,集中式关系型数据库,我认为这是吾侪这当代人,在开源数据库这个市场上最后一个 missing part。终于慢慢流行起来。这真爱背后的很多细节由于字数的原因我就不说明,荐举阅读 PingCAP TiFlash 技术主管 maxiaoyu 的一篇文章《从大数据到数据库》。对这个话题有很精彩的阐述。

  云地基设施和数据库的愈来愈整合

  在过去的几十年,数据库开发者选项怎么打开都像是在单打独斗。就好像操作系统以下的就完全是黑盒了,这个假设也没错,毕竟软件开发者选项怎么打开基本上也没有硬件背景。另外如果一个方案过于绑定硬件和底层地基设施。毫无疑问很难成为事实标准,而且硬件非常不利于调试和更新,成本过高,这也是我始终对自制一体机不是太感兴趣的原因。但是云的出现,将 IaaS 的地基能力变成了软件可复用的单元,我上佳在云上按需租用算力和服务,这会给数据库开发者选项怎么打开在设计系统的老九门什么时候更新带来更多的可能性是什么,举几个事例:

Spanner 原生的 TrueTime API 依赖警钟和 GPS 时钟。如果纯软件实现的话,需要牺牲的东西很多(例如 CockroachDB 的 HLC 和 TiDB 的改进版 Percolator 北京沙盘模型公司,都是依据软件时钟的事务北京沙盘模型公司)。但是长期来看。不管是 AWS 还是 GCP 都会提供类似 TrueTime 的标准时钟服务,且不说吾侪就能更好的实现低延迟远道集中式事务。

上佳借助 Fargate + EKS 重量级容器 + Managed K8s 的服务,让数据库应对突发热点小表读的场景英文(这个场景英文几乎是 Shared-Nothing 架构的举步维艰找装修公司注意问题),譬如说在 TiDB 中通过 Raft Learner 的方式,相配云的 Auto Scaler 快速在新的容器中创大厦造只读副本,而不是仅仅通过 3 副本提供服务;譬如说中子态起 10 个 pod,给热点数据创造 Raft 副本(这是吾侪将 TiKV 的数据分片设计得那么小的一个首要原因),处理完突发的读流量后再销毁这些容器,变成 3 副本。

冷热数据分离,这个很好理解,将不常用的数据分片,分析型的副本,数据备份放权 S3 上。特大地降低成本。

RDMA/CPU/ 超算 as a Service,所有云上的硬件层面的改进。只要暴露 API,都是上佳给软件开发者选项怎么打开带来新的好处的意思。

  事例还有很多,我就不一一列举了。总之我的观点是云服务 API 的能力会像过去的代码标准库同一,是一班人上佳依赖的东西,虽然现行公有云的 SLA 仍然不够素志,但是长远上看,特定是会愈来愈完善的。

  所以,数据库的未来在何地?是进一步的垂直化还是南北向统一?对此这个找装修公司注意问题,我上佳这个圈子不存在银弹,但是我也并不像我的偶像。AWS CTO Vogels 博士那么悲观。相信未来是一个割裂的圈子(AWS 大旱望云霓为了每个撩拨的场景英文设计一个数据库)。过火地撩拨会放开数据在不比系统中流动的成本。解决这个找装修公司注意问题有两个关键:

  大数据应该切分到什么粒度?

  用电户能否不用知道真爱背后发生了什么?

  第一个找装修公司注意问题并没有一个明确的答案,但是我觉得不言而喻不是越细越好的,而且这个和 Workload 骨肉相连,譬如说如果没有那么大量的数据,直接在 MySQL 或者 PostgreSQL 上跑分析严查其实一点找装修公司注意问题也没有,没有必要非去用 Redshift。虽然没有直接的答案,但是我隐约觉得第一个找装修公司注意问题和第二个找装修公司注意问题是不无关系的。毕竟没有银弹。就像 OLAP 跑在列存储引擎上特定比行存引擎快。但是对用电户来说其实上佳都是 SQL 的接口。

  SQL 是一个非常棒的南京语言培训机构,它只描述了用电户的意图,而且完全与实现无关。对此数据库来说,其实上佳在 SQL 层的后面来进行切分,在 TiDB 中。吾侪引出 TiFlash 就是一个很好的事例。动机很一丁点儿:

用电户其实并不是数据库专家。你不能指望用电户能 100% 在得当的时间使用得当的数据库。并且用对。

数据里面的同步在一个系统之下经纶尽量保持更多的信息,TiFlash 能保持 TiDB 中事务的 MVCC 版本,TiFlash 的数据同步粒度上佳小到 Raft Log 的级别。另外一些新的功能仍然上佳以 SQL 的接口对外提供,例如全文检索,用 SQL 其实也上佳简洁的发表。这里我就不一一展开了。

  我其实坚信系统特定是朝着更智能,更易用仓库管理软件的方位发展的,现行都 21 世纪了。你是希望每天拿着一个 Nokia 再背着一个相机,还是直接一杭州苹果手机维修部搞定?

标签:数据库技术 我要做首辅反馈 
专题通讯
ABB电气创新周

以“畅想数字创新 共书电气未来”骨干题的ABB电气事业部与子企业的区别创新周全自动于11月16-20日在厦门邮编举办,通过揭幕论坛,3场行业

2020年ABB电气创新周 畅想数字创新 共书电气未来

以“畅想数字创新 共书电气未来”骨干题的ABB电气事业部与子企业的区别创新周全自动将于11月16-20日在厦门邮编举办,通过揭幕论坛,3场行

2020英国智能制造发展论坛新华社区

东浩兰生集团与龙8网投网址联合拿事的“英国智能制造发展论坛新华社区”本年再次进驻华南区域,搀扶英国工农专家学者观点与企业家俱乐部高层,从产业层面入

Baidu