3

我很难理解从 PostgreSQL 切换到 Redshift 是否是一个好主意,就像从 MySQL 切换到 Aurora 一样轻松。

与 AWS 宣传的 Aurora 类似,随着数据集的增长,人们报告了约 5 倍的性能和更高的线性可扩展性。

我可以将我的主要、延迟敏感的 PostgreSQL 迁移到 Redshift 并自己测试它,但我想我会问,因为我不敢相信我是唯一一个想到这一点的人。

那么,有什么问题呢?

4

2 回答 2

16

Redshift不是PostgreSQL。它是一个列存储引擎,它使用非常旧的 PostgreSQL 版本中经过大量修改的部分作为其前端。在后台,它由ParAccel提供支持,这是 PostgreSQL 8.0.2 的一个经过大量修改的分支。

想象一下,有人拿了那个时代的 MySQL 4.1 或其他东西,删除了 InnoDB 和 MyISAM,添加了他们自己的硬连线存储引擎,删除了一大堆特性并添加了一堆不同的特性——在这个过程中改变了支持的 SQL 方言。这给了你一些想法。

这是针对不同需求的截然不同的产品。它针对 OLAP 工作负载进行了大量优化,并为 OLTP 工作负载付出了沉重的代价。

一般来说,您应该使用 PostgreSQL(在 AWS RDS 或其他地方)进行日常事务处理。如果您想要数据仓库和分析并且已经超越了 PostgreSQL,那么您可能会考虑将 Redshift 作为您的选择之一……尽管您可能并没有真正超越 PostgreSQL,只是 AWS RDS。

也许您正在寻找更像 Postgres-XL 的东西?

于 2016-01-18T11:29:34.573 回答
0

关于 Redshift 不是 Aurora 的 PostgreSQL 等价物,另一个答案是准确的。通常,当您需要在大型数据集上运行一些非常繁重的查询(可能需要数小时或更长时间才能完成运行的东西)时,您会使用 Redshift。Redshift 是一种列式数据存储,它基本上可以自动规范化每条传入的数据,并且可以执行原本需要数天才能在几秒钟内完成的查询。完成后,将其删除,然后在再次需要时重复该过程。

就获得 PostgreSQL 的 Aurora 等效项而言,我不知道那还有多远,但我很确定有进取心的人可以使用 AWS EFS 构建自己的 ( https://aws.amazon.com/efs/ ) . 我相当确定这是 Aurora 公式的重要组成部分。

于 2016-10-22T03:29:20.727 回答