[데이터 엔지니어링] 데이터 웨어하우스, 레이크, 마트와 데이터 모델링 💫
=> 분석을 위한 데이터베이스가 DWH고, OLTP를 위한 데이터베이스는 DWH가 아닌 그냥 OLTP DB라고 부름. => 보통 DWH는 ETL, DL은 ELT임. DWH vs DM 데이터 모델링에 대한 더 자세한 팩트: 데이터 마트와 데이터 웨어하우스의 쓸모가 서로 다르므로, 당연히 저장하는 방식도 서로 다름. DWH는 기본적으로 무결성을 지키면서 저장하는 것, 그리고 모든 값들을 통합적으로 관리하는 것이 중요하므로 정규화도 하고, 그 계열의 스타, 스노우플레이크 스키마 등을 통해 모델링하지만, 데이터 마트는 분석 직전의 저장소이므로 분석을 위해 최적화, 즉 비정규화를 통해 조인을 최소화하고 사전 집계를 해서 빠른 분석 성능을 제공함.
[Spark] Spark의 매우 도움되는 API 친구들
Spark 위에서 우리가 활용할 수 있는 녀석들은 RDD, Spark SQL, DataFrame, DataSet스파크가 처음 등장했을 때 분산처리를 위해 등장한 것이 RDD. 기본적인 동작은 되지만, 최적화도 직접 해줘야 하고, 암튼 오래된 냄새가 많이 남. 이후 Catalyst Optimizer라는 최적화 엔진이 등장하면서, 이 엔진의 최적화 대상이 아닌 RDD는 자연스레 사장되고, 그 대상인 Spark SQL, DataFrame, DataSet 이 각광 받음. 지금은 그 중에서도, 좀 쉬운 것들은 Spark SQL, 좀 어려운 건 DataFrame API로 어지간하면 다 처리하는 방식. 다만 이제 아무래도 DataFrame의 최적화가 테이블 형식의 데이터에만 적용되므로, 반정형, 비정형 데이터를 다룰..