You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何实现从SQL Server向Azure ML管道或数据存储自动获取数据?

实现SQL Server到Azure ML管道/数据存储的自动化方案

完全可以实现自动化,下面是几种实用方案:

方案1:Azure ML管道内直接读取SQL Server数据(无需先同步到数据存储)

这种方式跳过中间手动导入步骤,让管道直接从SQL Server拉取数据用于训练:

  • 在Azure ML工作区注册SQL Server数据源:支持SQL身份验证或Azure AD身份验证,配置好服务器地址、数据库名、凭据即可
  • 管道中添加「导入数据」组件:选择已注册的SQL数据源,编写SQL查询筛选需要的数据,组件输出可直接对接后续训练步骤;也可以将数据写入Azure ML数据存储(如Blob Storage)留存
  • 用Python SDK实现的话,示例代码如下:
from azureml.core import Workspace, Dataset

ws = Workspace.from_config()
# 注册SQL数据源
sql_dataset = Dataset.Tabular.from_sql_query(
    sql_query="SELECT * FROM your_table WHERE condition",
    server_name="your-sql-server.database.windows.net",
    database_name="your-db",
    credential=ws.get_default_keyvault().get_secret("sql-credential")
)
# 在管道步骤中使用该数据集
from azureml.pipeline.steps import PythonScriptStep
train_step = PythonScriptStep(
    script_name="train.py",
    arguments=["--input-data", sql_dataset.as_named_input("sql_data")],
    compute_target=compute_target,
    source_directory="./src"
)

方案2:用Azure Data Factory自动化同步SQL Server到数据存储,再触发ML管道

适合需要先将SQL数据落地到数据存储的场景:

  • 在ADF创建「复制数据」管道:源端选SQL Server,目标端选Azure ML关联的Blob/ADLS Gen2存储
  • 设置触发规则:可以定时触发(如每日凌晨),或基于SQL Server的数据变更事件触发
  • 配置后续触发:ADF管道完成后,通过「Web活动」调用Azure ML管道的REST API,自动启动训练流程

方案3:管道内自定义脚本读取SQL数据并存储

如果需要更灵活的数据处理逻辑,可在管道中添加自定义Python脚本步骤:

  • 脚本中用pyodbc或sqlalchemy连接SQL Server读取数据
  • 处理完成后,用Azure ML SDK将数据上传到数据存储,或直接传入训练逻辑
    示例代码片段:
import pyodbc
import pandas as pd
from azureml.core import Datastore, Workspace

ws = Workspace.from_config()
# 连接SQL Server
conn_str = "Driver={ODBC Driver 17 for SQL Server};Server=tcp:your-server,1433;Database=your-db;Uid=your-username;Pwd=your-password;Encrypt=yes;TrustServerCertificate=no;Connection Timeout=30;"
conn = pyodbc.connect(conn_str)
df = pd.read_sql("SELECT * FROM your_table", conn)

# 保存为本地文件后上传到数据存储
df.to_csv("./processed_data.csv", index=False)
datastore = Datastore.get(ws, name="your-datastore")
datastore.upload_files(files=["./processed_data.csv"], target_path="sql_data/", overwrite=True)

内容的提问来源于stack exchange,提问作者Mavil

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.21 19:09:28