λ°μ΄ν° μμ§ · μ μ · λ³ν · ν μ€νΈ
(1) λ°μ΄ν° μμ§
μμ§μλ§ μ΄μ μ λλ©΄ λ°μ΄ν° νμ΄νλΌμΈμ μμ λΆλΆμΈ μ
μ€νΈλ¦Όμ μλ μ§μ
μ
μ΄ κ°μ₯ μ€μνλ€κ³ μκ°νλ€. Dockerλ₯Ό μμλ‘ λ€λ©΄ entrypointλΌκ³ ν μ μλ€. μ§μ
μ μ λ°μ΄ν°λ λͺ¨λΈλ§μ νλ μΈλΆ μΈκ³μ μ νμ μΈ λ
Έμ΄μ¦μ λΆκ·μΉμ±μ λͺ¨λ λ΄ν¬νκ³ μμ΄ κ°μ₯ μμμ μ΄λ€. λκ² λ°μ΄ν° μμ§λμ΄κ° λ°μ΄ν° μμ§ μμ€λ₯Ό 보μ νμ§λ μλλ€. λλΆλΆ λΆμ μλΉμ€ λλ APIμ κ°μ μΌλΆ λΉμ¦λμ€ λͺ©ν, μ
μ€νΈλ¦Ό λꡬμ μμ‘΄νλ€. λ°μ΄ν° μμ€λ ν¬κ² μΈκ°μ§λ‘ λΆλ₯ λλ€.
- μ ν리μΌμ΄μ λ‘κ·Έ λ°μ΄ν°
- μννΈμ¨μ΄ μ ν리μΌμ΄μ λ΄μ μμ μΌλ‘ μμ±λ λ°μ΄ν°λ₯Ό λνλ΄λ©° ν΄λΌμ΄μΈνΈμ© λλ λ΄λΆμ©μΌ μ μλ€. μμ μ μ¬μ©μ μμ λλ νλ‘κ·Έλλ° λ°©μμΌ μ μλ€. μννΈμ¨μ΄ loggerμ INFOλ DEBUGGERκ° μ΄ μ’ λ₯ μ€ νλμ΄λ€.
- μ΄μ 체μ κ° λΆν λ λ μμ€ν λ‘κ·Έμ λ¬λ¦¬ μ ν리μΌμ΄μ λ‘κ·Έμ ν¬ν¨λκ±°λ μ μΈνλ κ² κ°λ°μμκ² λ¬λ Έλ€.
- μμ§ μμ : ν λΈλ‘κ·Έ λ μκ° μΉνμ΄μ§μμ 10λΆμ λ¨Έλ¬Όλ μΌλ©° ν μ€νΈμμ λκ°λ λ§ν¬λ₯Ό 3κ° ν΄λ¦.
- μ΄ν리 μΌμ΄μ
λ‘κ·Έλ λ¨μ μ§λ ¬ν ν
μ€νΈ λ°μ΄ν°μ΄λ―λ‘ ASCII λλ μ΄μ§ νμμΌλ‘ μ¬μ©ν κ°λ₯μ±μ΄ λλ€. ꡬ쑰λ κ°λ°μμκ² λ¬λ €μμ΄ λ€μνλ©° μλλ κΈ°λ³Έμ μΈ κ³ λ € μμμ΄λ€.
- νμμ€ν¬ν : λ‘κ·Έ ν μ€νΈλ λλΆλΆ μ€λ°κΏμΌλ‘ ꡬλΆλμ΄ μλ κ°λ³ μ΄λ²€νΈμ΄λ€. νλ‘κ·Έλλ¨Έκ° μμ μ μ¬λ°λ₯΄κ² μννλ κ²½μ° μ΄λ²€νΈμ νμμ€ν¬νκ° νμλλ€. νμμ€ν¬νλ μ΄λ²€νΈ μ€λͺ κ³Ό λ¬λ¦¬ ISO νμ€ νμμ΄λ μ΄μ μ μ¬ν νμμΌλ‘ νμ€νλμ΄μΌνλ€.
- λ‘κ·Έλ 벨 : μ’μ μ ν리μΌμ΄μ λ‘κ·Έλ 'LEVEL'μ μ¬μ©νμ¬ λλ΅μ μΌλ‘ κ° μ΄λ²€νΈμ λ‘κ·Έ μ νμ 체κ³ννλ€. INFO, WARN, ERROR
- λͺ©μ : λͺ¨λ λ°μ΄ν°λ μμ§νλ λ° λΉμ©μ΄ λ€κΈ° λλ¬Έμ μΈλͺ¨ μλ λ‘κ·ΈλΌλ μ΄λκ°μ
μΈλͺ¨
κ° μμ΄μΌνλ€.- μμ²μ΄ μΌλ§λ μμ£Ό μκ°μ μ΄κ³Όνλμ§?
- νμ΄μ§ λ‘λκ° λλ €μ§κ³ μλμ§?
- λ μ΄μ νμ©λμ§ μλ λΌμ΄λΈλ¬λ¦¬ κΈ°λ₯μ μ¬μ©νκ³ μλμ§?
- API μλ΅
- νλμ μ ν리μΌμ΄μ
μΌλ‘ λͺ¨λ κ²μ ν μ μκΈ° λλ¬Έμ νΉμ κΈ°λ₯μ λ€λ₯Έ μ ν리μΌμ΄μ
μ 맑긴λ€. APIλ λ νλ‘κ·Έλ¨ μ¬μ΄μ 맀κ°μ²΄λ‘, νΉμ νμμ 'μμ²'κ³Ό μ΄μ λν 'μλ΅'μ΄ νμνλ€.
λ°κ΅¬μ‘°ν λ°μ΄ν°
λ₯Ό μ¬μ©νλ€. APIμμ κ°μ Έμ¨ μ€λν¬μΈνΈμμ λ°μ΄ν°λ₯Ό μ μ₯ν μ μλ€. API λ°μ΄ν°λ₯Ό μ¬μ©ν λ λ€μ μ¬νμ μ£Όμ ν΄μΌνλ€.- ꡬ쑰 : API μλ΅ κ°μ²΄λ λ‘κ·Έμ²λΌ μ§λ ¬νν μ μμ§λ§ ꡬ쑰ν λλ λ°κ΅¬μ‘°ν νμμΌλ‘ μμΆμ΄ νλ¦°λ€. JSONμ λ§€μ° μ μ°νμ§λ§ μ€μν λ°©μμΌλ‘ ꡬ쑰μ μ μ½μ λ°λλ€.(key-value) λ‘κ·Έ λ°μ΄ν°μ λ§μ΄ λ€λ₯΄λ€. μ΄μ²λΌ HTTP/1.1κ³Ό κ°μ HTTP μλ΅ μ¬μμ HTTP μμ² λλ μλ΅ λ³Έλ¬Έμλ JSON λλ XMLμ ν¬ν¨ν μ μλ€.
- μλ΅ μ½λ : API μμ²μ μ±κ³΅νκ±°λ μ€ν¨ν μ μμΌλ―λ‘ λλΆλΆμ API μ¬μμλ λ€μν μλ΅ μ νμ λν μ½λκ° μλ€.
- HTTP μν μ½λ : 200 OK, 404 Not Found, 500 Internal Server Error
- κΈ°ν μ μ‘ νλ‘ν μ½ : SOAP API
- λͺ©μ : API μ¬μ© μ¬λ‘μ μΈκ³λ λ°©λνλ―λ‘ λ°μν μ μλ λͺ¨λ λ΄μ©μ μμΈ‘ν μ μλ€. λ μλ² μ€λ₯μ¨μ μ€μ΄κ³ μΆλ€λ©΄ μ½λλ₯Ό λ³Όκ²μ΄λ€. μ΄μ²λΌ νΉμ μν©μμ μ μ‘λ μΌλΆ μ 보λ μ μ©νμ§ μμ μ μλ€.
- μΌμ λ°μ΄ν°
- μμ§ν μ μλ μΈ λ²μ§Έ ννμ λ°μ΄ν°λ μ¬λ¬Ό μΈν°λ· μ₯μΉ λλ μ°κ΅¬ μ₯λΉμ κ°μ 'μΌμ'μμ μ»μ μ μλ€. μΌμλ λ΄λΆ λ
Όλ¦¬κ° λ§€μ° λ¨μνκΈ° λλ¬Έμ λ°λμ μ ν리μΌμ΄μ
μΌλ‘ νμ©νμ§ μλλ€. GPU μ μ μ¨, GPU μ¨λ, CPU μ¬μ©λ λ±μ΄ μ΄μ ν΄λΉνλ€. μ£Όμ κ³ λ € μ¬νμ
- λ Έμ΄μ¦ : μ€μ μΌμ λ°μ΄ν°μλ μ λ§μ λ Έμ΄μ¦κ° μ‘΄μ¬νλ€. μΌλΆ λ°μ΄ν°λ GarbageμΌ μ μλ€. νμ§λ§ μ΄ λ°μ΄ν°λ₯Ό κ°μ§κ³ ννν, λ³ν λ±μ ν΅ν΄ μ€λ₯λ₯Ό μ κ±° ν μ μλ€.
(2) λ°°μΉ vs μ€μκ° μ²λ¦¬
2010λ κΉμ§ λ°μ΄ν°λ₯Ό λ°°μΉλ‘ μ²λ¦¬νλ κ²μ΄ μΌλ°μ μ΄μ§λ§ μ΄ν μ€μκ° μ²λ¦¬μ λν μμκ° λλ©° λκ°μ§ λͺ¨λ μ¬μ©νκ³ μλ€.
- λ°°μΉ μ²λ¦¬ : μΌμ κΈ°κ° λμ λ°μ΄ν°λ₯Ό μμ§νμ¬ λλμ λ°μ΄ν°λ₯Ό λ³κ°μ ν¨ν·μΌλ‘ 'λ°°μΉ'
- ex) μ μ© μΉ΄λ κ±°λ μ²λ¦¬
- μ€μκ° μ²λ¦¬ : νλ‘μΈμ€λ κΈΈμ§λ§ λ°μ΄ν°λ₯Ό κ±°μ μ¦μ μ²λ¦¬
- ex) μ¬κΈ° μ κ³ λ°©μ§
λ°°μΉ νλ‘κ·Έλ¨
- μ€ν μμ€
- λμ©λ λΆμ° μ²λ¦¬ μ€ν νλ‘κ·Έλ¨ νλ‘
- μ¬μ€
- Google bigQuery, SnowFlake, Microsoft Azure, Amazon Redshift
μ€μκ° μ²λ¦¬ νλ‘κ·Έλ¨
- μ€νμμ€
- Spark, Kafka, Flink, Storm, Flume, Apache Solution
μ€μκ° λ°μ΄ν°μ μ€λ₯μ λν μμλ₯Ό λ€λ©΄ μ€μκ°μΌλ‘ κ³ κ°μκ² λ§λ κ΄κ³ λ₯Ό κ²μν λ μ€λ₯λ‘ μΈν΄ μλͺ»λ κ΄κ³ λ₯Ό 보λΈλ€λ©΄ μΈλ°μλ κ΄κ³ λΉμ©μΌλ‘ μΈν μ§μΆμ΄ κ³μ λ°μν κ²μ΄λ€. μ μ¬μ μΈ μμ΅μ λμΉκ±°λ μ¬μ©μ κ²½νμ μ νμν€λ κ΄λ ¨ μλ κ΄κ³ λ₯Ό κ²μ ν μλ μλ€.
μ΄λ° λ¬Έμ λ₯Ό ν΄κ²°νκΈ° μν΄ λ°μ΄ν° νμ§μ ν μ€νΈλ₯Ό ν΅ν΄ κ΄λ¦¬ λλ€. ν μ€νΈ μ΄ν λ¬Έμ κ° μλ μμΌλ‘ λ°°μΉ ννλ‘ μ²λ¦¬λ₯Ό νλ€. μ€μκ° λ°μ΄ν°μμλ μ΄λ»κ² μ΄λ¬ν λ¬Έμ λ₯Ό ν΄κ²°ν κΉ?
- λ°μ΄ν° νμ§μ κ΄ν μλ‘μ΄ μ€λ₯λ νμ λ°μνλ©° μμ§λμ΄λ€μ λ¬Έμ κ° λ€μ΄μ€νΈλ¦Ό ν μ΄λΈκ³Ό μ¬μ©μμκ² μν₯μ λ―ΈμΉκΈ° μ μ μμΈμ λΆμνλ€. νμ§λ§ μ΄λ¬ν μ²λ¦¬λ 20% λ°μ ν΄κ²°νμ§ λͺ»νλ€. μ μ μμ ν΄κ²°μ΄λΌλ 'μλ €μ§ λ―Έμ§'(μμΈ‘κ°λ₯νκ²)κ° μ‘΄μ¬ν κ²μ΄λ€. λ°μ΄ν° μνκ³μμλ 볡μ‘μ±μ΄ μ¦κ°ν¨μ λ°λΌ κΈ°μ‘΄μ μ²λ¦¬ λ° ν μ€νΈ λ°©λ²μ΄ ꡬμμΌλ‘ 보μ΄κΈ° μμνλ€.
'π’οΈ Database' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
λ°μ΄ν° νμ§μ λΉλ° (4) (0) | 2024.08.20 |
---|---|
Data Orchestration (0) | 2024.08.03 |
Airflow Entrypoint (0) | 2024.07.28 |
λ°μ΄ν° νμ§μ λΉλ° (2) (0) | 2024.07.21 |
λ°μ΄ν° νμ§μ λΉλ° (1) (0) | 2024.07.17 |