共用方式為


從存放集區虛擬化 CSV 資料(巨量資料叢集)

Important

MICROSOFT SQL Server 2019 巨量數據叢集已淘汰。 SQL Server 2019 巨量數據叢集的支援已於 2025 年 2 月 28 日結束。 如需詳細資訊,請參閱 Microsoft SQL Server 平臺上的公告部落格文章和巨量數據選項。

SQL Server 巨量數據叢集可以從 HDFS 中的 CSV 檔案虛擬化數據。 此程式可讓數據保留在原始位置,但可以從 SQL Server 實例查詢,就像任何其他數據表一樣。 這項功能使用PolyBase連接器,並將ETL程式的需求降到最低。 如需數據虛擬化的詳細資訊,請參閱 使用PolyBase進行數據虛擬化簡介

Prerequisites

選取或上傳用於數據虛擬化的 CSV 檔案

在 Azure Data Studio (ADS) 中,連線到巨量數據叢集的 SQL Server 主要實例 。 聯機之後,展開物件總管中的 HDFS 元素,以找出您想要虛擬化數據的 CSV 檔案。

針對本教學課程的目的,請建立名為 Data 的新目錄。

  1. 以滑鼠右鍵點擊 HDFS 根目錄以開啟內容選單。
  2. 選取 [新增目錄]。
  3. 將新目錄命名為 [數據]。

上傳範例數據。 如需簡單的逐步解說,您可以使用範例 csv 數據檔。 本文使用美國 交通部的航空公司延誤原因數據。 下載原始數據,並將數據擷取到您的電腦。 將檔案命名 為airline_delay_causes.csv

若要在擷取範例檔案之後上傳:

  1. 在 Azure Data Studio 中,以 滑鼠右鍵點擊 您建立的新目錄。
  2. 選取 [上傳檔案]。

HDFS 中的範例 csv 檔案

Azure Data Studio 會將檔案上傳至巨量數據叢集上的 HDFS。

在目標資料庫中建立存放集區外部數據源

根據預設,記憶體集區外部數據源不會在巨量數據叢集中的資料庫中建立。 在您可以建立外部數據表之前,請使用下列 Transact-SQL 查詢,在目標資料庫中建立預設 的 SqlStoragePool 外部數據源。 請務必先將查詢的環境變更為目標資料庫。

-- Create the default storage pool source for SQL Big Data Cluster
IF NOT EXISTS(SELECT * FROM sys.external_data_sources WHERE name = 'SqlStoragePool')
    CREATE EXTERNAL DATA SOURCE SqlStoragePool
    WITH (LOCATION = 'sqlhdfs://controller-svc/default');

建立外部資料表

在 ADS 中,右鍵點擊 CSV 檔案,然後從內容功能表中選取 [ 從 CSV 檔案建立外部表格 ]。 如果目錄下的檔案遵循相同的架構,您也可以從 HDFS 中目錄的 CSV 檔案建立外部數據表。 這可讓目錄層級的數據虛擬化,而不需要處理個別檔案,並透過合併的數據取得聯結的結果集。 Azure Data Studio 會引導您完成建立外部數據表的步驟。

指定資料庫、數據源、數據表名稱、架構,以及數據表外部檔案格式的名稱。

Select Next.

Preview Data

Azure Data Studio 提供匯入數據的預覽。

顯示 [從 CSV 建立外部數據表] 視窗的螢幕快照,其中含有匯入數據的預覽。

檢視預覽之後,請選取 [ 下一步 ] 繼續

Modify Columns

在下一個視窗中,您可以修改您想要建立的外部資料表數據行。 您可以變更數據行名稱、變更數據類型,並允許可為 Null 的數據列。

[從 CSV 建立外部數據表] 視窗的螢幕快照,其中顯示步驟 3 修改數據行。

確認目的地數據行之後,請選取 [ 下一步]。

Summary

此步驟提供您選擇的摘要。 它提供 SQL Server 名稱、資料庫名稱、資料表名稱、數據表架構和外部數據表資訊。 在此步驟中,您可以選擇產生腳本或建立數據表。 產生腳本 會在 T-SQL 中建立腳本,以建立外部數據源。 建立數據表 會建立外部數據源。

Summary screen

如果您選取 [建立數據表],SQL Server 會在目的地資料庫中建立外部數據表。

如果您選取 [產生腳本],Azure Data Studio 會建立 T-SQL 查詢來建立外部數據表。

建立數據表之後,您現在可以直接從 SQL Server 實例使用 T-SQL 進行查詢。

Next steps

如需 SQL Server 巨量數據叢集和相關案例的詳細資訊,請參閱 SQL Server 巨量數據叢集簡介