在企业数字化转型背景下,每家企业都有大量数据,都希望通过数据为业务赋能。然而,现实情况是,企业花大力气获得的数据,其价值实现只是冰山一角,很多沉默在水下的数据价值,需要更有效的工具和技术能力去实现。
说白了,企业要想有效发挥数据价值,必须要具备坚实的数据基础,而数据库一定是其中非常重要的一块内容。
▲亚马逊云科技大中华区产品部总经理 陈晓建
问题是,为什么很多企业更愿意拥抱云原生数据库路线?用亚马逊云科技大中华区产品部总经理 陈晓建 的话来说,和企业底层的IT架构变化有关!
云原生数据库为什么重要?
“数据已经成为企业核心资产和创新的主要驱动力,但企业获得数据价值的前提是拥有一个坚实的数据基础保障。其中,数据库作为数据处理中枢,是数据基础的重要组成部分。”在陈晓建看来,企业今天的数据量虽然足够大,但其实IT架构还没有做好准备,没有能力去处理海量数据,这些数据具有多样化、异构特征,并且来自于不同的数据源。
为了更好地节约资源,早期一些企业开始尝试云端转型,但只是把线下的物理机搬到云上,通过虚拟机提升系统的健壮性,这种模式并不能充分体验到云的弹性,只有生在云上、长在云上的云原生架构,才能真正实现弹性扩缩容、快速响应业务的目标,最终提升性能,降低总体拥有成本。尤其在现代化业务环境下,企业更希望通过融合了容器、DevOps等能力的云原生架构来实现用户需求的快速迭代。
显然,数据库作为底层重要的基础能力,也必须要与时俱进,向云原生方向演进。
问题是,到底什么是云原生数据库呢?从字面意义理解,云原生数据库是指通过云平台构建、部署和交付的数据库服务,能提供可扩展、更可靠的数据库解决方案。
相比传统数据库,云原生数据库可以更好地利用云的特点,从资源层面实现快速、动态、自动的扩缩容。 从用户应用价值来看,云原生数据库带来的好处有三个:第一,免运维;第二,可以根据业务需求,快速、动态地伸缩资源;第三,云上的各种能力,可以融会贯通,云服务商可以提供计算、网络、存储、安全、大数据、AI/ML等各种服务,而数据库是完整生态中的重要一环。
如何为数字新基建赋能?
提到云原生数据库,Amazon DynamoDB是真正的开创者。那么这款数据库是如何诞生的呢?背后还有一个小故事!
之前,亚马逊电商业务一直用的是商业数据库,在2004年美国圣诞季的时候(黑五),赶上了业务高峰期,业务中断了四个小时。经检测发现,商业数据库出现了性能天花板,是此次业务中断的根本原因。事后,亚马逊开始思考如何设计一款更适合互联网应用的数据库架构?于是,亚马逊第一个提出了NoSQL概念,并在2012年推出了第一款NoSQL数据库,也就是Amazon DynamoDB。
从2012年到今天,Amazon DynamoDB在十年间, 不仅成为一款成熟的数据库产品,更收获了Lyft、Airbnb、丰田、飞利浦等一大批企业的追随。如今,Amazon DynamoDB已被亚马逊云科技内部视为Tier0服务,是最为核心服务之一,也是业界第一个真正意义上的云原生数据库。
经过不断创新迭代,亚马逊云科技目前已推出15种专门构建的云上托管数据库服务,其中既有SQL也有NoSQL的数据库类型。
SQL关系型数据库:
1. Amazon Relational Database Service(Amazon RDS):开启了托管数据库服务的新模式,从最初只支持MySQL,到目前已支持6种常用的数据库引擎:兼容 MySQL 的 Amazon Aurora、兼容 PostgreSQL 的 Amazon Aurora、MySQL、MariaDB、PostgreSQL、Oracle以及 SQL Server。
2. Amazon Aurora:2014年推出的云原生关系型数据库,该服务是亚马逊云科技历史上用户数量增速最快的云服务。
NoSQL数据库:
1. Amazon DynamoDB:高性能扩展的键值数据库,适用于海量数据场景,譬如电商、游戏。
2. Amazon DocumentDB:兼容MongoDB的托管文档数据库,从全球看中国区MongoDB的接受率极高,在游戏、移动应用上使用很多。
3. 内存数据库,极致响应延迟,常用于缓存、排行榜、广告等场景。分为两种:Amazon ElastiCache兼容Redis和Memcached内存数据库;Amazon MemoryDB兼容Redis可持久化内存数据库。
4. Amazon Neptune托管图数据库,分析万事万物的关联,用于欺诈检测,社交网络,推荐引擎。
5. Amazon Timestream托管时序数据库,常用于IoT(比如车联网采集的有明显时间顺序,大部分只增加不修改的海量数据)。
6. Amazon Quantum Ledger Database (Amazon QLDB)托管的分类账数据,比如车管所,从车子出场、转手,出事故所有记录都不可修改而且可追溯,可验证。
7. Amazon Keyspaces托管的兼容Cassandra的数据库,可以用于工业应用场景。
除此以外,还有很多具有Serverless功能的数据库,如Amazon Aurora serverless、 Amazon DynamoDB、 Amazon Timestream、 Amazon Keyspaces和Amazon QLDB等,都支持Serverless无服务器功能。通过无服务器功能,可以进一步简化客户在创建、维护和扩展数据库方面的工作,让数据库的扩展性及自动伸缩容量达到新的高度,其中Amazon Aurora Serverless V2可以在几分之一秒内将数据库工作负载从数百个事务扩展到数十万个事务,与按照峰值负载来配置容量相比,可节省 90% 的数据库成本。
云原生数据库是分布式部署,在底层架构上具有天然优势,用户可以在无感知的情况下进行横向扩展。同时,有了云原生数据库,用户就不需要专门去构建一个昂贵的DB团队,所有数据库配置工作都可以由云服务商来解决。更重要的是,云是一个按用量收费的服务,用户可以更精准地去控制自己所用的资源。最后,凭借云服务商带来的全球云基础设施服务,云原生数据库还具备了全球跨区灾备能力。
以游戏行业为例,一款新游戏在发布的时候,很难预测用户数,有时候一个晚上会出现日活几千万的数据,有时候一个礼拜也达不到一天的数据量。如果用户数很少,后端技术却为此配置了一堆资源,会造成极大的资源浪费。而在亚马逊云科技海量云端资源支持下,用户不需要担心资源配置的问题,只要点击几下鼠标,就能自动解决扩缩容的问题。
同样,在汽车、制造、金融等业务场景,云原生数据库带来的好处显而易见。以汽车行业为例,面对海量多样化数据挑战,很多企业缺乏有效手段来充分挖掘数据价值,亚马逊云科技提供了专用场景数据库,比如针对车联网的时序数据处理、企业内部系统的结构化数据处理,建立知识图谱的图数据库以及加速访问的缓存数据处理。具体应用方式是,客户可以使用 Amazon DocumentDB 支持存储、查询和索引地理空间数据,可以创建 2dsphere 索引并使用流行的 MongoDB 地理空间 API,来对存储在Amazon DocumentDB 的数据执行查询。Amazon DocumentDB兼容MongoDB,可以根据数据吞吐量轻松扩展数据库计算资源通常可在几分钟之内完成,并且会随着客户的集群存储需求的增长而自动提高存储卷大小。
总之,对用户而言,云原生数据库发挥的作用,更像是“数字新基建”,它可以帮助企业更快速地拓展业务,摆脱底层基础架构繁琐的构建问题,让企业专注于业务创新,加快产品上市时间。