從 NoSQL 資料庫取得資料

已完成

有些組織不會使用關係資料庫,而是改用 NoSQL 資料庫。 NoSQL 資料庫 (也稱為非 SQL,而不只是 SQL 或 非關係型) 是一種彈性的資料庫類型,不會使用數據表來儲存數據。

案例

Tailwind Traders 的軟體開發人員建立了應用程式來管理其倉儲中的出貨和追蹤產品。 應用程式使用 Cosmos DB 作為資料存放庫的 NoSQL 資料庫。 數據會儲存為 JSON 檔,這是開放標準檔案格式,主要用於在伺服器與 Web 應用程式之間傳輸數據。 您必須將此數據匯入 Power BI 語意模型以進行報告。

連線到NoSQL 資料庫 (Azure Cosmos DB)

在此案例中,您將使用 Power BI Desktop 中的取得數據功能。 不過,這次您將選取 [ 更多...] 選項,以找出並連線到您使用的資料庫類型。 在此範例中,您將選取 Azure 類別,選取 [Azure Cosmos DB], 然後選取 [ 連線]。

螢幕擷取畫面,顯示 [Azure Cosmos DB] 選項中的 [取得資料]。

[預覽連接器 ] 視窗中,選取 [ 繼續 ],然後輸入您的資料庫認證。 在此範例中,您可以在 [Azure Cosmos DB ] 視窗中輸入資料庫詳細數據。 您可以指定您想要從 (取得資料的 Azure Cosmos DB 帳戶端點 URL,您可以從 Azure 入口網站) 的 [金鑰] 刀鋒視窗取得 URL。 或者,您可以輸入資料庫名稱、集合名稱,或使用導覽器來選取要識別資料來源的資料庫與集合。

如果您是第一次連線到端點,如您在此範例中所示,請確定您輸入帳戶密鑰。 您可以在 Azure 入口網站 的 [只讀金鑰] 刀鋒視窗中的 [主鍵] 方塊中找到此金鑰。

匯入 JSON 檔案

如果您使用以 JSON 格式儲存的數據,通常必須先擷取和正規化數據。 這是因為 JSON 數據通常會以巢狀或非結構化格式儲存,因此難以直接分析或報告。

在此範例中,必須先擷取和正規化數據,才能報告數據,因此您必須在將數據載入 Power BI Desktop 之前先轉換數據。

聯機到資料庫帳戶之後, [導覽器 ] 視窗隨即開啟,其中顯示該帳戶下的資料庫清單。 選取您要匯入的資料表。 在此範例中,您將選取 Product 資料表。 預覽窗格只會顯示 [記錄] 項目,因為文件中的所有記錄都是以 Power BI 中的記錄類型表示的。

螢幕擷取畫面,顯示包含可用記錄清單的 [導覽器] 視窗。

選取 [編輯] 按鈕以開啟 Power Query 中的記錄。

在 Power Query 中,選取 Column1 標頭右側的 [展開器] 按鈕,其中會顯示具有字段清單的操作功能表。 選取您想要載入 Power BI Desktop 的欄位,清除 [使用原始數據行名稱作為前置詞] 複選框,然後選取 [確定]。

[展開記錄] 功能的螢幕擷取畫面。

檢閱選取的數據,以確保您對它感到滿意,然後選取 [關閉 & [套用] 將數據載入 Power BI Desktop。

螢幕擷取畫面,顯示 Power Query 中的 [關閉並套用] 步驟。

資料現在看起來像含有資料列與資料行的資料表。 來自 Cosmos DB 的資料現在可以與來自其他資料來源的資料相關,而且最終可以用於 Power BI 報表中。