예를 들어 지난 2년 동안 H 자동차에서 판매한 매출 리스트를 보도록 하겠습니다.

일반적으로 아래와 같은 형태로 매출 리스트가 데이터베이스에 보관되어 있고, 고객의 요청에 의해 대시보드 상의 그리드에 출력 시킵니다.

아래 그리드 내역(약 7,000 개의 데이터)에서 얻을 수 있는 정보는 많지만, 쉽게 알 수는 없습니다.

예를 들어 1~4 분기 각각의 매출은 얼마이고, 가장 매출액이 많은 분기와 적은 분기는 어떤 분기일까요?

이 물음에 대한 답은 아래 그리드의 출력 내역으로 답하기 어렵습니다.

다음은 위의 그리드에 출력된 데이터와 같은 데이터로 분석을 하여 출력시킨 피벗 그리드입니다.

아래에 출력된 피벗 그리드로는 이제 답을 쉽게 알 수 있습니다.

"애초에 프로젝트 구축을 할 때 1~4분기 매출 합을 그리드에 출력을 시키도록 하면 되지 않나?" 라고 생각할 수 있습니다.

즉, "처음 생성한 그리드에 전체 매출 리스트가 아닌 서버 사이드에서 SQL 작성 시 1~4분기 매출 합에 대한 SQL 을 작성하여 그 데이터를 사용하면 되지 않나" 라고 생각할 수 있습니다.

그렇다면, 애초 개발 시 1~4 분기 매출 리스트를 출력하도록 서버 사이드에서 SQL 을 작성하고 비지니스 로직을 처리하여 대시보드에 출력하도록 개발을 마쳤다고 가정해 봅시다.

그런데 고객이 추후 다음과 같은 요구 사항을 내 놓았습니다.

  • ◎ 개별 지점에서 가장 많이 판매된 차종은 무엇인가?
  • ◎ 지역별 가장 인기 있는 차종은 무엇이고, 어떤 색상을 선호하는가?
  • ◎ 전국 지점 중 가장 매출액이 높은 지점, 낮은 지점은 어디이고, 얼마의 매출액을 달성했는가?

위와 같은 요구 사항이 발생한 경우, 이 요구를 충족시키기 위해 개발자가 투입되어 SQL 부터 비지니스 로직 작성 후 데이터를 얻어내야 합니다.

이런 다양한 관점에서 정보를 분석할 수 있도록 도와주는 것이 바로 OLAP 도구입니다. AUIPivot 은 OLAP 도구의 일종으로 엑셀의 피벗테이블 기능으로 생각하면 됩니다.

처음 그리드에 출력시킨 전체 매출 리스트를 토대로 다양한 관점에서 정보를 분석하도록 도와줍니다.

다음은 위의 물음에 대한 답입니다. 아래 질문을 클릭해 보십시오.