【发布时间】:2015-09-11 05:14:30
【问题描述】:
Cassandra 建议将实例本地存储用于 EC2 部署而不是 EBS
我在 EC2 中部署 MongoDB...我是否还应该使用实例本地存储而不是 EBS PIOPS?
【问题讨论】:
标签: mongodb amazon-ec2 cassandra
Cassandra 建议将实例本地存储用于 EC2 部署而不是 EBS
我在 EC2 中部署 MongoDB...我是否还应该使用实例本地存储而不是 EBS PIOPS?
【问题讨论】:
标签: mongodb amazon-ec2 cassandra
这是一张关于在 EC2 上使用 MongoDB 的混合(实例存储和 PIOPS EBS)的幻灯片。 http://www.slideshare.net/mongodb/world-high-performance-mongo-db-on-ec2-20140620
实例存储超级快 - https://gist.github.com/ktheory/3c3616fca42a3716346b
对于非缓存读取,Instance-store 比 EBS-SSD 快 5 倍以上。 Instance-store 和 EBS-SSD 对于缓存读取是等效的。 实例存储的写入速度比 EBS-SSD 快 10 倍以上。
临时存储或实例存储确实会在实例重新启动后持续存在!它不会在停止/启动、终止或某些实例硬件故障后持续存在。
【讨论】:
MongoDB 手册中有一个带有 EC2 storage considerations 的部分,包括使用 EBS 优化 EC2 实例和预置 IOPS (PIOPS) EBS 卷的一般建议。
在本地存储上使用 EBS 有几个很好的理由:
本地存储(或 EC2 术语中的“实例存储”)是短暂的,会在实例停止/启动/终止以及硬件故障时引入潜在的数据丢失情况(请参阅 Instance Store Lifetime 上的 AWS 文档)。
虽然实例存储专用于特定实例,但磁盘子系统在主机服务器硬件上的实例之间共享。与常规 EBS 卷一样,对共享资源的争用可能导致不可预测的 I/O 行为。预置的 IOPS EBS 卷将为活动数据库工作负载提供更可预测的 I/O 性能 - 不会出现高于预期性能的峰值,也不会出现性能下降的低谷。
实例存储的大小为determined by the instance type。 EBS 卷可以独立配置以满足您的存储和性能要求。
如果您想更改实例类型,可以将 EBS 卷重新附加到同一可用区中的新实例。
可以使用 RAID 组合 EBS 卷以获得额外容量或冗余。
EBS 卷支持asynchronous snapshots,这是常见的backup strategy。
EBS 卷可以支持大多数实例类型的encryption for data at rest。
【讨论】:
推荐使用 EBS,因为它由多个实际驱动器提供,镜像驱动器之间的事务提交时间为 2 毫秒。 EBS 本身速度够快,读写速度可以达到 500+MB/秒。
Linux 内核是显着影响 IOPS 的原因,看看 Pinterest 工程师调查了什么:
最终选择:内核 3.18.7 + XFS + 64K RAID 块大小。
• 异步随机读取的最佳整体性能。
• 在其他地方都表现出非常有竞争力的表现。
• 3.13 中与网络相关的内核错误(特定于 Xen) 修复到 3.16。
【讨论】: