加载

Data Engineering 入门

Vincent Vankrunkelsven

Data Engineer @ DataCamp

分析型或应用型数据库

分析

表示分析的图标

  • 聚合查询
  • 联机分析处理(OLAP)

应用

表示应用的图标

  • 事务量大
  • 联机事务处理(OLTP)
Data Engineering 入门

列式与行式

分析

  • 列式存储

列式存储示例

  • 针对列子集查询
  • 可并行化

应用

  • 行式存储

行式存储示例

  • 以记录为单位存储
  • 以事务为单位新增
  • 如:新增客户很快
Data Engineering 入门

MPP 数据库

大规模并行处理(MPP)数据库

MPP 数据库示意图

 

  • Amazon Redshift
  • Azure SQL Data Warehouse
  • Google BigQuery
Data Engineering 入门

示例:Redshift

从文件加载为列式存储格式

# Pandas .to_parquet() 方法
df.to_parquet("./s3://path/to/bucket/customer.parquet")
# PySpark .write.parquet() 方法
df.write.parquet("./s3://path/to/bucket/customer.parquet")
COPY customer
FROM 's3://path/to/bucket/customer.parquet'
FORMAT as parquet
...
Data Engineering 入门

加载到 PostgreSQL

pandas.to_sql()

# 数据转换
recommendations = transform_find_recommendatins(ratings_df)

# 加载到 PostgreSQL 数据库
recommendations.to_sql("recommendations",
                       db_engine,
                       schema="store",
                       if_exists="replace")
Data Engineering 入门

让我们来练习!

Data Engineering 入门

Preparing Video For Download...