Agent Skills
返回列表
💻

Azure 数据湖 Gen2 Python SDK

开发编程 更新于 2026.08.29

将以下提示词粘贴到你的 AI 对话框中:

请根据 https://skillhub.cn/install/skillhub.md,安装 @org-02qudk26/azure-storage-file-datalake-py。

技能介绍

要解决什么问题

在 Azure 上跑 Spark、Synapse 或自建 ETL 时,数据往往落在 Data Lake Storage Gen2:它把 Blob 存储和分层命名空间合在一起,目录、权限和元数据可以按「文件系统」来管,而不是一堆扁平对象键。若你已经在用 Python 做编排或运维脚本,却还在翻零散文档猜该用哪个 Client、大文件该怎么 append,这个技能把 azure.storage.filedatalake 的常见路径串成一条可落地的线。

技能如何组织内容

文档从鉴权与生命周期入手,强调两条生产规则:DefaultAzureCredential(本地 CLI/VS Code 与云端托管标识同一套代码)以及同步/异步客户端都要进上下文管理器,避免连接泄漏和令牌缓存悬空。接着按 SDK 的层级说明四类客户端:DataLakeServiceClient(账户)、FileSystemClient(容器/文件系统)、DataLakeDirectoryClient、DataLakeFileClient,并覆盖文件系统、目录与文件上的典型操作:上传/下载/删除、列出内容、属性与 ACL(建议在目录层设置并继承)。大文件路径对应 appenddata + flushdata;需要扫整棵树时用 get_paths(..., recursive=True);高吞吐场景文档指向异步客户端(azure.storage.filedatalake.aio),并明确要求同一条调用链不要混用 sync/async。

适用边界与注意点

技能面向 Gen2 的分层文件语义,不是通用 Blob 对象存储教程——若只是简单 put/get 对象,文档本身也建议评估 Blob API 是否更合适。ACL、元数据与非核心能力在 references/ 里有补充清单与进阶场景;核心 SKILL 聚焦「能写进生产代码」的默认做法,而不是罗列每个 REST 边角参数。

使用场景

  • Synapse 或 Spark 作业跑完后,用 Python 把分区 Parquet 写入 Gen2 文件系统并设置目录元数据
  • 数据平台值班脚本需递归 `get_paths` 盘点某文件系统下过期目录并批量删除
  • 新建 landing zone 时在目录层配置 ACL 并继承,避免每个文件单独改权限
  • 单文件超过 SDK 简单上传阈值,需在管道里用 append_data 与 flush_data 分段写入

适合人员

  • 负责 Azure 湖仓 landing 区运维的数据工程师,需要用 DefaultAzureCredential 写可本地调试、可上生产的上传脚本
  • 为 Synapse 关联存储编写自动化运维的云平台工程师,要区分 Service/FileSystem/Directory/File 四类 Client 的职责
  • 要把训练集与自定义元数据写入 Gen2 的 MLOps 工程师,需要目录级 ACL 与文件属性接口
  • 需按合规要求批量调整数据目录访问控制的安全工程师,依赖 SDK 的 ACL 而非门户逐个点选