AWS有哪6款数据库

88次阅读
没有评论

共计 2295 个字符,预计需要花费 6 分钟才能阅读完成。

这篇文章给大家分享的是有关 AWS 有哪 6 款数据库的内容。丸趣 TV 小编觉得挺实用的,因此分享给大家做个参考,一起跟随丸趣 TV 小编过来看看吧。

AWS 有哪 6 款数据库呢?

确切地说,我认为是 7 款数据库:

* RDS

* RDS-Aurora

* Redshift

* DynamoDB

* Neptune

* Timestream

* QLDB

(RDS 和 RDS-Aurora 有些人认为是同款数据库。)

这几款数据库真是各有神通,几乎把所有数据库相关的应用场景都捕捉到了。

接下来逐一介绍下:

RDS(Relational Database Service)

RDS 顾名思义就是“关系型数据库”。这里其实亚马逊移植了市面上常用的几款数据库,做成了“云”的版本给客户,包括:Oracle,MySQL, MS SQL, MariaDB, PostgreSQL。

这么做的好处,就是客户教育成本低,迁移成本低,用自己熟悉的数据库,又享受了云端的高可用和高性能。

这些好像没啥,很“正常”,还不够“丧心病狂”,但是接下来的几款数据库产品,AWS 就要开挂了。

RDS-Aurora

虽然说,Aurora 是挂在 RDS 下面的一个数据库产品,但是我认为它完全是不一样的。不能和其它 RDS 数据库相提并论。

数据库的一个核心问题就是解决“高并发”,其中包括:高并发的“读”,和高并发的“写”。(比如一个电商平台的网站,对商品的查询都是读,下订单则都是写了。)

你可能会说,高并发的“读”不难处理啊!可多几个数据部分不就行了?比如,一份数据放在 10 个服务器上 – 对于读,来说,是这样的。

但是,如果系统里面有很多数据副本的时候,高并发的“写”就不能有效的同步到所有的副本上了 – 所以,高并发的读写实际上是一对儿矛盾的综合体。

Aurora 通过“日志即数据”的概念,把“数据引擎”和“数据存储”进行了有效的分割,从而达到了空前的高并发读写机能。

传统的普通数据库服务,或者普通的自建数据库机构,“写”只能发生在一个“主”数据上,然后“主”再把自己的数据同步给其它副本。Aurora 则不同,“写”可以发生在任何一个可用区上。Aurora 的架构使用了 3 个可用区,每个可用区有 2 个副本,也就是一共 6 个副本,这 6 个副本都可以进行读写。极大的弥补了,传统数据库对高并发的瓶颈。这是不是很“丧心病狂”?这是如何做到的?!

细节,在这里就不赘述了,有兴趣的话,可以咨询我们的架构师~

高并发的读写是典型的 OLTP(On-Line Transaction Processing 联机事务处理过程)中发生的场景。那么对于 OLAP(On-Line Analytical Processing 在线分析过程),AWS 提出了什么产品呢?

Redshift

和 OLTP 场景下,数据库需要支持高并发读写不同,OLAP 场景下数据库读写频率很低,数据库需要进行大量的聚合计算:数据量大,计算量也大。(比如,一天结束之后,我们需要对今天的用户行为进行分析,所有用户行为数据可能是几个 TB。)

这时候,就需要 Redshift 出场了。Redshift 说起来也是关系型数据库,但是它和 RDS 们有个本质的不同,它不是按“行”来存储数据的,而是按“列”来的。不仅如此,它还按照“列”,对数据进行了排序!基本上这就是为了做“聚合”而诞生的数据库啊!而且按列聚合的数据库很方便压缩,Redshift 可以处理 PB 级数据哦!!!

你说这就可以了吧:传统的关系型数据库,AWS 有了;OLTP 数据库有了;OLAP 数据库也有了。AWS 觉得还不够!

DynamoDB

上面的都是关系型数据库。DynamoDB 是 AWS 提供的一款“非关系型数据库”,特别以“键值存储”为核心。可以高效的进行大数据 / 大文件的快速读取。

如果你是游戏行业 / 医疗行业 / 影视娱乐行业有大文件需要读取的话,那么你有福了。:)

Neptune

关系型数据库有了,非关系型也有了!还不够吗?对于亚马逊来说,当然不够!

AWS 又推出了“图数据库”。在现在这个社交应用(大数据相关性)横行的年代,没有图数据库,取一个简单的人际关系,用“关系型数据库”真是要累死的。举 2 个简单的例子:

1. 我们想知道用户 A 和用户 B 是几度好友?如果 A 和 B 是直接好友也就罢了,用关系型数据库 Join 一次也就行了。但是,万一是 10 度好友呢?总不能 Join 10 次吧。关键是,如果不知道是几度好友,难道要无限的 Join 下去吗?

2. 我们的物流系统报告,北京到上海的一趟货车延迟了,那有多少用户会受到影响呢?一趟车可能影响 10 条物流链路?影响 50 个城市? 影响 2000 个用户?估计我们需要把系统里面所有的数据都关联查询一遍才能有个结论,成本太高了。

在上面的场景里面(也就是不断的大量的 Join 出现的时候),图数据库就是一个利器了。

这都已经好几款数据库了,还不够吗?AWS 觉得还不够。2018 年的时候,它居然同时发布了两款新数据库!!!

我真是要给这家公司跪了。

Timestream

顾名思义,Timestream 是和时间相关的数据库。因为很多对数据的查新都是以时间段为基础的。Timestream 就是针对这个场景的。

QLDB

QLDB 的全称是 Quantum Ledger Database。它的应用场景也很好理解,最适合的场景是“记账本”。“账本”是不能被更改的,每一笔记录都不能被改动,被忠实的记录下来,已被查询。QLDB 就应运而生了。是不是有点儿“区块链”的意思?只不过 QLDB 是有中心的。

感谢各位的阅读!关于“AWS 有哪 6 款数据库”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-08-16发表,共计2295字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)