사각형 데이터란 무엇인가?
다변량 단면 데이터(multivariate cross-sectional data, 즉 시계열이나 반복 측정 데이터가 아닌 형태)는 일반적으로 사각형 데이터(rectangular data)로 표현됩니다. 이 구조에서는 각 열(column)이 하나의 변수(특징, feature)를 나타내고, 각 행(row)은 하나의 사례(case) 또는 레코드(record)에 해당합니다.
그렇다면 이러한 사각형 데이터를 컴퓨터 내부에서 어떻게 저장하고 처리할 수 있을까요? 크게 세 가지 접근 방식이 존재하며, 각 방식은 고유한 장단점을 가지고 있습니다.
1. 점 기반(Point-Based) 표현 방식
첫 번째 방법은 사각형 데이터를 고차원의 점 데이터로 변환한 뒤, 그리드 파일(grid file), PR 쿼드트리(PR quadtree), 포인트 쿼드트리(point quadtree), k-d 트리(k-d tree)와 같은 점 기반 데이터 구조를 활용하는 것입니다.
사각형을 4차원 점으로 매핑하는 기법은 다양합니다. 예를 들어 마주 보는 두 꼭짓점의 x, y 좌표를 사용하는 방식, 또는 한 꼭짓점의 x, y 좌표에 너비와 높이를 더하는 방식 등이 대표적입니다.
단점: 점 기반 표현은 데이터의 지역성(locality)을 충분히 활용하지 못하기 때문에, 저장 공간과 공간 연산(spatial operation) 양면에서 효율성이 떨어질 수 있습니다.
2. 선분 기반(Line-Based) 표현 방식
두 번째 방법은 사각형을 그것을 구성하는 선분의 관점에서 바라보는 것입니다. PM 쿼드트리(PM quadtree), PMR 쿼드트리(PMR quadtree) 등의 선분 기반 데이터 구조가 여기에 속합니다.
단점: 선분 단위로 정의된 공간 연산에서, 개별 선분들은 연산의 조건을 만족하지 않지만 그 선분들이 이루는 사각형 전체는 조건을 만족하는 모순적인 결과가 발생할 수 있다는 점입니다.
3. 영역 기반(Area-Based) 표현 방식
세 번째 방법은 사각형이 실제로 차지하는 영역 자체를 기준으로 표현하는 것입니다. MX-CIF 쿼드트리(MX-CIF quadtree)와 R-트리(R-Tree) 같은 구조는 최소 경계 상자(minimum bounding box)의 계층적 그룹화를 통해 사각형 데이터를 조직화합니다.
- MX-CIF 쿼드트리: 공간 기반 쿼드트리 분할(space-based quadtree partitioning)을 적용하며, 각 사각형은 자신을 감싸는 최소 쿼드트리 블록에 연결됩니다.
- R-트리: 사각형 데이터를 계층적으로 중첩된 최소 경계 상자들로 분할하여 관리합니다.
단점: R-트리는 데이터의 지역성(locality)이 제대로 반영되지 않는다는 한계가 있습니다.
마무리: 어떤 방식을 선택해야 할까?
정리하면, 사각형 데이터는 점 · 선분 · 영역이라는 세 가지 관점에서 표현할 수 있으며, 각 방식은 저장 효율성과 공간 연산 성능 측면에서 서로 다른 특성을 보입니다. 따라서 응용 분야의 요구 사항(저장 공간 제약, 주요 질의 유형, 데이터의 공간적 분포 등)을 종합적으로 고려하여 가장 적합한 데이터 구조를 선택하는 것이 중요합니다.