在本指南中,您將找到 Azure Synapse Analytics 最常見的問題。
一般
如何使用 RBAC 角色來保護我的工作區?
Azure Synapse 引進了一些角色和範圍來指派這些角色,以簡化工作區的安全性。
Synapse RBAC 角色:
- Synapse 系統管理員
- Synapse SQL 管理員
- Synapse Spark 系統管理員
- Synapse 參與者
- Synapse 成品發行者
- Synapse 成品使用者
- Synapse 計算操作員
- Synapse 認證使用者
- Synapse 連結資料管理員
- Synapse 使用者
若要保護您的 Synapse 工作區,請將 RBAC 角色指派給下列 RBAC 範圍:
- 工作區
- Spark 集區
- 整合執行階段
- 連結服務
- 認證
此外,使用專用 SQL 集區,您擁有您認識和熱愛的所有相同安全性功能。
如何? 控制專用 SQL 集區、無伺服器 SQL 集區和無伺服器 Spark 集區?
作為起點,Azure Synapse 可與 Azure 訂用帳戶層級可用的內建成本分析和成本警示搭配使用。
專用 SQL 集區 - 您可以直接查看成本並控制成本,因為您建立並指定專用 SQL 集區的大小。 您可以進一步控制哪些使用者可以使用 Azure RBAC 角色建立或調整專用 SQL 集區。
無伺服器 SQL 集區 - 您有監視和成本管理控件,可讓您將支出限制在每日、每周和每月層級。 如需詳細資訊,請參閱無伺服器 SQL 集 區的成本管理。
無伺服器 Spark 集區 - 您可以限制誰可以使用 Synapse RBAC 角色建立 Spark 集區。
Synapse 工作區是否會在 GA 支援物件和粒度的資料夾組織?
Synapse 工作區支援使用者定義的資料夾。
我可以將多個 Power BI 工作區連結至單一 Azure Synapse 工作區嗎?
是,從 2021 年 6 月 10 日起,Synapse Studio 現在可讓您將多個 Power BI 工作區新增至單一 Azure Synapse 工作區。
Azure Synapse Link 是否正式推出 Azure Cosmos DB?
Azure Synapse Analytics 目前支援從 Azure Cosmos DB 到 Synapse Apache Spark 和無伺服器 SQL 集區的 Azure Synapse Link。 適用於 Apache Spark 的 Azure Synapse Link 是 GA。 無伺服器 SQL 集區的 Synapse Link 處於預覽狀態。 如需詳細資訊,請參閱 適用於 Azure Cosmos DB 的 Azure Synapse Link。
適用於 SQL 的 Azure Synapse Link 是否正式推出?
適用於 SQL 的 Azure Synapse Link 通常適用於 SQL Server 2022 和 Azure SQL 資料庫。 如需詳細資訊,請參閱什麼是適用於 SQL 的 Azure Synapse Analytics?
Azure Synapse 工作區是否支援 CI/CD?
可以! 所有管線成品、筆記本、SQL 腳本和 Spark 作業定義都會位於 Git 中。 所有集區定義都會以 Azure Resource Manager (ARM) 範本的形式儲存在 Git 中。 專用 SQL 集區物件(架構、數據表、檢視等等etera.)將會使用 CI/CD 支援的資料庫專案來管理。 如需詳細資訊,請參閱此 CI 和 CD 指南。
專用 SQL 集區和無伺服器集區之間的功能差異為何?
功能和需求在兩種類型的集區之間有所不同。 差異包括資料庫物件、查詢語言功能、安全性、工具、數據存取和數據格式。 如需 SQL 集區和無伺服器集區的詳細比較,請瀏覽 集區比較。 如需使用任一類型的集區時的最佳作法,請檢視 專用SQL集 區的最佳做法和 無伺服器 SQL 集區的最佳做法。
什麼是 Delta 數據表,以及為何應該使用這些數據表?
Lakehouse 是以開放式直接存取數據格式為基礎,例如 Apache Parquet。 它具有機器學習和數據科學的一流支援。 Delta 數據表是 Delta Lake 中包含的數據檢視,它支援 Apache Spark DataFrame 讀取和寫入 API 所提供的大部分選項。 Lakehouses 可協助處理數據倉儲的重大挑戰,例如數據過期、可靠性、總擁有成本,以及數據鎖定。 在 Delta 數據表上,可以使用自動壓縮和調適型查詢計劃等優化。 如需 Delta Lake 的詳細指南,請流覽 Delta Lake 指南。
什麼是自動壓縮?
自動壓縮是自動優化差異數據表的兩個互補功能之一。 寫入數據表成功之後,自動壓縮可以進一步壓縮具有最多小型檔案數目之分割區的檔案。 建議您加入加入自動壓縮,以在串流使用案例中新增延遲分鐘數是可接受的,而且當您在數據表上沒有一般 OPTIMIZE 呼叫時。 如需自動優化和自動壓縮的詳細資訊,請參閱此 自動優化指南。
管線
如何? 確保我知道使用哪些認證來執行管線?
Synapse Pipeline 中的每個活動都是使用連結服務內指定的認證來執行。
Synapse Integration 是否支援 SSIS IRS?
目前不能。
Azure Data Factory 管線和 Azure Synapse 管線如何不同?
某些差異範例支援全域參數、監視數據流的Spark作業,以及整合運行時間共用。 如需詳細資訊,請參閱此檔以取得 資料整合 - Synapse 與 ADF。
如何? 將現有的管線從 Azure Data Factory 遷移至 Azure Synapse 工作區?
此時,您必須從原始管線匯出 JSON,並將其匯入 Synapse 工作區,以手動重新建立 Azure Data Factory 管線和相關成品。
如何? 使用 Apache Spark 作業定義?
請參閱本 快速入門指南。
我可以從 ADF 管線呼叫筆記本嗎?
此使用案例有兩個選項。 其中一個選項是將管線保留在ADF中,您必須包裝在Web活動中。 如需此選項的詳細資訊,請檢視此 Web 活動指南。 另一個選項是將管線移轉至 Synapse。 如需第二個選項的詳細資訊,請參閱此 移轉程式代碼範例。
Apache Spark
適用於 Synapse 和 Apache Spark 的 Apache Spark 有何差異?
Apache Spark for Synapse 是 Apache Spark,其已新增與其他服務整合的支援(Microsoft Entra ID、AzureML 等)和其他連結庫(mssparktuils、Hummingbird)和預先調整的效能設定。
目前在 Apache Spark 上執行的任何工作負載都會在適用於 Azure Synapse 的 Apache Spark 上執行,而不會變更。
有哪些版本的 Spark 可供使用?
自 2023 年 9 月起,Azure Synapse Apache Spark 完全支援 Spark 3.3。 如需核心元件和目前支援版本的完整清單,請參閱 Apache Spark 版本支援。
Azure Synapse Spark 中是否有對等的 DButils?
是,Azure Synapse Apache Spark 提供 mssparkutils 連結庫。 如需公用程式的完整檔,請參閱 Spark 公用程式Microsoft簡介。
如何? 在 Apache Spark 中設定工作階段參數?
若要設定會話參數,請使用 %%configure magic available。 參數必須重新啟動工作階段才能生效。
如何? 在無伺服器 Spark 集區中設定叢集層級參數?
若要設定叢集層級參數,您可以提供 Spark 集區的 spark.conf 檔案。 此集區接著會接受組態檔中過去的參數。
我可以在 Azure Synapse Analytics 中執行多使用者 Spark 叢集嗎?
Azure Synapse 會針對特定使用案例提供專用的引擎。 適用於 Synapse 的 Apache Spark 是設計為作業服務,而不是叢集模型。 有兩種案例可供人們要求多使用者叢集模型。
案例 #1:許多存取叢集供 BI 之用的使用者。
完成這項工作最簡單的方式是使用 Spark 來烹飪數據,然後利用 Synapse SQL 的服務功能,將 Power BI 連線到這些數據集。
案例 #2:在單一叢集上擁有多個開發人員以節省成本。
若要滿足此案例,您應該為每個開發人員提供設定為使用少量Spark資源的無伺服器Spark集區。 由於無伺服器 Spark 集區不會花費任何成本,直到主動使用時,當有多個開發人員時,這些集區才會將成本降至最低。 集區會共用元數據 (Spark 數據表),讓它們可以輕鬆地彼此搭配使用。
如何? 包括、管理和安裝連結庫?
您可以在建立 Spark 集區、從 synapse 工作區或 Azure 入口網站 時,透過requirements.txt檔案安裝外部套件。 請參閱 在 Azure Synapse Analytics 中管理 Apache Spark 的連結庫。
Synapse Spark 上有哪些工具可供我使用?
Synapse Spark 上的 MSSparkUtils 提供各種公用程式,可增強您的體驗,並讓與其他工具和服務整合更容易。 使用文件系統、取得環境變數、將筆記本鏈結在一起,並使用最少的手動步驟來處理秘密。 如需完整檔,請流覽 Microsoft Spark 公用程式。
專用 SQL 集區
專用 SQL 集區 (SQL DW) 與 Azure Synapse 工作區中的專用 SQL 集區有何差異?
專用 SQL 集區(先前稱為 SQL DW)是 Azure 平臺即服務 (PaaS) 企業數據倉儲平臺。 您可以查詢現有的專用 SQL 集區(先前稱為 SQL DW),也可以在 Azure Synapse 工作區中建立新的專用 SQL 集區。 並非 Azure Synapse Analytics 工作區中專用 SQL 集區的所有功能都適用於獨立的專用 SQL 集區 (先前稱為 SQL DW),反之亦然。 如需詳細資訊,請參閱 Azure Synapse專用 SQL 集區 (先前稱為 SQL DW) 與 Azure Synapse Analytics 工作區中的專用 SQL 集區有何差異?。 若要從現有的專用 SQL 集區 (原為 SQL DW) 啟用 Azure Synapse 工作區功能,請參閱為專用 SQL 集區啟用 Synapse 工作區功能 (先前 SQL DW)。
專用 SQL 集區和無伺服器集區之間的功能差異為何?
您可以在 Synapse SQL 中找到 T-SQL 功能差異的完整清單。
現在 Azure Synapse 已正式運作,我要如何將先前獨立的專用 SQL 集區移至 Azure Synapse?
不需要「移動」或「移轉」。 您可以選擇在現有的集區上啟用新的工作區功能。 如果您這麼做,則不會有任何重大變更,而是能夠使用 Synapse Studio、Spark 和無伺服器 SQL 集區等新功能。 並非 Azure Synapse Analytics 工作區中專用 SQL 集區的所有功能都適用於專用的 SQL 集區 (先前稱為 SQL DW),反之亦然。 若要從現有的專用 SQL 集區 (原為 SQL DW) 啟用工作區功能,請參閱為專用 SQL 集區啟用 Synapse 工作區功能 (先前 SQL DW)。
現在專用 SQL 集區的預設部署為何?
根據預設,所有新的專用SQL集區都會部署到工作區;不過,如果您需要,您仍然可以在獨立尺寸中建立專用 SQL 集區(先前稱為 SQL DW)。