亞馬遜Web服務(wù)包括了諸如簡單存儲服務(wù)、彈性塊存儲、Glacier存儲以及DynamoDB等存儲服務(wù)。這四種AWS存儲服務(wù)為用戶使用其它云計(jì)算服務(wù)(如AWS的彈性計(jì)算云服務(wù))提供了不同的選擇。
與存儲服務(wù)相關(guān)的是包含多個可用區(qū)的多個區(qū)域,而數(shù)據(jù)和應(yīng)用程序都駐留在這些可用區(qū)中。那些關(guān)于數(shù)據(jù)可以駐留在哪些位置以及數(shù)據(jù)是如何在區(qū)域與區(qū)域之間遷移的規(guī)則是隨存儲服務(wù)、應(yīng)用程序存儲服務(wù)選擇影響的不同而各有差異的。
那些把部分或全部IT功能遷往亞馬遜Web服務(wù)(AWS)環(huán)境的客戶都需要面對這樣的挑戰(zhàn),即當(dāng)為他們的應(yīng)用程序選擇合適的存儲服務(wù)時,他們需要考慮與存儲服務(wù)相關(guān)的參數(shù)數(shù)量。這些參數(shù)包括但不僅限于:所需的存儲容量、存儲帶寬、可用性水平、耐久性水平、數(shù)據(jù)傳輸?shù)馁M(fèi)用、存儲的費(fèi)用、刪除的費(fèi)用、使用的區(qū)域、每個區(qū)域的定價以及其它各種參數(shù)。 針對AWS存儲應(yīng)用進(jìn)行規(guī)劃是非常重要的一項(xiàng)工作,它主要包括兩個階段:
• 初始規(guī)劃階段,在此期間你需要確定哪一種AWS存儲服務(wù)是最適合你的應(yīng)用程序需求的。
• 在AWS存儲服務(wù)部署之后的持續(xù)規(guī)劃階段。
對于AWS存儲使用進(jìn)行規(guī)劃是應(yīng)持續(xù)進(jìn)行的,這是因?yàn)閼?yīng)用程序的需求可能會發(fā)生變化,這樣你可能會需要增加新的應(yīng)用程序,同時亞馬遜公司也會對其存儲服務(wù)做出頻繁的變更,其中也包括定價。
技巧提示
對于眾多客戶來說,為一個應(yīng)用程序選擇最合適的AWS存儲服務(wù)是一項(xiàng)極具挑戰(zhàn)性的工作,因?yàn)樵诖蠖鄶?shù)情況下,每一項(xiàng)服務(wù)在帶寬、可用性水平、耐久性水平、數(shù)據(jù)傳輸費(fèi)用、存儲費(fèi)用、刪除費(fèi)用、使用區(qū)域等等方面都是各不相同的。
本文從應(yīng)用程序需求的角度出發(fā),針對存儲服務(wù)選擇提供了它們的特點(diǎn)匯總和部分貼士。以下針對四種AWS存儲服務(wù)中的每一項(xiàng)都給出了一個簡單描述,以便于幫助用戶能夠正確地選擇最適合他們的服務(wù)。
簡單存儲服務(wù)
亞馬遜的簡單存儲服務(wù)(S3)是一種對象存儲服務(wù),它主要應(yīng)用于創(chuàng)建、檢索以及刪除對象的各種各類應(yīng)用程序中。S3存儲服務(wù)適合于非結(jié)構(gòu)化的數(shù)據(jù)對象,這類數(shù)據(jù)對象中的數(shù)據(jù)被認(rèn)為主要是比特串。每一個S3對象都有一個唯一的URL。S3存儲服務(wù)為企業(yè)用戶提供了一個將其部分或全部存儲基礎(chǔ)設(shè)施遷往AWS EC2 服務(wù)的機(jī)會。
S3存儲服務(wù)是AWS所提供的存儲服務(wù)中最具靈活性的一個,它允許用戶將其應(yīng)用于大量的用例,以及歸檔和備份組織內(nèi)的關(guān)鍵數(shù)據(jù)中。大部分的用戶并不會采用AWS API(應(yīng)用程序編程接口)的方式來訪問S3存儲服務(wù)的對象。與之相反,用戶一般會通過較高級的工具或應(yīng)用程序來訪問S3對象,而應(yīng)用程序可為操作S3對象提供一個更易于使用的用戶界面。用戶還可以通過互聯(lián)網(wǎng)按照URL從AWS實(shí)現(xiàn)外部訪問,或者使用其他的AWS服務(wù)(如EC2)實(shí)現(xiàn)內(nèi)部訪問。
用戶使用S3存儲服務(wù),更多的是將其作為一種安全的、與位置無關(guān)的存儲設(shè)備。S3存儲服務(wù)的另一種常見的個人應(yīng)用就是備份本地文件。企業(yè)會使用S3來存儲用戶手冊、公司視頻以及演示文檔等。而用戶則可對S3對象執(zhí)行創(chuàng)建、檢索以及刪除等操作。 對于S3,你可以指定一個創(chuàng)建bucket的區(qū)域(bucket主要用于容納可被寫入、讀取、刪除以及列表顯示的對象),其中對象的容量被限制在5TB以下。在一個區(qū)域中用戶可創(chuàng)建多個bucket,而每個bucket中的對象數(shù)量則是沒有限制的。用戶可綜合合規(guī)性要求、性能、服務(wù)等級協(xié)議、成本以及包括加密功能在內(nèi)的冗余認(rèn)證機(jī)制等多方面的考慮,選擇不同的AWS區(qū)域。與基于EBS的存儲不同,雖然S3對象是在特定區(qū)域內(nèi)創(chuàng)建的,但是它們是可以從任何位置被訪問的。
你可以按單位GB的價格支付S3存儲服務(wù)的費(fèi)用。按所選AWS區(qū)域的不同,使用S3存儲服務(wù)的成本也是有所區(qū)別的,其價格從每月每GB 0.03美元開始,如果用戶所使用的存儲容量超過了5000TB,那么其價格就變?yōu)槊吭旅縂B 0.0275美元(美國標(biāo)準(zhǔn)區(qū)域)。同時,也有針對AWS API請求的收費(fèi)標(biāo)準(zhǔn)。S3存儲服務(wù)的數(shù)據(jù)傳輸價格是基于進(jìn)出AWS S3的數(shù)據(jù)傳輸流量的。數(shù)據(jù)傳輸至S3和刪除對象是免費(fèi)的。S3的定價選項(xiàng)還具體取決于你是選擇標(biāo)準(zhǔn)模式還是選擇降低冗余模式。降低冗余是指以較慢的可用性恢復(fù)時間來換取更低的使用成本。
彈性塊存儲
亞馬遜彈性塊存儲(EBS)是一種基于卷標(biāo)、基于網(wǎng)絡(luò)的塊級存儲服務(wù),它主要應(yīng)用于AWS EC2實(shí)例。EBS 存儲配合AWS實(shí)例,可提供除EC2實(shí)例類型以外額外和持久的存儲。當(dāng)一個實(shí)例被終止時,實(shí)例所連接的存儲卷將被斷開,并被連接至另一個實(shí)例(當(dāng)然,前提條件是這個實(shí)例也在同一區(qū)域的同一可用區(qū)內(nèi))。與S3存儲服務(wù)的對象不同,EBS卷標(biāo)是可更新的。
EBS提供了標(biāo)準(zhǔn)的卷標(biāo)和已配置的IOPS卷標(biāo)。標(biāo)準(zhǔn)卷標(biāo)是專為滿足具有適度I/O需求的應(yīng)用程序而設(shè)計(jì)的。已配置的IOPS卷標(biāo)所提供的存儲服務(wù)具有較高一致性和較低延遲性的性能,它是專為具有密集型I/O工作負(fù)載的應(yīng)用程序而設(shè)計(jì)的,例如數(shù)據(jù)庫應(yīng)用。
EBS卷標(biāo)存儲是持久性的存儲,它可與運(yùn)行中的EC2實(shí)例相連和斷開。但是,EBS卷標(biāo)只可在他們被創(chuàng)建的可用區(qū)內(nèi)被訪問。此外,他們只可被它們所連接的EC2實(shí)例訪問。
EBS存儲可被用作一個格式化的硬盤。格式化要求文件系統(tǒng)軟件所在的EC2實(shí)例與相關(guān)的EBS卷標(biāo)相連。一個安裝好的EBS卷標(biāo)可允許操作系統(tǒng)讀寫EBS卷標(biāo)。任何需要安裝和使用卷標(biāo)的EC2實(shí)例都必須位于實(shí)例所在的同一個可用區(qū)內(nèi)。AWS提供的技術(shù)可通過S3存儲所使用的快照以實(shí)現(xiàn)EBS卷標(biāo)跨區(qū)域的使用。
EBS存儲服務(wù)在美國東部區(qū)域的定價為每月每GB 0.05美元。AWS 對EBS卷標(biāo)的I/O請求定價為0.05美元。已配置IOPS卷標(biāo)的價格為每月每GB 0.125美元起,而基于快照的S3存儲服務(wù)的價格約為每月每GB 0.095美元。
Glacier存儲服務(wù) Glacier存儲服務(wù)是專為長期備份和歸檔存儲的應(yīng)用而設(shè)計(jì)的,由于其單位GB的成本要比S3少得多,所以在單位時間(3至5小時)內(nèi)較長的檢索時間也是可接受的了。Glacier存儲服務(wù)的定價也依賴于其所在的區(qū)域,但它要比S3存儲服務(wù)便宜多達(dá)九成。
因?yàn)镚lacier存儲服務(wù)是針對備份/歸檔應(yīng)用的存儲服務(wù),在大多數(shù)情況下這類應(yīng)用并不需要快速的檢索,因此其單位GB的成本支出較低(在美國東部區(qū)域?yàn)槊縂B 0.01美元)。向Glacier存儲服務(wù)傳入數(shù)據(jù)是免費(fèi)的,但是傳出數(shù)據(jù)的價格為每GB 0.12美元。
DynamoDB存儲服務(wù) 亞馬遜的Dynamo Database (DynamoDB)是該公司推出的最新存儲服務(wù)。這是一個專為高可擴(kuò)展性和可預(yù)測性能應(yīng)用而設(shè)計(jì)的非SQL數(shù)據(jù)庫服務(wù)。
DynamoDB存儲服務(wù)力求減少可擴(kuò)展分布式應(yīng)用的管理負(fù)擔(dān)。這一點(diǎn)非常適合關(guān)鍵值存儲,它可根據(jù)按“關(guān)鍵值”數(shù)值排序的表提供高可擴(kuò)展性和高性能的存儲服務(wù)。
DynamoDB存儲可實(shí)現(xiàn)跨可用區(qū)的應(yīng)用。DynamoDB的單位小時價格為0.0065美元。
用戶選擇底線 對于用戶來說,重點(diǎn)關(guān)注安全性、存儲解決方案靈活性、性能以及可擴(kuò)展性是非常重要的。確定哪些AWS存儲服務(wù)是互為補(bǔ)充的,充分利用這一點(diǎn)并結(jié)合你的具體情況就可做出節(jié)省你支出的決策。