本教學課程說明如何使用 Cloud Data Fusion Replication 部署工作,持續將 Oracle 資料庫中的變更資料複製到 BigQuery 資料集。這項功能採用 Datastream 技術。
目標
在本教學課程中,您將執行下列作業:
- 設定 Oracle 資料庫,啟用增補記錄功能。
- 建立及執行 Cloud Data Fusion 複製作業。
- 在 BigQuery 中查看結果。
費用
在本文件中,您會使用 Google Cloud的下列計費元件:
如要根據預測用量估算費用,請使用 Pricing Calculator。
執行複寫作業時,系統會收取 Dataproc 叢集和 Cloud Storage 的費用,並產生 Datastream 和 BigQuery 的處理費用。為盡量節省這類費用,我們強烈建議使用 BigQuery 固定費率計價模式。
事前準備
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Verify that billing is enabled for your Google Cloud project.
-
Enable the Cloud Data Fusion, Dataproc, Datastream, BigQuery, and Cloud Storage APIs.
- 建立公開的 Cloud Data Fusion 執行個體,版本須為 6.3.0 以上。如果建立私人執行個體,請設定虛擬私有雲網路對等互連。
- 建立執行個體時,按一下「新增加速器」,然後選取「複製」核取方塊,即可啟用複製功能。
- 如要在現有執行個體中啟用這項功能,請參閱「啟用複製功能」。
- 叢集所在專案中 Dataproc 服務帳戶的「Dataproc 工作站」 (
roles/dataproc.worker
) - 專案中叢集 Dataproc 服務帳戶的 Cloud Data Fusion Runner
- Cloud Data Fusion 服務帳戶和 Dataproc 服務帳戶的DataStream 管理員 (
roles/datastream.admin
) 下載 Oracle Server Docker 映像檔。
如要瞭解這個 Oracle Express Edition 11g 映像檔的限制,請參閱「Oracle Database Editions」。
部署新的 VM 執行個體上的 Docker 映像檔。
在 Compute Engine 的「Disks」(磁碟) 頁面中,將磁碟大小變更為
500 GB
,然後重新啟動 VM。安裝人力資源範例結構定義。
在 Cloud Data Fusion 網頁介面中,按一下「Replication」(複寫)。
按一下
「建立複寫工作」。在「Create new replication job」(建立新的複寫工作) 頁面中,指定複寫工作名稱,然後按一下「Next」(下一步)。
設定來源:
選取「Oracle (透過 Datastream)」做為來源。
在「連線方式」部分,如果 Oracle 伺服器允許來自 Datastream 公開 IP 的連入流量,請選擇「IP 許可清單」。 否則,請在「私人連線名稱」中選擇「私人連線 (虛擬私有雲對等互連)」,然後輸入您在「為 Oracle 伺服器建立虛擬私有雲網路對等互連或防火牆規則」一節中建立的虛擬私有雲對等互連名稱。
在「Host」(主機) 部分,輸入要讀取的 Oracle 伺服器主機名稱。
在「Port」(通訊埠) 部分,輸入用來連線至 Oracle 伺服器的通訊埠:1521。
在「System Identity」(系統身分) 部分,輸入
xe
(Oracle 伺服器的範例資料庫名稱)。在憑證部分,輸入存取 Oracle 伺服器的使用者名稱和密碼。
保留其他所有屬性。
點選「下一步」。
設定目標:
選取 BigQuery 目標。
系統會自動偵測「專案 ID」和「服務帳戶金鑰」。保留預設值。
選用步驟:在「進階」部分,您可以設定下列項目:
- 暫存值區的名稱和位置
- 載入間隔
- 暫存資料表前置字串
- 捨棄資料表或資料庫時的行為
點選「下一步」。
如果連線成功,系統會顯示表格清單。在本教學課程中,請選取幾個資料表。
點選「下一步」。
在「Review assessment」頁面中,按一下任一表格旁的「View mappings」,即可查看複製期間可能發生的結構定義問題、缺少的功能或連線問題。
如有任何問題,請務必先解決再繼續。 在本教學課程中,如果任何表格發生問題,請按照下列步驟操作:
- 返回選取資料表的步驟。
- 選取沒有問題的資料表或事件 (插入、更新或刪除)。
如要進一步瞭解如何將來源資料庫的資料類型轉換為 BigQuery 目的地資料類型,請參閱「複寫資料類型」。
點選 [Back] (上一步)。
點選「下一步」。
查看摘要複製工作詳細資料,然後按一下「Deploy replication job」(部署複製工作)。
在 Cloud Data Fusion 網頁介面中,前往複寫工作詳細資料頁面。
按一下「啟動」。
在「Replication」(複寫) 頁面中,按一下所選複寫工作的「Name」(名稱)。
按一下「監控」。
前往 Google Cloud 控制台的「BigQuery」BigQuery頁面。
在左側面板中,按一下專案名稱,展開資料集清單。
選取
xe
資料集,然後選取要查看的資料表。前往 Google Cloud 控制台的「VM instances」(VM 執行個體) 頁面。
選取要刪除的執行個體旁的核取方塊。
如要刪除執行個體,請按一下 [Delete] (刪除)。
- In the Google Cloud console, go to the Manage resources page.
- In the project list, select the project that you want to delete, and then click Delete.
- In the dialog, type the project ID, and then click Shut down to delete the project.
- 進一步瞭解 Datastream。
- 進一步瞭解 Cloud Data Fusion 中的複製功能。
- 請參閱 Replication API 參考資料。
- 請參閱 Oracle 複製參考資料
- 完成「將 MySQL 資料複製到 BigQuery」教學課程。
- 完成將資料從 SQL Server 複製到 BigQuery 的教學課程。
必要的角色
如要取得連線至 Oracle 資料庫所需的權限,請管理員授予下列 IAM 角色:
如要進一步瞭解如何授予角色,請參閱「管理存取權」。
選用:在 Compute Engine 中安裝 Oracle
本節說明如何設定範例資料庫。如果您已安裝 Oracle 資料庫,可以略過這個部分。
為 Oracle 伺服器建立虛擬私有雲網路對等互連或防火牆規則
如果 Oracle 資料庫不允許公開 IP 位址傳入流量,請在 Datastream 虛擬私有雲和可存取 Oracle 資料庫的虛擬私有雲之間,設定虛擬私有雲網路對等互連。詳情請參閱「建立私人連線設定」。
如果 Oracle 資料庫允許來自公開 IP 位址的連入流量,請為 VM 執行個體建立防火牆規則,允許來自 Datastream 公開 IP 的連入流量。
設定 Oracle 伺服器以啟用增補記錄
按照這些步驟設定 Oracle 來源資料庫。
建立及執行 Cloud Data Fusion 複製工作
建立工作
啟動工作
複製作業會從「佈建中」轉換為「啟動中」,然後進入「執行中」狀態。在執行狀態下,複寫工作會將您選取的資料表資料初始快照載入 BigQuery。在此狀態下,表格的狀態會列為「Snapshotting」(建立快照)。將初始快照載入 BigQuery 後,對資料表所做的任何變更都會複製到 BigQuery,且資料表的狀態會列為「正在複製」。
監控工作
您可以啟動及停止複製作業、查看設定和記錄,以及監控複製作業。
您可以在複寫工作詳細資料頁面監控複寫工作活動。
在 BigQuery 中查看結果
複製作業會在 BigQuery 中建立複製的資料集和資料表,並沿用對應的 Oracle 資料庫和資料表名稱。
詳情請參閱 BigQuery 說明文件。
清除所用資源
如要避免系統向您的 Google Cloud 帳戶收取本教學課程中所用資源的相關費用,請刪除含有該項資源的專案,或者保留專案但刪除個別資源。
完成本教學課程後,請清除您在Google Cloud 上建立的資源,這樣這些資源就不會占用配額,您日後也無須為其付費。下列各節將說明如何刪除或關閉這些資源。
刪除 VM 執行個體
刪除 Cloud Data Fusion 執行個體
請按照說明刪除 Cloud Data Fusion 執行個體。
刪除專案
如要避免付費,最簡單的方法就是刪除您為了本教學課程所建立的專案。
如要刪除專案: