最佳實踐 | 資料庫遷雲解決方案選型 & 流程全解析

芊寶寶最可愛發表於2019-12-03
Oracle是非常強大的綜合資料庫,但同時也存在一些劣勢,比如由於採用集中式架構,無法很好地實現橫向擴充套件,並且其穩定性依賴於硬體。出於架構升級、降低成本和雲化等需求,越來越多的企業需要“去Oracle”。 日前,阿里雲資料庫技術專家樊文凱在2019資料技術嘉年華大會上,為大家分享了Oracle資料庫異構上雲的最佳實踐。
最佳實踐 | 資料庫遷雲解決方案選型 & 流程全解析

本次分享主要圍繞以下5個方面:

  1. Oracle資料遷雲概述
  2. 資料庫&應用遷雲流程
  3. 資料庫遷雲解決方案
  4. 最佳實踐
  5. 企業異構遷雲建議

1、Oracle資料遷雲概述

眾所周知,Oracle是一個非常強大的綜合資料庫,但是Oracle也存在一些弱勢,比如因為採用集中式架構,因此無法很好地實現橫向擴充套件,並且其穩定性依賴於硬體,如需要IBM的小型機、EMC的儲存等。
此外,Oracle資料庫還存在技術依賴,很多使用者在開發時喜歡使用PL/SQL,因此在進行資料庫異構升級或者架構轉型時,不得不解決Oracle的技術依賴問題。
與此同時,Oracle資料庫的成本較高,使用Oracle資料庫需要搭配相應的小型機和儲存,並且往往難以很好地實現規模化管理。
最佳實踐 | 資料庫遷雲解決方案選型 & 流程全解析

2、資料庫&應用遷雲流程

企業往往出於架構升級、降低成本和雲化的需求,需要做“去O”。而“去O”一般分為以下幾個步驟。
最佳實踐 | 資料庫遷雲解決方案選型 & 流程全解析

第一步:進行遷移方案評估,分析如何遷移資料庫和應用,選用何種資料庫代替。這個過程中需要儲備很多知識,分析現有Oracle資料庫的所有資料物件與應用的關係,也需要判斷目標資料庫是否相容,遷移方案是否可行。
而選擇合適的目標資料庫來替換現有Oracle資料庫是比較困難的,因為用MySQL與PostgreSQL等資料庫替換Oracle時無法確定效能和負載的變化情況,只能通過不斷地測試來完成。
此外,還需要儘量避免異構遷移的風險,需要保證遷移之後,應用和資料庫能夠良好適配。
第二步:資料庫和應用改造,資料庫切換肯定會存在不相容,這裡的不相容將是資料庫和應用架構轉型的“最後一公里”。只有搞定這“最後一公里”,才能夠完成整個遷移方案。在這部分需要考慮對於資料庫和應用的改造方案。
第三步:資料庫和應用的割接,資料全量遷移比較容易,但異構資料庫增量遷移可能比較困難,因為會涉及大量資料變化、頻繁的DDL,甚至資料庫的資料型別、精度等不同,這些對於遷移而言都是巨大的挑戰。
最後:資料庫和應用的遷移評測,包括了資料庫護航,因為Oracle效能非常強大。因此需要保證遷移到其他資料庫之後,效能仍然能夠滿足業務系統的需求。
護航階段需要考慮如何應對突發事件,如何回退,以及面對複雜的資料庫和應用之間的關係,如何進行切換。

架構綜合梳理

對於大部分企業而言,可能不只有一套Oracle資料庫,同樣也不只有一套應用,而資料庫與資料庫、應用與應用,應用與資料庫之間可能存在各種各樣的關係,但企業並沒有一個綜合的架構圖或架構文件來記錄這些內容,因此需要釐清資料庫和應用的關係,方便規劃資料庫和應用異構改造的路線。
最佳實踐 | 資料庫遷雲解決方案選型 & 流程全解析

資料庫場景梳理

此外,需要釐清現在Oracle資料庫的業務情況,是OLTP、OLAP還是TP和AP的混合場景,只有這樣才能有針對性地選擇目標資料庫並規劃好替換方案。

改造內容

資料庫改造存在很多語法難點,首先需要進行語法轉換。因為不同資料庫引擎支援的語法不同,因此需要轉換DML、DDL和SQL的語法。 其次,還需要轉換應用程式碼,因為某些情況下,SQL語句會內嵌在程式中,可能需要對於百萬行程式碼逐行檢查並修改其中的SQL語句,這樣一來不僅工作量巨大,而且非常耗時。

確定改造方案

編制完資料庫和應用架構遷移方案後,還需要逐一梳理改造點和功能點並進行測試,造成整個去O的過程前期準備需要很長的時間和很多的精力。

3、資料庫遷雲解決方案

眾所周知,阿里巴巴是國內第一批實踐去IOE理念的公司,當年阿里的去IOE之路走得並不那麼順滑,遇到了很多困難,也踩了很多坑,沉澱下來了很多經驗,形成了今天的資料庫遷雲的最佳解決方案。

Oracle資料庫和應用異構遷移痛點


最佳實踐 | 資料庫遷雲解決方案選型 & 流程全解析

Oracle資料庫和應用異構遷雲全鏈路方案

阿里雲將資料庫遷雲的過程經驗積累濃縮成為了資料庫和應用遷移(簡稱:ADAM)產品。ADAM能夠幫助我們分析整個IT系統的架構,併為遷移的目標資料庫提供選型建議。
ADAM產品目前優選推薦兩種資料庫遷雲方案,第一種OLTP平滑遷移解決方案,目標資料庫是POLARDB語法高度相容Oracle,因此僅需要少量改動,就可以直接遷移到阿里雲或線下的POLARDB Box一體機中。該方案的特點是相容性以及如何適配,能否彈性擴充套件以及整體成本。
最佳實踐 | 資料庫遷雲解決方案選型 & 流程全解析

第二種是OLAP數倉雲化方案,針對提供數倉服務的Oracle資料庫,可以將其遷移到阿里雲的ADB for PG上。該方案的關注點是對Oracle分析型SQL的改造以及能夠在雲上實現真正的彈性擴充套件,以及成本的降低。

最佳實踐 | 資料庫遷雲解決方案選型 & 流程全解析

將Oracle資料庫和應用異構遷移分為六步,即資料採集、資料庫智慧分析、應用評估分析、資料庫和應用改造、專案實施和割接護航。

資料庫和應用異構遷移全鏈解決方案工具

ADAM還為資料庫和應用異構遷移提供了全流程解決方案工具,ADAM SaaS是Oracle遷移評估大腦,提供專業、豐富、視覺化的資料庫和應用評估服務,靜態或動態互動報告,應用改造管理,支援自動生成測試遷移計劃。
ADAM Studio是Oracle遷移改造產品,能夠提供穩定、易用的資料庫遷移測試與改造工具集,支援自動生成割接遷移計劃,實現模擬與割接環境計劃自動同步。 DSG for ADMA是ADAM認證Oracle遷移割接與同步產品,能夠提供穩定、可靠的資料遷移與校驗工具集,以ADAM遷移計劃為核心,提供場景化、流程化、自動化的資料全量遷移、增量遷移、資料校驗、資料修正能力。 資料傳輸工具DTS是阿里雲資料庫傳輸工機具,同樣支援資料來源間的資料互動,能夠幫助使用者實現全量和增量遷移資料。

ADAM關鍵技術

ADAM的核心是智慧採集、智慧評估、智慧改造和配套工具。 智慧採集不需要人為採集資料庫和應用程式的內容,以採集agent產品實現自動採集,採集後資料將落到本地,保證了核心資產的資料安全。 智慧評估會逐一對比不同資料庫效能和語法等,並推薦目標資料庫選型及生成資料庫和應用異構遷移解決方案。而藉助配套工具和智慧改造系統,可以快速完成改造過程,如,將改造週期從6個月縮短到1個月。 ADAM產品根據資料庫相容性將資料庫物件改造難度分為4級,並加以不同的處理。
此外,ADMA還提供了ADMA studio實現結構遷移和資料預遷移,SQL線上翻譯工具能夠將Oracle的SQL語句轉化為其他資料庫的SQL語句,PL/SQL轉Java工具能夠將PL/SQL語言轉Java語言,此外還有SQL對測工具和ADAM認證遷移工具。
最佳實踐 | 資料庫遷雲解決方案選型 & 流程全解析

4、最佳實踐

資料庫遷雲選型建議

根據使用Oracle特性的多少將Oracle資料庫分為兩類,弱O特性和強O特性。對於前者,推薦快速上雲方案。因為所用的Oracle特性較少,因此快速遷移到開源資料庫MySQL或PostgreSQL中,以降低成本。
而後者使用的Oracle特性較多,因此推薦使用POLARDB Oracle相容版。ADAM提供了全鏈路的遷移方案。如果想實現整體架構升級,也可以直接對業務進行重構,實現業務的微服務劃分和資料庫的分庫分表,進而快速地實現IT系統的架構轉型。

POLARDB雲原生分散式關係型資料庫架構完全自主可控

POLARDB資料庫具有很多優勢,比如儲存與計算分離、RPO=0、自動讀寫分離、資料驅動、軟硬體協同,以及支援多模資料等。POLARDB是真正的雲原生分散式關係型資料庫,並且能夠做到架構完全自主可控。

POLARDB BOX一體機

一些金融型企業可能對資料庫的監管要求比較高,因此阿里雲也提供了POLARDB BOX一體機,能夠使得企業線上下機房享受到雲原生資料庫的技術紅利。將雲資料庫帶到線下機房,充分使用DBaaS能力帶來的管控、效能便利。
最佳實踐 | 資料庫遷雲解決方案選型 & 流程全解析

AnalyticDB for PostgreSQL資料庫

針對於資料倉儲場景,阿里雲AnalyticDB for PostgreSQL可以很好的支援大資料處理,實現真正的動態水平擴充套件。

5、企業異構遷雲建議

Oracle資料庫的遷雲過程需要一套完整的方法論和產品,幫助實現架構評估、資料庫選型、遷移評估以及資料庫應用改造,幫助實現應用解耦,並且還需要專業的服務來助力實現真正的零停機遷移,最終實現企業異構遷雲。




本文為雲棲社群原創內容,未經允許不得轉載。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69947441/viewspace-2666661/,如需轉載,請註明出處,否則將追究法律責任。

相關文章