AUISoft
AUIPivot 2.6 Documentation

2. AUIPivot 데이터 바인딩 및 피벗 그리드의 이해에 대하여

2.1 AUIPivot과 OLAP 개념

AUIPivot 그리드는 사용자 관점에서 데이터를 다차원적으로 분석할 수 있게 하는 OLAP (On-Line Analytical Processing) 도구입니다.

사용자는 원시 데이터(source data)를 통해 다양한 차원(dimension)에서 데이터를 분석하며, 복잡한 집계 정보를 직관적으로 얻을 수 있습니다.

2.2 차원의 개념: Rows, Columns, Values, Filters

AUIPivot은 다음의 4가지 차원을 기반으로 피벗 큐브(pivot cube)를 구성합니다.

피벗 큐브 = 원시 데이터 + 차원 정보 (행, 열, 값, 필터)

2.3 피벗 필드 정의 예시

// 행 필드
AUIPivot.setRowFields(myPivotID, ["REGION", "NAME", "MODEL"]);
// 열 필드
AUIPivot.setColumnFields(myPivotID, ["DATE_HALF", "DATE_QTR", "DATE_MONTH"]);
// 값 필드
AUIPivot.setValueFields(myPivotID, [{ "dataField": "TOTAL", "operation": "SUM" }]);
// 필터 필드
AUIPivot.setFilterFields(myPivotID, ["COLOR"]);

2.4 원시 데이터 구조 (Raw Data)

AUIPivot은 Flat JSON Array 구조의 데이터를 입력값으로 받습니다.

[
  { "category": "전자", "region": "서울", "month": "2024-01", "sales": 120000 },
  { "category": "전자", "region": "부산", "month": "2024-01", "sales": 80000 },
  { "category": "가전", "region": "서울", "month": "2024-01", "sales": 65000 }
]

2.5 피벗 원시 데이터 삽입 예시

// 원시 데이터 요청
fetch("./data/sales_data.json")
  .then(res => res.json())
  .then(data => {
    // 피봇 그리드에  원시 데이터 삽입
	AUIPivot.setGridData(myPivotID, data);
});

2.6 요약

개념 설명
원시 데이터 분석 대상이 되는 JSON 배열 형태 데이터
수직 그룹핑 기준
수평 분할 기준
합계/평균/개수 등을 수행할 대상 필드
필터 조건 필터링용 기준 필드

AUIPivot은 원시 데이터와 피벗 정의만으로 분석 UI를 제공합니다.