Abstract
Data analysis applications typically aggregate data across many dimensions looking for unusual patterns in data. Even though such applications are usually possible with standard structured query language (SQL) queries, the queries may become very complex. A complex query may result in many scans of the base table, leading to poor performance. Because online analytical processing (OLAP) queries are usually complex, it is desired to define a new operator for aggregation, called the data cube or simply cube. Data cube supports OLAP tasks like aggregation and sub-totals. Many aggregate functions can be used to construct a data cube. Those functions can be classified into three categories, the distributive, the algebraic, and the holistic. It has been thought that the distributive functions such as SUM, COUNT, MAX, and MIN can be used to construct a data cube, and also the algebraic function such as AVG can be used if the function is replaced to an intermediate function. It is believed that even though AVG is not distributive, but the intermediate function (SUM, COUNT) is distributive, and AVG can certainly be computed from (SUM, COUNT). In this paper, however, it is found that the intermediate function (SUM COUNT) cannot be applied to OLAP cubes, and consequently the function leads to erroneous conclusions and decisions. The objective of this study is to identify some problems in applying aggregate function AVG to OLAP cubes, and to design a process for solving these problems.
데이터에 내재되어 있는 특이 패턴을 찾고자 데이터 분석을 할 때에 보통 다차원적인 데이터 집계를 하는데, 이때에 표준 SQL 쿼리를 사용해도 좋지만 쿼리가 아주 복잡해진다는 단점이 생기게 된다. 쿼리가 복잡해지면 표준 테이블을 여러 번 참조해야 되고 결과적으로 쿼리의 성능이 저하된다는 뜻이다. OLAP 쿼리는 복잡한 것이 대다수이기 때문에 SQL 쿼리를 대신할 새로운 집계용 연산자인 데이터 큐브를 간단히 불러 큐브를 만들 필요가 생기는 것이다. 집계를 하고, 부분 합을 구하는 것과 같은 OLAP 업무를 지원해 주는 것이 데이터 큐브이다. 이러한 데이터 큐브를 작성하는데 관련된 집계함수에는 여러 가지가 있는데, 이를 분배적 함수, 대수적 함수 그리고 전체관적 함수의 3가지로 분류할 수 있다. 이 중, SUM, COUNT, MAX, MIN과 같은 분배적 함수는 데이터 큐브를 작성하는 데에 직접사용 할 수 있고, AVG와 같은 대수적 함수는 매개함수를 활용하면 사용가능 하다고 알려져 있다. 즉, AVG 자체는 분배적 함수가 아니지만, (SUM, COUNT)와 같은 매개함수로 분배적 함수가되기 때문에 매개함수를 이용하여 구하면 된다는 뜻이다. 그러나 본 연구에서는 (SUM, COUNT)와 같은 매개함수를 통해 AVG를 구하는 것이 OLAP 큐브 작성에 적용시킬 수 없다는 사실을 확인했으며, 결과적으로 이 매개함수를 활용하면 잘못된 결론에 다다르고 그릇된 의사결정을 하게 된다는 사실을 확인하게 되었다. 따라서 본 연구에서는 집계함수 AVG를 OLAP 큐브에 적용시켰을 때의 여러 문제점을 밝혀내고 또한 이들 문제점을 해결할 방안을 찾고자 하는 데에 목적을 두고 있다.