這很重要
Power Query 連接器的支援最初是以「受限的公開預覽」形式根據 Microsoft Azure 的「預覽版補充使用條款」 引進,但現已停止。 如果您有使用 Power Query 連接器的搜尋解決方案,請移轉至替代解決方案。
移轉至 2022 年 11 月 28 日
Power Query 連接器預覽於 2021 年 5 月宣布,且不會進入正式版本。 下列移轉指引適用於 Snowflake 和 PostgreSQL。 如果您使用不同的連接器並需要移轉指示,請透過預覽註冊中提供的電子郵件聯絡資訊來尋求幫助,或是聯繫 Azure 支援開立支援票證。
先決條件
- Azure 儲存體帳戶。 如果您沒有記憶體帳戶, 請建立記憶體帳戶。
- Azure Data Factory。 如果您沒有一個,建立 Data Factory。 請參閱 Data Factory 管線定價,以瞭解相關成本再進行實作。 此外,請透過範例 查看Data Factory 定價。
移轉 Snowflake 數據管道
本節說明如何將數據從 Snowflake 資料庫複製到 Azure 認知搜尋索引。 從 Snowflake 直接索引到 Azure 認知搜尋的流程並不存在,因此,本節涉及一個預備階段,將資料庫內容複製到 Azure 儲存體的 Blob 容器中。 然後,您將使用 Data Factory 管道從該暫存容器建立索引。
步驟 1:擷取 Snowflake 資料庫資訊
移至 Snowflake,然後登入您的 Snowflake 帳戶。 Snowflake 帳戶的格式為 https://<account_name>.snowflakecomputing.com。
登入之後,請從左窗格收集下列資訊。 您將在下一個步驟中使用這項資訊:
- 從 [數據],選取 [資料庫 並複製資料庫來源的名稱。
- 從 Admin中,選取 使用者 & 角色,然後複製使用者的名稱。 請確定使用者具有讀取許可權。
- 從 Admin中,選取 帳戶,然後複製帳戶 LOCATOR 值。
- 從 Snowflake 的 URL 中,類似於
https://app.snowflake.com/<region_name>/xy12345/organization)。 複製區域名稱。 例如,在https://app.snowflake.com/south-central-us.azure/xy12345/organization中,區域名稱south-central-us.azure。 - 從 Admin中,選取 [Warehouses,然後複製與您將作為來源的資料庫相關聯的倉儲名稱。
步驟 2:設定 Snowflake 鏈接服務
使用您的 Azure 帳戶登入 Azure Data Factory Studio。
選取您的資料工廠,然後選取 繼續。
從左側功能表中,選取 [管理] 圖示。
在 [鏈接服務] 下,選取 [新增]。
在右窗格的 [數據存放區搜尋] 中,輸入 “snowflake”。 選取 Snowflake 圖格,然後選取 繼續。
使用您在上一個步驟中收集的數據,填寫 [新增鏈接服務] 表單。 帳戶名稱 包含 LOCATOR 值和區域(例如:
xy56789south-central-us.azure)。
表單完成之後,請選取 [測試連線] 。
如果測試成功,選擇建立 。
步驟 3:設定雪花數據集
從左側選單中,選取 作者 圖示。
選取 [數據集],然後選取 [數據集動作] 省略號功能表 (
...)。
選擇 新增資料集。
在右窗格的 [數據存放區搜尋] 中,輸入 “snowflake”。 選取 Snowflake 圖格,然後選取 繼續。
在 [設定屬性]中:
- 選取您在 步驟 2中建立的連結服務。
- 選擇您要匯入的資料表,然後選取 [確定] 。
請選擇儲存。
步驟 4:在 Azure 認知搜尋中建立新的索引
在 Azure 認知搜尋服務中建立新的索引,其架構與您目前為 Snowflake 數據設定的架構相同。
您可以將目前使用的索引重新用於 Snowflake Power Connector。 在 Azure 入口網站中,尋找索引,然後選取 [索引定義 (JSON)。 選擇定義,並將它複製到新索引請求的主體。
步驟 5:設定 Azure 認知搜尋連結服務
從左側功能表中,選取 [管理] 圖示。
在 [鏈接服務] 下,選取 [新增]。
在右窗格的 [數據存放區搜尋] 中,輸入 「搜尋」。 選取 [Azure Search] 圖格,然後選取 [繼續]。
填寫 新的連結服務 值:
- 選擇 Azure 認知搜尋服務所在的 Azure 訂用帳戶。
- 選擇具有 Power Query 連接器索引器的 Azure 認知搜尋服務。
- 選取 ,創建。
步驟 6:設定 Azure 認知搜尋數據集
從左側功能表中,選取 [作者 圖示。
選取 [數據集],然後選取 [數據集動作] 省略號功能表 (
...)。
選擇 新增資料集。
在右窗格的 [數據存放區搜尋] 中,輸入 「搜尋」。 選取 [Azure Search] 圖格,然後選取 [繼續]。
在 設定屬性:
請選擇儲存。
步驟 7:設定 Azure Blob 記憶體連結服務
從左側功能表中,選取 [管理] 圖示。
在 [鏈接服務] 下,選取 [新增]。
在右窗格中,在數據存放區搜尋中,輸入「記憶體」。 選取 [Azure Blob 儲存體] 圖格,然後選取 [繼續]。
填寫 新的連結服務 值:
選擇 [驗證類型:SAS URI]。 只有此驗證類型可用來將數據從 Snowflake 匯入 Azure Blob 記憶體。
針對您將用於部署的儲存帳戶產生 SAS URL。 將 [Blob SAS URL] 貼到 [SAS URL] 字段中。
選取 ,創建。
步驟 8:設定記憶體數據集
從左側功能表中,選取 [作者 圖示。
選取 [數據集],然後選取 [數據集動作] 省略號功能表 (
...)。
選擇 新增資料集。
在右窗格中,在數據存放區搜尋中,輸入「記憶體」。 選取 [Azure Blob 儲存體] 圖格,然後選取 [繼續]。
選取 [DelimitedText 格式],然後選取 [繼續]。
在 [設定屬性]中:
在 [連接服務] 下,選取在 步驟 7中建立的連接服務。
在 [檔案路徑] 中,選擇作為暫存過程接收器的容器,然後選取 [確定]。
在 行分隔符中,選取 換行符(\n)。
勾選 [第一列] 作為標題的 方塊。
請選擇儲存。
步驟 9:設定管線
從左側功能表中,選取 [作者 圖示。
選擇 管線,然後選擇管線動作省略號選單(
...)。
選擇「新增管線」。
建立及設定從 Snowflake 複製到 Azure 記憶體容器的 Data Factory 活動:
展開 移動 & 轉換 區段,然後將 複製數據 活動拖放到空白的管線編輯器畫布。
開啟 一般 索引標籤。除非您需要自訂執行,否則請接受預設值。
在 [來源] 索引標籤中,選取您的 Snowflake 數據表。 保留其餘選項的預設值。
在 [匯入] 標籤頁中:
選擇在 步驟 8中建立的 儲存體 DelimitedText 數據集。
在 延伸名中,新增 .csv。
保留其餘選項的預設值。
請選擇儲存。
設定將 Azure 儲存體 Blob 複製到搜尋索引的活動:
展開 移動 & 轉換 區段,然後將 複製數據 活動拖放到空白的管線編輯器畫布。
在 [一般] 索引標籤中,接受預設值,除非您需要自定義執行。
在 [來源] 索引標籤中:
- 選擇在 步驟 8中建立的 儲存體 DelimitedText 數據集。
- 在 [檔案路徑類型] 中輸入 ,然後選取 [通配符檔案路徑]。
- 保留所有剩餘欄位的預設值。
在 [匯出] 索引標籤中,選取您的 Azure 認知搜尋索引。 保留其餘選項的預設值。
請選擇儲存。
步驟 10:設定活動順序
在 [管線] 畫布編輯器中,選取管線活動圖格邊緣的小綠色方塊。 將它拖曳至[從記憶體帳戶到 Azure 認知搜尋的索引] 活動,以設定執行順序。
請選擇儲存。
步驟 11:新增管線觸發器
選取 新增觸發程式 以排程管線執行,然後選取 新增/編輯。
從 [選擇觸發程式] 下拉式清單中,選取 [新增]。
檢閱觸發選項以執行管道,然後選取 [確定] 。
請選擇儲存。
選取 [] 發佈 []。
移轉 PostgreSQL 數據管線
本節說明如何將數據從 PostgreSQL 資料庫複製到 Azure 認知搜尋索引。 沒有從 PostgreSQL 直接編制索引到 Azure 認知搜尋的程式,因此本節包含將資料庫內容複製到 Azure 記憶體 Blob 容器的預備階段。 接著,您將使用 Data Factory 管線從該暫存容器編製索引,。
步驟 1:設定 PostgreSQL 鏈接服務
使用您的 Azure 帳戶登入 Azure Data Factory Studio。
選擇您的 Data Factory,然後選取「繼續」。
從左側功能表中,選取 [管理] 圖示。
在 [鏈接服務] 下,選取 [新增]。
在右窗格的 [數據存放區搜尋] 中,輸入 “postgresql”。 選取 PostgreSQL 面板,代表 PostgreSQL 資料庫所在的位置(Azure 或其他),然後選取 [繼續]。 在此範例中,PostgreSQL 資料庫位於 Azure 中。
填寫 新的連結服務 值:
在 [帳戶選取方法]中,選取 [手動輸入。
從 Azure 入口網站的 [適用於 PostgreSQL 的 Azure 資料庫概觀] 頁面中,將下列值貼到各自的欄位中:
- 將 伺服器名稱 新增至 完整網域名稱。
- 將 系統管理員使用者名稱 新增至 使用者名稱。
- 將 資料庫 新增至 資料庫名稱。
- 輸入管理員的使用者名稱和密碼到 使用者名稱密碼。
- 選取 ,創建。
步驟 2:設定 PostgreSQL 數據集
從左側功能表中,選取 [作者 圖示。
選取 [數據集],然後選取 [數據集動作] 省略號功能表 (
...)。
選擇 新增資料集。
在右窗格的 [數據存放區搜尋] 中,輸入 “postgresql”。 選取 Azure PostgreSQL 磁磚。 選取 繼續。
填寫 設定屬性 值:
選擇 步驟 1中建立的 PostgreSQL 鏈接服務。
選取您要匯入/索引的數據表。
請選擇 [確定]。
請選擇儲存。
步驟 3:在 Azure 認知搜尋中建立新的索引
在 Azure 認知搜尋服務中建立新的索引,其架構與 PostgreSQL 數據所使用的架構相同。
您可以重新規劃您目前用於PostgreSQL Power Connector 的索引。 在 Azure 入口網站中,尋找索引,然後選取 [索引定義 (JSON)。 選擇定義,並將它複製到新索引請求的主體。
步驟 4:設定 Azure 認知搜尋連結服務
從左側功能表中,選取 [管理] 圖示。
在 [鏈接服務] 下,選取 [新增]。
在右窗格的 [數據存放區搜尋] 中,輸入 「搜尋」。 選取 [Azure 搜尋] 圖格,然後選取 [繼續]。
填寫 新的連結服務 值:
- 選擇 Azure 認知搜尋服務所在的 Azure 訂用帳戶。
- 選擇具有 Power Query 連接器索引器的 Azure 認知搜尋服務。
- 選取 ,創建。
步驟 5:設定 Azure 認知搜尋數據集
從左側功能表中,選取 [作者 圖示。
選取 [數據集],然後選取 [數據集動作] 省略號功能表 (
...)。
選擇 新增資料集。
在右窗格的 [數據存放區搜尋] 中,輸入 「搜尋」。 選取 [Azure Search] 圖格,然後選取 [繼續]。
在 設定屬性:
請選擇儲存。
步驟 6:設定 Azure Blob 記憶體連結服務
從左側功能表中,選取 [管理] 圖示。
在 [鏈接服務] 下,選取 [新增]。
在右窗格中,在數據存放區搜尋中,輸入「記憶體」。 選取 [Azure Blob 儲存體] 圖格,然後選取 [繼續]。
的螢幕快照
填寫 新的連結服務 值:
選擇 驗證類型:SAS URI。 只有這個方法可用來將數據從 PostgreSQL 匯入 Azure Blob 記憶體。
針對您將用於中繼的儲存帳戶產生 SAS URL,並將 [Blob SAS URL] 貼到 [SAS URL] 欄位。
選取 ,創建。
步驟 7:設定記憶體數據集
從左側功能表中,選取 [作者 圖示。
選取 [數據集],然後選取 [數據集動作] 省略號功能表 (
...)。
選擇 新增資料集。
在右窗格中,在數據存放區搜尋中,輸入「記憶體」。 選取 [Azure Blob 儲存體] 圖格,然後選取 [繼續]。
選取 [DelimitedText 格式],然後選取 [繼續]。
在 行分隔符中,選取 換行符(\n)。
勾選 [第一列] 作為標題的 方塊。
請選擇儲存。
步驟 8:設定管線
從左側功能表中,選取 [作者 圖示。
選擇 管線,然後選擇管線動作省略號選單(
...)。
選擇「新增管線」。
建立及設定從 PostgreSQL 複製到 Azure 記憶體容器的 Data Factory 活動。
展開 移動 & 轉換 區段,然後將 複製數據 活動拖放到空白的管線編輯器畫布。
開啟 一般 索引標籤,接受預設值,除非您需要自訂執行。
在 [來源] 索引標籤中,選取您的 PostgreSQL 數據表。 保留其餘選項的預設值。
在 [匯入] 標籤頁中:
選取在 步驟 7中設定的 Storage DelimitedText PostgreSQL 數據集。
在 擴展名中,新增 .csv
保留其餘選項的預設值。
請選擇儲存。
設定將 Azure 儲存空間內容複製到搜尋索引的活動:
展開 移動 & 轉換 區段,然後將 複製數據 活動拖放到空白的管線編輯器畫布。
在 [一般] ([General]) 索引標籤中,除非您需要自訂執行,否則請保留預設值。
在 [來源] 索引標籤中:
- 選取 步驟 7中所設定的記憶體來源數據集。
- 在 [檔案路徑類型] 欄位中,選取 [通配符檔案路徑。
- 保留所有剩餘欄位的預設值。
在 [匯出] 索引標籤中,選取您的 Azure 認知搜尋索引。 保留其餘選項的預設值。
請選擇儲存。
步驟 9:設定活動順序
在 [管線] 畫布編輯器中,選取管線活動邊緣的小綠色方塊。 將它拖曳至[從記憶體帳戶到 Azure 認知搜尋的索引] 活動,以設定執行順序。
請選擇儲存。
步驟 10:新增管線觸發器
選取 新增觸發程式 以排程管線執行,然後選取 新增/編輯。
從 [選擇觸發程式] 下拉式清單中,選取 [新增]。
檢閱觸發選項以執行管道,然後選取 [確定] 。
請選擇儲存。
選取 [] 發佈 []。
Power Query 連接器預覽的舊版內容
Power Query 連接器會與搜尋索引器搭配使用,以自動從各種數據源擷取數據,包括其他雲端提供者上的數據擷取。 它會使用 Power Query 來擷取數據。
預覽中支援的數據來源包括:
- Amazon Redshift
- Elasticsearch
- PostgreSQL
- Salesforce 物件
- Salesforce 報表
- Smartsheet
- 雪花
支援的功能
Power Query 連接器用於索引器。 Azure 認知搜尋中的索引器是一個爬蟲,可從外部數據源擷取可搜尋的資料和元數據,並根據索引與數據源之間的欄位映射填入索引。 這種方法有時稱為「拉取模型」,因為不需要撰寫任何將資料新增至索引的程式代碼,服務即可自動將資料拉取進來。 索引器提供方便的方式,讓使用者從數據源編製內容索引,而不需要撰寫自己的編目程式或推送模型。
參考 Power Query 數據源的索引器在技能集、排程、高水位標記變更檢測邏輯,以及大部分其他索引器支援的參數等方面,具有相同的支援層級。
先決條件
雖然您無法再使用這項功能,但在預覽版中,它具有下列需求:
在支援區域 中的 Azure 認知搜尋服務。
預覽註冊。 必須在後端啟用此功能。
Azure Blob 儲存帳戶,用來作為資料的中介。 數據會從您的數據源流向 Blob 記憶體,然後流向索引。 此需求僅在初始限定預覽中存在。
區域可用性
預覽僅適用於下列區域中的搜尋服務:
- 美國中部
- 美國東部
- 美國東部 2
- 美國中北部
- 北歐
- 美國中南部
- 美國中西部
- 西歐
- 美國西部
- 美國西部 2
預覽限制
本節說明目前預覽版本特有的限制。
不支援從數據源提取二進位數據。
不支援 偵錯會話。
開始使用 Azure 入口網站
Azure 入口網站提供 Power Query 連接器的支援。 藉由取樣容器上的數據和讀取元數據,Azure 認知搜尋中的匯入數據精靈可以建立預設索引、將來源字段對應至目標索引字段,以及在單一作業中載入索引。 視源數據的大小和複雜度而定,您可以在幾分鐘內有可作的全文搜索索引。
下列影片示範如何在 Azure 認知搜尋中設定 Power Query 連接器。
步驟 1 – 準備源數據
請確定您的資料來源包含資料。 [匯入數據精靈] 會讀取元數據並執行數據取樣來推斷索引架構,但它也會從數據源載入數據。 如果數據遺失,精靈將會停止運行並傳回錯誤訊息。
步驟 2 – 啟動匯入數據精靈
核准預覽之後,Azure 認知搜尋小組會為您提供使用功能旗標的 Azure 入口網站連結,讓您能夠存取 Power Query 連接器。 開啟此頁面,然後從 Azure 認知搜尋服務頁面中的命令列啟動精靈,方法是選取 [匯入資料]。
步驟 3 – 選取您的資料來源
有幾個數據源可讓您使用此預覽從中提取數據。 所有使用 Power Query 的資料來源,都會在其圖格上顯示「由 Power Query 提供支持」。 選取您的數據源。
選取數據源之後,請選取 [下一步:設定您的數據 移至下一節。
步驟 4 – 設定您的資料
在此步驟中,您將設定連線。 每個數據源都需要不同的資訊。 針對一些資料來源,Power Query 文件提供了有關如何連線至您的資料的更詳細資訊。
提供您的連線憑證之後,請選擇 [下一步]。
步驟 5 – 選取您的資料
匯入精靈會預覽數據源中可用的各種數據表。 在此步驟中,您將檢查一個數據表,其中包含您要匯入至索引的數據。
選取資料表之後,請選擇 下一步。
步驟 6 – 轉換您的資料(選擇性)
Power Query 連接器提供了豐富的使用者介面 (UI) 體驗,可以讓您操作數據,以便將正確的數據傳送至索引。 您可以移除資料行、篩選資料列等等。
在將數據匯入 Azure 認知搜尋之前,您不需要先轉換數據。
如需使用Power Query 轉換資料的詳細資訊,請參閱在Power BI Desktop 中使用Power Query 。
轉換資料之後,請選擇 [下一步] [下一步]。
步驟 7 – 新增 Azure Blob 記憶體
Power Query 連接器預覽版目前需要您提供 Blob 記憶體帳戶。 此步驟僅存在於初始限制預覽中。 此 Blob 儲存體帳戶將充當從數據源移至 Azure 認知搜尋索引的數據的暫存空間。
我們建議提供完整的存取記憶體帳戶連接字串:
{ "connectionString" : "DefaultEndpointsProtocol=https;AccountName=<your storage account>;AccountKey=<your account key>;" }
您可以從 Azure 入口網站獲取連接字串,方法是瀏覽至 [儲存帳戶] 刀鋒視窗 > [設定] > [金鑰] (適用於經典儲存帳戶)或 [設定] > [存取金鑰] (適用於 Azure Resource Manager 儲存帳戶)。
提供數據來源名稱和連接字串之後,請選取 [下一步:新增認知技能(選擇性)]。
步驟 8 – 新增認知技能(選擇性)
AI 擴充 是索引器的延伸模組,可用來讓您的內容更容易搜尋。
您可以新增任何能提升情境價值的增益。 完成時,選擇 [下一步:自訂目標索引。
步驟 9 – 自定義目標索引
在 [索引] 頁面上,您應該會看到具有數據類型的欄位清單,以及設定索引屬性的一系列複選框。 精靈可以根據元數據和取樣源數據來產生欄位清單。
您可以透過選取屬性列頂端的複選框,來批量選取屬性。 針對應傳回給用戶端應用程式且受限於全文搜索處理的每個字段,選擇 [可擷取] 和 [可搜尋]。 您會發現整數並不是可以做全文搜尋或模糊搜尋的(數字會逐字評估,而且通常在篩選中很有用)。
如需詳細資訊,請檢閱索引屬性和語言分析器的描述。
花點時間檢閱您的選擇。 執行精靈之後,就會建立實體數據結構,而且您無法編輯這些欄位的大部分屬性,而不需要卸除和重新建立所有物件。
完成時,選取 [下一步:建立索引器。
步驟 10 – 建立索引器
最後一個步驟會建立索引器。 將索引器命名使其可以獨立於索引和數據源對象作為資源存在,並且您可以獨立於在相同精靈序列中建立的索引和數據源對象來排程和管理它。
匯入數據精靈的輸出是索引器,可編目數據源,並將您選取的數據匯入 Azure 認知搜尋上的索引。
建立索引器時,您可以選擇依排程執行索引器,並新增變更偵測。 若要新增變更偵測,請指定「高水印」欄。
完成填寫此頁面之後,請點擊 [提交]。
高水位標記變更偵測政策
此變更偵測原則依賴「高水印」欄,用以紀錄數據列上次更新的版本或時間。
需求
- 所有的插入都有指定為資料行的值。
- 所有項目的更新同時會更改該資料行的值。
- 每進行一次插入或更新操作都會增加此資料行的值。
不支援的欄位名稱
Azure 認知搜尋索引中的域名必須符合特定需求。 其中一個需求是不允許某些字元,例如 “/”。 如果資料庫中的數據行名稱不符合這些需求,索引架構偵測將不會將您的數據行辨識為有效的功能變數名稱,而且您不會看到該數據行列為索引的建議字段。 一般而言,使用 欄位對應 可以解決此問題,但入口網站不支援字段對應。
若要為數據表中具有不支援功能變數名稱的資料行編制索引內容,請在匯入數據處理的「轉換您的數據」階段期間重新命名數據行。 例如,您可以將名為 「Billing code/Zip code」 的資料行重新命名為 「zipcode」。 藉由重新命名數據行,索引架構偵測會將它辨識為有效的功能變數名稱,並將它新增為索引定義的建議。
後續步驟
本文說明如何使用Power Query連接器來提取數據。 由於此預覽功能已停止,因此也會說明如何將現有的解決方案移轉至支援的案例。
若要深入瞭解索引器,請參閱 Azure 認知搜尋中的 索引器。