ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 데이터 모델의 성능 3 (분산 데이터베이스)
    SQLD (자격증)/1-2. 데이터 모델의 성능 2020. 3. 3. 18:53

    분산 데이터 베이스

     

    - 여러 곳으로 분산되어있는 데이터베이스를 하나의 가상 시스템으로 사용할 수 있도록 한 DB

     

    - 논리적으로 동일한 시스템에 속하지만 컴퓨터, 네트워크를 통해 물리적으로 분산되어 있는

     

      데이들의 모임, 물리적 Site 분산, 논리적으로 사용자 통합, 공유

     

     => 데이터베이스를 연결하는 빠른 네트워크 환경을 이용하여 데이터베이스를 여러 지역 여러

     

          노드로 위치시켜 사용성 / 성능 등을 극대화 시킨 데이터베이스라고 정의할 수 있다.

     


    분산 데이터베이스의 투명성(Transparency)

     

    1. 분할 투명성(단편화)

     

     - 하나의 논리적인 Relation이 여러 단편으로 분할되어 각 단편의 사본이 여러 Site에 저장

     

    2. 위치 투명성

     

     - 사용하려는 데이터의  저장 장소 명시 불필요. 위치정보가 System Catalog에 유지되어야 함

     

    3. 지역사상 투명성

     

     - 지역 DBMS와 물리적 DB 사이의 Mapping 보장, 각 지역 시스템 이름과 무관한 이름 사용 가능

     

    4. 중복 투명성

     

     - DB객체가 여러 Site에 중복 되어 있는지 알 필요가 없는 성질

     

    5. 장애 투명성

     

     - 구성요소(DBMS, Computer)의 장애에 무관한 Transaction의 원자성 유지

     

    6. 병행 투명성

     

     - 다수 Transaction 동시 수행시 결과의 일관성 유지, Time Stamp, 분산 2단계 Locking을 이용 구현

     

    => 대량 데이터의 지역적 처리나 글로벌 처리 등에서는 분산 데이터베이스가 유용하게 활용

     


    분산 데이터베이스 장단점

     

    장점

     

    - 지역자치성, 점증적 시스템 용량 확장

     

    - 신뢰성과 가용성

     

    - 효용성과 융통성

     

    - 빠른 응답 속도와 통신비용 절감

     

    - 데이터의 가용성과 신뢰성 증가

     

    - 시스템 규모의 적절한 조절

     

    - 각 지역 사용자의 요구 수용 증대

     

    단점

     

    - 소프트웨어 개발 비용

     

    - 오류의 잠재성 증대

     

    - 처리 비용의 증대

     

    - 설계, 관리의 복잡성과 비용

     

    - 불규칙한 응답 속도

     

    - 통제의 어려움

     

    - 데이터 무결성에 대한 위협

     


     

    분산 데이터베이스의 활용 방향성

     

    데이터베이스 분산구성의 가치

     

    - 통합된 데이터베이스에서 제공할 수 없는 빠른 성능 제공

     

    분산 데이터베이스의 적용 기법

     

    데이터베이스의 분산의 종류

     

    1. 테이블 위치 분산

     

     - 테이블의 구조는 변하지 않음

     

     - 테이블이 다른 데이터베이스에 중복되어 생성되지 않는다.

     

     - 설계된 테이블의 위치를 각각 다르게 위치시키는 것

     

     

    2. 테이블 분할(Fragmentation) 분산

     

     1) 수평분할(Horizontal Fragmentation)

     

       - 지사(Node)에 따라 테이블을 특정 칼럼 값을 기준으로 ROW를 분리

         

         * 칼럼은 분리되지 않는다.

      

       - 모든 데이터가 각 지사별로 분리되어 있는 형태

     

       - 각 지사에 있는 데이터와 다른 지사에 있는 데이터는 항상 배타적으로 존재

     

            * 한군데 집합시켜도 Primary Key에 의해 중복이 발생하지 않음

     

       2) 수직 분할 (Vertical Fragmentation)

     

       - 자사(Node)에 따라 테이블 칼럼을 기준으로 칼럼을 분리한다.

     

         * row 단위로는 분리되지 않는다.

     

        - 모든 데이터가 각 지사별로 분리되어 있는 형태를 가지고 있다.

     

        - 칼럼을 기준으로 분할하였기 때문에 각각의 테이블에는 동일한 Primary Key구조와 값을 가져야 함

     

         - 

     

    3. 테이블 복제(Replication) 분산

     

     동일한 테이블을 다른 지역이나 서버에서 동시에 생성하여 관리

     

    1) 부분 복제(Segment Replication)

     

      - 마스터 데이터베이스에서 테이블의 일부의 내용만 다른 지역이나 서버에 위치시킴

     

      - 통합된 테이블을 본사에 가지고 있으면서 각 지사별로는 지사에 해당된 ROW를 가지고 있는 형태

     

         * 지사에 존재하는 데이터는 반드시 본사에 존재

               -> 본사의 데이터는 지사데이터의 합

      

      - 각 지사에서 데이터 처리가 용이

     

      - 전체 데이터에 대한 통합처리도 본사에 있는 통합 테이블을 이용하게 되므로 JOIN이 발생하지 않는 빠른 수행 가능

     

      - 수평분할 분산과 마찬가지로 지사간에는 데이터의 중복이 발생 X,  본사와 지사간에는 중복이 항상 발생

     

       단점

     

        - 다른 지역간 데이터를 복제(Replication)하는데 많은 시간 소요

     

        - 데이터베이스와 서버에 부하(Load)가 발생함

     

         => 보통 실시간(On-Line) 처리에 의해 복사하는 것보다는 야간에 배치작업에 의해 수행됌

     

        - 본사와 지사 양쪽 모두 데이터를 수정하여 전송하는 경우 데이터의 정합성을 일치시키는 것이

     

         어렵기 때문에 가능하면 한쪽(보통 지사)에서 데이터의 수정이 발생하여 본사로 복제(Replication)를 함

     

    2) 광역 복제(Broadcast Replication)

     

      - 마스터 데이터베이스의 테이블의 내용을 각 지역이나 서버에 존재시킴

     

      - 통합된 테이블을 한 군데(본사)에 가지고 있으면서 각 지사에도 본사와 동일한 데이터를 모두 가짐

     

      - 지사에 존재하는 데이터는 반드시 본사에 존재

     

      - 본사에서 입력, 수정, 삭제가 발생 , 지사에서는 데이터를 조회하는 프로세스 발생

     

            -> 즉, 복사에서는 데이터 관리, 지사에서는 데이터 이용

     

      ※ 부분복제 : 지사에서 데이터 입력, 수정, 삭제 발생 -> 본사에서 이용

     

          광역복제 : 본사에서 데이터 입력, 수정, 삭제 발생 -> 지사에서 이용

     

    4. 테이블 요약(Summarization) 분산

     

     1) 분석 요약 (Rolup Summarization)

     

       - 지역간에 또는 서버 간에 데이터가 비슷하지만 서로 다른 유형으로 존재하는 경우가 있는데

     

         요약의 방식에 따라, 동일한 테이블 구조를 가지고 있으면서 분산되어 있는 동일한 내용의

     

         데이터를 이용하여 통합된 데이터를 산출하는 방식

     

        - 각 지사별로 존재하는 요약정보를 본사에 통합하여 다시 전체에 대해서 요약정보를 산출

     

     

     2) 통합 요약(Consolidation Summarization)

     

       - 분산되어 있느 다른 내용의 데이터를 이용하여 통합된 데이터를 산출하는 방식

     

       - 각 지사별로 존재하는 다른 내용의 정보를 본사에 통합하여 다시 전체에 대해서 요약정보를 산출

     

     

    -> 분할, 복제 분산이 제일 많이 쓰임

     

     

     

     

    댓글

Designed by Tistory.