一個籬笆三個樁,一個好漢三個幫。
—— 民間諺語
上周的文章介紹了一下阿裡雲原生資料庫PolarDB及其“親戚”們,這周就來聊聊他的“朋友”們吧。
DMS(Data Management Service)資料管理平台,是一款功能強大的資料庫管理和設計開發工具,通過直覺的GUI圖形使用者界面可以管理多達20多種資料庫,其中包括阿裡雲資料庫、第三方雲資料庫、甚至對于線下IDC中運作的資料庫也支援統一納管。
DMS具體擁有如下功能:
- 資料開發、包括結構設計、資料通路、互動式資料分析、模組化排程、資料可視化、測試資料生成。
- 變更穩定性保障、包括研發規範、SQL審計、風險管控、不鎖表變更、變更可復原、性能跟蹤。
- 安全管控、包括細粒度權限管控、敏感資料脫敏、安全審計、安全規範。
- 高效協同、包括研發流程、版本管理、多環境同步、跨庫查詢、中繼資料中心。
對于ECS運維,我們可以通過堡壘機來實作操作管理的統一收口、操作審計、運維政策等功能,對于資料庫的運維就可以通過DMS來完成類似的職能,隻不過DMS是專門針對資料庫的運維場景專門開發的一款運維工具,DMS在阿裡巴巴集團内部沉澱了十年并已服務超過十萬的企業使用者,其成熟度已經得到了充分的檢驗。
DAS(Database Autonomy Service)資料庫自治服務是一種基于機器學習和專家經驗實作資料庫自感覺、自修複、自優化、自運維及自安全的雲服務,幫助使用者消除資料庫運維的複雜性及人工操作引發的服務故障,有效保障資料庫服務的穩定、安全及高效。
DAS的功能如下:
- 自感覺&自決策、包括性能監控、workload監控、異常檢測、名額預測、根因診斷。
- 自彈性、包括容量檢測、容量預警、彈性伸縮。
- 自優化、包括參數優化、SQL優化、SQL限流、全鍊路優化、架構優化。
- 自安全、包括異常流量識别、安全審計、漏洞修複、敏感資料保護、架構優化。
DAS在阿裡巴巴内部最重要的工作是自動對抗慢SQL,當資料庫中出現慢SQL時,DAS能夠在第一時間自動發現并對其進行限流降級處理,以防止其對資料的整體運作造成更嚴重的影響,在阿裡巴巴DAS已經成功發現2900萬以上的慢SQL、節省2.7PB以上的存儲空間,超過93.3%的資料庫告警都能通過DAS自動進行處理。
DTS(Data Transmission Service)資料傳輸服務支援關系型資料庫、NoSQL、OLAP資料倉庫等資料源的資料傳輸。它是一種集資料遷移、資料訂閱及資料實時同步于一體的資料傳輸服務。
DTS最主要的用途就是資料遷移,不僅支援相同資料庫的遷移,還支援異構資料庫之間的資料遷移,例如将線下IDC中的Oracle資料庫中的資料遷移到雲上RDS MySQL資料庫,為了能夠實作上的去,下得來,可以在上雲遷移完成之後建立一條反向的複制鍊路,将雲上的資料變化反向同步到雲下的Oracle資料庫,一旦發現系統運作異常可随時回切,具體的步驟包括:
- 建立遷移正向鍊路并啟動遷移,反向鍊路建好不啟動。
- 等待正向增量遷移無延遲。
- 源庫禁止寫入,檢視DTS無延遲後,停止正向鍊路,開反向回流。
- 應用切換到雲上資料庫。
- 一旦出現業務異常,可以随時将業務切換回線下資料庫。
ADAM(Advanced Database&Application Migration)資料庫和應用遷移是一款把Oracle相關的資料庫和應用遷移到阿裡雲(包括公共雲或專有雲)的産品。ADAM全面評估上雲可行性、成本和雲存儲選型,内置實時協助,資料、應用遷移等工具,確定可靠、快速上雲。
ADAM包括資料上雲和應用上雲兩部分功能:
- ADAM資料庫上雲主要是通過擷取源Oracle資料庫的相關資訊來評估上雲的可行性,并根據目标資料庫的類型(RDS MySQL/DRDS/PolarDB-O等)給出參考的上雲配置,生成資料庫遷移計劃,可将現有Oracle資料庫的表結構資訊、視圖、存儲過程等轉換并遷移到目标資料庫。再結合DTS來完成全量和增量的異構資料遷移。
- ADAM應用上雲主要面對Java應用,通過JVM的内置跟蹤機制以類似于APM的方式探測應用對資料庫通路的SQL語句并分析遷移到目标資料庫的相容情況,針對不相容的SQL語句給出修改調整建議。
ADAM還針對「線下」環境提供兩款工具:
- ADAM Studio 是一個輕量級的DTS實作,可以執行ADAM生成的遷移計劃,線上下環境完成資料的遷移。
- P2J是一個PL/SQL存儲過程到Java程式的轉換工具,可以将現有的PL/SQL存儲過程轉化為Java程式,假如希望将Oracle遷移到PolarDB-O以外的其他不支援存儲過程的資料庫(例如PostgreSQL、MySQL等)就需要使用該程式對現有的存儲過程進行轉化以消除遷移障礙。
DBS(Database Backup)能夠為資料庫提供連續資料保護、DBS不僅支援阿裡雲資料庫,還支援包括IDC資料中心自建資料庫、第三方雲資料庫等運作環境。
DBS适用的應用場景包括:
- 雲中備份:阿裡雲RDS/PolarDB/ECS自建庫備份。
- 上雲備份:本地IDC資料庫備份,恢複到阿裡雲。
- 下雲備份:阿裡雲資料庫備份,恢複到IDC資料中心。
- 跨雲備份:其他雲資料庫備份,恢複到阿裡雲。
- 異地備份:資料庫備份到其他地域存儲。
- 資料歸檔:将資料庫備份長期存儲到OSS上歸檔。
- 備份查詢:可針對備份的資料進行查詢。
- 備份演練:備份資料可定期恢複到其他的資料庫執行個體,以驗證有效性。
- 實體上雲:通過實體備份的方式對大型資料庫進行上雲遷移。
- 資料訂正:生成誤操作的復原SQL并執行。
DBS資料庫備份服務是資料庫安全的最後一道防線,也是今天介紹的最後一個資料庫工具服務,怎麼樣,上面這些工具你用過幾個呢?