OLLTP 대 OLAP

이것은 실제로 사용되는 데이터 엔지니어링 기술의 요약입니다.

개인 기록용으로 작성되었습니다.

https://github.com/mjs1995/muse-data-engineer/blob/main/doc/BI/olap.md

GitHub – mjs1995/muse-data-engineer: 데이터 엔지니어로 성장하기

데이터 엔지니어가 되십시오. GitHub에서 계정을 생성하여 mjs1995/muse-data-engineer 개발에 기여하십시오.

github.com


OLTP 대 OLAP


https://learn.microsoft.com/en-us/system-center/scsm/olap-cubes-overview?view=sc-sm-2022

특성 거래 처리 시스템(OLTP) 분석 시스템(OLAP)
주요 읽기 패턴 키로 검색되는 쿼리당 몇 개의 레코드 많은 데이터 세트에 대한 집계
주요 쓰기 패턴 사용자 입력의 임의 액세스, 저지연 로깅 대량 가져오기(ETL) 또는 이벤트 스트림
주요 용도 웹 애플리케이션을 통한 최종 사용자/소비자 의사 결정 지원을 위한 내부 분석가
데이터 프레젠테이션 데이터의 현재 상태(현재 시점) 시간이 지남에 따라 발생한 이벤트의 역사
레코드 크기 기가바이트에서 테라바이트로 테라바이트에서 페타바이트로

온라인 거래 처리(OLTP)

  • 회사에서 모든 거래 및 기록을 저장하는 데 사용하는 데이터베이스를 OLTP(온라인 거래 처리) 데이터베이스라고 합니다.

  • INSERT, UPDATE, DELETE 등의 트랜잭션 방식은 물론 특정 정보를 빠르게 찾는 데 이상적입니다.

  • OLTP 시스템은 실제로 발생하고 기록되는 원시 데이터의 “무엇”에 초점을 맞추고 현재 거래 상태를 정확하게 기록하고 업데이트하는 것이 목표입니다.

    반면 OLAP 시스템은 수집된 데이터를 의사결정에 활용하는 측면을 담당하기 때문에 ‘왜’가 관건이다.

  • OLTP 시스템
    • MySQL
    • PostgreSQL
    • 아마존 오로라
    • 오라클 RDBMS
  • OLTP 환경
데이터웨어 하우스 OLTP 시스템
작업량 임시 쿼리 및 데이터 분석 지원 미리 정의된 작업만 지원
데이터 수정 정기 자동 업데이트 개별 명세서를 제출한 최종 사용자의 업데이트
스키마 디자인 부분적으로 비정규화된 스키마로 성능 최적화 완전히 정규화된 스키마를 사용하여 데이터 일관성 보장
스캐닝 데이터 수천에서 수백만 개의 행 포함 한 번에 몇 개의 레코드에만 액세스
기록 데이터 수개월 또는 수년의 데이터 저장 몇 주 또는 몇 달 동안만 데이터 저장

온라인 분석 처리(OLAP)

  • OLAP(온라인 분석 처리) 시스템은 다차원 분석 쿼리에 신속하게 응답하는 컴퓨팅 접근 방식이며 많은 비즈니스 인텔리전스, 분석 및 데이터 과학 응용 프로그램에서 일반적입니다.

  • OLAP는 최종 사용자가 다차원 정보에 직접 액세스하고 정보를 대화식으로 분석하여 의사 결정에 사용하는 프로세스입니다.

  • 기존 관계형 데이터베이스 시스템과의 주요 차이점은 OLAP 시스템의 데이터가 미리 집계된 다차원 형식으로 저장된다는 것입니다.

  • 특성
    • 다차원성: 사용자가 콘텐츠 수준에서 정보를 분석할 수 있습니다.

    • 직접 접근: 사용자는 전산부서와 같은 정보 중개자를 거치지 않고 원하는 정보에 직접 접근합니다.

    • 대화형 분석: 사용자는 시스템과 상호 작용하여 정보를 분석하고 원하는 결과를 얻을 때까지 계속 분석합니다.

    • 의사결정에 사용: 사용자가 비즈니스의 전반적인 상황을 이해하고 의사결정을 지원합니다.

    • 데이터의 시계열을 유지합니다.

      예를 들어 메트릭 값의 변화를 감지할 수 있습니다.

    • 분석가가 일반적으로 실행하는 쿼리는 임시 쿼리이므로 시스템은 스키마 엔지니어링 없이 모든 비즈니스 질문에 답할 수 있어야 합니다.

      모든 차원에서 데이터를 빠르게 수집하고 쿼리해야 합니다.

    • 관계형 데이터베이스와 달리 데이터는 많은 중복으로 저장될 수 있습니다.

      이는 결과 수집 속도를 높이거나(예: 조인 방지) 데이터를 시계열로 개발해야 하기 때문에 바람직합니다.

    • 비즈니스 질문에 답하기 위해 많은 양의 데이터를 스캔해야 할 수도 있습니다.

  • 주요 기능
    • 슬라이싱 및 다이싱: 다차원 쿼리의 기본은 사용자가 큐브의 어느 부분을 보고 싶은지 정의하는 것입니다.

      다차원 쿼리는 사용자가 큐브의 일부를 보고 싶은 모양으로 슬라이스하는 것과 같습니다.


      • https://www.javatpoint.com/olap-operations
    • 드릴다운: 드릴다운은 데이터의 요약 수준에서 보다 구체적인 세부 데이터로 단계별로 이동하는 분석 기술입니다.


      • https://www.javatpoint.com/olap-operations
    • 드릴업(roll-up): 사용자가 드릴다운과 반대 방향으로 정보를 분석하여 작은 단위에서 큰 단위로 집계

      • https://www.javatpoint.com/olap-operations
    • Drill-Across: 다른 큐브의 데이터에 액세스
    • Drill-Through: OLAP 시스템에서 데이터 웨어하우스 또는 OLAP 시스템에 있는 자세한 데이터에 액세스합니다.

    • 피벗: 사용자는 보고서의 행, 열 및 페이지 차원을 임의로 변경할 수 있습니다.


      • https://www.javatpoint.com/olap-operations
    • 필터: 보고서에 표시되는 데이터를 특정 기준(데이터 기반 계층, 속성, 항목 이름)을 충족하는 항목으로 제한합니다.

  • OLAP 시스템
    • 아마존 레드시프트
    • HP 버티카
    • 테라데이타

참조