dynamo採用什麼方式存儲數據
⑴ 請問資料庫有哪些種類呢
資料庫共有3種類型,為關系資料庫、非關系型資料庫和鍵值資料庫。
1、關系資料庫
MySQL、MariaDB(MySQL的代替品,英文維基網路從MySQL轉向MariaDB)、Percona Server(MySQL的代替品·)、PostgreSQL、Microsoft Access、Microsoft SQL Server、Google Fusion Tables、FileMaker、Oracle資料庫、Sybase、dBASE、Clipper、FoxPro、foshub。
幾乎所有的資料庫管理系統都配備了一個開放式資料庫連接(ODBC)驅動程序,令各個資料庫之間得以互相集成。
2、非關系型資料庫(NoSQL)
BigTable(Google)、Cassandra、MongoDB、CouchDB。
3、鍵值(key-value)資料庫
Apache Cassandra(為Facebook所使用):高度可擴展、Dynamo、LevelDB(Google)。
(1)dynamo採用什麼方式存儲數據擴展閱讀:
資料庫模型:對象模型、層次模型(輕量級數據訪問協議)、網狀模型(大型數據儲存)、關系模型、面向對象模型、半結構化模型、平面模型(表格模型,一般在形式上是一個二維數組。如表格模型數據Excel)。
資料庫的架構可以大致區分為三個概括層次:內層、概念層和外層。
⑵ 浣跨敤dynamodb local 榪涜屾坊鍔犺〃鍜屾坊鍔犳暟鎹鍒拌〃涓錛屽彲鏄鍦╠ynamodb鐨勬帶鍒跺彴騫舵病鏈
NoSQL鏁版嵁搴撲績榪涙墿灞曟т笖鑳藉熷府鍔¦eb搴旂敤鍑忓皯鍙戦棿鍍忓叧緋誨瀷鏁版嵁鎷ュ滻瀹氭ā寮廚oSQL鏁版嵁搴撴ā寮忓彂鑰呮彁渚涙洿鐏墊т袱姣旇緝嫻佽孨oSQL鏁版嵁搴撲簹椹閫奧eb鏈嶅姟SimpleDBDynamoDB
浜氶┈閫奃ynamoDBSimpleDB鍏呯$悊闈炲叧緋誨瀷鏁版嵁搴撳苟涓旀彁渚涚畝鍗曞簲鐢ㄧ▼搴忔帴鍙o紙API錛夎繘琛屽瓨鍌ㄣ佹煡璇㈢$悊鏁版嵁涓ゆ暟鎹搴撻兘閫傜敤浜庡繪眰鐏墊暟鎹搴撹捐″簲鐢ㄦ暟鍚岀偣搴旂敤
鐢⊿impleDB綆$悊鏇存暟鎹搴
SimpleDB閫傚悎姣忓煙瓚10GB鍨嬫暟鎹搴撶嶆暟鎹搴撻渶瑕佸熀鏈瀛樺偍鏌ヨ㈡搷浣滄湡鏈涜〃澧為熷害姣旀洿涓旇″垝浣跨敤SimpleDB闇瑕佽嚜鏁版嵁涓ゆ垨鑰呮洿鍩熺$悊鍚岃兘澶熻法鍩熸墜鍓叉暟鎹闄勫姞綆$悊璐圭敤鐮村潖SimpleDB浼樺娍
欏規湇鍔℃棬鏈嶅姟浜庡瀷鏁版嵁搴撳簲鐢ㄤ簺搴旂敤縐嶇伒鎬с佺敤鎬у強鑰愪箙鎬у叧閿鑰冮噺鍚屾墿灞曟ч渶奼傝緝灝戣兘澶熻繍琛屾敼鍙樿〃灞炴т笖欏諱慨鏀規ā寮忋侀噸鏂扮儲寮曟暟鎹鎴栬呯葷嚎鎿嶇旱琛ㄧ粨鏋勯兘鍏剁伒鎬т綋鐜癝impleDB甯冨尯鍩熸暟鎹鎻愪緵鐢ㄦц愪箙鎬
SimpleDB鏁版嵁搴撳洿緇曞煙緇勭粐綆$悊綾諱技浜庡叧緋昏〃鍩熷寘鍚鍏冪礌鎴栬呴敭鍊奸泦鏍規嵁鍏崇郴琛ㄨ岃冭檻鍏冪礌鍚岄敭鍊煎埆灞炴у睘鎬х粍浠舵暟鎹娣誨姞鍩熻佹眰浣跨敤鍩虹API鎴栬呮帶鍒跺彴
SimpleDB鏀鎸佺畝鍗曢夋嫨澹版槑鍗充換浣昐QL紼嬪簭鍛橀兘鑳界悊瑙f槑鏄懼尯鍒玈impleDB鏀鎸佽法鍩熻仈鍚堥渶瑕佺粨鍚堝煙鏁版嵁蹇呴』鏌ヨ㈢粨鍚堟瘡鎵浣跨敤瀹氬埗紼嬪簭浜庣畝鍗曡仈鍚堝苟鍥伴毦搴旂敤闇瑕佹敮鎸佸嶆潅鑱斿悎瑕佷嬌鐢∕ySQL鎴栬匬ostgreSQL鍏崇郴鍨嬫暟鎹搴撲簩鑰呴兘閫氫簹椹閫婂叧緋誨瀷鏁版嵁搴撴湇鍔¤幏
SimpleDB浼樺娍琛ㄧ儲寮曟墍鍏冪礌浜庡厑璁哥敤鎴鋒煡璇浠諱綍鍏冪礌搴旂敤鐢ㄧ敱浜庢墍鍏冪礌閮界儲寮曢氬撴皬銆佸煄甯傘佺睄鎴栬呴偖鏀跨紪鐮佹煡璇㈠㈡埛琛ㄥ揩瀹炵幇
鐢―ynamoDB綆$悊鍨嬫暟鎹搴
浜氶┈閫奃ynamoDB鏃ㄨ佹眰鏇撮珮搴旂敤璁捐′簺搴旂敤瑕佹眰鎵╁睍鏁版嵁瀛樺偍鍙婃洿楂樼駭鏁版嵁綆$悊鍔熻兘浠f浛浣跨敤紜鐩楧ynamoDB浣跨敤鍥烘佺‖鐩樺疄鐜版亽瀹氥佷綆寤惰繜璇誨啓闂存棬鎵╁睍瀹歸噺鍚岀淮鎸佽嚧鎬ц兘鉶界嶆ц兘浼撮殢鐫鏇翠弗鏍兼煡璇㈡ā鍨
鐢變簬DynamoDB鍚屾洿浼佷笟鏁版嵁搴撳崗浣滆兘瑕佹眰棰濆栨暟鎹綆$悊鏈嶅姟AWS鍚屽脊鎬MapRece(EMR_AWS Hadoop鏈嶅姟)Redshift錛堝叾鏁版嵁浠撳簱鏈嶅姟錛夐泦DynamoDB浣跨敤浜氶┈閫奟edshift鎴栬匛MR榪涜岃勬ā鐗規畩鏌ヨ㈡垨鑰呮瀽浣跨敤DynamoDB鍩轟簬鏁e垪鏁e垪鍖哄艱繘琛屾洿閽堟ф煡璇浣跨敤DynamoDB閬垮厤綆$悊鍓插煙浜ч濆栬垂鐢―ynamoDB娌¤勬ā闄愬埗涓旀寜闇綆$悊鏁版嵁鍩
DynamoDB涓婚敭鍊肩儲寮曞厑璁鎬簩綰х儲寮曚富緔㈠紩浜岀駭緔㈠紩閮藉熀浜庢暎鍒楁垨鑰呮暎鍒楀尯閿鍊煎彇浠e崟閫夋嫨澹版槑欏規湇鍔′嬌鐢ㄦ煡璇㈡壂鎻忓0鏄庢煡璇㈠0鏄庡悓涓繪垨鑰呬簩綰ф暎鍒楁垨鑰呭埛鍝棰濆尯閿鍊間嬌鐢ㄨ〃鎵鎻忚誨彇姣忓厓緔犳彁渚涙洿鐏墊х嶆搷浣滄瘮鏌ヨ㈡洿鎱㈠挨鍏跺瀷琛ㄦ洿搴旂敤鍝嶅簲鎬ч儴鐢卞喅瀹
鍙戣呬嬌鐢―ynamoDB Local鏋勫緩嫻嬭瘯鏈鏁版嵁搴撲唬鐮侀氬疄闄呬駭鏁版嵁搴揇ynamoDBDynamoDB Local API浜掔浉鍏煎逛唬鐮佷袱縐嶇幆澧冭繍琛
鎬ц川鏈夊摢浜涳紵絳旀堬細C 鍒╃敤鍧囧間笉絳夊紡錛
⑶ 如何在資料庫應用中發揮SSD的優勢
利用固態硬碟(SSD)技術的優勢設計資料庫應用架構是非常有吸引力的一件事。特別值得注意的是,固態硬碟並行訪問數據的能力已經有了很大的提升。這些提升使得固態硬碟對於許多類型的資料庫應用幾乎能達到了隨機訪問內存存儲的性能,而成本只是其八分之一。
在過去的幾年裡,固態硬碟的性能得到了突飛猛進的增長,同時相比於傳統硬碟和RAM,其成本卻在持續降低。但是要利用好這些改進的優勢,需要掌握存儲特性選擇合適的AWS實例大小,理解應用特性並利用合適的編程語言。
掌握AWS選項
AWS IaaS EC2實例可以配置不同級別的存儲:
A)內存。對應於傳統物理計算機的RAM。
B)實例存儲。也稱為臨時存儲。它對應於傳統物理計算機的磁碟大小。
C)靈活的持久化補充存儲(比如EBS和S3)。基本上可以把它視為物理PC的網路存儲。
Amazon現在把SSD作為部署臨時存儲和通用存儲的默認配置,也是EBS的默認配置(早期的實例類型默認不是SSD)。EBS的其它好處是存儲系統可以在資料庫伺服器本身退役以後仍然繼續可用。
此外,AWS還提供SSD存儲作為Amazon DynamoDB的默認選項。SSD同時也是Amazon RDS和Amazon
Redshift的可選配置。這個配置非常好,它可以降低資料庫應用需要的開發代價。但是,如果企業需要部署其它資料庫,也有很多其它可配置項可以幫助他
們利用到SSD的並行特性。
並行存儲的物理原理
物理計算機通常設置有三種主要存儲類型。RAM安裝在主板上,緊挨著CPU,它提供最高的性能,成本代價也最高,計算機關閉以後內容不會保存。
SSD和傳統硬碟是連接到計算機上的補充存儲,通過PCI-e,SCSI和SATA線纜連接,或者在網路上通過eSATA或者光纖通道連接。
傳統硬碟包含有一個物理讀寫頭,一次可以跨多個物理碟片讀取數據流。如果數據可以順序讀取(比如讀取較大的多媒體視頻音頻文件),或者對於一些
資料庫分析應用(比如Hadoop應用),這種模式都非常合適。然而,如果讀取數據要搜索碟片的多個扇區,那麼傳統硬碟讀寫頭的性能會急劇下降。
與此相反,快閃記憶體驅動的物理構成就是成百上千個可以隨機訪問的塊,是由分散的許多晶元組成的,讀取哪一塊的數據不會影響訪問性能。快閃記憶體檔有兩個瓶頸:第一就是計算機處理器和個體晶元儲存區之間的存儲控制器;第二是不能從單個晶元上的不同塊區同時讀取隨機數據。
當今時代的大部分資料庫引擎都沒有利用快閃記憶體檔訪問數據隨機位的功能優勢。其結果是,資料庫都比較慢,或者雖然其訪問模式可以被緩存,但需要更多
RAM才能實現同樣的性能效果。而RAM存儲肯定比快閃記憶體檔速度快,不過對於相同數量的存儲空間,RAM的成本是快閃記憶體檔的十倍。在物理層面上,RAM比
SSD有更好的IO處理能力,但是成本也是其大約三到四倍。這些相對成本也被反映到了Amazon Web服務上可用的不同計算機實例相對成本上。
寫入隊列
利用跨多個晶元並行訪問數據能力優勢的關鍵在於編寫程序時要考慮到隊列深度這一特性。在資料庫應用中增加隊列深度可以使應用從SSD不同個體晶元中並行讀寫數據,這對提高資料庫性能有直接的效果。
如果隊列深度設置過大,訪問同一晶元中不同數據位的可能性就增大了,這也會破壞性能。因此,大部分應用的最佳隊列深度是每驅動器32到64個並
發請求,盡管驅動器本身支持更多並發請求。通過優化資料庫應用訪問SSD的隊列深度,應用程序可以花更少的代價就能達到用更昂貴RAM才能實現的更佳性能
狀態。
在應用層面,開發者需要考慮如何實現應用對存儲系統的請求隊列化,以實現並行處理。但是,軟體方面要獲得較好的並行有許多陷阱。要用像
JavaScript、Ruby和Python這樣的編程語言實現並行是很困難的,因為這些語言對實現多線程支持的不太好,Java和C#相對更容易一
些。
C和C++是實現高並發系統代碼最合適的編程語言,因為它們直接操作操作系統核心功能。例如,互斥擴展(也叫互斥量)就是簡化編程生成低級系統並行調用的語言特性。另一種選擇是使用自帶SSD存儲優化方案的商業資料庫,比如Aerospike。
為應用選擇合適的架構
不是所有的資料庫應用都需要快閃記憶體存儲功能來並行訪問隨機數據。處理大量並發用戶Web請求的資料庫很容易看到快閃記憶體存儲的最大優勢。
與此相反,像Hadoop這種分析應用在某種意義上是並行的,但是通常這些應用最後都需要訪問存儲驅動器上的大量數據流來完成數據訪問。例如,
處理一個月的用戶日誌來分析其行為或者分析用戶,本質上都要按順序提取數據,因此遷移到SSD並不能帶來太多益處。在這兩種極端場景之間,還有一些實時分
析類型的應用,它們既需要一定的隨機搜索和也需要數據流處理。
專家建議,充分利用各種層次成本差異的一種方式是,配置資料庫利用臨時存儲讀取數據以獲得最佳性能。這一點可以通過存儲在EBS持久化數據層的數據進行備份。這種方案提供了AWS上價格和性能的最佳平衡組合。
後台進程也需要考慮
資料庫應用架構師還應該考慮其它細微特徵。要理解資料庫軟體如何利用RAM,如何把數據刷到磁碟,這些對於優化SSD應用配置非常重要。這對於
評估資料庫與文件系統交互的各種方式也非常重要。最明顯的讀負載繁重會有大量後台IO競爭。而其他進程像報表系統、日誌文件生成是需要後台維護的。
要想找到合適的平衡點,專家建議以真實世界部署的強大指標為基準進行參考。這樣可以幫助企業判斷部署和優化SSD系統有多大益處。不過,在RAM和SSD之間選擇,最重要的考慮因素是深刻掌握要處理的數據集大小。
配置合適的SSD和RAM容量有許多種組合,會增加資料庫更高的復雜度。更多的是傳統資料庫系統,它們會部署一台主伺服器和許多備用伺服器用於
故障恢復,除了在磁碟級別的情況它們的配置都很簡單。另一方面,分布式資料庫系統根據節點數量不同,RAM數量和網路設置的不同會有更多的變化。
盡管在大多數情況下,如果你關注技術的力量和資料庫系統的可操作性作為選擇硬體驅動器的考慮因素,那麼你需要比較評估的系統應該相對不會很多。
⑷ aws(亞馬遜WEB服務)詳細資料大全
AWS即Amazon Web Services,是亞馬遜(Amazon)公司的雲計算IaaS和PaaS平台服務。AWS面向用戶提供包括彈性計算、存儲、資料庫、應用程式在大橘內的一整套雲計算服務,能夠幫助企業降低IT投入成本和維護成本。
AWS提供了一整套基礎設施和應用程式服務,使幾乎能夠在雲中運行一切應用程式:從企業應用程式和大數據項目,到社交遊戲和移動應用程式。
基本介紹 中文名 :aws 外文名 :Amazon Web Services 程式類別 :應用程式 項目基礎 :大數據項目 官網 ::aws.amazon// 服務介紹,分類,競爭對手,存儲辭匯表, 服務介紹 很多公司選擇AWS作為其IT解決方案,AWS有很多雲服務,以下介紹AWS中幾類比較重要的服務。 分類 計算類: EC2(Elastic Compute Cloud) 是一種彈性雲計算服務,可為用戶提供譽數彈性可變的計算容量,通常用戶可以創建和管理多個虛擬機,在虛擬機上部署自己的業務,虛擬機的計算能力(CPU、記憶體等)可以根據業務需求隨時調整。 Elastic IP Addresses(彈性IP位址) – 彈性IP位址是為動態雲計算設計的靜態IP位址。一個彈性IP位址是和你的賬戶相關,而不是和你的一個特定實例相關。不像傳滾虛團統的靜態IP位址,彈性IP位址可以通過重新匹配你的共有IP位址到你賬戶任意的實例,從而讓你可以忽略實例或者可用區域的錯誤。 連線本質上是通過NAT1:1的匹配每個Elastic IP和Private IP。 Elastic MapRece :EMR採用運行在亞馬遜EC2和S3的託管Hadoop框架上。以立即獲得滿足需要的計算能力,例如網頁索引、數據挖掘等數據密集型任務,輕松、經濟地處理海量數據,不用擔心對Hadoop集群耗時的設定、管理或調優。 AS(Auto Scaling)自動伸縮服務 :允許用戶根據需要控制亞馬遜EC2自動擴大或減小計算能力。用戶利用AS可以無縫地增加EC2的實例數量,以保證使用高峰期的性能,也可以在需求停滯時自動減少以降低成本。AS特別適合那些需求按小時、天或周規律變化的應用程式。 AS由亞馬遜CloudWatch控制,並且用戶不必支付CloudWatch以外的其他服務費用。 ELB (Elastic Load Balancing)彈性負載平衡 :自動將入口流量分配到多個亞馬遜EC2實例上。彈性負載平衡在實例池中不斷檢測不正常的實例,並自動引導路由流量到正常的實例上,直到不正常的實例恢復正常。客戶可以在單一的數據中心進行負載平衡,更可以在跨中心的套用上獲得相同的功能。 兼容IPv6,數據來自於CloudWatch 部署&管理類:ACW (Amazon CloudWatch)雲監控服務: 監控亞馬遜自身提供的雲資源以及在雲上運行的應用程式。提供可視化監測,並且可以利用API調用進一步處理監控的數據。 Amazon WorkSpaces: 是一種虛擬桌面服務,託管在Amazon的雲中。用戶可以選擇任何終端設備(如筆記本電腦、iPad、Kindle Fire或Android平板電腦)訪問 Amazon WorkSpaces,獲得與傳統辦公桌面一樣的使用體驗,更能享受節約設備成本、保證個人數據安全、隨時隨地辦公等便利。 網路類:
R53(Amazon Route 53)亞馬遜53號路由: Domain Name System web service(網路域名服務)。提供從基礎設施(EC2實例,ELB,或者S3)到IP位址的映射。 VPC (Virtual Private Cloud)虛擬私有雲: 在亞馬遜公有雲之上創建一個私有的,隔離的雲。可以像在自己的數據中心一樣定義VPC的拓撲結構。可以和公司現有的數據中心互通。可以利用NAT使得子網不暴漏區域網路IP,公用一個IP位址與外界通訊。通過NAT設定訪問控制,保護數據安全性。 存儲類: S3 (Simple Storage Service) : 亞馬遜簡單存儲服務(S3)是一種網路存儲服務,可為用戶提供持久性、高可用性的存儲。用戶可以將本地存儲遷移到Amazon S3,利用 Amazon S3 的擴展性和按使用付費的優勢,應對業務規模擴大而增加的存儲需求,使可伸縮的網路計算更易於開發。 EBS (Elastic Block Store)彈性數據塊存儲: EBS卷是獨立於實例的存儲,可作為一個設備動態連線到運行著的亞馬遜EC2實例上。EBS特別適合於單獨需要一個資料庫、檔案系統、或訪問原始塊存儲的應用程式。 套用服務類: SQS (Simple Queue Service)簡單訊息佇列服務: 提供訊息存儲佇列,使訊息可以在計算機之間傳遞,在執行不同任務的分散式套用組件之間輕松的轉移數據,既不會丟失信息,也不要求每個組件都保持可用。SQS可以與亞馬遜EC2和其他AWS的基礎設施網路服務緊密結合在一起,方便地建立自動化的工作流程。SQS以網路服務的形式運行,對外發布一個web訊息框架。Inter中任何計算機都可以添加或閱讀訊息,而不必安裝任何軟體或配置特殊的防火牆。使用SQS的套用組件可以獨立運行,不需要在同一網路中使用相同的技術開發,也不必在同一時間運行。 SNS (Simple Notification Service)簡單通知服務: 在雲中安裝、處理或傳送通知。它為開發人員提供了一種從應用程式發布訊息,並立即傳送給訂閱者或其他應用程式的能力,用於創建通知某應用程式(或客戶)某方面的主題。客戶訂閱這些主題,並使用客戶選定的通信協定(例如,HTTP,電子郵件等)發布訊息。亞馬遜SNS的潛在用途包括監控,工作流系統,時間敏感的信息更新,移動套用等等。 資料庫類: SDB (Amazon SimpleDB)簡單資料庫: 非關系型數據存儲服務 RDS (Relational Database Service): 是一種基於雲的關系型資料庫服務,用戶可以在雲中配置、操作和擴展關系資料庫。Amazon RDS 支持 MySQL、Oracle、Microsoft SQL Server 或 PostgreSQL 等關系型資料庫。用戶無需本地維護資料庫,由Amazon RDS為用戶管理。 支付類: FPS (Flexible Payments Service)靈活支付服務
ADP (Amazon DevPay)亞馬遜支付設計 內容交付類: CloudFront 雲前 :整合亞馬遜其他雲服務產品,完成高效快速的分散式內容互動。 人工服務類: AMT (Amazon Mechanical Turk)機械的土耳其人: 「機械的土耳其人」一詞來源:這個名字源自於臭名遠揚的能下象棋的「自動裝置」,它是匈牙利男爵沃爾夫岡·馮·肯佩倫(Wolfgang Von Kempelen)1770年建造的。這個木製機器外形像一個坐在大機箱前的土耳其魔法師,它能自動而快速地下象棋,用復雜的齒輪和杠桿系統來移動棋子。在維也納皇宮的首次表演中,它就迅速擊敗了對手Cobenzl伯爵,讓在場的皇室成員看得十分高興。從此關於這個驚人聰明的機器人迅速聞名於世,於是肯佩倫帶著它在歐洲各地表演,擊敗了一系列著名的挑戰者,包括拿破崙和班傑明·富蘭克林。直到幾年之後,這個騙局才被揭穿。原來機箱里藏了一名象棋大師,他用一個磁鐵系統來跟蹤對手的舉動並移動自己的棋子,這個人實際是在 模擬一種人工智慧 。 雖然計算技術不斷發展,但仍有很多事情人類做的比計算機更有效,比如確定照片或視頻中的對象,執行重復數據的刪除,抄錄音頻資料或研究數據的細節。一般來說,完成這樣的任務通常需要僱用大量臨時工人(這是耗時、昂貴和難以企及的),或者乾脆沒法完成。 亞馬遜機械的土耳其人(AMT)完成的是一種類似模擬人工智慧的業務,它把人「藏」在一個軟體程式中,用他們執行電腦不太善於完成的任務。例如假設程式設計師在寫一個套用軟體程式,其中有一個步驟是識別數字照片中的建築物——這個任務會讓電腦為難,但由人去做卻很容易。這位程式設計師在用AMT服務時,可以編寫幾行簡單的原始碼,從而獲取必要的情報。在該程式運行到某個指定時刻,在亞馬遜公司的Turk網站上會自動貼出一個關於「由人執行任務」的要求,而人們會爭著完成這項任務,以換取程式設計師設定的報酬。依據亞馬遜公司在其網站上的解釋,AMT表明人與電腦之間不尋常的顛倒關系:「當我們想到人與電腦的介面時,我們通常認為人是提出要完成的任務的一方,而電腦是完成運算任務並提供結果的一方。假使這個過程倒過來,由電腦程式要求人完成這個任務並返回結果,那又會如何呢?Mechanical Turk就是這么做的,它把人的行為和判斷變成了軟體程式中的功能。不是電腦為我們工作,而是我們為電腦工作。" 基於以上的彈性計算、存儲、資料庫、應用程式服務組合,AWS可以為企業提供完整的IT業務解決方案。最關鍵的是,AWS是按需使用、即用即付的模式,能夠靈活應對企業快速多變的IT需求。 競爭對手 AWS目錄服務 vs. Azure AD
亞馬遜的最新目錄服務和Azure AD(微軟的雲目錄)展開競爭。Azure AD能夠很好地與其他Windows產品協同工作。單點登錄功能意味著用戶登錄一次就可獲得支持AD的套用的許可。 相比亞馬遜的服務,微軟的服務產品還更好地集成了第三方工具,例如Salesforce和Box。因為微軟的目錄服務是很早就出現的功能,能夠與更多的管理工具集成。 亞馬遜一直在努力向企業領域發展。新目錄填補了明顯的空白,幫助企業更有效地連線AWS和微軟。雖然亞馬遜的雲目錄達不到微軟目錄的當前水平,但隨著雲市場的繼續發展預計將獲得更多的功能。 存儲辭匯表 AWS數據存儲服務辭匯表 Aurora: 亞馬遜Aurora是一個與MySQL兼容的關系型資料庫,而MySQL是一個從結構化查詢語言(SQL)衍生出來的流行開源資料庫管理系統。用戶可以通過亞馬遜關系型資料庫服務來管理Aurora的配置、打補丁、備份和恢復等。Aurora可自動擴展,可對傳輸過程中的數據進行加密。 資料庫遷移服務:AWS資料庫遷移服務可讓企業用戶在不同雲之間或內部資源之間進行資料庫遷移。資料庫遷移服務不僅可作為AWS雲的一個網關,它還允許非AWS資料庫之間的同質遷移,並支持大部分的常用資料庫。在遷移過程中,源資料庫可保持正常運行,從而減少了停機時間。 DynamoDB: 亞馬遜DynamoDB是一個專為滿足低延遲和高可擴展性需求而設計的託管NoSQL資料庫服務。DynamoDB支持文檔和key-value存儲模式。其高性能和靈活性特點令其特別適合於移動、網路、游戲以及物聯網等套用。 ElastiCache:亞馬遜ElastiCache是一個AWS託管的快取服務,它遵循開源Memcached系統,可減輕資料庫運行負載和加快套用運行。 彈性塊存儲(EBS):亞馬遜彈性塊存儲可用於彈性計算雲(EC2)實例的高可用性塊級存儲系統。它最適用於存儲永久型數據,而不是動態數據。AWS用戶可以先選擇一個EBS存儲卷類型和容量,然後將其連線到一個EC2實例。存儲卷的副本可以保存為快照。 Glacier:亞馬遜Glacier是一個「冷」存儲服務,它可存儲不常被訪問的數據,從而作為其他AWS數據存儲選項的一個更廉價的替代存儲選項。 Import/Export Snowball:亞馬遜Import/Export Snowball是一種物理傳輸設備。AWS可使用它來存儲內部的海量數據。然後,AWS在用戶返回該設備後可導入數據。反之,該設備也可用於AWS向用戶導出數據。Snowball存儲設備最多可傳輸50TB數據。 Redshift:亞馬遜Redshift是一個完全託管的AWS數據倉庫。Redshift可連線基於SQL的客戶端和商業智慧型工具。Redshift提供快速的查詢與I/O性能,這使得它特別適用於大數據分析套用。 關系型資料庫服務(RDS):亞馬遜RDS提供了多種資料庫引擎選項以幫助用戶對關系型資料庫進行遷移、備份和恢復等操作。使用中的代碼和應用程式以及現有資料庫都轉移至RDS。RDS可自動完成打補丁和資料庫軟體備份以便數據恢復。 簡單存儲服務(S3):亞馬遜S3是一個可擴展的對象存儲服務。AWS用戶可以通過網路介面在網路的任意位置存儲和檢索數據,且只需為所使用的存儲資源支付費用。S3提供了多個存儲類,並可與各種亞馬遜雲服務協同運行。 存儲網關:AWS存儲網關連線了本地設備和基於AWS的存儲資源,這使用戶能夠充分利用雲的可擴展性和價格優勢,同時還能繼續運行本地工作負載。
⑸ 五大資料庫理念,讀懂亞馬遜雲科技的資料庫布局
1970 年,關系型資料庫之父 E.F.Codd 發表《用於大型共享資料庫的關系數據模型》論文,正式拉開資料庫技術發展序幕。以 Oracle、DB2、SQL Server 為代表的三大商業資料庫產品獨占鰲頭,隨後涌現出 MySQL、PostgreSQL 等為代表的開源資料庫 ,和以 Amazon RDS 等為代表的雲資料庫,拉開百花齊放的資料庫新序幕。
我們知道,雲計算十年為產業轉型升級提供了 歷史 性契機,但變革仍在進行,隨著雲計算的普及,資料庫市場發生根本性改變,雲廠商打破傳統商業資料庫的堡壘,成為資料庫領域全新力量。其中以連續六年入選 Gartner 領導者象限的亞馬遜雲 科技 為代表,我們一起探討:為什麼亞馬遜雲 科技 能始終保持其創新性?縱觀雲原生時代下,亞馬遜雲 科技 資料庫未來還有哪些更多的可能性?
01 面對四大資料庫發展趨勢,亞馬遜雲 科技 打造五大資料庫理念
後疫情時代下,加速了不少行業的業務在線化和數字化運營,企業對數據價值挖掘的需求越發強烈,亞馬遜雲 科技 大中華區產品部總經理顧凡詳細介紹其中四大趨勢:
一是伴隨互聯網、移動互聯網的發展,電商、視頻、社交、出行等新應用場景的興起,不僅數據量大,對數據實時性要求極高,傳統關系型資料庫無法滿足需求,因此驅動雲原生資料庫的出現。
二是開源資料庫的廣泛應用。
三是應用程序現代化對資料庫提出更高要求,期待資料庫擁有更高的性能、可擴展性、可用性以及降低成本,讓開發人員專注於核心業務的應用開發,不用關注和核心業務無關的代碼。
四是軟體架構歷經 PC、互聯網、移動互聯網,再到如今的萬物互聯時代,其中的迭代和轉型正在驅動資料庫選型的變化。
在此四大趨勢下,伴隨企業的業務量越來越大、越來越復雜,對資料庫的要求越來越高。亞馬遜雲 科技 洞察客戶需求,在打造雲上資料庫產品時提出五大理念:
一是專庫專用,極致性能;二是無伺服器,敏捷創新;第三是全球架構,一鍵部署;第四是平滑遷移,加速上雲;第五是 AI 賦能,深度集成。
02 歷經真實錘煉,五大資料庫理念,持續賦能企業數智轉型
顧凡表示,隨著數據爆炸式增長,微服務架構與 DevOps 愈發流行的今天,一個資料庫打天下的時代已然過去。我們需要在不同的應用場景下,針對不同的數據類型和不同的數據訪問特點,為開發者和企業提供專門構建的工具。
所以亞馬遜雲 科技 提出 第一個核心資料庫理念:專庫專用 。在此理念下,推出針對關系數據、鍵值數據、文檔數據、內存數據、圖數據、時許數據、分類賬數據、寬列等專門構建資料庫的產品家族。
這些資料庫產品均經歷過亞馬遜內部核心業務的真實錘煉,成績斐然:
亞馬遜電商當年是 Oracle 的客戶之一,隨著亞馬遜電商的應用重構和業務體量發展,亞馬遜電商決定將業務遷移到亞馬遜雲 科技 里。100 多個團隊參與這龐大的遷移工作中,將亞馬遜電商采購、目錄管理、訂單執行、廣告、財務系統、錢包、視頻流等關鍵系統全部從 Oracle 遷出來。2019 年,亞馬遜將存儲近 7500 個Oracle 資料庫中的 75 PB 內部數據遷移到多項亞馬遜雲 科技 的資料庫服務中,包括 Amazon DynamoDB、Amazon Aurora、Amazon ElastiCache,於是亞馬遜電商成為亞馬遜雲 科技 在全球的「第一大客戶」。
從 Oracle 切換到亞馬遜雲 科技 後,亞馬遜電商節省了 60% 成本,面向消費者端的應用程序延遲降低 40%,資料庫管理支出減少 70%。
以被譽為「亞馬遜雲 科技 歷史 上用戶數量增速最快的雲服務」Amazon Aurora 為例,其擁有科媲美高端商業資料庫的速度和可用性,還擁有開源資料庫的簡單性與成本效益,Amazon Aurora 讓客戶滿足「魚和熊掌兼得」需求。
據顧凡介紹,Amazon Aurora 可提供 5 倍於標准 MySQL 性能,3 倍於 PostgreSQL 吞吐量。同時提供高可用,可用區(AZ)+1的高可用,Global Databases 可完成跨區域災備。可擴展到 15 個只讀副本,成本只有商業資料庫的 1/10。
醫葯企業九州通為葯廠、供應商,搭建葯廠、供應商、消費者提供供應鏈鏈條。其 B2B 系統的業務特點是讀多寫少,受促銷活動、工作時間等影響,經常會出現波峰波谷落差較大的情況,讀寫比例在 7:2 或者 8:3。九州通採用 Amazon Aurora 後實現讀寫分離和按需擴展,整體資料庫性能提升 5 倍,TCO 降低 50%。實現了跨可用區部署、負載均衡、自動故障轉移、精細監控、按需自動伸縮等。
據權威機構預測,到 2022 年,75% 資料庫將被部署或遷移至雲平台。在這個過程中,亞馬遜雲 科技 是如何通過技術來幫助客戶加速應用上雲的?這離不開除了上述的「專庫專用」外,以下四大理念:
第二個理念是無伺服器、敏捷創新。 亞馬遜雲 科技 大中華區產品部數據類產品高級經理王曉野表示,企業業務總有波峰波谷之時,如何按照企業 80-90% 的業務峰值來規劃資料庫的存儲容量和計算資源的話,將給應用帶來一定的業務連續性的妥協和挑戰。因此大多數企業都是按照峰值留有餘地來選擇資料庫的計算資源,這將造成成本上的浪費。而 Serverless 資料庫服務可完成無差別的繁復工作和自動化擴展。
Amazon DynamoDB 是亞馬遜雲 科技 自研 Serverless 資料庫,其誕生最早可追溯到 2004 年,當時亞馬遜電商作為 Oracle 的客戶,盡管對於關系型資料庫在零售場景的需求並不頻繁,70% 均是鍵值類操作,此時倒逼亞馬遜電商思考:為什麼要把關系型資料庫這么重得使用?我們可以設計一款支持讀寫、可橫向擴展的分布式資料庫嗎?後來的故事大家都知道了,這款資料庫就是 Amazon DynamoDB,並在 2007 年發表論文,掀起業界 NoSQL 分布式資料庫技術創新大潮。
Amazon DynamoDB 可為大規模應用提供支持,支撐亞馬遜自身多個高流量網站和系統,如亞馬遜電商網站、亞馬遜全球 442 個物流中心等。在亞馬遜電商一年一度 Prime Day,光是針對DynamoDB API 的調用達到數萬億次,最高峰值請求達到每秒 8920 萬次。由此可見,DynamoDB 擁有高吞吐、擴展性、一致性、可預測響應延遲、高可用等優勢。
智能可穿戴設備廠商華米 科技 ,在全球 70 多個國家擁有近 1 億用戶。僅 2020 年上半年,其手錶出貨量超 174 萬台,截止到 2021 年 2 月,華米 科技 的可穿戴設備累計記錄步數是 151 萬步,累計記錄的睡眠時間是 128 億個夜晚,記錄心率總時長達 1208 億個小時。如此龐大的數據同時必須保證極高的安全性和低延遲相應,如何保證穩定性是巨大的挑戰。
DynamoDB 幫助華米 科技 在任何規模下都能提供延遲不超過 10 毫秒的一致響應時間。華米 科技 健康 雲的 P0 和 P1 級別故障減少了約 30%,總體服務可用性提升了 0.25%,系統可用性指標達到 99.99%,為華為 科技 全球化擴展提供了有力的支撐。
最新無服務資料庫產品是 Amazon Aurora Serverless V2 提供瞬間擴展能力,真正把擴展能力發揮到極致,在不到一秒的時間內,將幾百個事務擴展到數十萬的級別。同時在擴展時每一次調整的增量都是非常精細化的去管理,如果按照峰值來規劃資料庫資源,可實現大概90%的成本節省。目前 Amazon Aurora Serverless V2 在全球實現預覽。
第三個理念是全球架構、一鍵部署。 在全球化的今天,如何支撐全球客戶的業務擴展連續性、一致性、以最低延遲帶給到終端客戶上,對資料庫提出新的挑戰。
亞馬遜雲 科技 提供 Amazon Aurora 關系型資料庫Global Database、Amazon DynamoDB、Amazon ElastiCache 內存資料庫、Amazon DocumentDB 文檔資料庫都能利用亞馬遜雲 科技 的骨幹網路提供比互聯網更穩定的網路支撐,以一鍵部署的方式,幫助客戶實現幾千公里跨區域資料庫災備,故障恢復大概能在一分鍾之內完成,同時跨區域的數據復制延遲通常小於一秒。
第四個理念是平滑遷移、加速上雲。 目前,450000+ 資料庫通過亞馬遜雲 科技 資料庫遷移服務遷移到亞馬遜雲 科技 中,這個數字每年都在不斷增長。亞馬遜雲 科技 提供 Amazon DMS、Amazon Database Migration Service 等工具讓開發者和企業進行自助式雲遷移。另外,對於遷移過程中可能會需要的支持,可通過專業服務團隊和合作夥伴網路成員,為客戶提供專業支持,還通過 Database Freedom 項目幫助客戶降低他們的顧慮。
今年 11 月,最新產品 Babelfish for Amazon Aurora PostgreSQL 在全球和中國兩個區域正式可用,可加速企業上雲的遷移,實現讓企業可以利用原有的技術棧、原有的 SQL Server T-SQL的人員可以利用到雲資料庫進行創新。
第五個理念是 AI賦能,深度集成。 我們觀察到,ML 技術賦能資料庫開發者,開發者無需具備機器學習專業知識,就可進行機器學習操作。在此潮流下,亞馬遜雲 科技 推出 Amazon Neptune,藉由 Deep Graph Library 和 Amazon SageMaker 驅動圖神經網路。
今年 8 月,Neptune ML 在中國正式可用,允許數據工程師不需要掌握機器學習的技能直接從圖資料庫里導出數據、轉換格式、訓練模型並發布,用 gremlin 語句調用訓練成的模型在資料庫里實現推理,進行欺詐檢測,推薦物品。
目前,亞馬遜雲 科技 加速在中國區域服務落地,2021年至今新發布 60 多個資料庫服務與功能。亞馬遜雲 科技 正是通過上述五大資料庫理念,打造豐富的資料庫產品家族,在全球智能化發展趨勢下,為企業提供更快更好的數智服務,釋放數據價值,並連續六年入選 Gartner 領導者象限,得到業界和客戶的深度認可。