Dashboard using Data Warehouse
- Python, Pandas, Docker
- Server : Google Compute Engine (ubuntu 22.04.3 LTS, CPU4, RAM16)
- Airflow : v2.6.3
- Superset : v3.0.2
- Data Lake : AWS S3
- Data Warehouse : AWS Redshift
- Data Source :
곡곡λ°μ΄ν°ν¬νΈ : νκ΅μλΆλ°μ (μ£Ό)_μ μ¬μμλμ§ λ°μ λ
- Redshift λ°μ΄ν° μ μ¬ μ κΈ°λ³Έν€ λ³΄μ₯ :
λ°μ΄ν° μ μ¬ κ³Όμ μμ κΈ°λ³Έν€μ μΌκ΄μ±κ³Ό μ νμ±μ ν보νκΈ° μν΄, λ°μ΄ν° νμ§ κ²μ¦ λ¨κ³λ₯Ό μΆκ°νκ±°λ μ μ¬ μ λ°μ΄ν° μ μ²λ¦¬ κ³Όμ μ κ°ννλ λ°©μμ΄ νμ - νμν λ°μ΄ν°λ§ Redshiftμ μ μ¬ :
S3μ μ μ₯λ λ°μ΄ν° μ€ νμν λΆλΆλ§ Redshiftλ‘ μ μ¬νλ μ λ΅μ΄ νμ. AWS Redshift Spectrumμ νμ©νμ¬ S3μ λ°μ΄ν°λ₯Ό μ§μ 쿼리νκ³ νμν λ°μ΄ν°λ§μ μ νμ μΌλ‘ μ μ¬ν μ μμ - S3 to Redshift μ μ¬ λ°©μμ μ μ°μ± κ°μ :
νμ¬μ S3 to Redshift μ μ¬ λ°©μμ μ μ°μ± λ¬Έμ λ₯Ό ν΄κ²°νκΈ° μν΄, SQLμ μ§μ μμ±νμ¬ incremental update λ°©μμΌλ‘ μ μ¬ νλ‘μΈμ€λ₯Ό κ°μ ν μ μμ. μ΄λ λ°μ΄ν°μ λ³κ²½ μ¬νλ§μ μλ³νμ¬ μ μ¬νλ λ°©μμΌλ‘, ν¨μ¨μ±κ³Ό μ±λ₯μ κ°μ ν μ μμ - Airflow νκ²½ κ΅¬μΆ λ° λ©λͺ¨λ¦¬ νλ‘μΈμ€ κ΄λ¦¬ κ°μ :
νμ¬ νλμ μλ²μ Docker 컨ν μ΄λλ₯Ό μ¬μ©ν΄μ Airflow νκ²½μ ꡬμΆν¨. μ΄λ μΆν DAGμ μκ° λ§μμ§λ©΄ νμ₯μ±κ³Ό 리μμ€ κ΄λ¦¬ λ¬Έμ κ° λ°μν μ μμ. μ΄λ¬ν λ¬Έμ λ₯Ό ν΄κ²°νκΈ° μν΄ AWS ECSλ₯Ό νμ©ν νκ²½μΌλ‘μ μ νμ κ³ λ €ν΄λ³Ό μ μμ. - Open API λ°μ΄ν° μμ§ μ μ€μΌμ€λ§ μ λ΅ νμ : Open APIμμ λ°μ΄ν°λ₯Ό μμ§ν λ, μ νν λ°μ΄ν° κ°±μ μκ°μ νμ νκ³ μ΄μ λ§μΆμ΄ μ€μΌμ€μ μ€μ νλ κ²μ΄ μ€μνλ€κ³ μκ°ν¨. λ¨μν λ§€μΌ λμΌν μκ°μ λ°μ΄ν°λ₯Ό μμ§νλ κ²μ΄ μλλΌ, λ°μ΄ν°μ μ κ· κ°±μ μκ°μ λ§μΆ° μ΅μ νλ μμ§ λ‘μ§μ ꡬνν΄μΌ μλ‘μ΄ λ°μ΄ν°λ₯Ό λμΉμ§ μκ³ ν¨κ³Όμ μΌλ‘ μμ§ν μ μμ
