2009-10-27 24 views

回答

6

我認爲這是一個很難回答的問題,因爲它對你正試圖解決的問題非常具體,但我會試着給你看看我們所看到的情況。

我們一直在使用CloudWatch指標收集工具(此處提供:http://aws.amazon.com/articles/2934)對RDS進行基準測試,並發現它的性能與我們的數據集的生產服務器差不多。我們用單個RDS實例和多可用區設置(我們計劃在生產中使用)進行了測試,沒有備份保留。

即使在一個小型的數據庫實例(db.m1.small)上,我們已經能夠投入到它的負載,我們能夠進入1000-1100寫入IOPS範圍(它們的度量)。至少對於我們的負載,增加實例類不會影響吞吐量IOPS或字節。當我們看到亞馬遜非常坦率地承認,真正擴展的解決方案是細分您的問題,以便您可以將其擴展/存儲在多個數據庫服務器上。事實上,我們在應用程序中已經有了這個功能(非常類似於分片),因此可以輕鬆利用並輕鬆過去IOPS測量。

0

我們發現RDS在性能方面與我們自己的生產服務器(專用或虛擬或EC2)相當。請注意,使用虛擬化解決方案時,您將始終遭受一些IO /性能下降,這正是RDS似乎正在使用的情況,並且這將在重負載下顯示出來(但負載很重,無論如何,您應該擁有專用的MySQL/DB盒。)

請注意:你可能會看到最大的性能是網絡延遲 - 如果你正在讀/從EC2框的RDS中,反之亦然寫作,網絡延遲將可能是bottlebeck,特別是針對大量查詢。如果您從非亞馬遜/非EC2框連接到RDS,這可能會更糟糕。

您可能會從虛擬盒子的等效規格物理盒子中獲得更多的性能,但專用vs EC2/RDS的確如此,並且不是RDS特有的問題。

關於RDS vs EC2,亞馬遜設置RDS的默認設置看起來相當不錯,所以如果您只是想讓數據庫服務器啓動並運行並連接到它,RDS不僅適合您。請確保您已經正確分析了成本 - 與EC2實例的定價模型不同。

相關問題