ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • STRATA
    VERTICA/03. Architecture 2017. 3. 17. 15:17



    버티카 튜플무버가 ROS파일을 병합할때 파라메터 MoveOutInterval 에 따라 조절이 되지만 몇가지 더 참조하는것이 있다.

    그것은 글 제목과 같은 STRATA 이다.


    아래 그림을 보면 좀더 이해가 쉬울 것이다.

    요약하면 특별한 경우를 제외하곤 큰놈과 작은놈은 저어얼~~~~~대 합쳐지지 않는다. 서로 어색해하나??



    이유는 큰 놈(ROS)과 작은 놈ROS) 을 병합하게되면 안좋은 점이 몇 가지 있겠지만. 그중에서도 

    1.병합하는 횟수가 많아져 튜플무버가 힘들어한다.

    2.기본적으로 버티카는 write once 아키텍처인데 큰놈과 작은놈을 병합해봤자 큰놈기준에서 전체크기는 크게 늘어자지 않겠지만 합쳐진 큰덩이라 파일을 다시 만들어야 하므로 마찬가지로 튜플무버가 힘들어한다.(http://vertica.tistory.com/13)


    튜플무버가 사람이라면 엄청 싫어하겠지..


    이러한점을 보완하고자 STRATA 개념을 도입하였다.

    그래서 strarum 0~4까지 5단계 구간으로 나누어지고 해당하는 strarum 그룹끼리만 병합이 된다.

    각 strarum 마다 병합이 되는 기준은 ROSPerStratum 파라메터에 의해 결정이 된다. (이 파라메터수보다 적다면 mergeout을 하지않는다.)


    다만 사용자가 do_tm_task를 통해 mergeout을 하게 되면 strarum 그룹과 ROSPerStratum 파라메터를 무시하고 ROS갯수를 1로 만들게 된다.


    ROS갯수가 제한이 있다고해서(1024개) 무리하게 ROS의 갯수를 1로 만드려는 행위는 하지 않았으면 좋겠다.

    (큰 문제가 발생하지 않는 한 강제적으로 do_tm_task를 통해 mergeout을 하지말라는 이야기다... 원인을 찾는것이 더 우선...)



    추가적으로 튜플무버가 참조하는 파라메터는 여기를 참조하면 되겠다.

    https://my.vertica.com/docs/8.0.x/HTML/index.htm#Authoring/AdministratorsGuide/ConfiguringTheDB/TupleMoverParameters.htm


    감사합니다.


    'VERTICA > 03. Architecture' 카테고리의 다른 글

    버티카 Eon모드  (0) 2018.12.24
    Projection : sort key의 중요성  (0) 2016.06.01
    버티카의 독창성  (0) 2016.05.25
    Vertica 특장점 - Column 기반 DBMS  (0) 2015.08.10
    Vertica 특장점 - Pure MPP 아키텍처  (0) 2015.08.10

    댓글

Designed by Tistory.