亞馬遜正式發布關系型數據庫Amazon Aurora
在去年的 AWS re:Invent 大會上,亞馬遜宣布了 Amazon Aurora 。Aurora是一個關系型數據庫,可以跨3個可用區域復制6份數據,其設計目標是提供高性能和高可用性(99.99%),并且存儲可以輕松高效地擴展到64TB。近日,AWS首席傳道士 Jeff Barr 宣布 Amazon Aurora正式發布,但目前只有美國東部(北弗吉尼亞)、美國西部(俄勒岡) 和歐洲(愛爾蘭)等三個地區的用戶可以使用。
關于Amazon Aurora的特性,Jeff在先前的 博文 中已經闡述過。因此,這次他只介紹了該數據庫的新特性:
- 零宕機遷移 :如果用戶正在使用 Amazon RDS for MySQL ,那么借助Amazon Aurora的新特性,只需要很簡單的操作(打開 RDS控制臺 ,選中現有數據庫實例,并從 Instance Action 菜單下選擇 Migrate Database )就可以實現零宕機遷移。如果數據庫處于活動狀態,則需要首先在實例的DB參數組中啟用二進制日志(具體方法參見 這里 )。
- 豐富的指標 :每個Amazon Aurora實例都會向 Amazon CloudWatch 提報大量的指標。用戶可以通過控制臺查看,并根據需要設定預警值。
- 簡單快速的復制 :每個Amazon Aurora實例最多可以有15個副本,用戶只需幾次點擊即可完成。而且,得益于Amazon Aurora獨特的架構,復制延遲通常只有10到20毫秒。
- 性能提升5倍 :在同一硬件上運行時,Amazon Aurora的性價比是傳統關系型數據庫的5倍。不過,這不是說單個查詢的速度快5倍,而是說Amazon Aurora能夠處理的并發查詢比其它產品多許多。Amazon Aurora獨特的高并發存儲訪問方式減少了數據存儲爭用,讓它可以用一種非常高效的方式處理查詢。也許,這可以解答人們先前的疑問。
AWS合作伙伴網絡(APN) 已經開始在他們的產品中測試Amazon Aurora,包括 Tableau 、 Talend 、 Alfresco 等。Amazon Aurora已經可以用于生產環境,其計費方式如下:
- 數據庫實例 ——主實例和副本均以小時為單位計費。
- 存儲 ——每GB每月0.10美元,依據是數據庫實際占用的存儲字節數。
- I/O ——數據庫發起的每百萬次I/O請求0.20美元。
更多價格信息,請查看 Amazon Aurora定價頁面 。
Aurora發布的消息在Hacker News上引發了激烈的 討論 。許多網友都對Aurora的技術架構感興趣,比如elktea和falcolas就想知道“它是否是基于 Galera (一個以InnoDB為基礎構建的存儲引擎,是MySQL和MariaDB集群實現的基礎)?”,而falcolas猜測Aurora是基于NDB構建。對此,Redshift總經理awgupta回復道:
Aurora既不是基于Galera,也不是基于NDB。
你可以將Aurora看作一個單實例數據庫……事務、鎖、LSN生成等都是在數據庫節點完成的。我們會將日志記錄向下推送到存儲層,Aurora存儲負責從日志生成數據塊。
因此,ACID中的ACI都是在數據庫層使用傳統的技術實現的。而D則使用了分布式系統的技術……我們有一個生成LSN的頭節點,提供一個單調邏輯時鐘……
另外,談到Aurora的性能,有網友對基準測試感興趣,但苦于沒能找到獨立的第三方對Aurora進行基礎測試的案例。對此,awgupta回復說:
對于類似TPC-C這樣的基準測試,你可以運行:1) CloudHarmony ;2) Percona 。
我們發現,使用CloudHarmony加載大型數據集更簡單,但我們兩個都做了。
另外,他還建議網友閱讀這篇 文章 。這有助于確保,他們配置的客戶端有足夠的網絡吞吐量來運行一次完整的測試。
除了上述問題外,有許多網友對Aurora究竟是什么還存在疑問。Jeff建議他們閱讀他先前的 博文 。而關于Aurora的架構細節,網友mathnode則建議觀看這段 油Tube視頻 。
要了解更多關于Amazon Aurora的信息,請訪問 Amazon Aurora官方網站 或閱讀 Amazon Aurora文檔 。