共用方式為


Azure Synapse Analytics 中的無伺服器 SQL 集區

每個 Azure Synapse Analytics 工作區皆隨附無伺服器 SQL 集區,供您用來查詢 Azure Data Lake (ParquetDelta Lake分隔符號文字格式)、Azure Cosmos DB 或 Dataverse 中的資料。

無伺服器 SQL 集區是針對資料湖資料進行的查詢服務。 其可讓您透過下列功能存取您的資料:

  • 提供可供查詢資料的熟悉 T-SQL 語法,讓您不必將資料複製或載入至特製化的存放區。 若要深入了解,請參閱 T-SQL 支援一節。
  • 透過 T-SQL 介面所實現的整合式連線能力,可提供各式各樣的商業智慧和臨機操作查詢工具,包括最熱門的驅動程式。 若要深入了解,請參閱用戶端工具一節。 您可以經由 Synapse 無伺服器 SQL 集區簡介影片深入了解。

無伺服器 SQL 集區是一種分散式資料處理系統,針對大規模資料和計算函式而建置的。 視工作負載而定,無伺服器 SQL 集區可讓您在幾秒到幾分鐘內就完成巨量資料的分析。 由於內建了查詢執行容錯功能,即使是涉及大型資料集的長時間執行查詢,系統也可提供高度的可靠性和成功率。

無伺服器 SQL 集合沒有伺服器,因此不必設置基礎結構,也不用維護叢集。 每個 Azure Synapse 工作區內都會提供用於此服務的預設端點,因此您可以在工作區建立好之後就立即開始查詢資料。

所保留的資源不會收費。 您只需就執行查詢時所處理的資料來支付費用,因此此模型是真正的按使用次數付費模型。

如果您在資料管線中使用 Apache Spark for Azure Synapse 來進行資料準備、清理或擴充,則可以直接從無伺服器 SQL 集區查詢您在程序中所建立的外部 Spark 資料表。 使用 Private Link 則可將無伺服器 SQL 集區端點帶入受控工作區虛擬網路中。

無伺服器 SQL 集區優點

如果您需要探索資料湖中的資料、取得資料的深入解析,或將現有的資料轉換管線最佳化,則可使用無伺服器 SQL 集區來獲益。 這適用於下列情節:

  • 基本探索和探勘 - 快速推論資料湖中各種格式 (Parquet、CSV、JSON) 的資料,以便規劃如何從中擷取深入解析。
  • 邏輯資料倉儲 - 在原始或不同資料之上提供關聯式抽取,而不需要重新放置和轉換資料,讓您隨時獲得資料的最新觀點。 深入瞭解建立邏輯資料倉儲
  • 資料轉換 - 簡單、可擴縮且高效能的方法,讓您可以使用 T-SQL 來轉換資料湖中的資料,以便能夠將資料饋送至 BI 和其他工具,或載入到關聯式資料存放區 (Synapse SQL 資料庫、Azure SQL Database 等)。

不同的專業角色皆可從無伺服器 SQL 集區受益:

如何開始使用無伺服器 SQL 集區

每個 Azure Synapse 工作區內都會提供無伺服器 SQL 集區端點。 您可以使用熟悉的工具立即建立工作區並開始查詢資料。

務必應用最佳做法 (部分機器翻譯),以取得最佳效能。

用戶端工具

無伺服器 SQL 集區可讓現有的 SQL 臨機操作查詢和商業智慧工具利用資料湖。 其提供了熟悉的 T-SQL 語法,因此只要是能夠建立 TDS 連線至 SQL 供應項目的工具,都可以連線並查詢 Synapse SQL。 您可以與 Azure Data Studio 連線並執行臨機操作查詢,也可以與 Power BI 連線以在幾分鐘內取得深入解析。

T-SQL 支援

無伺服器 SQL 集區提供 T-SQL 查詢介面區,其會在某些方面稍微強化/擴充,以配合半結構化和非結構化資料的查詢體驗。 此外,由於無伺服器 SQL 集區的設計,因此並不支援 T-SQL 語言的某些方面,例如,目前就不支援 DML 功能。

  • 您可以使用熟悉的概念來組織工作負載:
  • 資料庫 - 無伺服器 SQL 集區端點可以有多個資料庫。
  • 結構描述 - 資料庫內可存在一或多個物件擁有權群組 (稱為結構描述)。
  • 檢視、預存程序、內嵌資料表值函式
  • 外部資源 - 資料來源、檔案格式和資料表

您可以使用下列項目來強制執行安全性:

  • 登入和使用者
  • 用來控制儲存體帳戶存取權的認證
  • 按照物件層級來授與、拒絕及撤銷權限
  • Microsoft Entra 整合

支援的 T-SQL:

  • 支援完整的 SELECT 介面區,包括大部分的 SQL 函式
  • CETAS - CREATE EXTERNAL TABLE AS SELECT
  • 僅與檢視和安全性相關的 DDL 陳述式

無伺服器 SQL 集區不具有本機儲存體,只有中繼資料物件會儲存在資料庫中。 因此,不支援與下列概念有關的 T-SQL:

  • 資料表
  • 觸發程序
  • 具體化檢視
  • 與檢視和安全性不相關的 DDL 陳述式
  • DML 陳述式

注意

無伺服器 SQL 集區查詢有逾時。 如需進一步瞭解可能會影響工作負載的查詢逾時,請參閱無伺服器 SQL 集區系統限制。 您目前無法變更逾時。

擴充

為了讓您能夠順暢地查詢位於資料湖檔案中的資料,無伺服器 SQL 集區藉由新增下列功能來擴充現有的 OPENROWSET 函式:

查詢多個檔案或資料夾

查詢 PARQUET 檔案格式

查詢 DELTA 格式

各種分隔符號文字格式 (使用自訂欄位結束字元、資料列結束字元、逸出字元)

Azure Cosmos DB 分析存放區

讀取選擇的資料行子集

結構描述推斷

filename 函式

filepath 函式

使用複雜類型和巢狀或重複的資料結構

安全性

無伺服器 SQL 集區有機制可以保護資料的存取。

Microsoft Entra 整合和多重要素驗證

無伺服器 SQL 集區可讓您透過 Microsoft Entra 整合,集中管理資料庫使用者和其他 Microsoft 服務的身分識別。 這項功能簡化了權限管理並增強安全性。 Microsoft Entra ID 支援多重要素驗證 (MFA),以提高資料和應用程式安全性,同時支援單一登入流程。

驗證

無伺服器 SQL 集區驗證是指使用者如何在連線到端點時證明其身分識別。 支援兩種類型的驗證:

  • SQL 驗證

    此驗證方法會使用使用者名稱和密碼。

  • Microsoft Entra 驗證

    此驗證方法會使用由 Microsoft Entra ID 管理的身分識別。 針對 Microsoft Entra 使用者,可啟用多重要素驗證。 盡可能使用 Active Directory 驗證 (整合式安全性)。

授權

授權是指使用者可以在無伺服器 SQL 集區資料庫內執行的動作,這是由使用者帳戶的資料庫角色成員資格和物件層級權限所控制。

如果使用 SQL 驗證,則 SQL 使用者只會存在於無伺服器 SQL 集區中,且權限會限縮在無伺服器 SQL 集區中的物件。 您無法直接對 SQL 使用者授與其他服務 (例如 Azure 儲存體) 中安全性實體物件的存取權,因為其只存在於無伺服器 SQL 集區的範圍內。 SQL 使用者必須使用其中一個支援的授權類型才能存取檔案。

如果使用 Microsoft Entra 驗證,則使用者可以登入無伺服器 SQL 集區及其他服務 (例如 Azure 儲存體),而且您可以對 Microsoft Entra 使用者授與權限。

儲存體帳戶的存取權

登入無伺服器 SQL 集區服務的使用者必須獲得授權,才能存取及查詢 Azure 儲存體中的檔案。 無伺服器 SQL 集區支援下列授權類型:

  • 共用存取簽章 (SAS) (部分機器翻譯) 可提供您儲存體帳戶中資源的委派存取權。 透過 SAS,您可以授權用戶端存取儲存體帳戶中資源,而不需共用帳戶金鑰。 SAS 可讓您更細微地控制您授與具有 SAS 之用戶端的存取類型:有效間隔、授與的權限、可接受的 IP 位址範圍、可接受的通訊協定 (https/http)。

  • 使用者身分識別 (部分機器翻譯) (也稱為「傳遞」) 是一種授權類型,系統會使用已登入無伺服器 SQL 集區的 Microsoft Entra 使用者身分識別來授權資料的存取。 存取資料之前,Azure 儲存體管理員必須授與 Microsoft Entra 使用者存取資料的權限。 此授權類型會使用已登入無伺服器 SQL 集區的 Microsoft Entra 使用者,因此不支援 SQL 使用者類型。

  • 工作區身分識別 (部分機器翻譯) 是一種授權類型,會使用 Synapse 工作區的身分識別來授與資料的存取權。 存取資料之前,Azure 儲存體管理員必須將權限授與工作區身分識別,才能存取資料。

存取 Azure Cosmos DB

您需要使用 Azure Cosmos DB 帳戶唯讀金鑰來建立伺服器層級或資料庫範圍的認證,以存取 Azure Cosmos DB 分析存放區

下一步

您可以在下列文章中找到有關端點連線和查詢檔案的其他資訊: