適用於:NoSQL
Azure 市集中的 Striim 映像可提供從資料倉儲和資料庫到 Azure 的連續即時資料移動。 移動資料時,您可以執行內嵌反正規化、資料轉換、啟用即時分析和資料報告情節。 您可以輕鬆地開始使用 Striim,持續將企業資料移至 Azure Cosmos DB for NoSQL。 Azure 提供市集供應項目,可讓您輕鬆地部署 Striim,並將資料移轉至 Azure Cosmos DB。
此文章說明如何使用 Striim 將 Oracle 資料庫中的資料移轉至 Azure Cosmos DB for NoSQL 帳戶。
必要條件
如果您沒有 Azure 訂用帳戶,請在開始前建立免費帳戶。
在內部部署環境中執行且具有一些資料的 Oracle 資料庫。
部署 Striim 市集解決方案
登入 Azure 入口網站。
選取 [建立資源],並在 Azure 市集中搜尋 Striim。 選取第一個選項,然後選取 [建立]。
接著,輸入 Striim 執行個體的設定屬性。 Striim 環境會部署在虛擬機器中。 在 [基本] 窗格中,輸入 VM 使用者名稱、VM 密碼 (此密碼用來透過 SSH 連線到 VM)。 選取您要在其中部署 Striim 的訂閱、資源群組和位置詳細資料。 完成之後,請選取 [確定]。
在 [Striim 叢集設定] 窗格中,選擇 Striim 部署的類型和虛擬機器大小。
設定 價值 描述 Striim 部署類型 獨立 Striim 可在獨立或叢集部署類型中執行。 獨立模式會將 Striim 伺服器部署在單一虛擬機器上,而且您可以根據資料量來選取 VM 的大小。 叢集模式會將 Striim 伺服器部署在所選大小的兩部或多部 VM 上。 具有 2 個以上節點的叢集環境提供自動的高可用性和容錯移轉。
在本教學課程中,您可以選取 [獨立] 選項。 使用預設為 “Standard_F4s” 大小的 VM。Striim 叢集的名稱 <Striim_cluster_Name> Striim 叢集的名稱。 Striim 叢集密碼 <Striim_cluster_password> 叢集的密碼。 填入表單之後,選取 [確定] 以繼續。
在 [Striim 存取設定] 窗格中,設定公用 IP 位址 (選擇預設值)、您要用來登入 Striim UI 的 Striim 的網域名稱、管理員密碼。 設定 VNET 和子網路 (選擇預設值)。 填入詳細資料之後,選取 [確定] 以繼續。
Azure 會驗證部署,並確定一切看起來沒有問題;驗證需要幾分鐘的時間才能完成。 驗證完成之後,請選取 [確定]。
最後,請參閱使用規定,然後選取 [建立] 以建立您的 Striim 執行個體。
設定來源資料庫
在本節中,您會將 Oracle 資料庫設定為資料移動的來源。 Striim 伺服器隨附用來連線到 Oracle 的 Oracle JDBC 驅動程式。 若要從來源 Oracle 資料庫讀取變更,您可以使用 LogMiner 或 XStream API。 Oracle JDBC 驅動程式存在於 Striim 的 Java 類別路徑中,可從 Oracle 資料庫讀取、寫入或保存資料。
設定目標資料庫
在此節中,您會將 Azure Cosmos DB for NoSQL 帳戶設定為資料移動的目標。
使用 Azure 入口網站建立 Azure Cosmos DB for NoSQL 帳戶。
瀏覽至您 Azure Cosmos DB 帳戶中的 [資料總管] 窗格。 選取 [新增容器] 以建立新的容器。 假設您要將產品和訂單資料從 Oracle 資料庫遷移至 Azure Cosmos DB。 來建立名為 StriimDemo 的新資料庫,並將容器命名為 Orders。 使用 1000 RU 佈建容器 (此範例使用 1000 RU,但您應該使用針對您工作負載所估計的輸送量),並以 /ORDER_ID 作為分割區索引鍵。 這些值會根據您的來源資料而有所不同。
設定 Oracle 到 Azure Cosmos DB 的資料流程
瀏覽至您在 Azure 入口網站中部署的 Striim 執行個體。 選取上方功能表列中的 [連線] 按鈕,然後從 [SSH] 索引標籤中,複製 [使用 VM 本機帳戶登入] 欄位中的 URL。
開啟新的終端視窗,並執行您從 Azure 入口網站複製的 SSH 命令。 本文使用 MacOS 中的終端,您可以遵循在 Windows 機器上使用 SSH 用戶端的類似指示。 出現提示時,請輸入 yes 以繼續,然後輸入您在上一個步驟中為虛擬機器設定的密碼。
從相同的終端視窗中,執行下列命令來重新啟動 Striim 伺服器:
systemctl stop striim-node systemctl stop striim-dbms systemctl start striim-dbms systemctl start striim-nodeStriim 需要一分鐘的時間來啟動。 如果您想要查看狀態,請執行下列命令:
tail -f /opt/striim/logs/striim-node.log現在,瀏覽回 Azure 並複製您 Striim VM 的公用 IP 位址。
若要瀏覽至 Striim 的 Web UI,請在瀏覽器中開啟新的索引標籤,然後複製公用 IP,後面加上 :9080。 使用管理員使用者名稱,以及您在 Azure 入口網站中指定的管理員密碼來登入。
現在您將抵達 Striim 的首頁。 其中有三個不同的窗格 – 儀表板、應用程式和 資源預覽。 [儀表板] 窗格可讓您即時移動資料並將其視覺化。 [應用程式] 窗格包含您的串流資料管線或資料流程。 在頁面右側是 [資源預覽],您可以在其中預覽資料,然後再將資料移動。
選取 [應用程式] 窗格,我們現在會將焦點放在此窗格上。 您可以使用各種範例應用程式來了解 Striim,不過在本文中,您將建立自己的應用程式。 選取右上角的 [新增應用程式] 按鈕。
有幾種不同的方式可以建立 Striim 應用程式。 選取 [從範本開始],即可從現有的範本開始建立。
在 [搜尋範本] 欄位中,輸入 "Cosmos" 並選取 [目標:Azure Cosmos DB],然後選取 [從 Oracle CDC 到 Azure Cosmos DB]。
在下一個頁面中,為您的應用程式命名。 您可以提供名稱 (例如 oraToCosmosDB),然後選取 [儲存]。
接下來,輸入來源 Oracle 執行個體的來源設定。 輸入來源名稱的值。 來源名稱只是 Striim 應用程式的命名慣例,您可以使用類似 src_onPremOracle 的內容。 輸入剩餘來源參數的值:[URL]、[使用者名稱]、[密碼],選擇 [LogMiner] 作為從 Oracle 讀取資料的讀取器。 選取下一步以繼續。
Striim 會檢查您的環境,並確定其可以連線到您的來源 Oracle 執行個體、擁有正確的權限,而且 CDC 已正確設定。 所有值都經過驗證之後,請選取 [下一步]。
從您想要遷移的 Oracle 資料庫中選取資料表。 例如,選擇 Orders 資料表,然後選取 [下一步]。
選取來源資料表之後,您可以進行更複雜的作業,例如對應和篩選。 在此情況下,您只會在 Azure Cosmos DB 中建立來源資料表的複本。 因此,請選取 [下一步] 以設定目標
現在,讓我們來設定目標:
- 目標名稱 - 提供目標的自訂名稱。
- 輸入來源 - 從下拉式清單中,選擇您在 Oracle 的來源配置中建立的輸入串流。
- 集合 - 輸入目標 Azure Cosmos DB 設定屬性。 集合語法為 SourceSchema.SourceTable, TargetDatabase.TargetContainer。 在此範例中,值會是 “SYSTEM.ORDERS, StriimDemo.Orders”。
- AccessKey - 您 Azure Cosmos DB 帳戶的 PrimaryKey。
- ServiceEndpoint - 您 Azure Cosmos DB 帳戶的 URI,可在 Azure 入口網站的 [金鑰] 區段下找到。
選取 [儲存] 和 [下一步]。
接下來,您將前往流程設計工具,您可以在其中拖放現成的連接器,以建立串流應用程式。 此時您不會對流程進行任何修改。 所以請繼續進行,並選取 [部署應用程式] 按鈕來部署應用程式。
在部署視窗中,您可以指定是否要在部署拓撲的特定部分執行應用程式的特定部分。 因為我們是透過 Azure 在簡單的部署拓撲中執行,所以我們會使用預設選項。
部署之後,您可以預覽串流以查看流經的資料。 選取波浪圖示和旁邊的眼球圖示。 在頂端功能表列中選取 [已部署] 按鈕,然後選取 [啟動應用程式]。
藉由使用 CDC (異動資料擷取) 讀取器,Striim 只會捕捉資料庫上的新變更。 如果您有資料流經來源資料表,您會看到該資料。 不過,由於這是示範資料表,因此來源不會連線到任何應用程式。 如果您使用範例資料產生器,您可以將一連串的事件插入 Oracle 資料庫。
您會看到資料在 Striim 平台中流動。 Striim 也會收集與您的資料表相關聯的所有中繼資料,這有助於監視資料並確保資料傳送到正確的目標。
最後,讓我們登入 Azure 並瀏覽至您的 Azure Cosmos DB 帳戶。 重新整理 [資料總管],您就會看到資料已經順利抵達。
藉由在 Azure 中使用 Striim 解決方案,您可以持續將不同來源 (例如 Oracle、Cassandra、MongoDB 和其他各種來源) 中的資料移轉至 Azure Cosmos DB。 若要深入了解,請造訪 Striim 網站,並下載 Striim 的免費 30 天試用版。如果設定 Striim 的移轉路徑時的任何問題,請提出支援要求。
下一步
正在嘗試為遷移至 Azure Cosmos DB 進行容量規劃嗎?
- 如果您知道現有資料庫叢集中的虛擬核心和伺服器數目,請參閱使用虛擬核心或 vCPU 來估計要求單位
- 如果您知道目前資料庫工作負載的一般要求率,請參閱使用 Azure Cosmos DB 容量規劃工具來估計要求單位
如果您要將資料移轉至 Azure Cosmos DB for NoSQL,請參閱如何使用 Striim 將資料移轉至 API for Cassandra 帳戶