Azure SQL Edge 支持的功能

重要

Azure SQL Edge 不再支持 ARM64 平台。

Azure SQL Edge 构建在最新版本的 SQL 数据库引擎上。 除了当前在 Linux 上的 SQL Server 2022(或 Windows 上的 SQL Server)中不支持或尚未提供的某些功能外,它还支持 Linux 上的 SQL Server 2022 中支持的一部分功能。

有关 Linux 上的 SQL Server 中支持的功能的完整列表,请参阅 Linux 上的 SQL Server 2022 的版本和支持功能。 有关 Windows 上 SQL Server 的版本和支持的功能,请参阅 SQL Server 2022 (16.x) 的版本和支持的功能

Azure SQL Edge 版本

Azure SQL Edge 有两个不同的版本或软件计划。 这些版本具有相同的功能集,并且仅在使用权限和它们在主机系统上可以访问的内存量和内核数方面存在差异。

计划 说明
Azure SQL Edge 开发人员 仅用于开发。 每个 Azure SQL Edge 开发人员版容器最多只能有 4 个核心和 32 GB RAM。
Azure SQL Edge 用于生产。 每个 Azure SQL Edge 容器最多只能有 8 个核心和 64 GB RAM。

操作系统

Azure SQL Edge 容器基于 Ubuntu 18.04,因此只能在运行 Ubuntu 18.04 LTS(建议)或 Ubuntu 20.04 LTS 的 Docker 主机上运行。 Azure SQL Edge 容器可以在其他操作系统主机上运行,例如,它可以在 Linux 的其他分发版上或 Windows 上运行(使用 Docker CE 或 Docker EE),但 Azure 不建议这样做,因为此配置可能没有经过广泛测试。

在 Windows 上运行 Azure SQL Edge 的建议配置是在 Windows 主机上配置 Ubuntu VM,然后在 Linux VM 内运行 Azure SQL Edge。

为 Azure SQL Edge 推荐和支持的文件系统为 EXT4 和 XFS。 如果使用永久性卷来备份 Azure SQL Edge 数据库存储,则基础主机文件系统必须是 EXT4 和 XFS。

硬件支持

Azure SQL Edge 需要 x86 64 位处理器,并且主机上至少有 1 个 CPU 核心和 1 GB RAM。 虽然 Azure SQL Edge 的启动内存占用接近 450 MB,但其他在边缘设备上运行的 IoT Edge 模块或进程需要更多内存。 Azure SQL Edge 的实际内存和 CPU 要求取决于工作负荷的复杂性和正在处理的数据量。 为解决方案选择硬件时,Azure 建议运行广泛的性能测试,以确保满足解决方案所需的性能特征。

Azure SQL Edge 组件

Azure SQL Edge 仅支持数据库引擎。 它不支持 Windows 或 Linux 上的 SQL Server 2022 提供的其他组件。 具体而言,Azure SQL Edge 不支持 SQL Server 组件,如 Analysis Services、Reporting Services、Integration Services、Master Data Services、机器学习服务(数据库内)和 Machine Learning Server(独立)。

支持的功能

除了支持 Linux 上 SQL Server 的一部分功能以外,Azure SQL Edge 还支持以下新功能:

  • SQL 流式处理基于支持 Azure 流分析的同一个引擎,用于在 Azure SQL Edge 中提供实时数据流式处理功能。
  • 用于时序数据分析的 T-SQL 函数调用 DATE_BUCKET
  • 通过 ONNX 运行时的机器学习功能包含在 SQL 数据库引擎中。

不支持的功能

以下列表包含 Azure SQL Edge 当前不支持的 Linux 上的 SQL Server 2022 功能。

区域 不支持的功能或服务
数据库设计 内存中 OLTP 以及相关的 DDL 命令、Transact-SQL 函数、目录视图和动态管理视图
HierarchyID 数据类型以及相关的 DDL 命令、Transact-SQL 函数、目录视图和动态管理视图
空间数据类型以及相关的 DDL 命令、Transact-SQL 函数、目录视图和动态管理视图
Stretch DB 以及相关的 DDL 命令、Transact-SQL 函数、目录视图和动态管理视图
全文检索和搜索以及相关的 DDL 命令、Transact-SQL 函数、目录视图和动态管理视图
FileTable、FILESTREAM 以及相关的 DDL 命令、Transact-SQL 函数、目录视图和动态管理视图
数据库引擎 复制。 可以将 Azure SQL Edge 配置为复制拓扑的推送订阅服务器。
PolyBase。 可以将 Azure SQL Edge 配置为 PolyBase 中外部表的目标。
通过 Java 和 Spark 实现语言扩展性
Active Directory 集成
数据库自动收缩。 可以使用 ALTER DATABASE <database_name> SET AUTO_SHRINK ON 命令设置数据库的自动收缩属性,但是该更改不起作用。 自动收缩任务不会针对数据库运行。 用户仍可使用 DBCC 命令收缩数据库文件。
数据库快照
支持永久性内存
Microsoft 分布式事务处理协调器
Resource Governor 和 IO 资源调控
缓冲池扩展
具有第三方连接的分布式查询
链接的服务器
系统扩展存储过程(如 xp_cmdshell)。
CLR 程序集以及相关的 DDL 命令、Transact-SQL 函数、目录视图和动态管理视图
CLR 相关的 T-SQL 函数,例如 ASSEMBLYPROPERTYFORMATPARSETRY_PARSE
CLR 相关的日期和时间目录视图、函数和查询子句
缓冲池扩展
数据库邮件
Service Broker
基于策略的管理
管理数据仓库
包含的数据库
S3 兼容的对象存储集成
Microsoft Entra 身份验证
缓冲池并行扫描
具有直接写入功能的混合缓冲池
对全局分配映射 (GAM) 页面和共享全局分配映射 (SGAM) 页面的并发更新
集成加速和卸载 (Intel QAT)
智能查询处理:

- 参数敏感计划优化
- 并行度 (DOP) 反馈
- 优化了计划强制
- 查询存储提示
Language:

- SELECT ... WINDOW 子句
- IS [NOT] DISTINCT FROM
- JSON 函数增强功能(ISJSON()JSON_PATH_EXISTS()JSON_OBJECT()JSON_ARRAY()
- LTRIM() / RTRIM() 增强功能
- DATETRUNC()
- 可恢复添加表约束操作
SQL Server 代理 子系统:CmdExec、PowerShell、队列读取器、SSIS、SSAS 和 SSRS
警报
托管备份
高可用性 AlwaysOn 可用性组
基本可用性组
AlwaysOn 故障转移群集实例
数据库镜像
热插拔内存和 CPU
托管实例链接
包含的可用性组
安全性 可扩展的密钥管理
Active Directory 集成
支持安全 Enclave
Microsoft Defender for Cloud 集成
Microsoft Purview 集成
账本
服务 SQL Server Browser
通过 R 和 Python 进行机器学习
StreamInsight
Analysis Services
Reporting Services
数据库引擎服务
Master Data Services
分布式重播
可管理性 SQL Server 实用工具控制点

后续步骤