EC2 上的 Amazon RDS Aurora vs RDS MySQL vs MySQL?
Amazon RDS Aurora vs RDS MySQL vs MySQL on EC2?
我一直在寻找在云上设置数据库时的最佳实践,但我仍然不清楚我们应该采用以下哪种解决方案?
- 亚马逊 RDS 极光
- 亚马逊 RDS MySQL
- MySQL 在 EC2 实例上
我看到 Amazon Aurora 被作为更好的替代品进行营销,但经过一些研究后,似乎人们并没有在使用它。它有问题吗?
我个人不使用 Aurora,但我强烈推荐 RDS 而不是 运行 你自己在 EC2 上的 RDS。让故障转移自动发生,备份也物有所值。特别是因为 RDS 并没有那么贵。
Aurara 在纸面上看起来确实不错,但更灵活的实例选择让我一直使用 PostGreSQL 直到现在。不过,我们正在考虑迁移到 Aurora,主要是因为自动缩放存储配置和更高的性能。
AWS RDS 是托管数据库解决方案,它支持多个数据库选项 Amazon Aurora、PostgreSQL、MySQL、MariaDB、Oracle 和 Microsoft SQL Server。当您使用 RDS 时,它将提供内置配置选项,例如。
- 高可用性的数据库复制
- 读取副本以实现可扩展性
- 备份和恢复
- 操作系统和软件补丁等
这简化了数据库管理的开销。但是,灵活性仅限于 RDS 产品。
或者,如果您在 EC2 实例中托管数据库,则可以安装所需版本的数据库引擎、安装所需的扩展等,这提供了更大的灵活性,但也需要专业知识并增加了管理开销。
当您在 RDS 中考虑 Amazon Aurora 时,它与其他引擎不同,因为它是全新的并且由 Amazon 从头开始完全实施,并提供更高的性能和开箱即用的可靠性(由 Amazon 销售)合理定价。但是,Aurora 的一个限制是它不包含在 AWS 免费套餐中,它支持的最小实例类型是 "small".
注意:RDS 提供的一些功能和费用会有所不同,具体取决于您 select 的数据库选项。
在考虑之前,您应该仔细对 Aurora 进行基准测试。启动实例并设置应用程序和数据库的测试实例。产生尽可能高的负载。我在上一家公司做过,我发现尽管亚马逊声称性能很高,但 Aurora 却惨遭失败。比 RDS 慢两个数量级。我们的应用程序写入流量很高。
我们的结论:如果你有二级索引,写流量大,不适合Aurora。我敢打赌它对只读流量有好处。
(编辑:我所描述的测试是在 2017 年第一季度完成的。与大多数 AWS 服务一样,我希望 Aurora 会随着时间的推移而改进。亚马逊有一个明确的“Release ideas at 70% and then iterate.”策略来自这个,我们应该得出结论,AWS 的新产品值得测试,但可能在推出后至少几年内还不能投入生产。
在那家公司,我推荐了RDS。他们没有专门的 DBA 人员,而 RDS 为您提供的升级和备份等数据库操作的自动化非常有帮助。您在调整选项上牺牲了一点灵活性,但这应该不是问题。
RDS 最大的不便之处在于您无法让 MySQL 用户拥有 SUPER 权限,但 RDS 为您需要 SUPER 权限的大多数常见任务提供了存储过程。
我将多可用区 RDS 实例与由 Orchestrator 管理的 EC2 实例副本集进行了比较。由于 Orchestrator 需要三个节点,因此您可以拥有法定人数,因此 RDS 在成本以及易于设置和操作方面是明显的赢家。
我一直在寻找在云上设置数据库时的最佳实践,但我仍然不清楚我们应该采用以下哪种解决方案?
- 亚马逊 RDS 极光
- 亚马逊 RDS MySQL
- MySQL 在 EC2 实例上
我看到 Amazon Aurora 被作为更好的替代品进行营销,但经过一些研究后,似乎人们并没有在使用它。它有问题吗?
我个人不使用 Aurora,但我强烈推荐 RDS 而不是 运行 你自己在 EC2 上的 RDS。让故障转移自动发生,备份也物有所值。特别是因为 RDS 并没有那么贵。
Aurara 在纸面上看起来确实不错,但更灵活的实例选择让我一直使用 PostGreSQL 直到现在。不过,我们正在考虑迁移到 Aurora,主要是因为自动缩放存储配置和更高的性能。
AWS RDS 是托管数据库解决方案,它支持多个数据库选项 Amazon Aurora、PostgreSQL、MySQL、MariaDB、Oracle 和 Microsoft SQL Server。当您使用 RDS 时,它将提供内置配置选项,例如。
- 高可用性的数据库复制
- 读取副本以实现可扩展性
- 备份和恢复
- 操作系统和软件补丁等
这简化了数据库管理的开销。但是,灵活性仅限于 RDS 产品。
或者,如果您在 EC2 实例中托管数据库,则可以安装所需版本的数据库引擎、安装所需的扩展等,这提供了更大的灵活性,但也需要专业知识并增加了管理开销。
当您在 RDS 中考虑 Amazon Aurora 时,它与其他引擎不同,因为它是全新的并且由 Amazon 从头开始完全实施,并提供更高的性能和开箱即用的可靠性(由 Amazon 销售)合理定价。但是,Aurora 的一个限制是它不包含在 AWS 免费套餐中,它支持的最小实例类型是 "small".
注意:RDS 提供的一些功能和费用会有所不同,具体取决于您 select 的数据库选项。
在考虑之前,您应该仔细对 Aurora 进行基准测试。启动实例并设置应用程序和数据库的测试实例。产生尽可能高的负载。我在上一家公司做过,我发现尽管亚马逊声称性能很高,但 Aurora 却惨遭失败。比 RDS 慢两个数量级。我们的应用程序写入流量很高。
我们的结论:如果你有二级索引,写流量大,不适合Aurora。我敢打赌它对只读流量有好处。
(编辑:我所描述的测试是在 2017 年第一季度完成的。与大多数 AWS 服务一样,我希望 Aurora 会随着时间的推移而改进。亚马逊有一个明确的“Release ideas at 70% and then iterate.”策略来自这个,我们应该得出结论,AWS 的新产品值得测试,但可能在推出后至少几年内还不能投入生产。
在那家公司,我推荐了RDS。他们没有专门的 DBA 人员,而 RDS 为您提供的升级和备份等数据库操作的自动化非常有帮助。您在调整选项上牺牲了一点灵活性,但这应该不是问题。
RDS 最大的不便之处在于您无法让 MySQL 用户拥有 SUPER 权限,但 RDS 为您需要 SUPER 权限的大多数常见任务提供了存储过程。
我将多可用区 RDS 实例与由 Orchestrator 管理的 EC2 实例副本集进行了比较。由于 Orchestrator 需要三个节点,因此您可以拥有法定人数,因此 RDS 在成本以及易于设置和操作方面是明显的赢家。