티스토리 툴바


'독크루저'에 해당되는 글 2건

  1. 2011/11/17 [검색] row vs. column (2)
  2. 2011/11/11 대용량 통합검색 솔루션 '독크루저' 제품교육 안내 (2)

세상의 사건들을 이해하는 데에는 여러 가지 시각이 있을 수 있습니다.

이를테면 2011년 현재, 정치적 핫 이슈인 '한미FTA'라는 것도 '자유 무역을 증진시켜 경제 활성화에 이바지할 것이다'라는 주장과 '아직 성숙하지 않은 국내 제반 법제나 기타 공공 복지 정책에 심각한 피해를 줄 것이다'라는 주장이 맞섭니다(cf. FTA 논쟁). 단적인 또 다른 예로는, 컵에 물이 반이 있을 때 이걸 '반 밖에 안 남았네' '반이나 남아 있네'라고 보는 시각차도 있을 것입니다.

이런 시각차의 존재는 전산 분야라고 예외는 아닙니다. 'GOTO 문을 절대 쓰면 안 된다'라는 주장과 'GOTO, 필요하면 쓸 수도 있지.'라는 주장이 있고(cf. GOTO), 'big-endian이 낫다' 'little-endian이 낫다'라는 주장도 서로 맞섭니다(cf. endianness). 마치, '엄마가 좋아? 아빠가 좋아?'라는 물음처럼 답이 없는 문제들이죠(cf. 세상에서 가장 어려운 질문).

이 글에서 얘기하려는 'row-oriented 방식' 'column-oriented 방식'도 어떻게 보면 데이터 저장 방식에 대한 서로 다른 시각차라고 할 수 있습니다.



위와 같은 테이블 형태의 데이터는 RDBMS에서 많이 사용하는 전통적인 예제인데, 이것을 저장하는 방식은 다음과 같이 두 가지로 나눌 수 있습니다
.



방식 1. (학년, , 번호, 이름)을 하나의 레코드로 저장




방식 2. (학년) () (번호) (이름) 데이터들을 하나의 집합으로 보고, 별도 영역에 저장

보통 1번을 'row-oriented 저장 방식', 2번은 'column-oriented 저장 방식'이라고 부르는데, 각 저장 방식은 각각의 장단점이 있습니다. 이것의 장단점에 대해 이야기하려면 통상적인 DISK의 구조라든지 seek time, 데이터 페이지 구성 좀 더 로우레벨(low-level) 토픽들을 이야기해야 하는데 그렇게 되면 내용이 다소 길어지므로 각각의 장단점에 대해서는 다음 포스팅에서 다루도록 하겠습니다.

row-oriented
방식에서는 어떤 하나의 완결된 데이터 - 레코드를 꺼내 보고 싶을 때(SELECT), 또는 하나의 레코드를 갱신(UPDATE)해야 할 때, 바로 그 레코드 하나에 대해서만 접근해서 연산을 수행하면 됩니다. 이 방식의 장점은 단위 연산이 무척 빠르다는 것입니다. 하지만 전체 데이터 집합에서 '학년'에 해당하는 필드 값들만을 읽어 들이고 싶을 때는 불필요하게 '', '번호', '이름' 필드들도 같이 읽어야 한다는 단점이 있습니다
.

column-oriented
방식에서는 반대로 특정 필드 값 전체를 읽어 들여서 작업 수행을 하고자 할 때, 그 필드가 저장된 영역만을 한 번만 스캔하면 된다. 이 때문에 연산 효율이 상당히 높습니다. 또한, 레코드의 특정 필드 값을 업데이트하고자 할 때 다른 필드 값이 저장된 영역은 건드리지 않아도 되는 장점이 있습니다. 그러나 하나의 완결 레코드를 구성하기 위해서는 각 필드 값들이 저장된 영역을 다 뒤져서 일일이 가져와야 하는 단점이 있죠
.

따라서 각 저장 방식에 적합한 응용 분야는 차이가 있습니다. 레코드에 대한 빠른 읽기/쓰기 작업이 필요한 OLTP(Online Transaction Processing) 환경에서는 보통 row-oriented 저장 방식을 선호하고, 모든 레코드 필드 값을 배치(batch)로 다 읽어 들여서 통계나 기타 분석 작업 수행이 필요한 OLAP(Online Analytical Processing) 환경에서는 column-oriented 저장 방식이 유리합니다. 그러나 반드시 OLTP row-oriented, OLAP이면 column-oriented로 저장하는 것이 좋다는, 이분법 사고를 할 필요는 없습니다. row-oriented 방식으로도 수십~수백 테라 바이트의 데이터 분석 처리가 가능한 RDBMS들이 존재하니깐 말이죠(ex.
Teradata). 반대의 경우도 마찬가지입니다. 두 개의 방식 중 어떤 것을 쓰더라도 잘(!) 만들면 불가능은 사실, 없습니다. 다만, 물리적으로 각 방식의 장/단점은 분명 있으므로 취사/선택해서 쓰면 그만인 것이죠.

코난테크놀로지의 주력 사업 분야 중 하나는 기업용 검색 엔진입니다. 검색엔진이 수행하는 주 작업 - 검색 - 이 보통 OLTP라고 볼 수 있기 때문에 과거에는 row-oriented 방식에 많이 의존하고 있었습니다. 하지만, 점점 대용량화되는 검색 데이터들에 대한 분석 작업이나 기타 실시간으로 변하는 특정 필드 값들에 대한 추적/변경 작업의 용이성을 위해 최근에는 앞서 얘기한 column 방식의 저장 구조도 도입하게 됐습니다. 아직 기본(그렇다고 이 기본을 만들기 위해 쏟아 부은 우리 팀원들의 열정은 결코 적지 않았다는...) 단계라 가야 할 길이 아직 남아있긴 하지만, 멀지 않은 시점에 우리 엔진을 쓰는 여러 고객들에게 조그만 기쁨(?)을 안겨줄 수 있게 되길 희망해 봅니다


저작자 표시 비영리 변경 금지
크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by (주)코난테크놀로지

트랙백 주소 : http://blog.konantech.com/trackback/78 관련글 쓰기

댓글을 달아 주세요

  1. 8miles 2011/11/23 17:21  댓글주소  수정/삭제  댓글쓰기

    흥미로운 글 잘 봤습니다.
    비가 올 확률이 50%라고 하면 이건 비가 오는 것도 아니고 안 오는 것도 아니다라고 하시던 학교 교수님의 말씀이 생각나네요.

    • (주)코난테크놀로지 2011/11/24 13:31  댓글주소  수정/삭제

      코난테크놀로지에 관심을 가져주셔서 진심으로 감사드립니다. 어떤 기술을 어떻게 적용할 것인지, 또 그를 통하여 얻을 수 있는 효과는 어떤 것인가에 대한 이야기는 결국 기술을 바라보는 관점을 통하여 구체화되는 것 같습니다.

      더 나은 모습 보여드릴 수 있게 노력하겠습니다.
      감사합니다.


안녕하세요, 코난테크놀로지입니다. 

저희 코난테크놀로지는 고객사 및 협력사를 대상으로 대용량 통합검색 솔루션 '독크루저' 제품교육을 실시하고 있습니다. 연중으로 실시하는 이 교육은 사전 신청제로 운영되고 있으니 참가를 희망하시는 분은 코난 홈페이지에서 신청 해주시기 바랍니다.

참고로 정기 교육을 진행하시는 박지현 강사님은 멋진 외모뿐 아니라 순도 100%의 친절함을 제공하는 분이십니다. 검색솔루션을 이용하시면서 평소 궁금하셨던 점이 있으시면 교육을 기회로 강사님께 직접 여쭤보시며 자세히 알아가시는 것도 좋을것 같습니다.  

그럼 많은 관심과 참여 바랍니다.


■ 교육 대상자 : 검색시스템 운영자 및 개발자

■ 교육 커리큘럼




■ 2011년 교육일정
    - 교육 일정 및 강사는 사정에 따라 변경될 수 있습니다.
    - 수강 신청 인원이 일정 인원 미만일 경우 과정이 폐강될 수 있습니다.
       폐강시에는 미리 등록자에게 개별 통지 됩니다.

 

■ 교육장소 : 토즈 선릉점

 

■ 교육비 안내 및 문의처
    - 제품교육비용 : 500,000원(1인당/부과세 별도)
    - 무상교육 대상자이거나 본사발행 교육쿠폰 소지자의 경우 교육비 납부 대상에서 제외됩니다.
    - 제품교육 담당자 : jihyun.park@konantech.com / 02.3469-8619


■ 신청 방법 및 기간
    - 신청방법 : 코난테크놀로지 홈페이지 > 교육지원 > 제품교육에서 신청
    - 신청기간 : 월별 정기 교육일 3일 전까지 신청하셔야 교육받으실 수 있습니다.
       익월 교육신청은 정기 교육일 다음날부터 신청이 가능합니다.

저작자 표시 비영리 변경 금지
크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by (주)코난테크놀로지

트랙백 주소 : http://blog.konantech.com/trackback/74 관련글 쓰기

댓글을 달아 주세요

  1. buy facebook likes 2011/12/19 23:21  댓글주소  수정/삭제  댓글쓰기

    정보 감사합니다

  2. (주)코난테크놀로지 2011/12/20 09:37  댓글주소  수정/삭제  댓글쓰기

    네. 저도 감사합니다. 방문해주셔서 ^^