关于 adf-ml-analytics
为使用 Azure Data Factory 的数据与机器学习团队整理 ML 分析工作流模式,涵盖数据归档、特征处理和模型推理,并注明相关服务的弃用与迁移事项。
主要功能
- 01Azure ML 批处理与在线推理模式
- 02SQL 数据归档至 Parquet
- 03Azure AI Services 与 OpenAI 批处理
- 04Databricks 训练和批量评分
- 05Spark 数据流特征工程
- 06服务弃用与迁移说明
适用场景
- 01将临时 SQL 数据归档后用于分析
- 02通过 Azure ML 批处理端点运行推理
- 03编排 Databricks 模型训练与评分
- 04使用 Azure OpenAI 批处理进行文本分类
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ josiahsiegel/ claude-plugin-marketplace --skill adf-ml-analytics安装后在 Claude Code 中输入/adf-ml-analytics确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
references/ai-services-and-openai-patterns.mdazure-ml-patterns.mddatabricks-ml-and-e2e-patterns.mdsql-archival-patterns.md详细介绍
Azure Data Factory 机器学习与分析模式
概述
Azure Data Factory 通过集成 Azure Machine Learning、Azure AI Services、Databricks ML 和 Azure SQL Database 来编排 ML 工作流。本技能介绍了从临时数据源(如 Azure SQL Database)提取数据、将数据归档到 Azure Storage 以供长期分析,以及利用 ML 服务进行评分和分析的模式。
弃用通知与平台变更(截至 2026 年 3 月)
Azure AI Foundry -> Microsoft Foundry(2025 年 11 月)
- 在 2025 年 11 月的 Ignite 大会上,Microsoft 将 Azure AI Foundry 更名为 Microsoft Foundry。
- Microsoft Foundry 是统一的 AI 平台:Agent、工作流、模型和工具都由同一个资源提供程序提供。
- ADF 被定位为 Microsoft Foundry 中的数据编排层,负责数据引入、转换、特征准备,以及由模型和 Agent 进行下游使用。
- 新的 AI 功能主要在 Fabric Data Factory 中推出(Copilot、自然语言管道生成)。传统 ADF 仍受全面支持,但新增功能较少。
Azure ML SDK v1 - 支持将于 2026 年 6 月结束
- 弃用日期:2025 年 3 月 31 日。支持结束日期:2026 年 6 月 30 日(还有 3 个月)。
- 影响:
AzureMLExecutePipeline活动使用通过 SDK v1 发布的管道。这些管道将在 2026 年 6 月之后停止运行。 - 相关 SDK 也将停用:
azureml-train-core、azureml-pipeline、azureml-pipeline-core、azureml-pipeline-steps。 - **必须迁移:**使用 Azure ML SDK v2 批处理终结点,通过 WebActivity 调用(参见
references/azure-ml-patterns.md)。 - 所有新项目都必须使用批处理终结点,而不是已发布的管道。
Azure AI Inference SDK - 将于 2026 年 5 月 30 日停用
azure-ai-inferenceSDK(Python/JS/.NET)已弃用。- 请迁移到 OpenAI SDK,使用
OpenAI/v1API。该 API 同时适用于 Azure OpenAI 和 Microsoft Foundry Models。 - 任何通过 inference SDK 调用 Azure AI 模型终结点的代码都会受到影响。
Azure SQL Edge - 已于 2025 年 9 月 30 日停用
- Azure SQL Edge(包含适用于边缘设备的 ONNX PREDICT)已不再提供。
- 迁移方案:在边缘 SQL 场景中使用启用了 Azure Arc 的 Azure SQL Managed Instance。
适用于 Power BI 数据流的 Cognitive Services - 已停用
- 停用日期:2025 年 9 月 15 日。Power BI 数据流中的 AI Insights 不再可用。
- 替代方案:使用 ADF WebActivity 直接调用 Azure AI Services 终结点。
Azure Cognitive Services - 已更名
- “Azure Cognitive Services” -> “Azure AI Services” -> 现已成为 Microsoft Foundry 的一部分。
- API 终结点保持不变;品牌名称已变更。
ADF 中的 Apache Airflow - 已弃用
- 2025 年初起不再面向新客户提供。现有部署仍可正常运行。
- 迁移方案:使用 Fabric Data Factory、原生 ADF 管道或独立 Airflow 部署。
集成模式速查
| 模式 | 活动类型 | 摘要 | 详情 |
|---|---|---|---|
| Azure ML(旧版 SDK v1) | AzureMLExecutePipeline | 通过关联的 SDK v1 服务执行已发布的 ML 管道。支持将于 2026 年 6 月结束——请迁移到批处理终结点。 | 参见 references/azure-ml-patterns.md |
| Azure ML 批处理终结点(SDK v2) | WebActivity | 批量推理的推荐方式。通过 REST 向批处理终结点提交作业,并使用 Until 循环轮询作业完成状态。 | 参见 references/azure-ml-patterns.md |
| Azure ML 在线终结点 | WebActivity | 通过托管的在线终结点和 MSI 身份验证,对单条记录或小批量数据进行实时评分。 | 参见 references/azure-ml-patterns.md |
| T-SQL PREDICT | SqlServerStoredProcedure | 在数据库中使用 ONNX 模型进行评分。适用于 SQL Server 2017+、SQL MI 和 Synapse——不适用于 Azure SQL Database。 | 参见 references/sql-archival-patterns.md |
| sp_execute_external_script | SqlServerStoredProcedure | 在启用了 ML Services 的 SQL Managed Instance 中运行 Python/R 脚本。适用于中小型数据集。 | 参见 references/sql-archival-patterns.md |
| SQL 到存储的归档 | Copy (ForEach) | 将临时 SQL 数据归档为 Blob/ADLS Gen2 中的 Parquet 文件。包含完整快照和增量水位线模式。 | 参见 references/sql-archival-patterns.md |
| Azure AI Services | WebActivity | 通过 REST 调用预构建 AI 功能(情感分析、异常检测、视觉)。使用 Key Vault 管理 API 密钥。使用 ForEach 进行批量评分。 | 参见 references/ai-services-and-openai-patterns.md |
| Azure OpenAI Batch API | WebActivity | 以低 50% 的成本进行 LLM 评分。上传 JSONL、创建批处理作业并轮询作业完成状态。适用于文本分类和信息增强。 | 参见 references/ai-services-and-openai-patterns.md |
| Databricks ML | DatabricksJob | 通过 Databricks Jobs 编排 ML 训练和批量评分,并使用 MLflow 跟踪。提取 SQL 数据、进行评分并写回。 | 参见 references/databricks-ml-and-e2e-patterns.md |
| Data Flow 功能 | ExecuteDataFlow | 在 ML 评分之前,使用基于 Spark 的特征工程,包括窗口函数、派生列、透视和筛选。 | 参见 references/databricks-ml-and-e2e-patterns.md |
| 端到端 ML 管道 | ExecutePipeline + Switch | 模块化管道:使用 Databricks 子管道执行归档 -> 特征工程 -> 训练或评分(Switch 活动)。 | 参见 references/databricks-ml-and-e2e-patterns.md |
最佳实践
数据架构
- 先归档,后分析 - 运行 ML 之前,先将临时 SQL 数据复制到存储中并保存为 Parquet
- 使用 Parquet 格式 - 列式格式最适合 ML 工作负载(压缩、列裁剪)
- 按日期分区存储 - 对版本化归档使用
snapshot_date=YYYY-MM-DD分区 - 分隔容器 - 为原始归档、特征、模型和评分结果使用不同的容器
ML 编排
- 对复杂 ML(训练、MLflow、分布式计算)使用 Databricks Job 活动
- 对托管 ML 推理(SDK v2)使用 WebActivity + Azure ML 批处理终结点
- 对 LLM 评分(文本分析、信息增强)使用 WebActivity + Azure OpenAI Batch API,成本可降低 50%
- 对预构建 AI 功能(NLP、视觉、异常检测)使用 WebActivity + Azure AI Services
- 需要基于 Spark 的转换时,使用 Data Flows 进行特征工程
- 使用 Execute Pipeline 模式将归档 -> 特征 -> 训练 -> 评分步骤模块化
- 使用 T-SQL PREDICT 在数据库中进行评分(仅适用于 SQL Server/Managed Instance/Synapse——不适用于 Azure SQL Database)
安全
- 对所有 Azure 服务连接(ML 工作区、存储、SQL)使用 Managed Identity
- 使用 Key Vault 管理 API 密钥(Azure AI Services、外部终结点)
- 切勿硬编码管道 JSON 中的机密、连接字符串或 API 密钥
- 最小权限 - 仅授予所需角色(存储使用 Blob Data Contributor,ML 使用 ML 工作区角色)
成本优化
- 对数据流使用通用型计算资源,除非存在内存密集型需求
- 对可变的 ML 工作负载使用 Databricks 无服务器计算
- 为 ML 活动设置适当的超时时间(训练可能会长时间运行)
- 在延迟允许时,优先使用批量评分而非实时评分(成本更低、效率更高)
- 从 SQL 增量提取数据,避免重复复制未更改的数据
资源
- ADF + Azure ML 执行管道
- Azure ML 批处理终结点
- 从 ADF 运行批处理终结点
- 将 SDK v1 管道终结点迁移到 v2 批处理终结点
- Azure OpenAI 全局批处理 API
- ADF Web 活动
- ADF 映射数据流
- Azure AI 服务
- Microsoft Foundry
- Databricks 作业活动
- 将 AI 推理 SDK 迁移到 OpenAI SDK
其他参考文件
详细的 JSON 示例和实现模式位于 references/ 目录中:
references/azure-ml-patterns.md- Azure ML ExecutePipeline(旧版 SDK v1)、批处理终结点(SDK v2)和在线终结点的完整活动 JSONreferences/sql-archival-patterns.md- T-SQL PREDICT、sp_execute_external_script、完整/增量 SQL 归档管道、ADLS Gen2 配置和存储组织references/ai-services-and-openai-patterns.md- Azure AI 服务(情感分析、异常检测)、Azure OpenAI 批处理 API(JSONL 上传、作业创建、轮询)和批量评分模式references/databricks-ml-and-e2e-patterns.md- Databricks ML 训练/评分管道、数据流特征工程,以及包含 Switch 活动的端到端 ML 管道
评论
支持 Markdown