使用 Striim 將資料移轉至 Azure Cosmos DB for Apache Cassandra 帳戶

適用於: Cassandra

Azure 市集中的 Striim 映像可提供從資料倉儲和資料庫移轉到 Azure 的連續即時資料移動。 移動資料時,您可以執行內嵌反正規化、資料轉換、啟用即時分析和資料報告情節。 您可以輕鬆地開始使用 Striim,持續將企業資料移動至 Azure Cosmos DB for Apache Cassandra。 Azure 提供市集供應項目,可讓您輕鬆地部署 Striim,並將資料移轉至 Azure Cosmos DB。

本文說明如何使用 Striim 將資料從 Oracle 資料庫移轉至 Azure Cosmos DB for Apache Cassandra 帳戶

必要條件

  • 如果您沒有 Azure 訂用帳戶,請在開始前建立免費帳戶

  • 在內部部署環境中執行且具有一些資料的 Oracle 資料庫。

部署 Striim 市集解決方案

  1. 登入 Azure 入口網站

  2. 選取 [建立資源],並在 Azure 市集中搜尋 Striim。 選取第一個選項,然後選取 [建立]

    Find Striim marketplace item

  3. 接著,輸入 Striim 執行個體的設定屬性。 Striim 環境會部署在虛擬機器中。 在 [基本] 窗格中,輸入 VM 使用者名稱VM 密碼 (此密碼用來透過 SSH 連線到 VM)。 選取您要在其中部署 Striim 的訂閱資源群組位置詳細資料。 完成之後,請選取 [確定]

    Configure basic settings for Striim

  4. 在 [Striim 叢集設定] 窗格中,選擇 Striim 部署的類型和虛擬機器大小。

    設定 Description
    Striim 部署類型 獨立 Striim 可在獨立叢集部署類型中執行。 獨立模式會將 Striim 伺服器部署在單一虛擬機器上,而且您可以根據資料量來選取 VM 的大小。 叢集模式會將 Striim 伺服器部署在所選大小的兩部或多部 VM 上。 具有 2 個以上節點的叢集環境提供自動的高可用性和容錯移轉。

    在本教學課程中,您可以選取 [獨立] 選項。 使用預設為 “Standard_F4s” 大小的 VM。
    Striim 叢集的名稱 <Striim_cluster_Name> Striim 叢集的名稱。
    Striim 叢集密碼 <Striim_cluster_password> 叢集的密碼。

    填入表單之後,選取 [確定] 以繼續。

  5. 在 [Striim 存取設定] 窗格中,設定公用 IP 位址 (選擇預設值)、您要用來登入 Striim UI 的 Striim 的網域名稱管理員密碼。 設定 VNET 和子網路 (選擇預設值)。 填入詳細資料之後,選取 [確定] 以繼續。

    Striim access settings

  6. Azure 會驗證部署,並確定一切看起來沒有問題;驗證需要幾分鐘的時間才能完成。 驗證完成之後,請選取 [確定]

  7. 最後,請參閱使用規定,然後選取 [建立] 以建立您的 Striim 執行個體。

設定來源資料庫

在本節中,您會將 Oracle 資料庫設定為資料移動的來源。 Striim 伺服器隨附用來連線到 Oracle 的 Oracle JDBC 驅動程式。 若要從來源 Oracle 資料庫讀取變更,您可以使用 LogMinerXStream API。 Oracle JDBC 驅動程式存在於 Striim 的 Java 類別路徑中,可從 Oracle 資料庫讀取、寫入或保存資料。

設定目標資料庫

在本節中,您會將 Azure Cosmos DB for Apache Cassandra 帳戶設定為資料移動的目標。

  1. 使用 Azure 入口網站建立 Azure Cosmos DB for Apache Cassandra 帳戶

  2. 瀏覽至您 Azure Cosmos DB 帳戶中的 [資料總管] 窗格。 選取 [新增資料表] 以建立新的容器。 假設您要將產品訂單資料從 Oracle 資料庫移轉至 Azure Cosmos DB。 使用 Orders 容器來建立名為 StriimDemo 的新 Keyspace。 使用 1000 RU 佈建容器 (此範例使用 1000 RU,但您應該使用針對您工作負載所估計的輸送量),並以 /ORDER_ID 作為分割區索引鍵。 這些值會根據您的來源資料而有所不同。

    Create API for Cassandra account

針對 Azure Cosmos DB 資料流程設定 Oracle

  1. 瀏覽至您在 Azure 入口網站中部署的 Striim 執行個體。 選取上方功能表列中的 [連線] 按鈕,然後從 [SSH] 索引標籤中,複製 [使用 VM 本機帳戶登入] 欄位中的 URL。

    Get the SSH URL

  2. 開啟新的終端視窗,並執行您從 Azure 入口網站複製的 SSH 命令。 本文使用 macOS 中的終端,您可以遵循在 Windows 機器上使用 SSH 用戶端的類似指示。 出現提示時,請輸入 yes 以繼續,然後輸入您在上一個步驟中為虛擬機器設定的密碼

    Connect to Striim VM

  3. 從相同的終端視窗中,執行下列命令來重新啟動 Striim 伺服器:

    systemctl stop striim-node
    systemctl stop striim-dbms
    systemctl start striim-dbms
    systemctl start striim-node
    
  4. Striim 需要一分鐘的時間來啟動。 如果您想要查看狀態,請執行下列命令:

    tail -f /opt/striim/logs/striim-node.log
    
  5. 現在,瀏覽回 Azure 並複製您 Striim VM 的公用 IP 位址。

    Copy Striim VM IP address

  6. 若要瀏覽至 Striim 的 Web UI,請在瀏覽器中開啟新的索引標籤,然後複製後面接著 9080 的公用 IP。 使用管理員使用者名稱,以及您在 Azure 入口網站中指定的管理員密碼來登入。

    Sign in to Striim

  7. 現在您將抵達 Striim 的首頁。 其中有三個不同的窗格 – 儀表板應用程式資源預覽。 [儀表板] 窗格可讓您即時移動資料並將其視覺化。 [應用程式] 窗格包含您的串流資料管線或資料流程。 在頁面右側是 [資源預覽],您可以在其中預覽資料,然後再將資料移動。

  8. 選取 [應用程式] 窗格,我們現在會將焦點放在此窗格上。 您可以使用各種範例應用程式來了解 Striim,不過在本文中,您將建立自己的應用程式。 選取右上角的 [新增應用程式] 按鈕。

    Add the Striim app

  9. 有幾種不同的方式可以建立 Striim 應用程式。 針對此案例,請選取 [從頭開始]

    Start the app from scratch

  10. 請為您的應用程式取個容易記住的名稱,例如 oraToCosmosDB,然後選取 [儲存]

    Create a new application

  11. 您將前往流程設計工具,而您可以在其中拖放現成的連接器,以建立串流應用程式。 在搜尋列中輸入 Oracle,並將 Oracle CDC 來源拖放到應用程式畫布上。

    Oracle CDC source

  12. 輸入 Oracle 執行個體的來源設定屬性。 來源名稱只是 Striim 應用程式的命名慣例,您可以取名為例如 src_onPremOracle 之類的名字。 此外,請輸入其他詳細資料,例如介面卡類型、連線 URL、使用者名稱、密碼、資料表名稱。 選取 [儲存] 以繼續。

    Configure source parameters

  13. 現在,請按一下資料流的波浪圖示,以連接目標 Azure Cosmos DB 執行個體。

    Connect to target

  14. 設定目標之前,請確定您已將 Baltimore 根憑證新增至 Striim 的 Java 環境上

  15. 輸入目標 Azure Cosmos DB 執行個體的設定屬性,然後選取 [儲存] 以繼續。 以下是需要注意的關鍵參數:

    • 介面卡 - 使用 資料庫寫入器。 寫入至 Azure Cosmos DB for Apache Cassandra 時,需要使用 DatabaseWriter。 Cassandra 驅動程式 3.6.0 版本隨附於 Striim 中。 如果 DatabaseWriter 超過 Azure Cosmos DB 容器上佈建的 RU 數目,則應用程式將會當機。

    • 連線 URL - 指定 Azure Cosmos DB JDBC 的連線 URL。 URL 的格式為 jdbc:cassandra://<contactpoint>:10350/<databaseName>?SSL=true

    • 使用者名稱 - 指定您的 Azure Cosmos DB 帳戶名稱。

    • 密碼 - 指定 Azure Cosmos DB 帳戶的主索引鍵。

    • 資料表 - 目標資料表必須有主索引鍵,且主索引鍵無法事後更新。

    Screenshot that shows the configurable target properties.

    Configure target properties

  16. 現在,我們將要繼續並執行 Striim 應用程式。 在上方功能表列中,選取 [已建立],然後 [部署應用程式]。 在部署視窗中,您可以指定是否要在部署拓撲的特定部分執行應用程式的指定部分。 因為我們是透過 Azure 在簡單的部署拓撲中執行,所以我們會使用預設選項。

    Deploy the app

  17. 現在,我們將繼續並預覽串流以查看流經 Striim 的資料。 按一下波浪圖示,然後按一下旁邊的眼睛圖示。 部署之後,您可以預覽串流以查看流經的資料。 選取波浪圖示和旁邊的眼睛圖示。 在頂端功能表列中選取 [已部署] 按鈕,然後選取 [啟動應用程式]

    Start the app

  18. 藉由使用 CDC (異動資料擷取) 讀取器,Striim 只會在資料庫上挑選新的變更。 如果您的資料流程經來源資料表,您將會看到該資料。 不過,由於這是示範資料表,因此來源並不會連線到任何應用程式。 如果您使用範例資料產生器,您可以將一連串的事件插入 Oracle 資料庫。

  19. 您會看到資料流程經 Striim 平台。 Striim 也會挑選與您的資料表相關聯的所有中繼資料,這有助於監視資料並確保資料落在正確的目標上。

    Set up the CDC pipeline

  20. 最後,讓我們登入 Azure 並瀏覽至您的 Azure Cosmos DB 帳戶。 重新整理資料總管,您就會看到資料已經順利抵達。

藉由在 Azure 中使用 Striim 解決方案,您可以持續將不同來源 (例如 Oracle、Cassandra、MongoDB 和其他各種來源) 中的資料移轉至 Azure Cosmos DB。 若要深入了解,請造訪 Striim 網站,並下載 Striim 的免費 30 天試用版。如果設定 Striim 的移轉路徑時的任何問題,請提出支援要求。

下一步