ETL、ELT、数据管道及其相关tool
一、定义
1. ETL
E: Extraction
raw data sources:
T: transformation
D: data loading
popular ETL tools
- talend
- AWS Glue
- Apache Airflow: scale for big data
- pandas
2. ELT
就是顺序变化了一下,先load再transform
因为big data的出现,ELT热起来了。
特点:
和 ETL的区别:
3. pipeline
特性
设计准则
batch or Streaming Data
准确性 VS 及时性
batch data
- 通常周期性执行(通过设置时间,数据量来触发process)
- operate on batches of data
- 不需要最新的数据
- accuracy是第一位
应用场景:
streaming data
应用场景:
- watching movies, listening to music or podcasts
- social media feeds, sentiment analysis
- user behavior, advertising
- frau detection
- stock market trading
- real-time product pricing
- recommender system
数据管道相关tools 以及 techmologies
常规的技术要求:
tools :
- pandas: can not big data
- Airflow:big data(后续博文详细介绍)
- talend: big data
- AWS Glue
- Panoply: ELT
- alteryx: ETL + ELT
- IBM InfoSphere DataSrage: ETL + ELT
FOR streaming data:
- ibm streams
- apache storm
- sqlstream
- samza
- spark
- apache kafka(后续博文详细介绍)
二、shell 在 pipeline的应用
1. 重要命令
cut
顾名思义,就是用来截取部分doc内容或string内容
-d : (delimited) 使用的分隔符号
-f: 选取的filed
-c: (character) 选取的字符
举个例子:
tr
translate 的过滤器,可以translate,squeeze, delete 操作
-s : 压缩重复出现的字符
-d: 删除指定的字符
举例子: