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

如何在Databricks中用Python读取Azure Blob存储的.gz压缩Parquet文件

Databricks 读取 Azure Blob 中 parquet.gz 格式文件方法

1. 配置 Azure Blob 存储访问权限

首先需要在Databricks环境中配置存储访问凭证,支持两种常用配置方式:

  • 方式1:使用存储账户密钥配置
# 替换为实际的存储账户名称、容器名称、存储账户密钥
storage_account_name = "<your-storage-account-name>"
container_name = "<your-container-name>"
storage_account_key = "<your-storage-account-key>"

# 配置Spark访问凭证
spark.conf.set(
    f"fs.azure.account.key.{storage_account_name}.dfs.core.windows.net",
    storage_account_key
)
  • 方式2:使用SAS令牌配置(权限管控更灵活)
# 替换为实际的存储账户名称、容器名称、SAS令牌
storage_account_name = "<your-storage-account-name>"
container_name = "<your-container-name>"
sas_token = "<your-sas-token>"

# 配置Spark访问凭证
spark.conf.set(
    f"fs.azure.sas.{container_name}.{storage_account_name}.dfs.core.windows.net",
    sas_token
)

2. 直接读取目标文件

配置完成后可直接通过ABFS协议路径读取文件,无需下载到Databricks本地:

# 替换为实际的文件所在目录路径,<your-directory-path>替换为blob中存储文件的目录路径
file_path = f"abfss://{container_name}@{storage_account_name}.dfs.core.windows.net/<your-directory-path>/"

# 读取目录下所有符合格式的parquet.gz文件,Spark自动识别gz压缩格式
df = spark.read.parquet(file_path)

# 可按需查看数据
df.show()

# 如果需要转成Pandas DataFrame操作(仅建议小数据量场景使用)
# pandas_df = df.toPandas()

补充说明

  • 如果目录下存在其他非目标格式文件,可通过通配符精准匹配你的命名规则,将路径修改为:
    f"abfss://{container_name}@{storage_account_name}.dfs.core.windows.net/<your-directory-path>/*-*-*-*-*.parquet.gz"
  • 整个读取过程直接在集群计算节点和Azure Blob存储之间完成,不会占用Databricks本地存储资源。
  • 如果你只需要读取指定日期的文件,也可以把通配符对应日期位置替换为目标日期,比如*ab_test-20210604-*.parquet.gz即可只读取2021年6月4日的对应文件。

内容的提问来源于stack exchange,提问作者Aman Patel AIITycJhtw

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.07 01:09:02