SQL Server 大数据群集简介

适用范围:SQL Server 2019 (15.x)

重要

Microsoft SQL Server 2019 大数据群集附加产品将停用。 对 SQL Server 2019 大数据群集的支持将于 2025 年 2 月 28 日结束。 具有软件保障的 SQL Server 2019 的所有现有用户都将在平台上获得完全支持,在此之前,该软件将继续通过 SQL Server 累积更新进行维护。 有关详细信息,请参阅公告博客文章Microsoft SQL Server 平台上的大数据选项

自 SQL Server 2019 (15.x) 起,使用 SQL Server 大数据群集,可以部署运行在 Kubernetes 上的 SQL Server、Spark 和 HDFS 容器的可缩放群集。 这些组件并行运行以确保可读取、写入和处理 Transact-SQL 或 Spark 中的大数据,这样你就可以借助大量大数据轻松合并并分析高价值关系数据。

开始使用

大数据群集体系结构

下图显示了 SQL Server 大数据群集的组件:

大数据群集体系结构概述的关系图。

控制器

控制器为群集提供管理和安全性。 它包含控制服务、配置存储和其他群集级服务,例如 Kibana、Grafana 和 Elastic Search。

计算池

计算池为群集提供计算资源。 它包含在 Linux 上的 SQL Server Pod 上运行的节点。 计算池中的 Pod 分为用于特定处理任务的 SQL Compute实例。

数据池

数据池用于数据暂留。 数据池由一个或多个运行 Linux 上的 SQL Server 的 Pod 组成。 它用于从 SQL 查询或 Spark 作业中提取数据。

存储池

存储池由 Linux 上的 SQL Server、Spark 和 HDFS 组成的存储池 Pod 组成。 SQL Server 大数据群集中的所有存储节点都是 HDFS 群集的成员。

提示

如需深入了解大数据群集体系结构和安装,请参阅研讨会:Microsoft SQL Server 大数据群集体系结构

应用池

应用程序部署通过提供用于创建、管理和运行应用程序的界面,允许在 SQL Server 大数据群集上部署应用程序。

方案和功能

可使用 SQL Server 大数据群集灵活处理大数据。 可查询外部数据源,存储通过 SQL Server 管理的 HDFS 中的大数据,或通过群集查询来自多个外部数据源的数据。 然后,可以将数据用于 AI,机器学习和其他分析任务。

使用 SQL Server 大数据群集可执行以下操作:

  • 部署 SQL Server、Spark 和在 Kubernetes 上运行的 HDFS 容器的可缩放群集。
  • 在 Transact-SQL 或 Spark 中读取、写入和处理大数据。
  • 通过大容量大数据轻松合并和分析高价值关系数据。
  • 查询外部数据源。
  • 在由 SQL Server 管理的 HDFS 中存储大数据。
  • 通过群集查询多个外部数据源的数据。
  • 将数据用于 AI、机器学习和其他分析任务。
  • 在大数据群集中部署和运行应用程序
  • 使用 PolyBase 虚拟化数据。 使用外部表从外部 SQL Server、Oracle、Teradata、MongoDB 和通用 ODBC 数据源查询数据。
  • 使用 Always On 可用性组技术为 SQL Server 主实例和所有数据库提供高可用性。

下列各部分提供了有关这些方案的详细信息。

数据虚拟化

通过利用 PolyBase,SQL Server 大数据群集可以查询外部数据源,而无需移动或复制数据。 SQL Server 2019 (15.x) 向数据源引入了新的连接器,有关详细信息,请参阅 PolyBase 2019 中的新增功能

数据虚拟化的关系图。

Data Lake

SQL Server 大数据群集包括可缩放的 HDFS 存储池 。 这可用于存储可能来自多个外部源的大数据。 大数据存储在大数据群集中的 HDFS 中后,便可分析和查询数据并将其与关系数据相结合。

数据湖的关系图。

集成的 AI 和机器学习

SQL Server 大数据群集可对 HDFS 存储池和数据池中的数据启用 AI 和机器学习任务。 使用 R、Python、Scala 或者 Java,可在 SQL Server 中使用 Spark 以及内置的 AI 工具。

AI 和 ML 的关系图。

管理和监视

通过命令行工具、API、门户和动态管理视图的组合提供管理和监视。

可以使用 Azure Data Studio 在大数据群集上执行各种任务:

  • 用于常见管理任务的内置片段。
  • 浏览 HDFS、上传文件、预览文件和创建目录的能力。
  • 创建、打开和运行与 Jupyter 兼容的笔记本的能力。
  • 用于简化外部数据源的创建的数据虚拟化向导(由数据虚拟化扩展启用 )。

Kubernetes 的概念

SQL Server 大数据群集是由 Kubernetes 编排的 Linux 容器群集。

Kubernetes 是一个开放源代码容器业务流程协调程序,可以根据需要缩放容器部署。 下表定义了一些重要的 Kubernetes 术语:

术语 描述
Cluster Kubernetes 群集是一组称为节点的计算机。 一个节点控制群集并被指定为主节点;其余节点是工作器节点。 Kubernetes 主节点负责在工作器节点之间分配工作,并负责监视群集的运行状况。
Node 节点运行容器化应用程序。 它可以是物理计算机或虚拟机。 Kubernetes 群集可以混合包含物理计算机节点和虚拟机节点。
Pod Pod 是 Kubernetes 的原子部署单元。 Pod 是运行应用程序所需的一个或多个容器和相关资源的逻辑组。 一个 Pod 只能在一个节点上运行;一个节点可以运行一个或多个 Pod。 Kubernetes 主节点自动将 Pod 分配给群集中的其余节点。

在 SQL Server 大数据群集中,Kubernetes 负责管理群集的状态。 Kubernetes 生成和配置群集节点、将 Pod 分配给节点,并监视群集的运行状况。