hadoop_hdfs
Last updated
Last updated
https://www.oreilly.com/library/view/data-lake-for/9781787281349/8df0cc52-432d-4233-9b6e-8f9649280b37.xhtml
2005λ λν¬ μ»€ν μ΄ μ€ν μμ€λ‘ 곡κ°ν νλ‘μ λΆμ° μ μ₯ νμΌμμ€ν μΈ HDFSμ λΆμ° λ³λ ¬ μ²λ¦¬λ₯Ό λ΄λΉνλ 맡리λμ€λ‘ ꡬμ±λμ΄ μμ΅λλ€. νλ‘μ΄ λμ¨ ν μ΄λ₯Ό κΈ°λ°μΌλ‘ νΌκ·Έ, νμ΄λΈ, HBase, μ€μΏ±, νλ£Έ λ±μ μ€ν μμ€ κΈ°μ μ΄ λ±μ₯νκ³ , μ΄λ€μ λͺ¨λ κ²°ν©ν λΉ λ°μ΄ν° κΈ°μ μ ν΅μΉνμ¬ νλ‘ μμ½μμ€ν μ΄λΌκ³ λΆλ₯΄κ² λμμ΅λλ€.
μνμΉ νλ‘ νλ«νΌ(Hadoop)μ λ§λν λ³Όλ₯¨μ λ°μ΄ν°λ₯Ό μ μ₯ν μ μλ κ΅¬κΈ νμΌ μμ€ν κ³Ό μ΄λ¬ν λ°μ΄ν°λ₯Ό λΉ λ₯΄κ³ μμ μ μΌλ‘ μ²λ¦¬ν μ μλ κ΅¬κΈ λ§΅λ¦¬λμ€(Google MapReduce) κΈ°μ μ μ€νμμ€ λ²μ μΌλ‘ λ§μ κΈ°μ λ€μ΄ λΉ λ₯΄κ² μ¦κ°νλ λ°μ΄ν°(ꡬ쑰μ , λ°κ΅¬μ‘°μ , λΉκ΅¬μ‘°μ )λ₯Ό κ΄λ¦¬νκΈ° μν΄ νλ‘μ μ±ννμ΅λλ€.
νλ‘μ μ‘μ 맡 νμ€ν¬μ 리λμ€ νμ€ν¬λ‘ λλμ΄ μ€ννλ©° κ° νμ€ν¬λ YARNμ μ΄μ©νμ¬ μ€μΌμ€λ§λκ³ ν΄λ¬μ€ν°μ μ¬λ¬ λ Έλμμ μ€νλ©λλ€. νΉμ λ Έλμ νμ€ν¬ νλκ° μ€ν¨νλ©΄ μλμΌλ‘ λ€λ₯Έ λ Έλλ₯Ό μ¬ν λΉνμ¬ λ€μ μ€νλ©λλ€.
κ΅¬μ± μμ
Hadoop Common
νλ‘μ λ€λ₯Έ λͺ¨λμ μ§μνκΈ° μν κ³΅ν΅ μ»΄ν¬λνΈ λͺ¨λ
Hadoop HDFS
λΆμ° νμΌμμ€ν μΌλ‘ μ¬λ¬ κ°μ μλ²λ₯Ό νλμ μλ²μ²λΌ λ¬Άμ΄μ λ°μ΄ν°λ₯Ό μ μ₯
Hadoop YARN
νλ‘μ ν΄λ¬μ€ν° μμ κ΄λ¦¬ μμ€ν , ν΄λ¬μ€ν°μ μμμ μμ²νκ³ μ¬μ©νκΈ° μν΄ APIλ₯Ό μ 곡
Hadoop Mapreduce
λΆμ°λμ΄ μ μ₯λ λ°μ΄ν°λ₯Ό λ³λ ¬ μ²λ¦¬ν μ μκ² ν΄μ£Όλ λΆμ° μ²λ¦¬ λͺ¨λ
ν΅μ¬ μ리
Failure Tolerance (μ₯μ νμ©)
Load Balancing (λ‘λ λ°Έλ°μ±)
Data Loss (λ°μ΄ν° λ‘μ€)
μ΄μ
Resilience (νλ ₯μ±)
Scalability(νμ₯μ±) : μ΄λ ν ν΄λ¬μ€ν° νκ²½μμλ μ μ© κ°λ₯νλ€.
Low Cost(μ λΉμ©)
Speed(μλ)
Data Diversity(λ°μ΄ν° λ€μμ±)
λ€νΈμν¬λ‘ μ°κ²°λ μ¬λ¬ λ¨Έμ μ μ€ν 리μ§λ₯Ό κ΄λ¦¬νλ νμΌμμ€ν . HDFS(Hadoop Distributed FileSystem)λΌλ λΆμ° νμΌμμ€ν μ μ 곡ν©λλ€.
https://www.oreilly.com/library/view/distributed-computing-in/9781787126992/3275691a-477f-4e3a-a00c-9a64bda93b16.xhtml
HDFS ν΄λ¬μ€ν°λ λ§μ€ν°-μ컀 ν¨ν΄μΌλ‘ λμνλ λ μ’ λ₯μ λ Έλ, λ§μ€ν°μΈ νλμ λ€μλ Έλμ μμ»€μΈ μ¬λ¬ κ°μ λ°μ΄ν°λ Έλλ‘ κ΅¬μ±λμ΄ μμΌλ©° λ€μλ Έλλ νμΌμμ€ν μ λ€μμ€νμ΄μ€λ₯Ό κ΄λ¦¬ν©λλ€.
λ€μ λ Έλ : λ°μ΄ν° λ Έλλ€μ μμΉλ λ°μ΄ν° λ΄μ©μ λν ꡬμ±μ κ°μ§ ν κ°μ λ Έλλ‘ κ΅¬μ±
λ°μ΄ν° λ Έλ : λ°μ΄ν° μμ§λ λ€λμ λ΄μ©μ κ°μ§ λ°μ΄ν° λ Έλ
λ©νλ°μ΄ν° κ΄λ¦¬ : λ©νλ°μ΄ν°λ νμΌμ΄λ¦, νμΌν¬κΈ°, νμΌμμ±μκ°, νμΌμ κ·ΌκΆν, νμΌ μμ μ λ° κ·Έλ£Ή μμ μ, νμΌμ΄ μμΉν λΈλ‘μ μ 보 λ±μΌλ‘ ꡬμ±λ©λλ€. κ° λ°μ΄ν°λ Έλμμ μ λ¬νλ λ©νλ°μ΄ν°λ₯Ό λ°μμ μ 체 λ Έλμ λ©νλ°μ΄ν° μ 보μ νμΌ μ 보λ₯Ό λ¬Άμ΄μ κ΄λ¦¬
νλ‘ λμ€ν¬ μμ κ±°λν μ°μ λ°μ΄ν° λΈλμ μ€μΊνλ λ° μ΅μ νλ λΆμ°, 무 μ μ§ νμΌμμ€ν . HDFSλ ν΄λ¬μ€ν°μ λΆμ°λμ΄ λ°μ΄ν° μ μ₯μμ μννμ₯μ±μ μ 곡ν©λλ€. HDFS νμΌ λΈλμ νλ λλΌμ΄λΈλ μ 체 μμ€ν μ λ¬Έμ κ° μκ²Όμ λ λ°μ΄ν° μ μ€μ λ§κΈ° μν΄ ν΄λ¬μ€ν° μμ 볡μ λ©λλ€.
3κ°μ§ νΉμ§
Data Locality (λ°μ΄ν° μ§μμ±) : νλ‘μ HDFS λ΄μ μ λ ₯ λ°μ΄ν°κ° μλ λ Έλμμ 맡 νμ€ν¬λ₯Ό μ€νν λ κ°μ₯ λΉ λ₯΄κ² μλν©λλ€. ν΄λ¬μ€ν°μ μ€μν 곡μ μμμΈ λ€νΈμν¬ λμνμ μ¬μ©νμ§ μλ λ°©λ²
Replicated Blocks (볡μ λΈλ)
High Probability (λμ κ°λ₯μ±)
HDFS μ€κ³
λ²μ© νλμ¨μ΄λ‘ ꡬμ±λ ν΄λ¬μ€ν°μμ μ€νλκ³ μ€νΈλ¦¬λ° λ°©μμ λ°μ΄ν° μ κ·Ό ν¨ν΄μΌλ‘ λμ©λ νμΌμ λ€λ£° μ μλλ‘ μ€κ³λ νμΌμμ€ν
μ€κ³ νΉμ±
λ§€μ° ν° νμΌ
μ€νΈλ¦¬λ° λ°©μμ λ°μ΄ν° μ κ·Ό
λ²μ© νλμ¨μ΄
νλ‘μ λ Έλ μ₯μ κ° λ°μν νλ₯ μ΄ λμ λ²μ© νλμ¨μ΄(μ¬λ¬ μ 체μμ μ 곡νλ μ½κ² ꡬν μ μλ νλμ¨μ΄)λ‘ κ΅¬μ±λ λν ν΄λ¬μ€ν°μμ λ¬Έμ μμ΄ μ€νλλλ‘ μ€κ³
HDFSκ° μ λ§μ§ μλ μμ© λΆμΌ
λΉ λ₯Έ λ°μ΄ν° μλ΅μκ°
HDFSλ λμ λ°μ΄ν° μ²λ¦¬λμ μ 곡νκΈ° μν΄ μ΅μ νλμ΄ μκ³ μ΄λ₯Ό μν΄ μλ΅ μκ°μ ν¬μν©λλ€. HBaseκ° νλμ λμμ΄ λ μ μμ΅λλ€.
μλ§μ μμ νμΌ
λ€μ€ λΌμ΄ν°μ νμΌμ μμ μμ
HDFSλ λ¨μΌ λΌμ΄ν°λ‘ νμΌμ μλλ€. ν λ² μ°κ³ λλκ±°λ νμΌμ λμ λ§λΆμ΄λ κ²μ κ°λ₯νμ§λ§ νμΌμμ μμ μμΉμ μλ λ΄μ©μ μμ νλ κ²μ νμ©νμ§ μμΌλ©° λ€μ€ λΌμ΄ν°λ μ§μνμ§ μμ΅λλ€.
HDFS κ³ κ°μ©μ±
λ€μλ Έλλ μ¬μ ν λ¨μΌ κ³ μ₯μ (single point of failure - SPOF), λ€μλ Έλλ λ©νλ°μ΄ν°μ νμΌ λΈλ‘μ 맀ν μ 보λ₯Ό 보κ΄νλ μ μΌν μ μ₯μμ΄κΈ° λλ¬Έμ λ€μλ Έλμ μ₯μ κ° λ°μνλ©΄ 맡리λμ€ μ‘μ ν¬ν¨ νμ¬ λͺ¨λ ν΄λΌμ΄μΈνΈκ° νμΌμ μ½κ±°λ μ°κ±°λ μ‘°νν μ μκ² λ©λλ€.
μλ‘μ΄ λ€μλ Έλλ λ€μμ€νμ΄μ€ μ΄λ―Έμ§λ₯Ό λ©λͺ¨λ¦¬μ λ‘λνκ³ -> μλνΈ λ‘κ·Έλ₯Ό κ°±μ νκ³ -> μ 체 λ°μ΄ν°λ Έλμμ μΆ©λΆν λΈλ‘ 리ν¬νΈλ₯Ό λ°μ μμ λͺ¨λλ₯Ό λ²μ΄λ λκΉμ§ κ·Έ μ΄λ€ μμ²λ μ²λ¦¬νμ§ λͺ»ν©λλ€.
HDFS κ³ κ°μ©μ±(high availability -HA)μ μ§μν©λλ€. κ³ κ°μ©μ±μ νμ±λκΈ°μνλ‘ μ€μ λ ν μμ λ€μλ Έλλ‘ κ΅¬νλλ©° νμ±λ€μλ Έλμ μ₯μ κ° λ°μνλ©΄ λκΈ° λ€μλ Έλκ° κ·Έ μν μ μ΄μ΄λ°μ ν° μ€λ¨ μμ΄ ν΄λΌμ΄μΈνΈμ μμ²μ μ²λ¦¬ν©λλ€.
μ₯μ 볡ꡬμ νμ±
λκΈ° λ€μλ Έλλ₯Ό νμ±νμν€λ μ ν μμ μ μ₯μ 볡ꡬ 컨νΈλ‘€λ¬λΌλ μλ‘μ΄ κ°μ²΄λ‘ κ΄λ¦¬λ©λλ€.
μ₯μ 볡ꡬλ μ κΈ°μ μΈ μ μ§κ΄λ¦¬λ₯Ό μν΄ κ΄λ¦¬μκ° μλμΌλ‘ μ΄κΈ°νν μ μμ΅λλ€.
μ°μν μ₯μ 볡ꡬ(graceful failover) : μ₯μ 볡ꡬ 컨νΈλ‘€λ¬λ λ κ°μ λ€μλ Έλκ° μλ‘ μν μ λ°κΎΈκ² νλ λ°©λ²μΌλ‘ μ ν μμλ₯Ό μ μ΄ν μ μμ΅λλ€.
https://www.oreilly.com/library/view/hadoop-the-definitive/9780596521974/
https://www.oreilly.com/library/view/programming-hive/9781449326944/