DW, DM, BI 정리
1. OLTP (On-Line Transaction Processing) - 운영계 시스템 / 전통적 데이터베이스 시스템
: 여러 과정의 연산이 하나의 트랜잭션으로 실행하는 프로세스
예를 들어, A라는 사람이 B라는 가게에서 C물건을 구입하는 프로세스라면
1. A사람이 B사람에게 C물건의 값인 1,000원을 지급
2. B사람은 A사람에게 C물건을 제공
3. B사람은 A사람에게 C물건 값인 1,000원 획득
이러한 논리적인 과정이 하나의 프로세스로 이루어져 DB 내에선 각 테이블에 따라 실행된다. 이 중 하나의 과정이라도 빠지게 되면 해당 프로세스는 에러가 나고, 모든 단계를 다시 시작해야한다.
이처럼 OLTP 환경에서는 Insert, Update, Delete하는 일련의 과정을 하나의 프로세스로 움직인다.
OLTP 특징
- 트랜잭션이 일어나는 과정/프로세스가 핵심이고 현재시점이 중요하다.
- 데이터를 저장하는 것이 가장 중요하고 처리속도 또한 빨라야하기 때문에 분산처리, 정규화가 이루어져야 한다.
2. OLAP (On-Line Analytical Processing) - 정보계 시스템
: 대용량 데이터를 고속으로 처리하고, 쉽고 다양한 관점에서 추출, 분석할 수 있도록 지원하는 분석 기술
OLAP 특징
- 운영계의 데이터(OLTP)를 정보계로 분석하는 것
- OLAP에서는 "분석"이 핵심이 되기 때문에 이력(날짜)이 가장 중요한 속성이다. -> (과거, 현재)
- 데이터를 조회하는 것(Select)이 가장 중요하고, 그 후 Insert가 발생하기 때문에 메모리 성능도 중요하다.
- 빠른 조회 때문에 정규화가 아닌 반정규화의 개념이 중요하다.
- 테이블 자체를 쪼개는 것이 아니라 가장 빠르게 조회할 수 있도록 Fact, Dimension 테이블 단위로 구성되어 있다.
OLTP 환경과 OLAP 환경에서의 데이터
- OLTP 환경에서 데이터들은 정규화가 기본으로 지켜진다. 정규화가 지켜지지 않으면 무결성 원칙에 위배되어 각 비즈니스에 맡게 적재되도록 설계된 데이터가 들어올 때 문제를 일으키기 때문이다.
- OLAP 환경은 각 OLTP에 있는 데이터가 모여 정보를 만들어 내는 것이 중요하기 때문에 정규화가 중요하지 않고 속성(열)의 의미가 중요하다.
이처럼 운영계 시스템 OLTP 즉, 한 개의 트랜잭션이 발생하는 일련의 과정을 하나의 프로세스로 움직이기 때문에 정보 저장, 운영에 중점을 두었다. 하지만 데이터 양이 방대해지고 데이터를 통해 인사이트를 찾으려는 수요가 폭발적으로 증가하면서 정보계 분석의 중요성이 증가한 것이다.
OLTP 데이터(ERP)를 분석관점에서 풀어 의사결정자들에게 정보를 제공하는 데이터로 바꾸기 위해 OLAP가 탄생했고, DW/DM/BI 개념이 등장하게 된 것.
OLTP 환경에서 OLAP 환경으로 데이터를 보내는 과정을 "ETL기술"로 처리해 DW가 만들어진다.
이때 ETL 내에 데이터를 이동시키는 길을 "데이터 파이프라인"이라고 한다.
3. DW (Data Warehouse)
: 한 기업에서 사용하는 모든 시스템들의 데이터를 저장한 시스템. 생산/제조/인사/고객 데이터 등 OLTP에서 각각 분할된 시스템 데이터가 OLAP의 DW에서 하나로 합쳐진 것. "분석"을 원칙으로 하기 때문에 OLAP 환경으로 개발된다.
따라서 DW의 용량은 OLTP보다 훨씬 클 것이다. 그렇기에 DW에 BI 솔루션을 도입해 데이터를 시각화한다면, BI 화면에서 DW에 있는 데이터를 가져오는데 로딩시간이 길어져 퍼포먼스 문제가 발생하게 된다. 이런 문제를 해결하기 위해 데이터 마트로 구축하는 것이다.
4. DM (Data Mart)
: DW의 데이터를 주제영역별로 나누어 각 주제에 맞는 데이터를 따로 보관하여 생성한 두번째 DW
주제별로 구성된 DM에 BI를 연결시켜 퍼포먼스를 향상했고, 이러한 로직대로 OLAP 환경이 구축된다.
정리하자면, 데이터베이스, 데이터 웨어하우스, 데이터 마트까지 ETL을 통해 주제영역별로 나누어 데이터를 보낸 후, 데이터 마트가 완성되면 BI는 해당 데이터 마트를 바라보며 데이터를 시각화한다.
단, 마트를 구성하게 된다면 하나의 마트에는 하나의 BI 화면이 보여져야하기 때문에, 다른 데이터의 BI 화면을 개발하고 싶다면 해당 주제에 맞는 데이터 마트를 따로 구성해야한다.
5. BI (Business Intelligence)
: 기업에서 데이터를 수집, 정리, 분석하고 합리적이고 효율적인 의사결정을 내리는 데 필요한 인사이트를 제공한다.
데이터가 어떻게 생겼는지 확인하고 이상한 점은 없는지 한눈에 확인하기 위해 대부분 데이터를 시각화해서 본다. 데이터를 수집하고 현황을 파악하기 위해 데이터 속에서 필요한 것들을 집계하여 보고자 한다. 그 과정에서 수치만 나와있는 표로는 현황을 모니터링하기 힘드니 알아보기 쉽게 데이터를 시각화해서 보고자 하는데 이때 쓰이는 게 BI 도구(Tableau, PowerBI, Looker Studio)
OLTP와 OLAP환경의 차이
안녕하세요 투자하는 개발자 투개자입니다.오늘은 OLTP와 OLAP환경에 대해 알아보겠습니다.소위 운영계라는 전통적 데이터베이스 시스템에선 OLAP라는 개념이 필요없다고 생각합니다.이유는 한개
in-harvey-it.tistory.com
<1. 빅데이터의 기초 지식> 빅데이터를 시각화(BI)하기까지의 과정
대학생때 태블로를 들어보기는 했지만 해당 툴을 실제 기업에서 쓸 거라고는 생각도 못했던 것 같습니다. 우선 데이터를 시각화해서 보고자 하는 요구가 존재할까? 에 대한 의문이 있었는데요.
5ohyun.tistory.com