객체‑지향 데이터 웨어하우스에서 시계열·아카이브 데이터 모델링 및 쿼리 연산자 설계

읽는 시간: 6 분
...

📝 Abstract

This paper deals with temporal and archive object-oriented data warehouse modelling and querying. In a first step, we define a data model describing warehouses as central repositories of complex and temporal data extracted from one information source. The model is based on the concepts of warehouse object and environment. A warehouse object is composed of one current state, several past states (modelling value changes) and several archive states (summarising some value changes). An environment defines temporal parts in a warehouse schema according to a relevant granularity (attribute, class or graph). In a second step, we provide a query algebra dedicated to data warehouses. This algebra, which is based on common object algebras, integrates temporal operators and operators for querying object states. An other important contribution concerns dedicated operators allowing users to transform warehouse objects in temporal series as well as operators facilitating analytical treatments.

💡 Analysis

**

1. 연구 배경 및 필요성

  • 전통적인 데이터 웨어하우스는 관계형·다차원 모델에 기반해 시계열 데이터를 단순히 “스냅샷” 형태로 보관한다.
  • 의료·재활 분야처럼 데이터 구조가 복잡하고, 장기적인 추세 분석이 필수인 도메인에서는 상세한 변천사와 요약된 아카이브를 동시에 관리해야 함.
  • 기존 연구(

📄 Content

한국어 번역 (2000자 이상)

오늘날 기업들은 방대한 양의 정보를 분석 및 의사결정 지원 목적으로 활용하기 위해 데이터 웨어하우스 기반의 의사결정 지원 시스템(OLAP)을 도입하고 있다[28]. 데이터 웨어하우스[7,18,28]는 의사결정에 필요한 데이터를 저장하는 저장소이며, 운영 데이터베이스에서 추출한 데이터를 원천 데이터(source)라 부른다. 우리의 연구[20,21,22,23,26]는 데이터 웨어하우스 접근법을 기반으로 한 의사결정 지원 시스템(DSS) 분야에 위치한다. 본 연구는 REANIMATIC¹ 프로젝트의 일환으로, 특히 중환자실에서 환자 치료의 질을 향상시키고 환자 경과를 개선하기 위한 분석을 효율적으로 지원할 수 있는 의사결정 시스템을 개발하는 것을 목표로 한다.

우리의 접근법은 의사결정 시스템 내에 두 개의 저장 공간을 두는 이분법에 기반한다[3].

  1. 데이터 웨어하우스(data warehouse) – 생산 데이터베이스에서 추출한 일부 데이터를 중앙에 집중 저장한다. 이 추출본은 의사결정 지원에 필요한 핵심 데이터를 포함하며, 통합·이력화된 형태로 저장된다. 데이터는 효율적인 관리와 이력 보존을 용이하게 하는 모델에 따라 조직된다.

  2. 데이터 마트(data mart) – 데이터 웨어하우스에서 파생된 부분집합이다. 추출된 데이터는 특정 의사결정자 집단이나 특정 용도(상관관계 탐색, 통계 소프트웨어 등)에 맞게 조정된다. 데이터 마트는 의사결정 처리를 용이하게 하는 전용 모델에 따라 조직된다.

따라서 우리의 연구 목표는 복합적이고 진화 가능한 데이터 웨어하우스와 데이터 마트에 특화된 표현 모델과 조작 언어를 규정하는 것이다. 현재까지 이중 문제(복합·진화 가능한 데이터 모델 제공 + 해당 모델을 다루는 조작 언어 규정)를 다루는 연구는 거의 없으며, 이는 의사결정 시스템 분야에서 중요한 과제로 남아 있다.


1. 기존 연구와 우리 접근법의 차별점

우리의 초기 연구는 의사결정 지원 시스템의 기능적 아키텍처를 정의하였다[26] (그림 1 참조). 여기서는 세 가지 주요 단계—통합, 구축, 구조화—를 구분한다.

  • 통합(integration) – 서로 다른 형식·모델·의미를 가진 다양한 원천 데이터를 하나의 전역 소스로 통합한다. 전역 소스는 ODMG 표준 객체지향 데이터 모델[6]에 따라 기술된다. 객체지향 패러다임을 선택한 이유는 의료 분야에서 흔히 사용되는 이기종 데이터 소스를 통합하는 데 적합하기 때문이다[4,18]. 전역 소스는 가상이며, 실제 데이터는 원천 시스템에 그대로 존재하고, 웨어하우스가 갱신될 때마다 추출된다. 통합은 연합 데이터베이스[24] 혹은 분산 데이터베이스[17] 기술을 활용한다.

  • 구축(construction) – 의사결정에 필요한 데이터를 추출하고, 필요에 따라 상태 변화를 보존하면서 웨어하우스에 복제한다. 결과적으로 웨어하우스는 물리적으로 구현된 이력화된 데이터 컬렉션이 된다. 웨어하우스 모델은 복합 구조[18]와 시간에 따른 데이터 진화를 지원해야 한다[18,31].

  • 구조화(structuration) – 정보를 데이터 마트에 재조직하여 OLAP[8]이나 데이터 마이닝[10] 같은 분석 응용 프로그램이 효율적으로 동작하도록 만든다. 산업계에서는 Express, Warehouse Builder, Business Object, Impromptu 등 다양한 도구가 제공된다. 데이터 마트는 일반적으로 다차원 형태[1,22]로 조직된다.

이러한 구조는 두 가지 관점을 제공한다.

  1. 컴퓨터 관점 – 웨어하우스 중심의 직접 질의.
  2. 사용자 관점 – 데이터 마트를 통한 분석 지원.

2. 기존 연구의 한계

데이터 웨어하우스와 데이터 마트에 관한 기존 연구는 크게 두 가지 문제에 집중한다.

  1. 데이터 조직 – 다차원 모델[1,13,15,19,22]을 사용해 OLAP 분석을 효율화하고, 사전 집계(pre‑aggregation)를 통해 응답 시간을 단축한다.

  2. 물리·논리적 뷰 관리 – 물리적·논리적 뷰(물리적 인덱스, 물리적 뷰 등)의 선택·증분 유지[12,27,28,30,31,32]에 초점을 맞춘다.

하지만 이러한 연구는 개념적·시맨틱 측면을 충분히 다루지 못한다[11]. 현재 대부분의 시스템은 관계형 혹은 다차원 모델에 기반하며, 복합 구조와 풍부한 의미 체계를 포함하지 않는다. 결과적으로 설계자는 현실 세계를 웨어하우스에 매핑하기 위해 높은 수준의 추상화 작업을 수행해야 한다.

최근에는 복합·시간적 데이터를 다루기 위해 객체지향 다차원 모델[19]이 제안되었지만, 이는 웨어하우스 수준에서의 조작 언어를 제공하지 않는다. 또한, 다차원 접근법은 데이터 마트 질의에는 적합하지만, 장기간에 걸친 웨어하우스 데이터의 유지·관리에는 부적합하다. 시간 관리와 관련된 기존 연구[16,31]는 데이터 이력을 단순히 삭제하거나, 제한된 아카이빙만을 제공한다. 예를 들어, 오래된 데이터는 대부분 웨어하우스에서 완전히 제거되며, 중간 단계 아카이빙(예: 상세 데이터를 자동으로 요약·보관하는 메커니즘)은 제시되지 않는다.

T‑OLAP과 같은 시간적 언어[16]는 데이터 마트에 초점을 맞추고 있어, 다차원 모델을 따르지 않는 웨어하우스에는 적용하기 어렵다. 또한, 아카이빙 메커니즘 자체가 부재하다.


3. 제안하는 객체지향 기반 데이터 웨어하우스 모델

본 절에서는 객체지향 패러다임을 기반으로 한 데이터 웨어하우스 모델을 정의한다. 모델은 ODMG 표준 객체 모델[6]을 확장하여, 데이터 웨어하우스 고유의 특성을 반영한다. 특히 시간 차원을 유연하게 다루어, 시간 이력을 보관하고 필요에 따라 자동 아카이빙을 수행할 수 있다.

3.1. 객체와 이력 보존

원천 시스템에서 추출된 각 정보(객체, 객체의 일부, 혹은 객체 그룹)는 웨어하우스 객체(warehouse object) 로 저장된다. 이 객체는 시간에 따른 값의 변화를 보존한다. 반면 원천 데이터베이스는 현재 상태만을 보관하거나(예: 최신 상태만) 최근 변동만을 유지한다[7,31].

웨어하우스 관리자는 다음과 같은 선택을 할 수 있다.

  • 현재 상태(image)만 보존
  • 과거 상태(past states) 보존
  • 아카이브 상태(archived states) 보존

3.2. 클래스와 매핑 함수

웨어하우스 클래스는 원천 데이터에 적용되는 매핑 함수(Mapping) c 로 부분적으로 정의된다. 매핑 함수는 기본 함수들의 조합으로 구성된다. 우리는 다음 네 가지 기본 함수 유형을 제시한다.

구분기능설명
구조화 함수(FS)클래스의 속성·관계 정의웨어하우스 클래스의 스키마를 만든다
채우기 함수(FP)원천 객체 선택클래스 인스턴스(확장)를 계산하기 위한 원천 객체를 지정
집합 연산 함수(FE)객체 집합 변환·조합객체 집합을 결합·변형하여 새로운 웨어하우스 클래스를 만든다
계층화 함수(FH)상속·계층 구조 정의슈퍼클래스·서브클래스를 생성한다

예를 들어, 환자(PATIENT) 클래스의 **무게(weight)**와 혈압(tension) 속성은 시간에 따라 변한다. 우리는 아카이브 필터(Archi) 를 정의하여, 무게는 6개월 단위로 평균값을 저장하도록 설정한다.

3.3. 아카이빙 메커니즘

아카이빙은 과거 데이터를 요약하여 보관하는 과정이다. 아카이빙을 트리거하는 임계값(threshold) 은 별도로 정의한다(예: 6개월 경과 시). 아카이빙된 데이터는 아카이브 상태(Archive State) 로 표시되며, 원본 과거 상태는 삭제하거나 별도 보관한다.

아카이빙은 두 가지 주요 요구를 충족한다.

  1. 시간적 행동 정의 – 어떤 과거 상태를 언제 아카이브할지 규칙을 명시한다.
  2. 시맨틱 무결성 보장 – 관계(연관, 합성 등)의 시간적 일관성을 유지한다.

아카이브 규칙은 if‑then 형태의 조건식으로 표현한다. 조건식은 불리언 식 혹은 선택 쿼리[29]가 될 수 있다. 예시:

PLAINTEXT
archive(E)  // E는 과거 상태 집합
클릭하여 더 보기

4. 시간 영역 연산의 일반화

Allen[2]이 정의한 13가지 시간 관계 연산을 웨어하우스 객체의 시간 영역에 일반화한다. 두 시간 영역 X, Y에 대해 다음과 같은 연산을 정의한다.

연산의미
BeforeX가 Y보다 먼저
MeetsX가 Y와 바로 맞닿음
OverlapsX와 Y가 겹침

이러한 연산을 통해 시간 영역 간의 결합(intersection, union)도 가능하게 한다. 예를 들어, 두 상태 집합을 시간 영역 교집합으로 결합하는 IJoin시간 영역 합집합으로 결합하는 UJoin를 정의한다.

4.1. 예시

사용자가 “Dupond Michel의 체중이 Dulong Jeanne보다 언제 낮았는가?”를 알고 싶다면, 시간 영역 합집합 기반 조인을 사용한다. 결과는 원본 시간 영역들의 합집합으로 구성되며, 구조적 부분은 체중과 혈압 값 쌍을 포함한다(필터 정의에 따라).

4.2. 새로운 집계 연산

시간적 특성을 활용한 두 가지 그룹화 연산을 제안한다.

  • 시간 단위 그룹화(UGroup) – 지정된 시간 단위(예: 월, 분기)로 상태를 묶는다.
  • 기간 기반 그룹화(DGroup) – 최초 상태 시점부터 일정 기간(예: 30일)마다 상태를 묶는다.

이러한 연산은 **시간 순

이 글은 AI가 자동 번역 및 요약한 내용입니다.

검색 시작

검색어를 입력하세요

↑↓
ESC
⌘K 단축키