手动测试数据管道

使用 Python 的 ETL 和 ELT

Jake Roach

Data Engineer

测试数据管道

应充分测试数据管道

  • 验证按预期抽取、转换、加载数据

$$

验证可减少上线后的维护成本

  • 发现并修复数据质量问题
  • 提升数据可靠性

测试数据管道的工具与方法

  • 端到端测试
  • 在"检查点"验证数据
  • 单元测试
使用 Python 的 ETL 和 ELT

测试与生产环境

用于构建和运行数据管道的测试与生产环境。

使用 Python 的 ETL 和 ELT

端到端测试管道

数据管道的端到端测试。

端到端测试

  • 确认多次运行均能成功
  • 在管道检查点验证数据
  • 同行评审并采纳反馈
  • 确保消费者可用且满意
使用 Python 的 ETL 和 ELT

验证管道检查点

# 作为管道的一部分,抽取、转换并加载数据
...

# 查看 Postgres 数据库中可用的数据
loaded_data = pd.read_sql("SELECT * FROM clean_stock_data", con=db_engine)
print(loaded_data.shape)
(6438, 4)
print(loaded_data.head())
         timestamps      volume     open     close                             
1997-05-15 13:30:00  1443120000  0.121875  0.097917
1997-05-16 13:30:00   294000000  0.098438  0.086458
1997-05-19 13:30:00   122136000  0.088021  0.085417
使用 Python 的 ETL 和 ELT

验证 DataFrame

# 作为管道的一部分,抽取、转换并加载数据
...

# 查看 Postgres 数据库中可用的数据
loaded_data = pd.read_sql("SELECT * FROM clean_stock_data", con=db_engine)

# 比较两个 DataFrame
print(clean_stock_data.equals(loaded_data))
True
使用 Python 的 ETL 和 ELT

Passons à la pratique !

使用 Python 的 ETL 和 ELT

Preparing Video For Download...