비정규화 데이터셋 구축이 초래한 전처리 과정의 비효율

BI 분석가들은 분석 프로젝트 시작 시 매출 거래, 고객 인구 통계, 제품 속성, 반품, 예측, 운영 지표가 서로 다른 테이블에 분산되어 있는 환경에서 작업한다. 아마존 퀵사이트(Amazon QuickSight) 사용자들은 기존에 단일 비즈니스 질문에 답하기 위해 이러한 테이블들을 분석 시작 전 미리 거대한 하나의 비정규화(Denormalized) 데이터셋으로 합치는 전처리 과정을 거쳤다. 이 방식은 분석가에게 데이터 모델링 결정을 초기에 강제하며, 서로 다른 세분성(Grain)에 걸쳐 측정값을 중복 생성하고 유지보수 오버헤드를 발생시킨다. 특히 분석가는 리포트 시나리오가 바뀔 때마다 매번 새로운 데이터셋을 생성하여 합쳐야 하는 반복적인 작업 비용을 부담하며 분석 생산성의 저하를 경험했다.

논리적 관계 정의를 통한 '멀티 데이터셋 관계' 기능 도입

아마존 퀵사이트는 데이터셋 간의 논리적 관계를 정의하고 쿼리 실행 시점에 데이터를 결합하는 '멀티 데이터셋 관계(Multi-Dataset Relationships)' 기능을 도입했다. 이 기능은 테이블을 미리 평탄화(Flattening)하는 대신, 각 테이블을 독립적인 퀵사이트 데이터셋으로 유지하며 퀵사이트 토픽(QuickSight Topic) 내부에서 데이터셋 간의 관계를 선언하는 방식을 취한다. 퀵사이트 엔진은 사용자가 비주얼을 생성하거나 계산 필드, 필터를 적용할 때, 또는 자연어 Q&A를 요청하는 시점에 필요한 조인(Join)을 정확하게 구성하여 실행하는 런타임 조인(Runtime Join)을 수행한다. 분석가는 이제 물리적 결합 없이 논리적 연결만으로 다양한 분석 요구사항에 유연하게 대응할 수 있다.

데이터셋과 토픽 레이어로 분리된 2단계 모델링 구조

멀티 데이터셋 관계는 물리적 저장소와 논리적 정의를 분리한 데이터셋 레이어(Dataset Layer)와 토픽 레이어(Topic Layer)의 2단계 구조로 작동한다. 데이터셋 레이어는 각 테이블을 고유의 세분성(Native level of detail)을 가진 독립적 데이터셋으로 유지하는 물리적 층이다. 토픽 레이어는 이 데이터셋들이 서로 어떻게 연결되는지 정의하는 시맨틱 레이어(Semantic Layer) 역할을 수행하며, 런타임에 필요한 테이블만 조합하도록 제어하는 논리적 지도 역할을 한다. 현재 릴리스 버전의 관계 설정은 내부 조인(Inner Join) 시맨틱을 사용하므로, 결과에 표시되려면 두 데이터셋 모두에 일치하는 키가 존재해야 한다. 모델링 설계 시에는 중앙의 팩트 테이블을 중심으로 차원 테이블이 방사형으로 연결되는 스타 스키마(Star Schema)를 권장하며, 필요에 따라 스노우플레이크(Snowflake)나 갤럭시(Galaxy/Constellation) 스키마 패턴을 적용하여 조인 복잡도를 최적화할 수 있다.

데이터 중복 제거와 Amazon Q의 응답 정확도 향상

런타임 조인 구조는 데이터 중복 제거와 유지보수 공수 감소를 통해 분석 효율을 높인다. 분석가는 테이블을 한 번만 모델링하면 엔진이 비주얼에 실제 필요한 테이블만 호출하므로, 데이터 세분성 차이로 인해 측정값이 중복 계산되는 오류를 방지하고 컴퓨팅 리소스를 최적화할 수 있다. 또한 퀵사이트 토픽에 정의된 풍부한 메타데이터는 자연어 인터페이스인 Amazon Q의 응답 정확도를 결정하는 핵심 요소로 작용한다. Amazon Q는 토픽 레이어의 메타데이터를 통해 비즈니스 용어와 실제 필드 간의 매핑을 수행하며, 조인 키가 명확하고 스타 스키마 구조가 적용된 모델에서 더 빠르고 정확한 쿼리 경로를 찾아내어 사용자에게 정확한 분석 결과를 제공한다.

런타임 관계 도입을 위한 결정 프레임워크와 구현 가이드

사용자는 데이터 변경 빈도와 쿼리 성능 요구치에 따라 런타임 관계와 기존 사전 결합 방식 중 하나를 선택하는 결정 프레임워크(Decision Framework)를 활용할 수 있다. 리포트 시나리오가 빈번하게 추가되는 환경에서는 런타임 관계가 운영 반복 작업을 줄이는 데 유리하지만, 고정된 형태의 대규모 집계가 빈번하고 극도의 성능이 필요한 경우에는 사전 결합 방식이 효율적이다. AWS는 복잡한 모델링을 위해 'Data Modeling Patterns for Amazon QuickSight Multi-Dataset Relationships' 가이드를 통해 SQL 예제와 상세 구현 방법을 제공한다. 해당 가이드에서는 역할 수행 차원(Role-playing dimensions)이나 서로 다른 세분성을 가진 멀티 팩트 모델 처리법은 물론, 순환 조인(Circular joins), 재귀적 계층 구조(Recursive hierarchies), 불규칙한 계층 구조(Ragged hierarchies)에 대한 우회 방법(Workaround)을 상세히 설명한다. 상세 내용은 공식 페이지 https://aws.amazon.com/quicksight/에서 확인할 수 있다.