SlideShare a Scribd company logo
1 of 75
Download to read offline
Google을 통해 살펴보는
분산 파일 시스템의
현재와 미래
분신기술Lab I 김홍모
분산 파일 시스템




분산 파일 시스템
분산 파일 시스템




 파일 시스템이란?
파일을 저장하고 읽을 수 있는 시스템
분산 파일 시스템




파일 시스템과
 창고 관리
분산 파일 시스템




     메타 정보란?
물건의 위치를
꼼꼼히 기록해야
잃어버리지 않아요




            box99 ; 1열 2층
분산 파일 시스템




파일 시스템
분산 파일 시스템




저장하고자 하는 파일이
 너무 많을 경우에는?
분산 파일 시스템




여러 대의 컴퓨터를
 이용 한다면?
분산 파일 시스템




분산 파일 시스템이란?
   다수의 컴퓨터를
이용해서 구현한 파일 시스템
분산 파일 시스템




  많은 웹 서비스들이
분산 파일 시스템을 이용해서
    자료를 관리
GFS




Google File System(GFS)
GFS




 구글은 얼마나 많은
문서를 가지고 있을까?
GFS




색인된 문서 수 > 25,270,000,000
GFS




문서 하나의 크기를 1KB로 잡으면
     총 자료의 크기 >
   25,270,000,000 * 1KB
      = 25.27 TB
GFS




GFS(Google File System)
           노트는 필요 없다네
GFS




용도
Gmail 만들기




Gmail 만들기
Gmail 만들기




2004년
Gmail 만들기




     Google 최초의
Interactive Web Service




  효율             반응속도
Gmail 만들기




Gmail을 만들어 봅시다
Gmail 만들기




           재료들

         Google Servlet
            Engine



                          Big Table
Google File System
Gmail 만들기




    재료 소개 #1
Google Servlet Engine
 웹 서버 프로그래밍을 위한 도구


       Google Servlet
          Engine
Gmail 만들기




      재료 소개 #2
       BigTable
 GFS 위에서 구동되는 구글의 DBMS



         BigTable
Gmail 만들기




     방법 #1
GFS에 메일 자료를 직접 저장


        Google Servlet
           Engine

      Google File System
Gmail 만들기




작은 파일이 너무 많아요!
    요즘 두통이 심해
Gmail 만들기




       방법 #2
BigTable에 메일 자료를 저장

        Google Servlet
           Engine

          BigTable


      Google File System
Gmail 만들기




BigTable에 자료를
  저장하는 것은?
Gmail 만들기




GFS가 처리해야 할 파일 수 감소

   이것은 선물이야
Gmail 만들기




GFS 단일 마스터 구조
     모든 요청은 나를
     통해야 하지
Gmail 만들기




           방법 #3
               이중화

           Google Servlet
              Engine

    BigTable                BigTable


Google File System   Google File System
Gmail 만들기




  지금까지 우리는
1) 메일 자료를 잘 처리하며
  2) 서버 장애에 강한
     시스템을
    성공적으로
      구축
Gmail 만들기




문제는


비용
Gmail 만들기




비용 분석
GFS 복제 정책



  +
Gmail 만들기




비용 분석
GFS 복제 정책
+ 이중화 모델


+           ?
Gmail 만들기



외전

     2011년 2월 27일
Gmail 만들기



외전

     2011년 2월 28일
Gmail 만들기



외전

     2011년 3월 1일
Gmail 만들기



외전

     2011년 3월 2일



      복구 완료
Gmail 만들기




    비용 분석
GFS 복제 정책
+ 이중화 모델
+ Tape Backup

+         ?
Gmail 만들기




    전체 비용?


+
Gmail 만들기




결과는?
GFS를 뛰어넘자




GFS를 뛰어넘자
GFS를 뛰어넘자




 이 상황을 극복할
좋은 방법은 없을까?
GFS를 뛰어넘자




  GFS의 단점
1) 파일 수 문제
2) 마스터 장애에 취약
3) 고비용
GFS를 뛰어넘자




   작은 파일을
잘 처리하기 위해서는?
장애 영향을 줄이려면?
     나 홀로 외우기는
     이제 그만할래
GFS를 뛰어넘자




다수의 서버로 많은 메타 정보를
 효율적으로 관리할 수 있어야
 혼자서는 저 많은 자료를
 관리할 수 없어요
GFS를 뛰어넘자




#1 메타 정보 꾸러미 도입
이름 사전 순으로
정리하면 노트 주인만 정하면
                  A   하지만 노트들을 어떻게
                      분배해야 할까요?

                  B
됩니다.




                  …
                  Y
                  Z
GFS를 뛰어넘자




         #2 메타 정보 꾸러미와
            서버의 짝 맺음
                                                   나는 D
                                                   U 부터 D 까지 관리
    나는 T
    P 부터 T 까지 관리
                       X YZA B C D             D
                      W              E
                     V
T                   U                     F
                   T                       G
                   S                      H        나는 O
                    R                    I         E 부터 O 까지 관리
                     Q               J
                       PO        K
                            NM L
                                               O
GFS를 뛰어넘자




#3 서버에 장애가 발생하더라도
     영향을 최소화
                                                      나는 D
    나는 T                                              U 부터 D 까지 관리
    P 부터 T 까지 관리
    추가로 E 부터 O 도 관리       X YZA B C D             D
                         W              E
                        V
T                      U                     F
                      T                       G
                      S                      H



                                                  X
                       R                    I
                                                      오늘부터 휴가

                        Q               J
                          PO        K
                               NM L
                                                  O
GFS를 뛰어넘자




Distributed Hash Table
GFS를 뛰어넘자




작은 파일을 잘 처리하고
서버 장애 영향 최소화
     성공!
GFS를 뛰어넘자




저장 비용을 줄이려면?
GFS를 뛰어넘자




그전에 복제는 왜 할까?
GFS를 뛰어넘자



외전

        조선 왕조 실록




      춘추관(서울)   충주서고


     세종 8년 등사 해서 분산 보관
GFS를 뛰어넘자



외전

             조선 왕조 실록




 춘추관(서울)     충주서고   전주서고   성주서고


           세종 27년 2부씩 추가 등사
GFS를 뛰어넘자



외전

            조선 왕조 실록




  춘추관(서울)   충주서고   전주서고   성주서고


선조 25년 임진왜란으로 전주를 제외하고 모두 소실
GFS를 뛰어넘자



외전

        조선 왕조 실록




              전주서고


1997년 10월 1일 유네스코 세계기록유산으로 등록
GFS를 뛰어넘자




   복제를 하는 이유는
자료를 잃어버리지 않기 위해서
GFS를 뛰어넘자




자료는 안전하게 보호하지만
비용을 줄이는 방법은 없을까?



     비용   신뢰성
GFS를 뛰어넘자




  Erasure Code
자료의 일부를 잃어버려도
나머지 자료로 원본을 복구
GFS를 뛰어넘자




Erasure Code 사용 #1
 원본을 k 조각으로 분할
               k Data Slices




 D        D0   D1    D2 … Dk-1
GFS를 뛰어넘자




          Erasure Code 사용 #2
 분할된 자료를 이용해 코드 자료 생성

     k Data Slices              m Code Slices



D0   D1    D2 … Dk-1   Coding   C0 … Cm-1
GFS를 뛰어넘자




  Erasure Code 사용 #3
분할된 자료 및 코드 자료를 모두 저장

      k Data Slices        m Code Slices



 D0   D1   D2 … Dk-1   +   C0 … Cm-1
GFS를 뛰어넘자




             Erasure Code 사용 #4
 저장된 자료의 일부를 잃어버려도 원본을 복구

     k Data Slices    m Code Slices



D0   D1   D2 … Dk-1 + C0 … Cm-1       D
GFS를 뛰어넘자




     시뮬레이션
             MTTF = 27216h
12           MTTR = 24h + alpha
             Availability may vary by site env

10


 8


 6
             Additional Space (Ratio)
             Payload (Ratio)
 4
             Availability (# of 9)

 2


 0
GFS를 뛰어넘자




           비용 비교
  Erasure Code를 이용하면
      비용이 절반으로

           복제             Erasure Code
가용성        99.99999999%   99.999999999%
비용(원본대비)   300%           150%
GFS를 뛰어넘자




   낮은 비용으로
자료를 안전하게 저장하기
     성공!
GFS를 뛰어넘자




GFS를 뛰어넘는 두 가지 키워드
  1) 분산 메타 관리 체계
     2) Erasure Code
GFS를 뛰어넘자




Google의 답안은?

  Colossus
GFS를 뛰어넘자




KTH의 답안은?

 PrismFS !!
PrismFS




PrismFS
PrismFS




                              PrismFS 구조
                    Data Server Group   Data Server Group   Management Group

                                                                Deploy Map       Distributed Meta System


                                                             Status Collector

REST Client Group
                        REST Front          REST Front          Dash Board




                                                                                REST Front




                        REST Front          REST Front          REST Front

                                                                                          Distributed
                    Data Server Group   Data Server Group                              Directory Service
                                                            Data Server Group
PrismFS




       PrismFS 특징

1)   분산 메타 관리 체계
2)   Erasure Code 기반 자료 보호
3)   REST API
4)   모든 자료에 check-sum 적용
5)   통합된 관리 체계
QnA




QnA
감사합니다.
클라우드연구소 / 분산기술 Lab / 김홍모
     aadvarkk@kthcorp.com

More Related Content

Viewers also liked

H3 2011 모바일에서의 Location API 완전정복
H3 2011 모바일에서의 Location API 완전정복H3 2011 모바일에서의 Location API 완전정복
H3 2011 모바일에서의 Location API 완전정복KTH
 
2011년 KTH H3 컨퍼런스 Track B, 세션4 "Advanced Git" by A.J
2011년 KTH H3 컨퍼런스 Track B, 세션4 "Advanced Git" by A.J2011년 KTH H3 컨퍼런스 Track B, 세션4 "Advanced Git" by A.J
2011년 KTH H3 컨퍼런스 Track B, 세션4 "Advanced Git" by A.JAndrew J. Kim
 
H3 2011 파이썬으로 클라우드 하고 싶어요
H3 2011 파이썬으로 클라우드 하고 싶어요H3 2011 파이썬으로 클라우드 하고 싶어요
H3 2011 파이썬으로 클라우드 하고 싶어요KTH
 
H3 2011 반응형 웹디자인, 진짜 할 만 한가?
H3 2011 반응형 웹디자인, 진짜 할 만 한가?H3 2011 반응형 웹디자인, 진짜 할 만 한가?
H3 2011 반응형 웹디자인, 진짜 할 만 한가?KTH
 
H3 2011 앱 개발에 날개를 달자, 모바일 클라우드가 꿈꾸는 미래
H3 2011 앱 개발에 날개를 달자, 모바일 클라우드가 꿈꾸는 미래H3 2011 앱 개발에 날개를 달자, 모바일 클라우드가 꿈꾸는 미래
H3 2011 앱 개발에 날개를 달자, 모바일 클라우드가 꿈꾸는 미래KTH
 
H3 2011 하이브리드 클라우드 활용방안 및 도입전략
H3 2011 하이브리드 클라우드 활용방안 및 도입전략H3 2011 하이브리드 클라우드 활용방안 및 도입전략
H3 2011 하이브리드 클라우드 활용방안 및 도입전략KTH
 
H3 2011 대형사이트 구축을 위한 MySQL 튜닝전략
H3 2011 대형사이트 구축을 위한 MySQL 튜닝전략H3 2011 대형사이트 구축을 위한 MySQL 튜닝전략
H3 2011 대형사이트 구축을 위한 MySQL 튜닝전략KTH
 
H3 2011 하이브리드 앱 아키텍쳐 및 개발방법
H3 2011 하이브리드 앱 아키텍쳐 및 개발방법H3 2011 하이브리드 앱 아키텍쳐 및 개발방법
H3 2011 하이브리드 앱 아키텍쳐 및 개발방법KTH
 
하이브리드앱 아키텍쳐 및 개발 사례
하이브리드앱 아키텍쳐 및 개발 사례하이브리드앱 아키텍쳐 및 개발 사례
하이브리드앱 아키텍쳐 및 개발 사례동수 장
 
웹 소프트웨어 시대의 새로운 롤(role) 모델, 자바스크립트
웹 소프트웨어 시대의 새로운 롤(role) 모델, 자바스크립트웹 소프트웨어 시대의 새로운 롤(role) 모델, 자바스크립트
웹 소프트웨어 시대의 새로운 롤(role) 모델, 자바스크립트Rhio Kim
 

Viewers also liked (10)

H3 2011 모바일에서의 Location API 완전정복
H3 2011 모바일에서의 Location API 완전정복H3 2011 모바일에서의 Location API 완전정복
H3 2011 모바일에서의 Location API 완전정복
 
2011년 KTH H3 컨퍼런스 Track B, 세션4 "Advanced Git" by A.J
2011년 KTH H3 컨퍼런스 Track B, 세션4 "Advanced Git" by A.J2011년 KTH H3 컨퍼런스 Track B, 세션4 "Advanced Git" by A.J
2011년 KTH H3 컨퍼런스 Track B, 세션4 "Advanced Git" by A.J
 
H3 2011 파이썬으로 클라우드 하고 싶어요
H3 2011 파이썬으로 클라우드 하고 싶어요H3 2011 파이썬으로 클라우드 하고 싶어요
H3 2011 파이썬으로 클라우드 하고 싶어요
 
H3 2011 반응형 웹디자인, 진짜 할 만 한가?
H3 2011 반응형 웹디자인, 진짜 할 만 한가?H3 2011 반응형 웹디자인, 진짜 할 만 한가?
H3 2011 반응형 웹디자인, 진짜 할 만 한가?
 
H3 2011 앱 개발에 날개를 달자, 모바일 클라우드가 꿈꾸는 미래
H3 2011 앱 개발에 날개를 달자, 모바일 클라우드가 꿈꾸는 미래H3 2011 앱 개발에 날개를 달자, 모바일 클라우드가 꿈꾸는 미래
H3 2011 앱 개발에 날개를 달자, 모바일 클라우드가 꿈꾸는 미래
 
H3 2011 하이브리드 클라우드 활용방안 및 도입전략
H3 2011 하이브리드 클라우드 활용방안 및 도입전략H3 2011 하이브리드 클라우드 활용방안 및 도입전략
H3 2011 하이브리드 클라우드 활용방안 및 도입전략
 
H3 2011 대형사이트 구축을 위한 MySQL 튜닝전략
H3 2011 대형사이트 구축을 위한 MySQL 튜닝전략H3 2011 대형사이트 구축을 위한 MySQL 튜닝전략
H3 2011 대형사이트 구축을 위한 MySQL 튜닝전략
 
H3 2011 하이브리드 앱 아키텍쳐 및 개발방법
H3 2011 하이브리드 앱 아키텍쳐 및 개발방법H3 2011 하이브리드 앱 아키텍쳐 및 개발방법
H3 2011 하이브리드 앱 아키텍쳐 및 개발방법
 
하이브리드앱 아키텍쳐 및 개발 사례
하이브리드앱 아키텍쳐 및 개발 사례하이브리드앱 아키텍쳐 및 개발 사례
하이브리드앱 아키텍쳐 및 개발 사례
 
웹 소프트웨어 시대의 새로운 롤(role) 모델, 자바스크립트
웹 소프트웨어 시대의 새로운 롤(role) 모델, 자바스크립트웹 소프트웨어 시대의 새로운 롤(role) 모델, 자바스크립트
웹 소프트웨어 시대의 새로운 롤(role) 모델, 자바스크립트
 

H3 2011 Google을 통해 살펴보는 분산 파일 시스템의 현재와 미래