AWS有兩個主要的關(guān)系數(shù)據(jù)庫服務(wù):Amazon RDS和Aurora Serverless。Amazon RDS是一項(xiàng)托管服務(wù),可在云中啟動和維護(hù)數(shù)據(jù)庫服務(wù)器。而且Aurora Serverless是具有更新的部署模型的關(guān)系數(shù)據(jù)庫引擎,因此開發(fā)人員不必手動啟動數(shù)據(jù)庫服務(wù)器。
關(guān)鍵的異同是什么?
Amazon RDS和Aurora Serverless之間的主要區(qū)別在于,較傳統(tǒng)的RDS為開發(fā)人員提供了選擇數(shù)據(jù)庫實(shí)例類型和大小的選項(xiàng)。還可以選擇一個數(shù)據(jù)庫引擎,包括Amazon Aurora,PostgreSQL,MySQL,MariaDB,Oracle和Microsoft SQL Server。Aurora是Amazon的原生數(shù)據(jù)庫引擎,專門設(shè)計用于與AWS云一起使用。
通過2018年推出的Aurora Serverless,開發(fā)人員可以根據(jù)最小和最大Aurora容量單位(ACU)配置計算,這是虛擬CPU和內(nèi)存的組合。Aurora Serverless還可以自動擴(kuò)大或縮小計算能力。
由于這些功能,Aurora Serverless可以更靈活地處理資源容量。在Amazon RDS中,除非將其配置顯式更新為其他大小,否則不會將已部署的數(shù)據(jù)庫服務(wù)器擴(kuò)展為更大的實(shí)例類型,這可能導(dǎo)致最多五分鐘的停機(jī)時間。RDS確實(shí)為只讀副本提供了自動擴(kuò)展,但是該過程需要花費(fèi)幾分鐘的時間來執(zhí)行,因?yàn)樗仨毑渴鹌渌鸕DS實(shí)例。Aurora Serverless的自動擴(kuò)展可大大縮短部署時間,通常只需30秒。
在RDS或Aurora Serverless中使用Aurora數(shù)據(jù)庫引擎時,開發(fā)人員無需配置存儲,因?yàn)锳urora會自動分配所需的存儲空間。從功能角度來看,如果應(yīng)用程序與MySQL或PostgreSQL兼容,則兩個版本的Aurora對源代碼都是透明的。
選擇之前要考慮的因素
首先,Aurora Serverless僅與MySQL和PostgreSQL兼容。如果應(yīng)用程序需要Oracle,SQL Server或MariaDB,則需要使用Amazon RDS。
Aurora Serverless非常適合不能定期提供流量的應(yīng)用程序,例如開發(fā)或測試環(huán)境。即使Aurora Serverless提供了在不使用期間將容量減少到零的選項(xiàng),但也不建議在生產(chǎn)環(huán)境中使用此設(shè)置。重新配置計算能力需要花費(fèi)幾秒鐘,這將在此時間段內(nèi)為生產(chǎn)用戶帶來糟糕的體驗(yàn)。
Aurora Serverless也可能非常適合使用率急劇上升且無法預(yù)測的應(yīng)用程序,這將需要使用Amazon RDS進(jìn)行耗時的容量調(diào)整。使用Aurora Serverless,可以將數(shù)據(jù)庫配置為根據(jù)需要快速,自動地增加或減少容量。
Aurora Serverless似乎比Amazon RDS更好。但是,如果未選擇正確的用例,則可能導(dǎo)致更高的AWS成本。
例如,對于預(yù)期在美國東部地區(qū)提供恒定流量的應(yīng)用程序,自發(fā)布之日起,r5.large RDS實(shí)例(16 GB,$0.29/hour)將相當(dāng)于8個ACU($0.48/hr)。。在這種情況下,Aurora Serverless的價格將高出65%。您也不能在Aurora Serverless中使用預(yù)留實(shí)例。使用Amazon RDS部署保留實(shí)例可以顯著降低成本-降低大約30%至60%-具體取決于實(shí)例類型和承諾的期限。
Aurora絕對是考慮的選項(xiàng),但評估與傳統(tǒng)RDS相比的優(yōu)勢,局限和成本影響很重要,以便為您的公司做出最佳決策。
來源:techtarget.com