[ꡬμ§ν±] GFS, Bigtable, Chubby
**GFS(Google File System)**
β λμ©λ λ°μ΄ν°μ μ ν©ν λΆμ° νμΌμμ€ν
β 1λμ λ¨Έμ μ λ€λ£¨κΈ° νλ λ°μ΄ν°λ₯Ό λ€λ£¨μ§λ§, μμ λ°μ΄ν°μλ λΉ μ ν©
β νλμ νμΌ = N μ²ν¬(64MB)
β νλμ μ²ν¬λ 3κ°μ μ²ν¬μλ²μ 볡μ λμ΄ μ μ₯.Β
β νμΌ μ κ·Ό λ°©μΒ
β λμ©λ λ°μ΄ν°μ ν¨μ¨μ μ μ‘μ μ€κ³ μ΄μ .Β
**
**
**
**
**
**
**Bigtable**
β GFSλ₯Ό μ΄μ©νλ©΄μ μμ λ°μ΄ν°λ₯Ό ν¨μ¨μ μΌλ‘ μΈμ μκ² νλ λΆμ° μ€ν 리μ§.Β
β κ±°λν ν
μ΄λΈ
β λ‘μ°ν€, μΉΌλΌν¨λ°λ¦¬, νμ μ€ν¬ν ꡬ쑰 = λ€μ°¨μ 맡(Multidimensional map)
β not use sql. νλ‘κ·Έλλ° λ°©μμΌλ‘ μ°λ
***λ‘컬리ν°(locality)**
β νμν λ°μ΄ν°λ₯Ό νκ³³μ λͺ¨μμ λλ κ².Β
β λΆμ° μμ€ν
μ μ±λ₯ν₯μμ μν΄μλ λ‘컬리ν°λ₯Ό κ³ λ €ν λμμΈ νμ.Β
**
**
**Chubby**
β μμ λΆμ° νμΌ μμ€ν
β νμΌμμ€ν
, μ κΈ μλΉμ€(λ°°νμ μ΄), μ΄λ²€νΈ ν΅μ§(μν λ³κ²½μ μ΄λ²€νΈ ν΅μ§)
β 1kb λ―Έλ§μ νμΌλμ
β chubby 5 cell -> 5 replica
β μ½κΈ°μ μ΅μ ν λμ΄ μμ.Β
β νμΌμ λΆλΆμ
λ°μ΄νΈλ₯Ό ν μ μμΌλ©΄, νμΌ μ 체λ₯Ό μ
λ°μ΄νΈ ν΄μΌν¨.Β
**νμΌ μ κΈ**
β 곡μ μ κΈ Β => νμΌ μμ λ°©μ§Β
β λ°°νμ μ κΈ Β => μμ ν νμΌ μμ
**μΈλΆ 리μμ€ μ κΈΒ **
**μνμΒ **
β ν΄λΌμ΄μΈνΈμ μμ² μ ν¨μ± νλ³ λ°μ΄ν°
**failover**
β λ§μ€ν° μ μ§μ, λ€λ₯Έ replicaκ° λ§μ€ν°λ‘ μ ν.
β λ§μ€ν° μ ν μ¬μ΄μ μκ°μΌλ‘ νμμμ λ°μ κ°λ₯μ± μμ.Β
**μ΄λ²€νΈ**
β νμΌ μμ± λλ μ
λ°μ΄νΈμ, μ΄λ²€νΈ λ°μ.Β
β κ° μλ²λ€μ μλμ, νΉμ λλ ν 리μ νμΌμ λ§λ€μ΄μ μμ μ μ£Όμ κΈ°λ‘.Β
β λ§μ€ν°λ κ·Έ λλ ν 리λ₯Ό ν΅ν΄μ μλ² μμ/μ’
λ£λ₯Ό κ°μΒ
β μμΌλ‘ μλ²κ° λ§μ€ν°λ₯Ό κ°μ ν μλ μμ.Β
**μΊμ¬Β **
β chubby νμΌμ μ½μΌλ©΄, κ·Έ λ΄μ©μ μΊμ¬ν΄μ ν΄λΌμ΄μΈνΈμμ λ€μ μμ²μ, ν΄λΉ λ°μ΄ν° μ μ‘.Β
β νμΌ λ΄μ© μ
λ°μ΄νΈμ, chubbyλ λͺ¨λ μΊμ¬λ₯Ό νκΈ°(μ€λλ μΊμ¬μ μ¬μ© μ κ±°)
**λ§μ€ν° μ μΆ κΈ°λ²**
β λ€μν κ³ μ₯ λ°μμ΄ μμ§λ§ λ§μ€ν° μ λ° κΈ°μ€μ νλ.Β
β λ§μ€ν°λ μ λ° μ΄μμ λ νλ¦¬μΉ΄κ° μ°κ²°λμ΄ μλ μ₯μμμ λνλλ€.Β
β κΈ°λ³Έ 5κ°μ λ νλ¦¬μΉ΄λ‘ κ΅¬μ±λκΈ° λλ¬Έμ μ μμλμ μν΄μλ 3κ°μ΄μμ΄ μ°κ²°λ μνμ¬μΌ νλ€.Β
*** 컨μΌμμ€ μκ³ λ¦¬μ¦(Consensus algorithm) β Paxos**
β κ°μ₯ λμ λ²νΈλ₯Ό μ ννκ³ , ν©μλ₯Ό μ΄λμ΄ λ΄λ.. ([http://wn.com/paxos_algorithm](http://wn.com/paxos_algorithm))
**λ§μ€ν°λ¦¬μ€(master lease)**
β μΌμ ν μκ°μΌλ‘ paxosμ μ μκ³Ό μ½μμ μλ΅νκ³ μλ½μμλΆν° μμ
β λ§μ€ν°κ° μ£Όλνμ§λ§, κ³Όλ°μ μ΄μμ ν©μκ° μμ΄μΌ νλ€.Β
β λ§μ€ν°λ¦¬μ€λ λ§μ€ν°κ° μ μ λμνλν κ³μ κ°±μ .
β μ 리νλ©΄, λ§μ€ν°λ¦¬μ€λ λ§μ€ν°κ° μ΄μμμλ, λ€μ λ§μ€ν°λ₯Ό μ μ/μ½μ λ¨κ³μμ΄ ν©μλ₯Ό μ£Όλνμ¬ λ€μ λ§μ€ν°λ₯Ό μ μΆνλ μκ°μ λ§νλ€.μμ ν μλ‘μ΄ μ μΆμ λ§μ€ν°κ° μ μ§λμ΄ λ¦¬μ€κ° κ°±μ λμ§ μμΌλ©΄, λ§μ€ν°κ° μλ μνκ° λ°μλλλ°, κ·Έλ λμνμ¬, μλ‘μ΄ λ§μ€ν°λ₯Ό μ μΆνλ€.Β