從SQL Server 2019(15.x)開始,SQL Server大數據群集允許您部署在Kubernetes上運行的SQL Server,Spark和HDFS容器的可伸縮群集。這些組件並排運行,使您能夠從Transact-SQL或Spark讀取,寫入和處理大數據,從而使您可以輕松地將高價值的關系數據與大容量的大數據結合並進行分析。
有關最新版本的新功能和已知問題的更多信息,請參見發行說明。
情境
SQL Server大數據群集為您與大數據進行交互提供了靈活性。您可以查詢外部數據源,將大數據存儲在SQL Server管理的HDFS中,或通過群集查詢來自多個外部數據源的數據。然后,您可以將數據用於AI,機器學習和其他分析任務。以下各節提供有關這些方案的更多信息。
數據虛擬化
通過利用SQL Server PolyBase,SQL Server大數據群集可以查詢外部數據源,而無需移動或復制數據。SQL Server 2019(15.x)向數據源引入了新的連接器。
數據湖
SQL Server大數據群集包括一個可伸縮的HDFS 存儲池。這可用於存儲可能從多個外部源提取的大數據。一旦將大數據存儲在大數據集群的HDFS中,您就可以分析和查詢數據並將其與關系數據結合起來。
橫向擴展數據集市
SQL Server大數據群集提供橫向擴展計算和存儲,以提高分析任何數據的性能。可以攝取來自各種來源的數據,並將其分布在整個數據池節點中作為緩存進行進一步分析。
集成的AI和機器學習
SQL Server大數據群集可對HDFS存儲池和數據池中存儲的數據啟用AI和機器學習任務。您可以使用R,Python,Scala或Java在SQL Server中使用Spark以及內置的AI工具。
管理與監控
通過命令行工具,API,門戶和動態管理視圖的組合來提供管理和監視。
您可以使用Azure Data Studio在大數據群集上執行各種任務。新的SQL Server 2019 Extension啟用了此功能。該擴展提供:
- 內置的片段,用於常見的管理任務。
- 能夠瀏覽HDFS,上傳文件,預覽文件和創建目錄。
- 能夠創建,打開和運行Jupyter兼容的筆記本。
- 數據虛擬化向導可簡化外部數據源的創建。
建築
SQL Server大數據集群是由Kubernetes精心策划的Linux容器集群。
Kubernetes概念
Kubernetes是一個開源的容器編排器,可以根據需要擴展容器的部署。下表定義了一些重要的Kubernetes術語:
在SQL Server大數據群集中,Kubernetes負責SQL Server大數據群集的狀態。Kubernetes構建和配置集群節點,將Pod分配給節點,並監視集群的運行狀況。
大數據集群架構
下圖顯示了SQL Server大數據群集的組件。
控制者
控制器為群集提供管理和安全性。它包含控制服務,配置存儲和其他群集級別的服務,例如Kibana,Grafana和Elastic Search。
計算池
計算池為集群提供計算資源。它包含在Linux Pod上運行SQL Server的節點。計算池中的Pod分為用於特定處理任務的SQL Compute實例。
資料池
數據池用於數據持久性和緩存。數據池由一個或多個在Linux上運行SQL Server的Pod組成。它用於從SQL查詢或Spark作業中提取數據。SQL Server大數據群集數據集市保留在數據池中。
儲存池
存儲池由存儲池Pod組成,這些Pod由Linux,Spark和HDFS上的SQL Server組成。SQL Server大數據群集中的所有存儲節點都是HDFS群集的成員。