立下“去O”Flag的AWS,悄悄修煉了哪些內功?

AWS re:Invent 2018大會上,AWS首席執行執行官Andy Jassy 表示到 2019 年底,亞馬遜將全面放棄使用 Oracle 數據庫,97%的“關鍵任務數據庫”將運行在亞馬遜自己的數據庫服務上。

如今,2019年已經過去了四分之一,亞馬遜的“去O”進程如何了?近日,筆者有幸采訪到了AWS數據庫服務總經理和AWS Amazon Redshift總經理,并向他們進行了求證:亞馬遜整個“去O”進展順利,可以如期完成。

據悉,亞馬遜所有的這些數據庫都將遷移到Aurora、Redshift和DynamoDB這三種類型的數據庫上,其中OLTP(交易型)遷移到Aurora,數據倉庫型遷移到Redshift。

亞馬遜去Oracle的想法可以追溯到5年前,當時亞馬遜的部分核心購物業務還依賴Oracle技術,其自身的數據庫技術暫時還無法規模化地滿足亞馬遜的性能需求。那么,時至今日,為了“去O”,AWS悄悄修煉了哪些內功呢?

AWS的數據庫服務

2015年AWS數據服務的相關功能只有100個,2018年攀升到325個。

據悉,從2015年開始算起,AWS已經總計發布了785個新的數據相關服務,包括數據移動、數據分析等數據服務,關系型、鍵值型、文件型、內存型、圖譜型、時間序列、總帳類型等數據庫服務,以及類似于商業洞察、智能洞察等一系列服務。

以Amazon Aurora為例,Aurora是AWS公司歷史上增長速度最快的一款服務,是兼容MySQL和PostgreSQL的關系型數據庫,其速度和可用性可與Oracle等商業數據庫產品相媲美,而成本只有商業數據庫的1/10。

而Redshift是AWS 2012年推出的、業界第一款云端數據倉庫的云服務,2018年一年,AWS圍繞Redshift推出了220個新功能,其中90%都是基于客戶需求開發的。

為什么會推出這么多數據服務呢?AWS表示是:“為了滿足客戶需求”。那么客戶使用數據服務到底想要達到什么目的?

  • 第一,希望能夠從數據中獲得洞見;
  • 第二,希望能夠快速打造云端的全新應用;
  • 第三,希望能夠把既有的應用直接搬運到云端。

AWS的遷移服務

對于客戶來說,數據庫遷移服務也是很重要的功能。目前AWS的數據庫遷移服務主要有兩類:一是將本地數據庫遷移到云端,二是實現將一種類型的數據庫遷移到另一種數據庫。無論是哪種遷移,整個過程中都可以達到零宕機時間。

\"image\"

據AWS方面介紹:“目前通過數據庫遷移服務DMS已經完成了超十萬個數據庫的遷移”。

AWS的通常做法是將關系型數據庫遷移到Auraro和RDS,而非關系型的數據庫遷移到DynamoDB,數據倉庫遷移到Redshift,Hadoop和Spark集群可以遷移到Amazon EMR,運營、分析的可以遷移到Amazon Elasticsearch Service,BI型的應用可以遷移到Amazon QuickSight。

為什么我們要從本地數據庫遷移到云數據庫呢?一言以蔽之,傳統數據庫無法滿足我們的需求了。

舉個例子,之前企業如果要進行數據分析,通常做法是從傳統的數據倉庫廠商中購買大型的數據倉庫,這類產品能夠處理的數量級通常是GB級和TB級,PB級數據無法處理,而TB級單位的分析成本要達到一萬到五萬美元。即使是付出了這樣的成本投入,也不能支持所有數據的分析,可能只有10%的數據才能得到分析。而AWS的做法是先將數據導入到數據湖中,然后在數據湖之上提供各式各樣的數據庫服務來進行數據分析。

除此之外,在傳統的企業IT架構中無法弄明白企業內部的有用數據占比,而在云端可以很輕松的啟動多項數據分析作業。另外,傳統企業中要做數據分析,需要專門的數據庫技術人才去做數據處理,而在云上,非數據庫技術專業人員也可以使用數據庫服務。

  • 根據不同的使用場景提供定制化解決方案;
  • 針對數據服務成本進行經濟性的分析,實現成本優化;
  • 實現所有數據服務的可伸縮性。

AWS的云數據庫關注點

無論是哪一種技術,在生產環境和落地應用中,其關注點都應該與客戶的關注點保持一致。AWS方表示:“我們得到的用戶反饋是,他們最關心云數據庫的安全性、靈活性和可擴展性。”

而AWS圍繞用戶需求在數據庫方面做的創新主要有兩點:

  • 幫助客戶以更容易的方式遷移到云端;
  • 幫助客戶以更好的方式開發現代化應用;

例如,匯總打包數據庫支撐管理的服務,來完成數據庫的自我調優和自我運維管理,以實現可擴展性和可伸縮性;當數據從數據庫匯聚到數據湖時,治理、合規以及安全方面也需要作出一些創新。

去Oracle的難度到底在哪里?

很多人都將亞馬遜去Oracle數據庫冠以“商業博弈”的頭銜,這里我們暫且不討論商業方面的內容,只關注于去Oracle的技術。

從技術實施層面來講,亞馬遜去Oracle對AWS自身來說只是一個數據規模比較大的客戶而已,與納斯達克等客戶無異,同樣需要聽取CEO和CTO的意見,在真正實施“去O”之前,已經決定Oracle上的哪些應用應該如何解決。

整個“去O”過程中,AWS面臨的最大困難是什么呢?AWS專家稱:“亞馬遜數據庫遷移的復雜程度在于不止需要做數據和數據庫本身的遷移,同時還要做數據庫上運行的應用遷移,而這些應用既有企業內部開發的也有ISV提供的,甚至有些應用的年代已經非常久遠了,如何很好的支持它們,是我們面臨的巨大挑戰。”

以數據分析為例,該項目最大的難點在于亞馬遜的要求不是簡單的將原來Oracle上的數據分析功能搬到云上,他們要求更好的分析服務,且這種服務要能夠順應未來十年的技術發展變化。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/279850.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/279850.shtml
英文地址,請注明出處:http://en.pswp.cn/news/279850.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

static作用:靜態變量的生存周期和作用域

首先要理解生存周期與作用域的區別: 生存周期: 變量從定義到銷毀的時間范圍。存放在全局數據區的變量的生存周期存在于整個程序運行期間,而存放在棧中的數據則隨著函數等的作用域結束導致出棧而銷毀,除了靜態變量之外的局部變量都存放于棧中…

劉強東痛批京東高管,拿PPT騙他!網友怒了:愛用 PPT 忽悠的人,他們都遭人痛恨...

這是頭哥侃碼的第272篇原創因為被新冠感染,所以最近兩周都在休養。前幾天,我無意中看到一則有關劉強東的新聞,大致是他在京東內部管理培訓會上痛批部分高管,稱 “拿PPT和假大空詞匯忽悠自己的人就是騙子”,表示部分高管…

關于file的部分簡單命令

1.關于file的簡單命令 2.創建/刪除 文件/目錄 ## -f和-r可以連用,表示強制刪除 3.文件/目錄的復制 ##復制是一個新建的過程,在保持原有不變的基礎上重新再建立一個 4.文件/目錄的移動 ##移動是一個重命名的過程,但不改變其中的內容 本文轉自…

字節與浮點型轉換軟件_如何與另一個防病毒軟件一起運行惡意軟件字節

字節與浮點型轉換軟件Malwarebytes Anti-Malware is a great security tool that’s particularly effective against “potentially unwanted programs (PUPs)” and other nasty software traditional antivirus programs don’t deal with. But it’s intended to be used a…

vsftpd服務的搭建

1.vsftpd介紹vsftpd:是非常安全的ftp守護進程(Very secure ftp Daemon)。進程:正在進行(運行running)的程序。守護進程Daemon:網絡服務類的程序都會有守護進程。守護進程是指實時監測服務訪問狀態的程序。通常都是在系…

火狐瀏覽器書簽(收藏夾)全部消失,歷史記錄也消失,如何恢復

今天關閉再打開火狐瀏覽器瞬間懵逼,瀏覽器所有的記錄都沒了,映入眼簾的的火狐新手指導頁,而且主頁導航變成了hao123,我估計是外部程序篡改了瀏覽器配置,或者其他異常導致瀏覽器重置。書簽、歷史記錄對開發人員的重要性…

apple tv 開發_如何防止Apple TV進入睡眠狀態

apple tv 開發Your Apple TV, by default, goes to sleep fairly quickly when not in use. That’s great for power saving but not so great if you like to keep it on. Let’s take a look at how to extend how long it stays awake or disable sleep mode altogether. 默…

MASA MAUI Plugin (七)應用通知角標(小紅點)Android+iOS

背景MAUI的出現,賦予了廣大Net開發者開發多平臺應用的能力,MAUI 是Xamarin.Forms演變而來,但是相比Xamarin性能更好,可擴展性更強,結構更簡單。但是MAUI對于平臺相關的實現并不完整。所以MASA團隊開展了一個實驗性項目…

SAP如何查看會計憑證

比如SAP中已經存在著很多會計憑證,你想要進入SAP隨便看看會計憑證的列表,怎么操作呢?事務碼 IDCNDOC運行結果看到了憑證們,和每個憑證的行項目們上圖看到的結果比較凌亂實際上我們重新進入IDCNDOC可以通過輸入的勾選,選…

Spring Data Redis與Jedis的選擇(轉)

說明:內容可能有點舊,需要在業務上做權衡。 Redis的客戶端有兩種實現方式,一是可以直接調用Jedis來實現,二是可以使用Spring Data Redis,通過Spring的封裝來調用。應該使用哪一個呢?基于當前版本Spring Dat…

C# 溫故而知新:Stream篇(五)

MemoryStream 目錄: 1 簡單介紹一下MemoryStream 2 MemoryStream和FileStream的區別 3 通過部分源碼深入了解下MemoryStream 4 分析MemorySteam最常見的OutOfMemory異常 5 MemoryStream 的構造 6 MemoryStream 的屬性 7 MemoryStream 的方法 8 MemoryStream 簡單示例…

dosbox 自動運行_如何使用DOSBox運行DOS游戲和舊應用

dosbox 自動運行New versions of Windows don’t fully support classic DOS games and other old applications — this is where DOSBox comes in. It provides a full DOS environment that runs ancient DOS apps on modern operating systems. Windows的新版本不完全支持經…

WPF 自定義放大鏡控件

控件名:Magnifier作 者:WPFDevelopersOrg - 驚鏵原文鏈接[1]:https://github.com/WPFDevelopersOrg/WPFDevelopers框架使用.NET40;Visual Studio 2019;實現此功能需要用到 VisualBrush ,放大鏡展現使用 Canvas ->…

springboot小筆記

如果默認通過IDEA的springboot 插件布置的 的初始啟動類是這樣的,這種就是一個普通的java類,只能以jar打包 package com.how2java.springboot;import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.Sprin…

.NET實現之(WebBrowser數據采集—續篇)

我們繼續“.NET實現之(WebBrowser數據采集)“系列篇之最后一篇,這篇本人打算主要講解怎么用WebBrowser控件來實現“虛擬”的交互性程序;比如我們用Winform做為宿主容器,用Asp.net做相關收集程序頁面,我們需要通過客戶端填寫相關數…

ipad和iphone切圖_如何在iPhone,iPad和Mac上使消息靜音

ipad和iphone切圖If you use Messages on your iPhone, iPad, or Mac, then you probably know how quickly you can become overrun with message notifications, especially if you’re part of a group message. Thankfully, there’s an easy way to mute specific message…

Pipy 實現 SOCKS 代理

上篇我們介紹了服務網格 osm-edge 出口網關使用的 HTTP 隧道,其處理方式與另一種代理有點類似,就是今天要介紹的 SOCKS 代理。二者的主要差別簡單來說就是前者使用 HTTP CONNECT 告知代理目的地址,而后者則是通過 SOCKS 協議。值得一提的是&a…

python拓展7(Celery消息隊列配置定時任務)

介紹 celery 定時器是一個調度器(scheduler);它會定時地開啟(kicks off)任務,然后由集群中可用的工人(worker)來執行。 定時任務記錄(entries)默認 從 beat_s…

Asia Yokohama Regional Contest 2018 G題 What Goes Up Must Come Down(樹狀數組求逆序對)

https://codeforces.com/gym/102082 題意: 給一個數組大小不超過1e5,每個數的值也是1e5以內,可以交換相鄰兩個數,求保證它呈現一個非遞減再非遞增的趨勢的最小交換次數。 題解:對每個數來說,只有兩種情況&a…

Android系統的開機畫面顯示過程分析(8)

3. 第三個開機畫面的顯示過程第三個開機畫面是由應用程序bootanimation來負責顯示的。應用程序bootanimation在啟動腳本init.rc中被配置成了一個服務,如下所示:service bootanim /system/bin/bootanimation user graphics group graphics disabled o…