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

Azure ML笔记本中能否对数据资产执行DQL查询操作?

在Azure ML Notebook中查询Parquet格式的Azure数据资产(支持DQL操作)

当然可以在Azure ML Notebook中对Parquet格式的数据资产执行DQL查询,以下是两种实用方案:

方法1:使用Spark SQL(推荐大数据量场景)

Parquet格式天然适配Spark,Azure ML Notebook支持Spark运行环境,适合处理大规模数据:

  • 加载数据资产并创建临时视图:

    from azureml.core import Workspace, Dataset
    
    # 加载工作区配置
    ws = Workspace.from_config()
    # 根据名称获取目标数据资产
    data_asset = Dataset.get_by_name(ws, name="你的数据资产名称")
    # 获取Parquet文件存储路径
    parquet_path = data_asset.path
    
    # 加载数据到Spark DataFrame
    df = spark.read.parquet(parquet_path)
    # 创建临时视图,用于SQL查询
    df.createOrReplaceTempView("parquet_dataset")
    
  • 执行DQL查询:

    # 编写标准SQL查询语句
    query_result = spark.sql("SELECT * FROM parquet_dataset WHERE 你的过滤条件")
    # 查看查询结果
    query_result.show()
    # 可选:转换为Pandas DataFrame做后续处理
    result_pd = query_result.toPandas()
    

方法2:使用Pandas + PandasQL(小数据量场景)

如果数据量较小,可将数据加载到Pandas DataFrame后,用pandasql执行SQL查询:

  • 安装依赖并加载数据:

    # 首次运行安装pandasql
    !pip install pandasql
    
    from azureml.core import Workspace, Dataset
    import pandas as pd
    from pandasql import sqldf
    
    # 加载数据资产到Pandas DataFrame
    ws = Workspace.from_config()
    data_asset = Dataset.get_by_name(ws, name="你的数据资产名称")
    df = data_asset.to_pandas_dataframe()
    
    # 定义查询函数
    pysqldf = lambda q: sqldf(q, globals())
    
  • 执行DQL查询:

    # 编写SQL查询
    result = pysqldf("SELECT column1, column2 FROM df WHERE column3 > 50")
    # 打印结果
    print(result)
    

关键注意事项

  • 大数据量优先选Spark SQL:Spark支持分布式计算,处理大规模Parquet数据时性能远优于Pandas
  • 权限验证:确保Notebook所在计算实例拥有Azure Blob Storage的访问权限(可通过Datastore权限或托管标识配置)
  • 资源匹配:根据数据量选择合适的计算实例规格,避免内存不足问题

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.08 08:30:59