用途:该技能提供一套端到端 PySpark ETL 管道示例,覆盖从 AWS S3 抽取 JSON、模式校验、数据质量检查、数据转换、写出 Parquet 到加载 PostgreSQL 的完整流程,适用于数据工程实践参考。
主要能力:extract 模块通过 s3a 读取 S3 上的 JSON;validation 模块包含 schema_validator(比对字段与类型)和 DataQualityChecker(空值、重复、数值范围、分类值检查);transform 模块提供 clean_data、衍生列(日期分量、金额换算)与按用户窗口聚合;load 模块支持写出分区的 Parquet(snappy 压缩)和通过 JDBC 写入 PostgreSQL。项目含 configs、sql、notebooks、tests 等目录。
使用方式:克隆仓库后创建虚拟环境并执行 pip install -r requirements.txt;在 .env 配置 AWS 与 PostgreSQL 连接信息;运行 python main.py,也可用 --config configs/pipeline_config.yaml 指定配置;测试用 pytest tests/ 或 pytest --cov=src tests/。
限制:资料未提供具体版本兼容范围、集群规模、性能指标与收费信息;示例中的汇率换算为假定逻辑,日期与 schema 定义需按实际数据调整。