Tableau·Power BI·QlikView BI 설계와 성능 최적화

Tableau, Power BI DAX, QlikView를 중심으로 데이터 모델링, 계산 계층, 대시보드 배포와 거버넌스 설계 기준을 정리한다.

2026-08-14 · 최초 발행 2024-04-29

BI 플랫폼은 데이터 흐름을 어떻게 나누는가

Tableau 대시보드는 시트 기반 시각화를 조합하고 Extract 또는 Live 연결로 대화형 분석을 구성한다. 계산식과 LOD 표현식으로 집계 수준을 조절하며 컨텍스트 필터링을 활용할 수 있다.

Power BI의 DAX는 컬럼과 메저를 바탕으로 행 컨텍스트 및 필터 컨텍스트를 다루는 표현식 언어다. 관계, 역할, 보안이 포함된 모델과 결합해 지표의 의미를 일관되게 관리한다.

QlikView는 로드 스크립트와 Associative Engine을 통해 메모리 내 데이터를 결합하고 탐색한다. 전처리, 키 매핑, 증분 적재는 스크립트 계층에서 수행한다.

연결부터 배포까지 설계에 포함할 계층

데이터 소스는 RDB, 데이터 레이크, API, 파일처럼 다양한 형태가 될 수 있으며 ODBC/JDBC와 네이티브 커넥터가 함께 사용된다. 모델은 스타 스키마를 중심으로 날짜 테이블과 역할 차원을 분리하는 방식이 권장된다. Power BI는 관계와 디렉티드 필터 전파 모델을 제공하고, QlikView는 키 연관 모델을 활용한다.

계산을 어디에 둘지도 플랫폼별 차이를 만든다. Tableau는 계산식, LOD의 FIXED/INCLUDE/EXCLUDE, 테이블 계산으로 집계와 창 함수, 이동 집계를 구현한다. Power BI는 행 컨텍스트와 필터 컨텍스트를 구분하고 CALCULATE로 컨텍스트를 전환하며, 타임 인텔리전스 함수로 기간 비교와 누적 계산을 표준화한다. QlikView에서는 스크립트 전처리와 Set Analysis 기반 집합 계산, 메모리 내 연관 탐색이 결합된다.

대시보드에는 필터, 파라미터, 하이라이트, 드릴스루, 확장 툴팁이 포함될 수 있다. 액션, 북마크, 구독, 알림을 연결할 때는 KPI에서 분석을 거쳐 근거 데이터로 이어지는 드릴 경로를 먼저 정하는 편이 낫다. 레이아웃 그리드와 반응형 뷰도 이 흐름에 맞춰 구성한다.

배포 환경은 Tableau Server/Cloud, Power BI Service/Workspace, Qlik Enterprise로 나뉜다. 콘텐츠 승인 흐름과 데이터셋 인증 체계를 운영하고, RLS, 폴더·프로젝트 권한, 감사 로그, 계보(Lineage)를 관리한다. 비공개 상태에서 검토를 거쳐 프로덕션으로 올리는 승격 파이프라인이 필요하다.

플랫폼별 운영 특성 비교

지표 Tableau Power BI QlikView
성능 Hyper Extract 기반 대화형 속도 우수, 복잡 테이블 계산 시 튜닝 필요 Import 모델 메모리 성능 우수, DirectQuery는 소스 의존 인메모리 연관 엔진 고속 탐색, 스크립트 최적화 영향 큼
확장성 서버 클러스터링, 큐 관리, 구독·알림 확장 용이 Premium/Capacity 기반 스케일 아웃, 대규모 배포 용이 Publisher·서버 스케일 아웃, 증분 적재 스케일 우수
일관성 LOD·데이터 소스 공통 계산 재사용 한계 존재 모델·메저 중심의 의미 계층 재사용 강점 스크립트·마스터 아이템 관리, 설계 표준화 필요
안정성 성숙 생태계·시각화 안정성 Microsoft 365 통합·보안 안정성 장기 운영 사례 풍부, 스크립트 관리 성숙도 요구
운영 편의 시각화 설계 편의성 우수 거버넌스·배포 파이프라인 연계 우수 ETL+분석 일체형, 운영 자동화 유리

매출·운영·재무 분석에 적용하는 방식

매출과 수익성을 분석할 때는 날짜·고객·상품 소스 스키마를 표준화하고, 요약 테이블과 매출·마진 의미 계층을 구성한 뒤 사용자 역할별 RLS를 적용한다. Tableau에서는 LOD로 고객 수준의 집계를 고정하고 파라미터로 시나리오 분석을 만든다. Power BI에서는 DAX 타임 인텔리전스로 YTD/YoY를 표준 메저로 관리하고 컴포지트 모델로 핫·콜드 패스를 분리한다. QlikView는 증분 로드와 키 매핑으로 조인 비용을 낮추고 Set Analysis로 캠페인별 비교를 구현한다.

운영 지표는 CDC 또는 스트리밍 수집, 요약 큐, 대시보드 캐시, 알림 룰의 흐름으로 구성할 수 있다. SLA와 지연 알림을 함께 설정한다. Tableau에서는 Live 연결과 Extract를 혼합하고 데이터 드리븐 알림을 설정한다. Power BI는 DirectQuery, Aggregations, 자동 페이지 새로고침을 조합한다. QlikView는 빈번한 리로드 스케줄과 경량 요약 테이블을 병행한다.

재무 마감과 대사에서는 매출·원가 기준 데이터의 정합성을 검증하고, 차이 분석 리포트와 승인 워크플로를 연결한다. Tableau의 강조 규칙과 스토리 포인트는 검토 경로를 제시하는 데 쓰인다. Power BI는 계산 그룹으로 기간·환율 변환을 통일하고 승인 상태 컬럼을 보안에 반영한다. QlikView는 스크립트 단계에서 정합성 테스트와 예외 로그 출력을 처리한다.

리프레시·캐시성공실패소스 시스템RDB/Files/APIs수집·연결모델링스타 스키마/역할 차원알림·재시도로그 적재TableauExtract/LOD/테이블 계산Power BI모델/DAX/Calc GroupQlikView스크립트/연관 엔진대시보드 배포리포트/앱 배포시트/스토리 배포스케줄증분/집약캐시/쿼리 가속최종 사용자상호작용/드릴

최신성, 응답성, 통제 수준의 균형

Import나 Extract는 응답성에 유리하지만 최신성이 낮아질 수 있다. Live와 DirectQuery는 최신성을 확보하는 대신 소스 DB 부하와 지연이 늘어날 수 있다. 요약 테이블, 프리어그리게이션, 증분 로드, 필요 컬럼 최소화, 필터 선택지 제한은 성능을 개선하는 방법이다. 다만 과도한 집약은 분석 유연성을 떨어뜨리고, 지나치게 세밀한 모델은 응답성을 낮출 수 있다.

계산은 표준 메저와 계산 템플릿을 카탈로그화하고 이름 규칙과 주석을 일관되게 유지해야 한다. 시각화 계층의 계산은 민첩하지만 재사용성과 테스트성이 낮다. 모델 또는 스크립트 계층의 계산은 거버넌스에 유리한 대신 초기 공수가 증가한다.

운영 환경에서는 Dev→Test→Prod 승격, RLS/OLS, 데이터 품질 테스트 자동화, 사용량 모니터링을 함께 둔다. 통제가 엄격할수록 배포 속도는 낮아질 수 있고, 통제가 느슨하면 지표 정의의 일관성이 흔들릴 수 있다.

계산식과 로드 스크립트

환경 전제: Power BI Desktop 2024.8+, Tableau Desktop/Server 2023.3+, QlikView 12.x. 기능·UI 차이 존재, 최신 정보 확인 필요.

Power BI에서 기간 지표를 표준 메저로 관리하기

-- 날짜 테이블: 'Date'[Date]가 마크된 날짜 테이블일 것
Sales Amount := SUM('FactSales'[SalesAmount])

Sales YTD :=
TOTALYTD([Sales Amount], 'Date'[Date])

Sales Rolling 12M :=
VAR LastDate = MAX('Date'[Date])
RETURN
CALCULATE(
  [Sales Amount],
  DATESINPERIOD('Date'[Date], LastDate, -12, MONTH)
)

YoY % :=
VAR YoY = DIVIDE([Sales YTD] - CALCULATE([Sales YTD], SAMEPERIODLASTYEAR('Date'[Date])), CALCULATE([Sales YTD], SAMEPERIODLASTYEAR('Date'[Date])))
RETURN YoY

Tableau에서 LOD와 테이블 계산 사용하기

// 고정 고객 수 (필터 무시, 날짜만 적용)
{ FIXED [Customer ID] : MIN(1) }
// 대시보드에서: 총 고정 고객 수
WINDOW_SUM(SUM([Fixed Customer Flag]))
// 이동 평균(3기간)
WINDOW_AVG(SUM([Sales]), -2, 0)

QlikView 증분 적재와 키 매핑

// 증분 로드 전제: Max(LoadTS) 기반
LET vLastTS = NUM(PEEK('LoadTS', -1, 'FactSales')); // 이전 로드 타임스탬프
FactSales_Inc:
LOAD
  OrderID,
  CustomerID,
  ProductID,
  SalesAmount,
  LoadTS
FROM [lib://SalesDB/FactSales.qvd] (qvd)
WHERE LoadTS > $(vLastTS);

// 키 매핑
CustMap:
MAPPING LOAD CustomerID, Region
FROM [lib://Master/DimCustomer.qvd] (qvd);

FactSales:
LOAD
  OrderID,
  ApplyMap('CustMap', CustomerID, 'Unknown') AS Region,
  SalesAmount,
  LoadTS
RESIDENT FactSales_Inc;
DROP TABLE FactSales_Inc;

요약 테이블과 증분 적재가 만드는 변화

요약 테이블과 Extract/Import를 적용하면 쿼리 응답시간을 3070% 단축할 수 있다. 증분 로드와 필드 최소화는 데이터 리프레시 시간을 4060% 단축하는 기준이 된다. 표준 메저와 파이프라인을 도입하면 수동 추출·엑셀 결합 작업을 월 30시간 이상 줄일 수 있다.

지표 정의의 일관성이 높아지면 의사결정 신뢰도도 향상된다. 배포와 승격 체계는 변경 관리를 수월하게 만들고, 협업 및 셀프서비스 분석을 뒷받침한다. 도구 선택은 데이터 최신성 요구, 성능 SLA, 보안·거버넌스 요구, 조직의 기술 스택 사이의 트레이드오프를 기준으로 판단한다.

BITableauPower BIQlikView데이터 모델링