올라프 엑셀 큐브. OLAP = 다차원 보기 = 큐브. 인터넷 판매 큐브 생성

OLAP(온라인 분석 처리) 데이터 큐브를 사용하면 다차원 데이터를 효율적으로 추출하고 분석할 수 있습니다. 다른 유형의 데이터베이스와 달리 OLAP 데이터베이스는 모든 종류의 데이터 세트를 분석 처리하고 신속하게 추출하기 위해 특별히 설계되었습니다. 실제로 Access나 SQL Server 등의 표준 관계형 데이터베이스와 OLAP 데이터베이스 사이에는 몇 가지 주요 차이점이 있습니다.

쌀. 1. OLAP 큐브를 Excel 통합 문서에 연결하려면 다음 명령을 사용하십시오. 분석 서비스에서

또는에서 메모를 다운로드하세요.

관계형 데이터베이스에서 정보는 순차적으로 추가, 삭제, 업데이트되는 레코드로 표시됩니다. OLAP 데이터베이스는 데이터의 스냅샷만 저장합니다. OLAP 데이터베이스에서 정보는 단일 데이터 블록으로 보관되며 주문형 출력용으로만 사용됩니다. OLAP 데이터베이스에 새로운 정보를 추가할 수 있지만 기존 데이터는 거의 편집되지 않으며 삭제되는 경우도 많습니다.

관계형 데이터베이스와 OLAP 데이터베이스는 구조적으로 다릅니다. 관계형 데이터베이스는 일반적으로 서로 관련된 테이블 집합으로 구성됩니다. 어떤 경우에는 관계형 데이터베이스에 테이블이 너무 많아서 연결 방법을 파악하기가 매우 어렵습니다. OLAP 데이터베이스에서는 개별 데이터 블록 간의 관계가 미리 정의되어 OLAP 큐브라는 구조에 저장됩니다. 데이터 큐브는 데이터베이스의 계층 구조와 관계에 대한 전체 정보를 저장하므로 탐색이 크게 단순화됩니다. 또한, 추출하려는 데이터의 위치와 이와 관련된 다른 데이터가 무엇인지 미리 알면 보고서를 생성하는 것이 훨씬 쉽습니다.

관계형 데이터베이스와 OLAP 데이터베이스의 주요 차이점은 정보가 저장되는 방식입니다. OLAP 큐브의 데이터는 일반적인 방식으로 표시되는 경우가 거의 없습니다. OLAP 데이터 큐브에는 일반적으로 미리 디자인된 형식으로 표시되는 정보가 포함되어 있습니다. 따라서 큐브의 데이터를 그룹화, 필터링, 정렬 및 병합하는 작업은 정보로 채우기 전에 수행됩니다. 이렇게 하면 요청된 데이터를 최대한 간단하게 검색하고 표시할 수 있습니다. 관계형 데이터베이스와 달리 정보를 화면에 표시하기 전에 정보를 적절하게 구성할 필요가 없습니다.

OLAP 데이터베이스는 일반적으로 IT 관리자가 만들고 유지 관리합니다. 조직에 OLAP 데이터베이스 관리를 담당하는 구조가 없는 경우 관계형 데이터베이스 관리자에게 문의하여 구현을 요청할 수 있습니다. 기업 네트워크적어도 일부 OLAP 솔루션.

OLAP 데이터 큐브에 연결

OLAP 데이터베이스에 액세스하려면 먼저 OLAP 큐브에 대한 연결을 설정해야 합니다. 리본 탭으로 이동하여 시작하세요. 데이터. 버튼을 클릭하세요 다른 소스에서드롭다운 메뉴에서 명령을 선택합니다. 분석 서비스에서(그림 1).

데이터 연결 마법사의 지정된 명령을 선택하는 경우(그림 2). 주요 작업은 데이터를 관리할 때 Excel에서 사용할 서버에 대한 연결을 설정하는 데 도움을 주는 것입니다.

1. 먼저 Excel에 등록 정보를 제공해야 합니다. 그림 1과 같이 대화 상자의 필드에 서버 이름, 로그인 이름 및 데이터 액세스 비밀번호를 입력합니다. 2. 버튼을 클릭하세요 더 나아가. 다음을 사용하여 연결하는 경우 계정 Windows를 선택한 다음 스위치를 설정하세요. Windows 인증 사용.

2. 드롭다운 목록에서 작업할 데이터베이스를 선택합니다(그림 3). 현재 예에서는 Analysis Services Tutorial 데이터베이스를 사용합니다. 이 데이터베이스를 선택하면 아래 목록에 해당 데이터베이스에서 사용 가능한 모든 OLAP 큐브를 가져오라는 메시지가 표시됩니다. 필요한 데이터 큐브를 선택하고 버튼을 클릭하세요. 더 나아가.

쌀. 3. 작업 데이터베이스를 선택하고 OLAP 큐브, 데이터 분석에 사용할 계획입니다.

3. 그림과 같이 다음 마법사 대화 상자가 나타납니다. 4, 생성 중인 연결에 대한 설명 정보를 입력해야 합니다. 그림 1에 표시된 대화 상자의 모든 필드 4개 항목은 필수 입력이 아닙니다. 현재 대화 상자를 작성하지 않고 언제든지 무시할 수 있으며 이는 연결에 어떤 영향도 미치지 않습니다.

쌀. 4. 연결 설명 정보 변경

4. 버튼을 클릭하세요 준비가 된연결 생성을 완료합니다. 화면에 대화 상자가 나타납니다 데이터 가져오기(그림 5). 스위치를 설정하세요 피벗테이블 보고서확인을 클릭하여 피벗 테이블 생성을 시작합니다.

OLAP 큐브 구조

OLAP 데이터베이스에서 피벗 테이블을 생성하면 작업창 창이 나타납니다. 피벗 테이블 필드일반 피벗 테이블과 다릅니다. 그 이유는 피벗 테이블에 부착된 OLAP 큐브의 구조를 밀접하게 반영하도록 배열하기 때문입니다. OLAP 큐브를 가능한 한 빨리 탐색하려면 해당 구성 요소와 상호 작용 방식을 완전히 숙지해야 합니다. 그림에서. 그림 6은 일반적인 OLAP 큐브의 기본 구조를 보여줍니다.

보시다시피 OLAP 큐브의 주요 구성 요소는 차원, 계층, 수준, 멤버 및 측정값입니다.

  • 치수. 분석된 데이터 요소의 주요 특징. 차원의 일반적인 예로는 제품, 고객 및 직원이 있습니다. 그림에서. 그림 6에서는 Products 차원의 구조를 보여줍니다.
  • 계층구조. 지정된 차원의 사전 정의된 수준 집계입니다. 계층 구조를 사용하면 요약 데이터를 생성하고 이러한 수준 사이에 존재하는 관계를 자세히 조사하지 않고도 구조의 다양한 수준에서 이를 분석할 수 있습니다. 그림에 표시된 예에서. 그림 6에서 제품 차원에는 제품 범주의 단일 계층 구조로 집계되는 세 가지 수준이 있습니다.
  • 레벨. 수준은 공통 계층 구조로 집계되는 범주입니다. 레이어를 서로 별도로 쿼리하고 분석할 수 있는 데이터 필드로 생각하세요. 그림에서. 6에는 카테고리, 하위 카테고리, 제품 이름의 세 가지 수준만 있습니다.
  • 회원. 차원 내의 단일 데이터 요소입니다. 멤버는 일반적으로 차원, 계층 및 수준의 OLAP 구조를 통해 액세스됩니다. 그림의 예에서. 제품 이름 수준에 대해 6개의 멤버가 정의됩니다. 다른 레벨에는 구조에 표시되지 않는 자체 멤버가 있습니다.
  • 측정- OLAP 큐브의 실제 데이터입니다. 측정값은 측정값 차원이라고 하는 자체 차원에 저장됩니다. 차원, 계층, 수준 및 멤버를 조합하여 측정값을 쿼리할 수 있습니다. 이 절차를 "슬라이싱" 조치라고 합니다.

이제 OLAP 큐브의 구조에 익숙해졌으므로 피벗 테이블 필드 목록을 새롭게 살펴보겠습니다. 사용 가능한 필드의 구성이 명확해지고 불만이 발생하지 않습니다. 그림에서. 그림 7은 필드 목록이 OLAP 피벗 테이블의 요소를 나타내는 방법을 보여줍니다.

피벗 테이블 필드 목록에서 OLAP 측정값먼저 표시되며 합계 아이콘(시그마)으로 표시됩니다. 이는 VALUE 지역에 있을 수 있는 유일한 데이터 요소입니다. 목록 뒤에는 테이블 이미지가 있는 아이콘으로 표시된 치수가 표시됩니다. 이 예에서는 Customer 차원을 사용합니다. 이 차원에는 여러 계층이 포함되어 있습니다. 계층 구조가 확장되면 개별 데이터 수준을 볼 수 있습니다. OLAP 큐브의 데이터 구조를 보려면 피벗 테이블의 필드 목록을 탐색하면 됩니다.

OLAP 피벗 테이블의 제한 사항

OLAP 피벗 테이블로 작업할 때 Analysis Services OLAP 환경에서 피벗 테이블 데이터 원본과 상호 작용한다는 점을 기억하십시오. 이는 차원부터 큐브에 포함된 측정값까지 데이터 큐브의 모든 동작 측면이 OLAP 분석 서비스에 의해 제어된다는 것을 의미합니다. 결과적으로 이로 인해 OLAP 피벗 테이블에서 수행할 수 있는 작업이 제한됩니다.

  • 피벗 테이블의 VALUES 영역에는 측정값 이외의 필드를 배치할 수 없습니다.
  • 요약에 사용되는 기능을 변경하는 것은 불가능합니다.
  • 계산 필드나 계산 항목을 만들 수 없습니다.
  • 필드 이름에 대한 모든 변경 사항은 피벗 테이블에서 필드가 제거된 후 즉시 취소됩니다.
  • 페이지 필드 매개변수 변경은 허용되지 않습니다.
  • 명령을 사용할 수 없습니다 보여주다페이지;
  • 옵션 비활성화됨 보여주다서명강요값 영역에 필드가 없는 경우;
  • 옵션 비활성화됨 소계필터에 의해 선택된 페이지 요소별;
  • 매개변수를 사용할 수 없음 배경요구;
  • VALUES 필드를 두 번 클릭하면 피벗 테이블 캐시의 처음 1000개 레코드만 반환됩니다.
  • 확인란이 비활성화되었습니다. 최적화메모리.

자율적인 데이터 큐브 생성

표준 피벗 테이블에서 소스 데이터는 로컬 하드 드라이브에 저장됩니다. 따라서 네트워크에 액세스하지 않고도 언제든지 관리하고 구조를 변경할 수 있습니다. 그러나 이는 OLAP 피벗 테이블에는 전혀 적용되지 않습니다. OLAP 피벗 테이블에서 캐시는 로컬 하드 드라이브에 위치하지 않습니다. 그러므로 연결을 끊은 직후 지역 네트워크 OLAP 피벗 테이블은 더 이상 작동하지 않습니다. 이러한 테이블에서는 단일 필드를 이동할 수 없습니다.

네트워크에 연결되지 않은 상태에서도 OLAP 데이터를 분석해야 하는 경우 오프라인 데이터 큐브를 만듭니다. 피벗 테이블 캐시를 나타내는 별도의 파일입니다. 로컬 네트워크 연결을 끊은 후 조회되는 OLAP 데이터를 저장하는 파일입니다. 독립형 데이터 큐브를 생성하려면 먼저 OLAP 피벗 테이블을 생성하십시오. 피벗 테이블에 커서를 놓고 버튼을 클릭하세요. OLAP 도구상황별 탭 상황별 탭 세트에 포함된 분석 피벗 테이블 작업. 팀을 선택하세요 오프라인 OLAP 모드(그림 8).

화면에 대화 상자가 나타납니다 설정 배터리 수명 OLAP(그림 9). 버튼을 클릭하세요 오프라인 데이터 파일 생성. Data Cube 파일 생성 마법사의 첫 번째 창이 화면에 나타납니다. 버튼을 클릭하세요 더 나아가절차를 계속하려면.

두 번째 단계(그림 10)에서는 데이터 큐브에 포함될 차원과 수준을 나타냅니다. 대화 상자에서 OLAP 데이터베이스에서 가져올 데이터를 선택해야 합니다. 로컬 네트워크에서 컴퓨터 연결을 끊은 후에 필요한 치수만 선택해야 합니다. 더 많은 차원을 지정할수록 자율 데이터 큐브가 더 커집니다.

버튼을 클릭하세요 더 나아가세 번째 단계(그림 11)로 진행합니다. 이 창에서는 큐브에 포함되지 않을 멤버나 데이터 요소를 선택해야 합니다. 확인란을 선택하지 않으면 지정된 항목을 가져오지 않으며 로컬 하드 드라이브에서 불필요한 공간을 차지하게 됩니다.

데이터 큐브의 위치와 이름을 지정합니다(그림 12). 데이터 큐브 파일의 확장자는 .cub입니다.

잠시 후 Excel은 지정된 폴더에 오프라인 데이터 큐브를 저장합니다. 테스트하려면 파일을 두 번 클릭하세요. 그러면 자동으로 작업 파일이 생성됩니다. 엑셀 통합 문서에는 선택한 데이터 큐브와 연결된 피벗 테이블이 포함되어 있습니다. 일단 생성되면 오프라인 LAN 모드에서 작업하는 관심 있는 모든 사용자에게 오프라인 데이터 큐브를 배포할 수 있습니다.

로컬 네트워크에 연결되면 오프라인 데이터 큐브 파일을 열고 해당 파일과 해당 데이터 테이블을 업데이트할 수 있습니다. 오프라인 데이터 큐브는 네트워크 접속이 없을 때 사용되지만 네트워크 연결이 복원되면 업데이트가 필요하다는 점에 유의하시기 바랍니다. 네트워크 연결이 끊어진 후 오프라인 데이터 큐브를 업데이트하려고 하면 오류가 발생합니다.

피벗 테이블에서 데이터 큐브 함수 사용

OLAP 데이터베이스에 사용되는 데이터 큐브 기능은 피벗 테이블에서도 실행할 수 있습니다. 레거시 버전의 Excel에서는 분석 팩 추가 기능을 설치한 후에만 데이터 큐브 기능에 액세스할 수 있었습니다. Excel 2013에서는 이러한 기능이 프로그램에 내장되어 있으므로 사용할 수 있습니다. 해당 기능을 완전히 이해하기 위해 구체적인 예를 살펴보겠습니다.

가장 많은 것 중 하나 간단한 방법데이터 큐브의 기능을 학습하려면 OLAP 피벗 테이블을 데이터 큐브 수식으로 변환해야 합니다. 이 절차는 매우 간단하며 처음부터 데이터 큐브 수식을 만들지 않고도 데이터 큐브 수식을 빠르게 얻을 수 있습니다. 핵심 원칙은 피벗 테이블의 모든 셀을 OLAP 데이터베이스에 연결된 수식으로 바꾸는 것입니다. 그림에서. 그림 13은 OLAP 데이터베이스와 연관된 피벗 테이블을 보여줍니다.

피벗 테이블의 아무 곳에나 커서를 놓고 버튼을 클릭합니다. OLAP 도구상황별 리본 탭 분석그리고 팀을 선택하세요 수식으로 변환(그림 14).

피벗 테이블에 보고서 필터 필드가 포함되어 있으면 그림 1에 표시된 대화 상자가 화면에 나타납니다. 15. 이 창에서는 데이터 필터 드롭다운 목록을 수식으로 변환할지 여부를 지정할 수 있습니다. 대답이 '예'이면 드롭다운 목록이 제거되고 대신 정적 수식이 표시됩니다. 나중에 드롭다운 목록을 사용하여 피벗 테이블의 내용을 변경하려면 대화 상자에서 해당 확인란을 선택 취소하세요. 호환 모드에서 피벗 테이블에서 작업하는 경우 사전 경고 없이 데이터 필터가 자동으로 수식으로 변환됩니다.

몇 초 후에 피벗 테이블 대신 데이터 큐브에서 실행되고 Excel 창에 필요한 정보의 출력을 제공하는 수식이 표시됩니다. 이렇게 하면 이전에 적용된 스타일이 제거됩니다(그림 16).

쌀. 16. 수식 입력줄을 살펴보세요. 셀에는 데이터 큐브 수식이 포함되어 있습니다.

보고 있는 값이 더 이상 피벗 테이블 개체의 일부가 아니라는 점을 고려하면 열, 행 및 계산된 구성원을 추가하고 이를 다른 개체와 결합할 수 있습니다. 외부 소스, 또한 가장 많은 내용으로 보고서를 변경합니다. 다른 방법들, 수식 끌어서 놓기를 포함합니다.

OLAP 피벗 테이블에 계산 추가

안에 이전 버전 Excel OLAP 피벗 테이블에서는 사용자 정의 계산이 허용되지 않았습니다. 이는 일반 피벗 테이블에 계산된 필드 및 멤버를 추가할 수 있는 것과 같은 방식으로 OLAP 피벗 테이블에 추가 분석 수준을 추가할 수 없음을 의미합니다. 자세한 내용을 보려면 계속하기 전에 이 자료를 숙지하십시오. 독서 ).

Excel 2013에는 계산된 측정값과 MDX 식의 계산된 멤버 등 새로운 OLAP 도구가 도입되었습니다. 더 이상 DBA가 제공하는 OLAP 큐브의 측정값과 멤버만 사용할 수 있습니다. 사용자 정의 계산을 생성하여 추가 분석 기능을 얻을 수 있습니다.

MDX 소개. OLAP 큐브와 함께 피벗 테이블을 사용하면 데이터베이스에 대한 MDX(다차원 식) 쿼리를 실행합니다. MDX는 다차원 원본(예: OLAP 큐브)에서 데이터를 검색하는 데 사용되는 쿼리 언어입니다. OLAP 피벗 테이블이 변경되거나 업데이트되면 해당 MDX 쿼리가 OLAP 데이터베이스로 전송됩니다. 쿼리 결과는 Excel로 다시 반환되고 피벗 테이블 영역에 표시됩니다. 이를 통해 피벗 테이블 캐시의 로컬 복사본 없이 OLAP 데이터로 작업할 수 있습니다.

계산된 측정값과 MDX 멤버를 생성할 때 MDX 언어 구문을 사용합니다. 이 구문을 사용하면 피벗 테이블을 통해 계산이 OLAP 데이터베이스 백엔드와 상호 작용할 수 있습니다. 책에서 논의된 예는 새로운 기능을 보여주는 기본 MDX 디자인을 기반으로 합니다. 엑셀 기능 2013. 복잡한 계산된 측정값과 MDX 멤버를 만들어야 하는 경우 MDX 기능에 대해 자세히 알아보는 데 시간을 투자해야 합니다.

계산된 측정값을 만듭니다.계산된 측정값은 계산된 필드의 OLAP 버전입니다. 아이디어는 기존 OLAP 필드에서 수행된 일부 수학적 연산을 기반으로 새 데이터 필드를 만드는 것입니다. 그림에 표시된 예에서. 그림 17에서는 상품 목록과 수량, 각 상품 판매 수입을 포함하는 OLAP 요약 테이블이 사용됩니다. 품목의 단위당 평균 가격을 계산하는 새 측정값을 추가해야 합니다.

분석 피벗 테이블 작업. 드롭다운 메뉴에서 OLAP 도구물품을 고르시 오 (그림 18).

쌀. 18. 메뉴 항목 선택 MDX 계산된 측정값

화면에 대화 상자가 나타납니다 계산된 측정값 만들기(그림 19).

다음과 같이하세요:

2. 새로 계산된 측정값이 위치할 측정값 그룹을 선택합니다. 이렇게 하지 않으면 Excel에서는 사용 가능한 첫 번째 측정값 그룹에 새 측정값을 자동으로 배치합니다.

3. 현장에서 MDX 표현(MDX) 새 측정값을 지정하는 코드를 입력합니다. 입력 프로세스 속도를 높이려면 왼쪽 목록을 사용하여 계산에 사용할 기존 측정값을 선택하세요. 원하는 측정값을 두 번 클릭하여 MDX 필드에 추가합니다. 다음 MDX는 평균 단위 판매 가격을 계산하는 데 사용됩니다.

4. 확인을 클릭합니다.

버튼에 주목하세요 MDX 확인, 이는 창의 오른쪽 하단에 있습니다. MDX 구문이 올바른지 확인하려면 이 버튼을 클릭하세요. 구문에 오류가 있으면 메시지가 나타납니다.

새로운 계산된 측정값 생성이 완료되면 목록으로 이동하세요. 피벗 테이블 필드선택합니다(그림 20).

계산된 측정값의 범위는 현재 통합 문서에만 적용됩니다. 즉, 계산된 측정값은 OLAP 서버 큐브에서 직접 생성되지 않습니다. 이는 사용자가 열지 않는 한 누구도 계산된 측정값에 액세스할 수 없음을 의미합니다. 일반 액세스통합 문서에 추가하지 않으면 인터넷에 게시하지 않습니다.

계산된 MDX 멤버를 만듭니다. MDX 계산 멤버는 일반 계산 멤버의 OLAP 버전입니다. 아이디어는 기존 OLAP 요소에서 수행된 일부 수학적 연산을 기반으로 새 데이터 요소를 생성하는 것입니다. 그림에 표시된 예에서. 그림 22에서는 2005~2008년 판매 정보(분기별 분석 포함)를 포함하는 OLAP 피벗 테이블이 사용됩니다. 올해 상반기라는 새 요소를 생성하여 1분기와 2분기에 대한 데이터를 집계한다고 가정해 보겠습니다. 또한 3분기와 4분기 관련 데이터를 결합하여 Second of Year라는 새로운 요소를 구성할 것입니다.

쌀. 22. 새로운 MDX 계산 멤버, 상반기 및 하반기를 추가할 예정입니다.

피벗 테이블의 아무 곳에나 커서를 놓고 상황별 탭을 선택합니다. 분석상황별 탭 세트에서 피벗 테이블 작업. 드롭다운 메뉴에서 OLAP 도구물품을 고르시 오 MDX 계산 멤버(그림 23).

화면에 대화 상자가 나타납니다 (그림 24).

쌀. 24. 창 계산된 항목 생성

다음과 같이하세요:

1. 계산된 측정값에 이름을 지정합니다.

2. 새 계산된 멤버를 생성할 상위 계층구조를 선택합니다. 건설 현장에서 상위 요소값을 할당하다 모두. 이 설정을 사용하면 Excel에서 식을 평가할 때 상위 계층의 모든 멤버에 액세스할 수 있습니다.

3. 창문에서 MDX 표현 MDX 구문을 입력하세요. 시간을 절약하려면 왼쪽 목록을 사용하여 MDX에서 사용할 기존 구성원을 선택하세요. 선택한 항목을 두 번 클릭하면 Excel이 해당 항목을 창에 추가합니다. MDX 표현. 그림에 표시된 예에서. 24에서는 1분기와 2분기의 합계가 계산됩니다.

..&& +

.. && +

.. && + …

4. 확인을 클릭합니다. Excel의 피벗 테이블에 새로 생성된 MDX 계산 멤버가 표시됩니다. 그림과 같이 그림 25에서는 새 계산 항목이 피벗 테이블의 다른 계산 항목과 함께 표시됩니다.

그림에서. 그림 26에서는 하반기 계산 항목을 생성하는 데 사용된 유사한 프로세스를 보여줍니다.

Excel은 원래 MDX 구성원을 제거하려고 시도하지도 않습니다(그림 27). 피벗 테이블에는 2005~2008년에 해당하는 기록이 분기별로 분류되어 계속 표시됩니다. 이 경우 큰 문제는 아니지만 대부분의 시나리오에서는 충돌을 피하기 위해 "추가" 요소를 숨겨야 합니다.

쌀. 27. Excel에서는 생성된 MDX 계산 멤버를 원래 멤버로 표시합니다. 하지만 충돌을 피하기 위해 원래 요소를 삭제하는 것이 더 좋습니다.

기억하세요: 계산된 멤버는 현재 통합 문서에서만 찾을 수 있습니다. 즉, 계산된 측정값은 OLAP 서버 큐브에서 직접 생성되지 않습니다. 즉, 통합 문서를 공유하거나 온라인에 게시하지 않으면 누구도 계산된 측정값이나 계산된 멤버에 액세스할 수 없습니다.

OLAP 큐브의 상위 계층 구조나 상위 요소가 변경되면 MDX 계산 요소가 더 이상 작동하지 않습니다. 이 요소를 다시 생성해야 합니다.

OLAP 계산을 관리합니다. Excel은 OLAP 피벗 테이블에서 계산된 측정값과 MDX 멤버를 관리할 수 있는 인터페이스를 제공합니다. 피벗 테이블의 아무 곳에나 커서를 놓고 상황별 탭을 선택합니다. 분석상황별 탭 세트에서 피벗 테이블 작업. 드롭다운 메뉴에서 OLAP 도구물품을 고르시 오 컴퓨팅 관리. 창문에서 컴퓨팅 관리세 개의 버튼을 사용할 수 있습니다(그림 28):

  • 만들다.새 계산된 측정값 또는 계산된 MDX 멤버를 만듭니다.
  • 변화.선택한 계산을 변경합니다.
  • 삭제.선택한 계산을 삭제합니다.

쌀. 28. 대화 상자 컴퓨팅 관리

OLAP 데이터에 대한 what-if 분석을 수행합니다. Excel 2013에서는 OLAP 피벗 테이블의 데이터에 대해 가정 분석을 수행할 수 있습니다. 덕분에 새로운 기회피벗 테이블의 값을 변경하고 변경 사항에 따라 측정값과 멤버를 다시 계산할 수 있습니다. 변경 내용을 OLAP 큐브에 다시 전파할 수도 있습니다. What-If 분석 기능을 활용하려면 OLAP 피벗 테이블을 만들고 상황별 탭을 선택하세요. 분석 피벗 테이블 작업. 드롭다운 메뉴에서 OLAP 도구팀 선택 가정 분석 –> 가정 분석 활성화(그림 29).

이제부터 피벗 테이블의 값을 변경할 수 있습니다. 피벗 테이블에서 선택한 값을 변경하려면 해당 값을 마우스 오른쪽 버튼으로 클릭하고 상황에 맞는 메뉴에서 항목을 선택하세요. (그림 30). Excel에서는 계산된 측정값 및 계산된 MDX 멤버를 포함하여 변경 사항을 적용하여 피벗 테이블의 모든 계산을 다시 실행합니다.

쌀. 30. 항목을 선택하세요 피벗 테이블을 계산할 때 변경 사항을 고려하십시오.피벗 테이블을 변경하려면

기본적으로 가상 분석 모드에서 피벗 테이블에 대한 편집 내용은 로컬입니다. 변경 사항을 OLAP 서버에 전파하려면 변경 사항을 게시하는 명령을 선택합니다. 상황별 탭 선택 분석, 상황별 탭 세트에 있음 피벗 테이블 작업. 드롭다운 메뉴에서 OLAP 도구항목 선택 가정 분석 – > 변경사항 게시(그림 31). 이 명령을 실행한 결과 " 다시 쓰기» OLAP 서버에서 이는 변경 사항이 소스 OLAP 큐브에 전파될 수 있음을 의미합니다. (변경 사항을 OLAP 서버에 전파하려면 서버에 액세스할 수 있는 적절한 권한이 있어야 합니다. OLAP 데이터베이스에 대한 쓰기 액세스 권한을 얻으려면 데이터베이스 관리자에게 문의하세요.)

이 메모는 Alexander Jelen의 책을 기반으로 작성되었습니다. . 제9장

/ 입체파 방식으로. 대기업 경영실무에 OLAP 큐브 적용


접촉 중

급우

콘스탄틴 토크마체프, 시스템 아키텍트

입체파 스타일.
대기업 경영실무에 OLAP 큐브 적용

아마도 기업의 컴퓨팅 자원이 정보 기록과 회계 보고서에만 소비되던 시대는 지났을 것입니다. 동시에 관리 결정은 사무실, 회의 및 세션에서 "눈으로" 이루어졌습니다. 아마도 러시아에서는 기업 컴퓨팅 시스템을 주요 리소스로 되돌려 컴퓨터에 등록된 데이터를 기반으로 관리 문제를 해결해야 할 때입니다.

비즈니스 분석의 이점에 대해

기업 관리 루프에는 "원시" 데이터와 관리 대상에 영향을 미치는 "지렛대" 사이에 "성과 지표"(KPI)가 있습니다. 이는 제어 대상 개체의 다양한 하위 시스템 상태를 반영하는 일종의 "대시보드"를 형성합니다. 회사에 유익한 성과 지표를 제공하고 계산 및 획득된 가치를 모니터링하는 것은 비즈니스 분석가의 작업입니다. MS SSAS(SQL Server Analysis Services) 유틸리티 및 주요 도구인 OLAP 큐브와 같은 자동화된 분석 서비스는 기업의 분석 작업을 구성하는 데 상당한 지원을 제공할 수 있습니다.

여기서 한 가지 점을 더 짚고 넘어갈 필요가 있습니다. 예를 들어, 미국 전통에서는 OLAP 큐브 작업에 중점을 둔 전문 분야를 BI(비즈니스 인텔리전스)라고 합니다. 미국 BI가 러시아 "비즈니스 분석가"에 해당한다는 환상이 있어서는 안됩니다. 공격은 아니지만 우리의 비즈니스 분석가는 모호한 지식과 적은 급여를 가진 전문가인 "부회계사" 및 "하부 프로그래머"인 경우가 많으며 실제로 자신의 도구와 방법론이 전혀 없습니다.

실제로 BI 전문가는 회사의 무기고(운영 연구라고 함)에 현대적인 수학적 방법을 사용하는 고도로 자격을 갖춘 전문가인 응용 수학자입니다. BI는 한때 소련에 있었으며 모스크바 주립 대학의 계산 수학 및 수학 학부를 졸업한 전문 "시스템 분석가"와 더 일치합니다. M.V. Lomonosov. OLAP 큐브 및 분석 서비스는 아마도 미국 BI 방향에 대한 고급 교육을 받은 후에 러시아 비즈니스 분석가의 작업장에 대한 유망한 기반이 될 수 있습니다.

최근에는 또 다른 해로운 경향이 나타났습니다. 전문화로 인해 다양한 범주의 기업 직원 간의 상호 이해가 상실되었습니다. I.A.의 우화에 나오는 “백조, 가재, 강꼬치고기”와 같은 회계사, 관리자, 프로그래머입니다. Krylov는 회사를 다른 방향으로 끌고 있습니다.

회계사는보고로 바쁘기 때문에 의미와 역학 모두에서 그의 금액은 회사의 비즈니스 프로세스와 직접적인 관련이 없습니다.

관리자는 비즈니스 프로세스의 일부로 바쁘지만 회사 전체 수준에서 자신의 행동 결과와 전망을 전 세계적으로 평가할 수 없습니다.

마지막으로, 한때 (그의 교육 덕분에) 과학 영역에서 비즈니스 영역에 이르기까지 첨단 기술 아이디어의 지휘자였던 프로그래머는 회계사와 관리자의 환상을 수동적으로 실행하는 사람으로 변했습니다. 기업의 IT 부서가 회계사 및 일반적으로 게으르지 않은 모든 사람에 의해 주도되는 경우는 더 이상 흔하지 않습니다. 주도력이 부족하고 문맹이지만 상대적으로 높은 급여를받는 1C 프로그래머는 러시아 기업의 진정한 재앙입니다. (거의 국내 축구 선수와 같습니다.) 소위 '경제학자와 변호사'에 대해 말하는 것이 아니라 오래 전에 그들에 대해 모든 것이 언급되었습니다.

따라서 프로그래밍 및 회계의 기초에 능숙하고 지식 집약적인 SSAS 장치를 갖춘 비즈니스 분석가의 위치는 비즈니스 프로세스의 분석 및 예측과 관련하여 회사의 업무를 통합할 수 있습니다.

OLAP 큐브의 장점

OLAP 큐브는 현대적인 치료법기업 컴퓨터 시스템 데이터베이스 분석을 통해 계층 구조의 모든 수준에 있는 직원에게 특성을 나타내는 필수 지표 세트를 제공할 수 있습니다. 제조 공정회사. 요점은 MDX 큐브(MultiDimensional eXpressions)를 위한 편리한 인터페이스와 유연한 쿼리 언어를 통해 필요한 분석 지표를 공식화하고 계산할 수 있을 뿐만 아니라 OLAP 큐브가 이를 수행하는 놀라운 속도와 용이성입니다. 더욱이 이러한 속도와 용이성은 특정 한도 내에서 계산의 복잡성과 데이터베이스 크기에 좌우되지 않습니다.

OLAP에 대한 소개-
큐브는 MS Excel의 "피벗 테이블"로 제공될 수 있습니다. 이러한 객체는 비슷한 논리와 비슷한 인터페이스를 가지고 있습니다. 그러나 기사에서 볼 수 있듯이 OLAP 기능은 비교할 수 없을 정도로 풍부하고 성능도 비교할 수 없을 정도로 높으므로 "피벗 테이블"은 여전히 ​​로컬 데스크톱 제품인 반면 OLAP은 엔터프라이즈 수준 제품입니다.

OLAP 큐브가 문제 해결에 좋은 이유 분석 작업? OLAP 큐브는 가능한 모든 섹션의 모든 지표가 (전체 또는 일부) 미리 계산되고 사용자는 필요한 지표(측정값)와 차원(차원)만 마우스를 사용하면 프로그램이 테이블을 다시 그릴 수 있습니다.

모든 섹션에서 가능한 모든 분석은 하나의 거대한 필드 또는 오히려 필드가 아닌 다차원 OLAP 큐브를 형성합니다. 사용자(관리자, 비즈니스 분석가, 임원)가 분석 서비스를 요청하는 것이 무엇이든 응답 속도는 두 가지로 설명됩니다. 첫째, 필요한 분석을 쉽게 공식화할 수 있습니다(이름으로 목록에서 선택하거나 이름으로 지정). MDX 언어의 공식) 둘째, 원칙적으로 이미 계산되었습니다.

분석 공식화는 세 가지 옵션으로 가능합니다. 데이터베이스 필드(또는 웨어하우스 필드), 큐브 디자인 수준에서 정의된 계산 필드, 큐브와 대화형으로 작업할 때 MDX 언어 식입니다.

이는 OLAP 큐브의 몇 가지 매력적인 기능을 의미합니다. 본질적으로 사용자와 데이터 사이의 장벽이 사라집니다. 장벽은 먼저 문제를 설명해야 하는(작업 설정) 애플리케이션 프로그래머의 형태입니다. 둘째, 애플리케이션 프로그래머가 알고리즘을 생성하고 프로그램을 작성 및 디버깅한 다음 수정할 수도 있을 때까지 기다려야 합니다. 직원이 많고 요구 사항이 다양하고 변경 가능한 경우 전체 애플리케이션 프로그래머 팀이 필요합니다. 이러한 의미에서 OLAP 큐브(및 자격을 갖춘 비즈니스 분석가)는 분석 작업 측면에서 전체 응용 프로그램 프로그래머 팀을 대체합니다. 마치 굴착기 운영자가 포함된 강력한 굴착기가 도랑을 파는 동안 전체 이주 노동자 팀을 삽으로 대체하는 것과 같습니다!

동시에, 획득된 분석 데이터의 또 다른 매우 중요한 품질이 달성됩니다. 회사 전체에 단 하나의 OLAP 큐브만 있기 때문입니다. 이는 모든 사람이 분석가에게 적용할 수 있는 동일한 분야이므로 데이터의 성가신 불일치를 제거합니다. 관리자가 주관성 요소를 제거하기 위해 여러 명의 독립적인 직원에게 동일한 작업을 요청해야 하지만 여전히 서로 다른 답변을 제공하여 모든 사람이 어떻게든 설명하려고 하는 경우 등이 있습니다. OLAP 큐브는 기업 계층의 다양한 수준에서 분석 데이터의 균일성을 보장합니다. 관리자가 자신이 관심을 갖고 있는 특정 지표를 자세히 설명하고 싶다면 부하 직원이 작업하는 하위 수준 데이터를 확인하게 될 것이며 이는 바로 상위 수준 지표가 계산된 기준이 되는 데이터가 될 것입니다. , 다른 방식으로, 다른 시간에 수신된 다른 데이터가 아닙니다. 즉, 회사 전체가 동일한 분석을 확인하지만 집계 수준은 다릅니다.

예를 들어 보겠습니다. 관리자가 매출채권을 관리한다고 가정해 보겠습니다. 연체된 채권에 대한 KPI가 녹색이면 모든 것이 정상이며 관리 조치가 필요하지 않음을 의미합니다. 색상이 노란색이나 빨간색으로 바뀌었다면 뭔가 잘못된 것입니다. 영업 부서별로 KPI를 잘라내면 부서가 "빨간색"으로 즉시 표시됩니다. 관리자별 다음 섹션과 고객이 지불을 연체한 판매자가 식별됩니다. (또한 연체금액은 고객별, 조건별 등으로 나눌 수 있습니다.) 법인장은 위반자에게 직급에 상관없이 직접 연락할 수 있습니다. 그러나 일반적으로 부서장과 영업 관리자 모두에게 동일한 KPI(계층 구조 수준)가 표시됩니다. 따라서 상황을 해결하기 위해 "카펫 위의 호출"을 기다릴 필요도 없습니다... 물론 KPI 자체가 반드시 연체 금액일 필요는 없습니다. 가중 평균 연체 기간 또는 일반적으로 미수금 회전율.

MDX 언어의 복잡성과 유연성은 빠른(때때로 즉각적인) 결과와 함께 다른 방법으로는 전혀 제기되지 않았을 복잡한 제어 문제를 (개발 및 디버깅 단계를 고려하여) 해결할 수 있게 해줍니다. 응용 프로그램 프로그래머의 복잡성과 공식화의 초기 불확실성으로 인해. (실제로 상황 변화가 자주 발생할 때 제대로 이해되지 않은 공식과 오랜 프로그램 수정으로 인해 응용 프로그램 프로그래머가 분석 문제를 해결해야 하는 기한이 깁니다.)

또한 회사의 각 직원이 일반 분야에서 OLAP 분석가가 자신의 작업에 필요한 수확량을 정확히 수집할 수 있고 공동 작업에서 잘라낸 "스트립"에 만족하지 않을 수 있다는 사실에 주목합시다. "표준 보고서".

클라이언트-서버 모드에서 OLAP 큐브 작업을 위한 다중 사용자 인터페이스를 통해 각 직원은 다른 직원과 독립적으로 자신만의 분석 블록(보고서)을 가질 수 있습니다. 이 블록(보고서)은 일단 정의되면 자동으로 생성됩니다. 업데이트됨 - 즉, 항상 최신 상태를 유지합니다.

즉, OLAP 큐브를 사용하면 분석 작업(실제로 접수 분석가뿐만 아니라 실제로 회사의 거의 모든 직원, 심지어 잔고와 배송을 ​​관리하는 물류 전문가 및 관리자도 수행함)을 보다 선택적으로 수행할 수 있습니다. "일반적인 용어가 아님" 작업을 개선하고 생산성을 높이기 위한 조건을 만듭니다.

소개를 요약하면 OLAP 큐브를 사용하면 회사 관리 수준을 더 높은 수준으로 높일 수 있습니다. 계층의 모든 수준에서 분석 데이터의 일관성, 신뢰성, 복잡성, 지표 생성 및 수정 용이성, 개별 설정, 빠른 데이터 처리 속도, 그리고 마지막으로 대체 분석 경로 지원에 소요되는 비용과 시간 절약(응용 프로그램 프로그래머, 직원의 독립적인 계산)은 러시아 대기업에서 OLAP 큐브를 사용할 수 있는 가능성을 열어줍니다.

OLTP + OLAP: 개요 피드백회사 관리 체인에서

이제 OLAP 큐브의 일반적인 개념과 기업 관리 체인에서의 적용 지점을 살펴보겠습니다. OLAP(온라인 분석 처리)라는 용어는 영국의 수학자 Edgar Codd가 이전에 소개한 OLTP(온라인 트랜잭션 처리) 용어에 추가로 도입했습니다. 이에 대해서는 나중에 논의하겠지만, 물론 E. Codd는 용어뿐만 아니라 OLTP와 OLAP의 수학적 이론도 제안했습니다. 자세히 설명하지 않고 현대적으로 해석하면 OLTP는 정보를 기록, 저장 및 검색하는 메커니즘으로 간주되는 관계형 데이터베이스입니다.

솔루션 방법론

1C7, 1C8, MS Dynamics AX와 같은 ERP 시스템(Enterprice Resource Planning)에는 사용자 중심의 소프트웨어 인터페이스(문서 입력 및 편집 등)와 정보 저장 및 검색을 위한 관계형 데이터베이스(DB)가 있으며 오늘날 소프트웨어로 대표됩니다. MS SQL Server(SS)와 같은 제품.

ERP 시스템 데이터베이스에 등록된 정보는 실로 매우 귀중한 자원임을 참고하시기 바랍니다. 요점은 등록된 정보가 기업의 현재 문서 흐름(문서 추출, 조정, 인쇄 및 조정 기능 등)을 보장할 뿐만 아니라 재무제표 계산 기능(세금, 감사 등)을 보장한다는 것입니다. ). 관리 관점에서 볼 때 OLTP 시스템(관계형 데이터베이스)이 실제로 기업 활동의 실제 실물 크기 디지털 모델이라는 것이 훨씬 더 중요합니다.

그러나 프로세스를 관리하기 위해서는 프로세스에 대한 정보를 등록하는 것만으로는 충분하지 않습니다. 프로세스는 진행 상황을 특징짓는 수치 지표(KPI) 시스템의 형태로 제시되어야 합니다. 또한 지표에 대해 허용 가능한 값 범위가 정의되어야 합니다. 그리고 표시기의 값이 허용 간격을 벗어나는 경우에만 제어 조치를 취해야 합니다.

이러한 통제(“편차에 의한 통제”)의 논리(또는 신화)에 대해, 배가 항로를 벗어날 때 노에 기대는 키잡이(사이베르노스)의 이미지를 창조한 고대 그리스 철학자 플라톤과 컴퓨터 시대 직전에 사이버네틱스 과학을 창시한 미국의 수학자 노버트 위너(Norbert Wiener).

OLTP 방법을 사용하여 정보를 기록하는 일반적인 시스템 외에도 수집된 정보를 분석하는 시스템이라는 또 다른 시스템이 필요합니다. 제어 루프에서 관리와 제어 개체 사이의 피드백 역할을 하는 이 추가 기능이 OLAP 시스템, 즉 줄여서 OLAP 큐브입니다.

OLAP의 소프트웨어 구현으로서 MS SQL Server 표준 제공의 일부인 SSAS라고 하는 MS Analysis Services 유틸리티를 고려해 보겠습니다. E. Codd의 계획에 따르면 분석의 OLAP 큐브는 OLTP 시스템 및 관계형 데이터베이스(SQL Server)가 정보 저장 및 검색에 제공하는 것과 동일한 포괄적인 작업 자유를 제공해야 합니다.

OLAP물류

이제 구체적인 구성을 살펴보겠습니다. 외부 장치, OLAP 큐브의 자동화된 운영의 기반이 되는 응용 프로그램 및 기술 운영.

기업에서는 평소와 같이 정보가 기록되는 1C7 또는 1C8과 같은 ERP 시스템을 사용한다고 가정합니다. 이 ERP 시스템의 데이터베이스는 특정 서버에 있으며 MS SQL Server에서 지원됩니다.

또한 SSAS(MS Analysis Services) 유틸리티가 포함된 MS SQL Server, MS SQL Server Management Studio, MS C#, MS Excel 및 MS Visual Studio를 포함하여 다른 서버에 소프트웨어가 설치되어 있다고 가정합니다. 이러한 프로그램은 함께 필수 컨텍스트, 즉 OLAP 큐브 개발자를 위한 도구 및 필수 인터페이스를 형성합니다.

SSAS 서버에는 blat라는 무료 배포 프로그램이 있습니다. 명령줄우편 서비스를 제공합니다.

로컬 네트워크 내의 직원 워크스테이션에는 MS Excel 프로그램(2003 이상 버전)이 설치되어 있을 뿐만 아니라 MS Excel이 MS Analysis Services와 작동하도록 보장하는 특수 드라이버도 설치되어 있습니다(해당 드라이버가 이미 설치되어 있지 않은 경우). MS Excel에 포함되어 있습니다).

명확성을 위해 직원 워크스테이션에 운영 체제가 설치되어 있다고 가정합니다. 윈도우 시스템 XP 및 서버에서 - 윈도우 서버 2008. 또한 MS SQL Server 2005를 SQL Server로 사용하고 OLAP 큐브가 있는 서버에 Enterprise Edition(EE) 또는 Developer Edition(DE)을 설치하십시오. 이 버전에서는 소위를 사용할 수 있습니다. "반부가적 조치", 즉 추가의 집계 함수(통계) 일반적인 합계(예: 극단 또는 평균) 이외의 것입니다.

OLAP 큐브 디자인(OLAP 큐비즘)

OLAP 큐브 자체의 디자인에 대해 몇 마디 말해 보겠습니다. 통계 언어에서 OLAP 큐브는 필요한 모든 섹션(예: 고객별, 상품별, 날짜별 섹션의 배송 표시기)에서 계산된 성과 지표 세트입니다. OLAP 큐브에 대한 러시아어 문헌의 영어를 직접 번역하기 때문에 표시기를 "측정값"이라고 하고 섹션을 "차원"이라고 합니다. 이것은 수학적으로는 정확하지만 구문론적으로나 의미적으로는 그다지 성공적인 번역이 아닙니다. 러시아어 단어 "측정", "차원", "차원"은 의미와 철자가 거의 동일한 반면, 영어 "측정"과 "차원"은 철자와 의미가 모두 다릅니다. 따라서 우리는 의미가 유사한 전통적인 러시아 통계 용어 "지표"와 "컷"을 선호합니다.

데이터가 기록되는 OLTP 시스템과 관련하여 OLAP 큐브의 소프트웨어 구현에는 여러 가지 옵션이 있습니다. 우리는 가장 단순하고, 가장 안정적이며, 가장 빠른 하나의 계획만을 고려할 것입니다.

이 디자인에서는 OLAP과 OLTP가 테이블을 공유하지 않으며, 사용 단계에 앞서 큐브 업데이트(프로세스) 단계에서 OLAP 분석이 최대한 자세하게 계산됩니다. 이 방식을 MOLAP(다차원 OLAP)이라고 합니다. 단점은 ERP와의 비동기성과 높은 메모리 비용입니다.

공식적으로는 수천 개의 ERP 시스템 관계형 데이터베이스 테이블 전체를 데이터 원본으로 사용하고 해당 필드 전체(수백 개)를 표시기 또는 섹션으로 사용하여 OLAP 큐브를 구축할 수 있지만 실제로는 이렇게 하면 안 됩니다. 그 반대의 경우도 마찬가지입니다. 큐브에 로드하려면 "쇼케이스" 또는 "창고"라는 별도의 데이터베이스를 준비하는 것이 더 정확합니다.

여러 가지 이유 때문에 우리는 그렇게 하게 됩니다.

  • 첫째로, OLAP 큐브를 실제 데이터베이스의 테이블에 연결하면 확실히 기술적인 문제가 발생합니다. 테이블의 데이터를 변경하면 큐브 새로 고침이 트리거될 수 있으며, 큐브 새로 고침이 반드시 빠른 프로세스는 아니므로 큐브는 지속적인 재구축 상태에 있게 됩니다. 동시에 큐브 업데이트 절차는 데이터베이스 테이블의 데이터를 읽을 때 차단하여 ERP 시스템에 데이터를 등록하는 사용자의 작업 속도를 저하시킬 수 있습니다.
  • 둘째, 인디케이터와 컷이 너무 많으면 서버의 큐브 저장 공간이 급격히 늘어납니다. OLAP 큐브는 OLTP 시스템에서와 같이 소스 데이터뿐만 아니라 가능한 모든 섹션(및 모든 섹션의 모든 조합)에 대해 요약된 모든 표시기도 저장한다는 점을 잊지 마십시오. 또한 큐브 업데이트 속도, 궁극적으로 이를 기반으로 한 분석 및 사용자 보고서 작성 및 업데이트 속도도 그에 따라 느려집니다.
  • 제삼, 필드(지표 및 섹션)가 너무 많으면 OLAP 개발자 인터페이스에 문제가 발생합니다. 요소 목록이 엄청날 것입니다.
  • 넷째, OLAP 큐브는 데이터 무결성 위반에 매우 민감합니다. 큐브 필드 연결 구조에 지정된 링크에 키 데이터가 없으면 큐브를 만들 수 없습니다. 일시적 또는 영구적 무결성 위반, 빈 필드는 ERP 시스템 데이터베이스에서 흔히 발생하지만 이는 OLAP에는 전혀 적합하지 않습니다.

또한 부하를 공유하기 위해 ERP 시스템과 OLAP 큐브가 서로 다른 서버에 위치해야 한다고 추가할 수도 있습니다. 그런데 OLAP과 OLTP에 공통 테이블이 있으면 네트워크 트래픽 문제도 발생한다. 이 경우 여러 개의 서로 다른 ERP 시스템(1C7, 1C8, MS Dynamics AX)을 하나의 OLAP 큐브로 통합해야 하는 경우 실질적으로 해결 불가능한 문제가 발생합니다.

아마도 기술적인 문제가 계속해서 쌓일 수 있을 것 같습니다. 하지만 가장 중요한 점은 OLTP와 달리 OLAP은 데이터를 기록하고 저장하는 수단이 아니라 분석 도구라는 점을 기억하세요. 이는 만일의 경우에 대비하여 ERP에서 OLAP으로 "더러운" 데이터를 업로드하고 다운로드할 필요가 없음을 의미합니다. 반대로 최소한 KPI 시스템 수준에서 회사 관리를 위한 개념을 먼저 개발한 다음 OLAP 큐브와 동일한 서버에 위치하고 작은 데이터를 포함하는 애플리케이션 데이터 웨어하우스(웨어하우스)를 설계해야 합니다. , 관리에 필요한 ERP 데이터의 정제된 양.

나쁜 습관을 조장하지 않고 OLTP와 관련된 OLAP 큐브는 실제 등록의 "발효 덩어리"에서 "순수한 제품"을 추출하는 잘 알려진 "스틸"에 비유할 수 있습니다.

따라서 우리는 OLAP의 데이터 소스가 OLAP과 동일한 서버에 위치한 특수 데이터베이스(웨어하우스)라는 것을 알게 되었습니다. 일반적으로 이는 두 가지를 의미합니다. 첫째, ERP 데이터베이스에서 창고를 생성하려면 특별한 절차가 있어야 합니다. 둘째, OLAP 큐브는 ERP 시스템과 비동기적입니다.

위의 내용을 고려하여 다음 버전의 컴퓨팅 프로세스 아키텍처를 제안합니다.

솔루션 아키텍처

특정 회사(지주)의 여러 ERP 시스템이 서로 다른 서버에 있고 분석 데이터가 하나의 OLAP 큐브 내에 통합되기를 원한다고 가정합니다. 설명된 기술에서는 ERP 시스템의 데이터를 웨어하우스 수준에서 결합하고 OLAP 큐브의 디자인은 변경하지 않는다는 점을 강조합니다.

OLAP 서버에서는 이러한 모든 ERP 시스템 데이터베이스의 이미지(빈 복사본)를 생성합니다. 우리는 정기적으로(밤마다) 해당 활성 ERP 데이터베이스를 이러한 빈 복사본에 부분적으로 복제합니다.

다음으로, 네트워크 트래픽이 없는 동일한 OLAP 서버에서 ERP 시스템 데이터베이스의 부분 복제본을 기반으로 OLAP 큐브의 데이터 소스인 웨어하우스(창고)를 생성(또는 보충)하는 SP(저장 프로시저)가 시작됩니다.

그런 다음 웨어하우스 데이터를 기반으로 큐브를 업데이트/구축하기 위한 표준 절차가 시작됩니다(SSAS 인터페이스의 프로세스 작업).

기술의 몇 가지 측면에 대해 논평해 보겠습니다. SP는 어떤 일을 하나요?

부분 복제의 결과로 현재 데이터가 OLAP 서버의 일부 ERP 시스템 이미지에 나타납니다. 그런데 부분 복제는 두 가지 방법으로 수행할 수 있습니다.

첫째, ERP 시스템 데이터베이스의 모든 테이블 중 부분 복제 중에 웨어하우스 구축에 필요한 테이블만 복사됩니다. 이는 고정된 테이블 이름 목록에 의해 제어됩니다.

둘째, 부분 복제는 테이블의 모든 필드가 복사되지 않고 웨어하우스 구축과 관련된 필드만 복사됨을 의미할 수도 있습니다. 복사할 필드 목록은 복사본 이미지의 SP에서 지정되거나 동적으로 생성됩니다(모든 필드가 처음에 테이블 복사본에 존재하지 않는 경우).

물론 테이블 행 전체를 복사하는 것이 아니라 새 레코드를 추가하는 것만 가능합니다. 그러나 이는 실제 시스템에서 종종 발생하는 ERP 개정을 "소급"하여 회계 처리할 때 심각한 불편을 초래합니다. 따라서 더 이상 고민하지 않고 모든 기록을 복사하는 것이 더 쉽습니다(또는 특정 날짜부터 시작하는 "꼬리"를 업데이트하는 것).

다음으로 SP의 주요 업무는 ERP 시스템 데이터를 웨어하우스 형식으로 변환하는 것입니다. ERP 시스템이 하나만 있는 경우 변환 작업은 주로 필요한 데이터를 복사하고 형식을 다시 지정하는 것으로 귀결됩니다. 그러나 동일한 OLAP 큐브에 서로 다른 구조의 여러 ERP 시스템을 통합해야 하는 경우 변환이 더욱 복잡해집니다.

여러 다른 ERP 시스템을 하나의 큐브에 통합하는 작업은 개체 집합(상품, 계약자, 창고 등의 디렉터리)이 부분적으로 겹치는 경우 특히 어렵습니다. 개체는 동일한 의미를 가지지만 자연스럽게 디렉터리에서 다르게 설명됩니다. 다른 시스템(코드, 식별자, 이름 등의 의미).

실제로 이러한 그림은 동일한 유형의 여러 구성 자치 회사가 거의 동일한 영역에서 거의 동일한 유형의 활동을 수행하지만 자체적이고 합의되지 않은 등록 시스템을 사용하는 대규모 지주 회사에서 발생합니다. 이 경우 웨어하우스 수준에서 데이터를 통합할 때 보조 매핑 테이블 없이는 할 수 없습니다.

창고 저장 아키텍처에 주목해 보겠습니다. 일반적으로 OLAP 큐브 스키마는 "별" 형태로 표시됩니다. 디렉토리의 "광선"으로 둘러싸인 데이터 테이블 - 보조 키 값 테이블. 표는 "지표" 블록이고 참고서는 해당 섹션입니다. 이 경우 디렉토리는 임의의 불균형 트리 또는 균형 잡힌 계층 구조(예: 상품 또는 계약자의 다단계 분류)일 수 있습니다. OLAP 큐브에서 웨어하우스의 데이터 테이블의 숫자 필드는 자동으로 "표시자"(또는 측정값)가 되며, 보조 키 테이블을 사용하여 섹션(또는 차원)을 정의할 수 있습니다.

이것은 시각적인 "교육적" 설명입니다. 실제로 OLAP 큐브의 아키텍처는 훨씬 더 복잡할 수 있습니다.

첫째, 창고는 공통 디렉토리를 통해 연결될 수 있는 여러 "별"로 구성될 수 있습니다. 이 경우 OLAP 큐브는 여러 큐브(여러 데이터 블록)의 통합이 됩니다.

둘째, 별표의 "광선"은 단지 하나의 디렉터리가 아니라 전체(계층적) 파일 시스템일 수 있습니다.

셋째, 기존 차원 섹션을 기반으로 OLAP 개발자 인터페이스 도구를 사용하여 새로운 계층적 섹션을 정의할 수 있습니다(예: 더 적은 수준, 다른 수준 순서 등).

넷째, 기존 지표와 섹션을 기반으로 MDX 언어 표현을 이용하여 새로운 지표(계산)를 정의할 수 있습니다. 새로운 큐브, 새로운 지표, 새로운 섹션은 원래 요소와 자동으로 완전히 통합된다는 점에 유의하는 것이 중요합니다. 또한 잘못 구성된 계산과 계층적 섹션으로 인해 OLAP 큐브의 작동이 크게 느려질 수 있다는 점에도 유의해야 합니다.

OLAP과의 인터페이스로서의 MS Excel

특히 흥미로운 점은 OLAP 큐브를 사용한 사용자 인터페이스입니다. 당연히 가장 완벽한 인터페이스는 SSAS 유틸리티 자체에서 제공됩니다. 여기에는 OLAP 큐브 개발자 도구 키트, 대화형 보고서 디자이너 및 창이 포함됩니다. 대화형 작업 MDX 쿼리를 사용하는 OLAP 큐브를 사용합니다.

SSAS 자체 외에도 어느 정도 기능을 포괄하는 OLAP에 대한 인터페이스를 제공하는 많은 프로그램이 있습니다. 그러나 그중에는 부인할 수 없는 장점이 있다고 생각되는 것이 있습니다. MS 엑셀입니다.

MS Excel과의 인터페이스는 별도로 다운로드할 수 있거나 Excel 배포판에 포함된 특수 드라이버에 의해 제공됩니다. OLAP의 모든 기능을 다루지는 않지만 MS Excel 버전 번호가 증가함에 따라 이 범위가 더 넓어지고 있습니다. 예를 들어 MS Excel 2003에서는 나타나지 않았던 KPI의 그래픽 표현이 MS Excel 2007에서 나타납니다. 등.).

물론 상당히 완전한 기능 외에도 MS Excel의 주요 장점은 이 프로그램이 널리 배포되고 압도적인 수의 사무실 사용자가 이 프로그램에 대해 잘 알고 있다는 것입니다. 이런 의미에서 다른 인터페이스 프로그램과 달리 회사는 추가로 아무것도 구매할 필요가 없으며 추가로 사람을 교육할 필요도 없습니다.

OLAP와의 인터페이스로서 MS Excel의 가장 큰 장점은 OLAP 보고서에서 얻은 데이터를 더욱 독립적으로 처리할 수 있다는 것입니다(즉, 더 이상 OLAP 도구를 사용하지 않고 동일한 Excel의 다른 시트에서 OLAP에서 얻은 데이터를 계속 연구할 수 있지만, 일반 Excel 도구 사용).

Facubi 야간 치료 주기

이제 OLAP 작업의 일일(야간) 계산 주기에 대해 설명하겠습니다. 계산은 C# 2005로 작성되고 웨어하우스 및 SSAS가 있는 서버의 작업 스케줄러를 통해 실행되는 facubi 프로그램의 제어 하에 수행됩니다. 처음에 facubi는 인터넷에 접속하여 현재 환율(통화의 여러 지표를 나타내는 데 사용됨)을 읽습니다. 그런 다음 다음 단계를 수행하십시오.

먼저, facubi는 로컬 네트워크에서 사용 가능한 다양한 ERP 시스템(보유 요소)의 데이터베이스를 부분적으로 복제하는 SP를 출시합니다. 앞서 말했듯이 복제는 미리 준비된 "배경"(SSAS 서버에 있는 원격 ERP 시스템 이미지)으로 수행됩니다.

둘째, SP를 통해 ERP 복제본에서 웨어하우스 스토리지(OLAP 큐브 데이터의 소스이고 SSAS 서버에 있는 특수 DB)로 매핑이 수행됩니다. 이 경우 세 가지 주요 작업이 해결됩니다.

  • ERP 데이터필요한 큐브 형식으로 조정됩니다. 우리 얘기 중이야테이블과 테이블 필드에 관한 것입니다. (필요한 테이블을 여러 MS Excel 시트에서 "만들어"야 하는 경우도 있습니다.) 유사한 데이터는 ERP마다 형식이 다를 수 있습니다. 예를 들어 1C7 디렉터리의 키 ID 필드에는 길이 8의 36자리 문자 코드가 있습니다. , 및 _idrref 필드(디렉토리 1С8) – 길이가 32인 16진수;
  • 처리 중 논리적 데이터 제어(가능한 경우 누락된 데이터 대신 "기본값" 쓰기 포함)와 무결성 제어가 수행됩니다. 해당 분류자에 기본 키와 보조 키가 있는지 확인합니다.
  • 코드 통합 서로 다른 ERP에서 동일한 의미를 갖는 개체입니다. 예를 들어, 서로 다른 ERP 디렉토리의 해당 요소는 동일한 의미를 가질 수 있습니다. 즉, 동일한 상대방입니다. 코드 통합 문제는 매핑 테이블을 구성하여 해결됩니다. 다양한 코드동일한 대상이 하나로 통합됩니다.

세 번째, 파쿠비(facubi) 출시 표준 절차프로세스 큐브 데이터 업데이트(SSAS 유틸리티 절차에서)

체크리스트를 기반으로 facubi는 처리 단계의 진행 상황에 대한 이메일을 보냅니다.

facubi를 실행한 후 작업 스케줄러는 여러 Excel 파일을 차례로 실행하며, 이 파일에는 OLAP 큐브 지표를 기반으로 보고서가 미리 생성됩니다. 앞서 말했듯이 MS Excel에는 특별한 기능이 있습니다. 소프트웨어 인터페이스 OLAP 큐브(SSAS 포함) 작업을 위한 (별도 다운로드 가능 또는 내장 드라이버) MS Excel을 시작하면 MS VBA 프로그램(예: 매크로)이 활성화되어 보고서의 데이터가 업데이트됩니다. 보고서는 필요한 경우 수정되며 체크리스트에 따라 사용자에게 메일(blat 프로그램)로 전송됩니다.

SSAS 서버에 대한 액세스 권한이 있는 로컬 네트워크 사용자는 OLAP 큐브에 대해 구성된 "실시간" 보고서를 받게 됩니다. (원칙적으로 그들은 메일 없이도 자신의 컴퓨터에 있는 MS Excel의 OLAP 보고서를 업데이트할 수 있습니다. 로컬 컴퓨터.) 로컬 네트워크 외부의 사용자는 기능이 제한된 원본 보고서를 받거나 (MS Excel에서 OLAP 보고서를 업데이트한 후) SSAS 서버에 액세스하지 않는 특별한 "죽은" 보고서를 계산하게 됩니다.

결과 평가

위에서 OLTP와 OLAP의 비동기성에 대해 이야기했습니다. 고려 중인 기술 변형에서는 OLAP 큐브 업데이트 주기가 밤에 수행됩니다(예: 오전 1시에 시작). 이는 현재 근무일에 사용자가 어제의 데이터로 작업하고 있음을 의미합니다. OLAP은 기록 도구(문서의 최신 개정판 보기)가 아니라 관리 도구(프로세스 추세 이해)이므로 이러한 지연은 일반적으로 중요하지 않습니다. 그러나 필요한 경우 설명된 버전의 큐브 아키텍처(MOLAP)에서도 하루에 여러 번 업데이트를 수행할 수 있습니다.

업데이트 절차의 실행 시간은 OLAP 큐브의 디자인 기능(다소 복잡도, 표시기 및 섹션의 성공적인 정의)과 외부 OLTP 시스템의 데이터베이스 볼륨에 따라 달라집니다. 경험에 따르면 창고 구축 절차는 몇 분에서 2시간 정도 소요되며, 큐브 업데이트 절차(프로세스)는 1~20분 정도 소요됩니다. 우리는 수십 개의 별형 구조, 이를 위한 수십 개의 공통 "광선"(참조 섹션) 및 수백 개의 지표를 통합하는 복잡한 OLAP 큐브에 대해 이야기하고 있습니다. 선적 문서를 기반으로 외부 ERP 시스템의 데이터베이스 양을 추정하면 수십만 개의 문서와 이에 따라 연간 수백만 개의 제품 라인에 대해 이야기합니다. 사용자가 관심을 갖는 과거 처리 깊이는 3~5년이었습니다.

설명된 기술은 다양한 분야에서 사용됩니다. 대기업: 2008년부터 Russian Fish Company(RRK) 및 Russian Sea Company(RM)에서, 2012년부터 Santa Bremor 회사(SB)에서. 일부 기업은 주로 무역 및 구매 회사(PPC)이고 다른 기업은 생산 회사(몰도바 공화국 및 벨로루시 공화국의 생선 및 해산물 가공 공장)입니다. 모든 기업은 1C7 및 1C8과 같은 표준 ERP 시스템부터 DBF 및 Excel을 기반으로 하는 "유물" 회계 시스템에 이르기까지 여러 회사를 독립적이고 다양한 컴퓨터 회계 시스템으로 통합하는 대규모 기업입니다. OLAP 큐브를 운영하기 위해 설명된 기술(개발 단계를 고려하지 않음)에는 특별한 직원이 전혀 필요하지 않거나 정규 비즈니스 분석가 한 명이 책임을 진다는 점을 덧붙일 것입니다. 문제는 수년 동안 계속 소용돌이 쳤습니다. 자동 모드, 다양한 업종의 기업 임직원에게 매일 최신 리포팅을 제공합니다.

솔루션의 장점과 단점

경험에 따르면 제안된 솔루션은 매우 안정적이고 사용하기 쉽습니다. 불변성으로 쉽게 수정됩니다(새로운 ERP 연결/연결 해제, 새로운 지표 및 섹션 생성, Excel 보고서 및 해당 메일링 목록 생성 및 수정). 제어 프로그램파쿠비.

OLAP과의 인터페이스인 MS Excel은 충분한 표현력을 제공하며 다양한 유형의 사무실 직원이 OLAP 기술에 빠르게 익숙해질 수 있도록 해줍니다. 사용자는 매일 "표준" OLAP 보고서를 받습니다. OLAP과 함께 MS Excel 인터페이스를 사용하면 MS Excel에서 OLAP 보고서를 독립적으로 생성할 수 있습니다. 또한 사용자는 MS Excel의 일반적인 기능을 사용하여 OLAP 보고서의 정보를 독립적으로 계속 연구할 수 있습니다.

여러 이기종 ERP 시스템이 통합된(큐브 구성 중) "정제된" 웨어하우스 데이터베이스를 사용하면 OLAP 없이도 문제를 해결할 수 있습니다(SSAS 서버에서 언어의 쿼리 방법 사용). SQL 트랜잭션또는 SP 방법 등) 많은 응용 제어 문제가 있습니다. 웨어하우스 데이터베이스 구조는 원래 ERP의 데이터베이스 구조보다 통합되고 테이블 수와 테이블 필드 수 측면에서 훨씬 단순하다는 점을 기억해 보겠습니다.

특히 우리가 제안한 솔루션에는 다양한 ERP 시스템을 하나의 OLAP 큐브에 통합할 가능성이 있다는 점에 주목했습니다. 이를 통해 기업이 다른 회계 ERP 시스템으로 이동할 때(예: 1C7에서 1C8로 이동할 때) 전체 보유에 대한 분석을 얻고 장기적인 분석 연속성을 유지할 수 있습니다.

우리는 MOLAP 큐브 모델을 사용했습니다. 이 모델의 장점은 작동 안정성과 사용자 요청 처리 속도가 빠르다는 것입니다. 단점: OLAP과 OLTP는 비동기식일 뿐만 아니라 OLAP 저장을 위한 대용량 메모리도 있습니다.

결론적으로, 중세 시대에는 더 적절했을 수도 있는 OLAP을 지지하는 또 다른 주장이 있습니다. 증거능력은 권위에 있기 때문이다. 겸손하고 분명히 과소평가된 영국 수학자 E. Codd는 60년대 후반에 관계형 데이터베이스 이론을 개발했습니다. 이 이론의 위력은 50년이 지난 지금, 이미 비관계형 데이터베이스와 SQL 이외의 데이터베이스 쿼리 언어를 찾아보기 어려울 정도였습니다.

관계형 데이터베이스 이론을 기반으로 한 OLTP 기술은 E. Codd의 첫 번째 아이디어였습니다. 실제로 OLAP 큐브 개념은 그가 90년대 초에 표현한 두 번째 아이디어입니다. 수학자가 아니더라도 두 번째 아이디어가 첫 번째 아이디어만큼 효과적일 것이라고 기대할 수 있습니다. 즉, 컴퓨터 분석 측면에서 OLAP 아이디어가 곧 전 세계를 장악하고 다른 모든 아이디어를 대체할 것입니다. 단순히 분석이라는 주제가 OLAP에서 포괄적인 수학적 솔루션을 찾고 이 솔루션이 분석의 실제 문제에 "적절"(B. Spinoza의 용어)이기 때문입니다. 스피노자에게 "적절하게"는 신 자신도 이보다 더 나은 것을 생각할 수 없었다는 것을 의미합니다.

  1. Larson B. Microsoft SQL Server 2005의 비즈니스 분석 개발. – 상트페테르부르크: “Peter”, 2008.
  2. Codd E. 데이터베이스 하위 언어의 관계형 완전성, 데이터베이스 시스템, Courant Computer Science Sumposia 시리즈 1972, v. 6, 잉글우드 절벽, 뉴욕, 프렌티스 – 홀.

접촉 중

데이터는 일반적으로 드물고 장기간 저장됩니다. 이는 범용 관계형 DBMS 또는 전문 소프트웨어(OLAP 참조)를 기반으로 구현될 수 있습니다. 안에 소프트웨어 제품 SAP 회사는 "인포큐브"라는 용어를 사용합니다.

배열 인덱스는 큐브의 차원(dimension) 또는 축에 해당하고, 배열 요소의 값은 큐브의 측정값(measures)에 해당합니다.

: (엑스,와이,) → wxyz,

어디 엑스, 와이, - 측정, - 측정하다.

프로그래밍 언어의 일반 배열과 달리 OLAP 큐브 요소에 대한 액세스는 인덱스 차원의 전체 집합이나 해당 하위 집합을 통해 수행될 수 있으며 결과는 하나의 요소가 아닌 여러 요소가 됩니다.

: (엑스,와이) → W = ( wz1, wz2, …, 승 zn}

또한 알려진 설명 OLAP 큐브관계의 투영으로 관계 대수 용어를 사용합니다.

또한보십시오


위키미디어 재단. 2010.

  • 스타 다이어그램
  • 우리 집은 러시아(진영)

다른 사전에 "OLAP 큐브"가 무엇인지 확인하십시오.

    OLAP 큐브-... 위키피디아

    OLAP- (eng. 온라인 분석 처리, 실시간 분석 처리) 대량의 데이터를 기반으로 요약(집계) 정보를 준비하는 데이터 처리 기술로 다음과 같이 구조화됩니다. ... ... Wikipedia

    큐브 (동음이의어)- 큐브는 다치 용어입니다. 수학에서 큐브는 육각 정다면체입니다. 대수학에서는 숫자의 3제곱입니다. SF 영화 시리즈: “큐브” “큐브 2: 하이퍼큐브” “큐브 제로” 속어 및 전문 용어 의료... ... 위키피디아

    입방체- 이 용어에는 다른 의미도 있습니다. 큐브(의미)를 참조하세요. 큐브 유형 정다면체 면 사각형 ... Wikipedia

    몬드리안- OLAP 서버 종류 OLAP 서버 개발자 Pentaho 운영 체제크로스 플랫폼 소프트웨어 최신 버전 3.4.1 (2012 05 07) 라이센스 프리 소프트웨어 ... Wikipedia - 정보 분석 시스템 자동화 시스템일반적으로 전문가가 대량의 데이터를 신속하게 분석할 수 있도록 하는 것은 상황 센터의 요소 중 하나입니다. 또한 때때로 IAS에는 수집 시스템이 포함되어 있습니다... ... Wikipedia

이 작업의 일환으로 다음과 같은 문제가 고려됩니다.

  • OLAP 큐브란 무엇입니까?
  • 측정값, 차원, 계층이란 무엇입니까?
  • OLAP 큐브에서는 어떤 유형의 작업을 수행할 수 있습니까?
OLAP 큐브의 개념

OLAP의 주요 가정은 데이터 표현의 다차원성입니다. OLAP 용어에서 큐브 또는 하이퍼큐브의 개념은 다차원 이산 데이터 공간을 설명하는 데 사용됩니다.

입방체사용자 분석가가 정보를 쿼리할 수 있는 다차원 데이터 구조입니다. 큐브는 사실과 차원으로부터 생성됩니다.

데이터-분석 대상이 될 회사 내 개체 및 이벤트에 대한 데이터입니다. 동일한 유형의 사실은 측정값을 형성합니다. 측정값은 큐브 셀의 값 유형입니다.

측정- 사실을 분석하는 데 사용되는 데이터 요소입니다. 이러한 요소의 컬렉션은 차원 속성을 형성합니다. 예를 들어 요일은 시간 차원 속성을 형성할 수 있습니다. 영리 기업의 비즈니스 분석 작업에서 차원에는 "시간", "판매", "제품", "고객", "직원", "지리적 위치"와 같은 범주가 포함되는 경우가 많습니다. 측정하는 경우가 가장 많습니다. 계층 구조, 이는 사용자가 실제 데이터를 분석할 수 있는 논리적 범주입니다. 각 계층 구조에는 하나 이상의 수준이 있을 수 있습니다. 따라서 '지리적 위치' 차원의 계층 구조에는 '국가-지역-도시' 수준이 포함될 수 있습니다. 예를 들어 시간 계층에서 다음과 같은 일련의 수준을 구분할 수 있습니다. 차원에는 여러 계층이 있을 수 있습니다(한 차원의 각 계층에는 차원 테이블의 동일한 키 속성이 있어야 함).

큐브는 하나 이상의 사실 테이블의 실제 데이터를 포함할 수 있으며 대부분 여러 차원을 포함합니다. 특정 큐브에는 일반적으로 분석을 위한 특정 초점이 있습니다.

그림 1은 특정 기업의 석유제품 판매를 지역별로 분석하기 위해 제작된 큐브의 예를 보여준다. 이 큐브에는 세 가지 차원(시간, 제품 및 지역)과 하나의 측정값(금전적으로 표현된 판매량)이 있습니다. 측정값은 큐브의 해당 셀에 저장됩니다. 각 셀은 튜플이라고 하는 각 차원의 멤버 집합으로 고유하게 식별됩니다. 예를 들어, 큐브의 왼쪽 아래 모서리에 있는 셀($98399 값 포함)은 튜플 [July 2005, Far East, Diesel]으로 지정됩니다. 여기서 $98,399라는 값은 2005년 7월 극동 지역의 디젤 판매량(금전적 기준)을 나타냅니다.

또한 일부 셀에는 값이 포함되어 있지 않다는 점도 주목할 가치가 있습니다. 이러한 셀은 사실 테이블에 해당 데이터가 포함되어 있지 않기 때문에 비어 있습니다.

쌀. 1.다양한 지역의 석유제품 판매정보를 ​​담은 큐브

이러한 큐브를 만드는 궁극적인 목표는 실제 데이터에서 필요한 정보를 추출하는 쿼리의 처리 시간을 최소화하는 것입니다. 이 작업을 수행하기 위해 큐브에는 일반적으로 집계(집계). 저것들. 큐브는 실제 공간보다 더 큰 데이터 공간을 차지합니다. 그 안에 논리적이고 계산된 포인트가 있습니다. 집계 함수를 사용하면 실제 값을 기반으로 논리적 공간의 포인트 값을 계산할 수 있습니다. 가장 간단한 집계 함수는 SUM, MAX, MIN, COUNT입니다. 따라서 예를 들어 MAX 함수를 사용하면 예제에 제공된 큐브에 대해 극동 지역 등에서 디젤 판매의 피크가 발생한 시기를 식별할 수 있습니다.

다차원 큐브의 또 다른 특징은 원점을 결정하기 어렵다는 것입니다. 예를 들어, 제품 또는 지역 차원에 대해 포인트 0을 어떻게 설정합니까? 이 문제에 대한 해결책은 차원의 모든 요소를 ​​결합하는 특수 속성을 도입하는 것입니다. 이 속성(자동으로 생성됨)에는 All이라는 하나의 요소만 포함됩니다. sum과 같은 단순 집계 함수의 경우 All 요소는 주어진 차원의 실제 공간에 있는 모든 요소의 값을 합한 것과 같습니다.

다차원 데이터 모델의 중요한 개념은 부분공간, 즉 하위 큐브입니다. 하위 큐브는 큐브 내부의 다차원 도형 형태로 큐브의 전체 공간의 일부입니다. 큐브의 다차원 공간은 불연속적이고 제한적이므로 하위 큐브도 불연속적이고 제한적입니다.

OLAP 큐브 작업

OLAP 큐브에서는 다음 작업을 수행할 수 있습니다.

  • 일부분;
  • 회전;
  • 강화;
  • 자세히.
일부분(그림 2)는 하위 큐브의 특별한 경우입니다. 이는 이 하위 집합에 포함되지 않은 하나 이상의 차원 요소의 단일 값에 해당하는 다차원 데이터 배열의 하위 집합을 형성하는 절차입니다. 예를 들어 특정 지역, 즉 우랄 지역에서만 시간이 지남에 따라 석유 제품 판매가 어떻게 진행되었는지 확인하려면 "우랄" 요소의 "제품" 차원을 수정하고 요소에서 해당 하위 집합(하위 큐브)을 추출해야 합니다. 입방체.
  • 쌀. 2. OLAP 큐브 슬라이스

    회전(그림 3) - 보고서 또는 표시된 페이지에 표시된 측정 위치를 변경하는 작업입니다. 예를 들어, 회전 작업에는 테이블의 행과 열을 다시 정렬하는 작업이 포함될 수 있습니다. 또한 데이터 큐브를 회전하면 표 외부의 차원이 표시된 페이지에 있는 차원이 있는 위치로 이동하며 그 반대의 경우도 마찬가지입니다.

    OLAP(온라인 분석 처리)미리 계산된 합계를 사용하여 데이터를 계층적 범주로 구성하는 전자 분석 데이터 처리 방법입니다. OLAP 데이터는 계층적으로 구성되며 테이블이 아닌 큐브에 저장됩니다. OLAP 큐브는 매개변수를 포함하는 축과 매개변수 종속 집계 데이터를 포함하는 셀이 있는 다차원 데이터 세트입니다. 큐브는 많은 수의 개별 레코드 대신 보고를 위한 요약 결과만 제공하므로 대용량 데이터의 복잡한 다차원 분석을 위해 설계되었습니다.

    OLAP의 개념은 1993년 유명한 데이터베이스 연구자이자 관계형 데이터 모델의 저자인 E. F. Codd에 의해 설명되었습니다. 현재 OLAP 지원은 많은 DBMS 및 기타 도구에서 구현됩니다.

    OLAP 큐브에는 두 가지 유형의 데이터가 포함되어 있습니다.

    · 총계값, 요약하고 싶은 값, 표현 계산된 데이터 필드;

    · 나타내는 설명 정보 측정또는 치수. 설명 정보는 일반적으로 세부 수준으로 구성됩니다. 예: "시간" 차원의 "연도", "분기", "월" 및 "일". 필드를 세부 수준으로 구성하면 보고 사용자가 보려는 세부 수준을 선택할 수 있습니다. 상위 수준 요약 데이터부터 시작하여 더 자세한 보기로 드릴다운하거나 그 반대로도 가능합니다.

    Microsoft Query 도구를 사용하면 다음과 같은 관계형 데이터베이스 데이터를 로드하는 쿼리에서 OLAP 큐브를 만들 수도 있습니다. 마이크로소프트 액세스, 이 경우 선형 테이블은 구조적 계층(큐브)으로 변환됩니다.

    OLAP 큐브 만들기 마법사는 기본 제공 Microsoft Query 도구입니다. 관계형 데이터베이스를 기반으로 OLAP 큐브를 만들려면 마법사를 실행하기 전에 다음 단계를 완료해야 합니다.

    1. 데이터 소스를 결정합니다(그림 6.1 참조).

    2. Microsoft Query를 사용하여 OLAP 큐브의 데이터 필드 또는 차원 필드가 될 필드만 포함하는 쿼리를 생성합니다. 큐브의 필드가 두 번 이상 사용되는 경우 필요한 쿼리에 포함되어야 합니다. 횟수.

    3. 쿼리 생성 마법사의 마지막 단계에서 해당 항목에 스위치를 설정합니다. OLAP 큐브 생성 이 요청의 (그림 6.2 참조) 또는 쿼리 메뉴를 직접 사용하여 요청이 생성된 후 파일팀을 선택하세요 OLAP 큐브 생성, 그 후에 OLAP 큐브 만들기 마법사가 시작됩니다.

    OLAP 큐브 만들기 마법사는 세 단계로 구성됩니다.

    마법사의 첫 번째 단계(그림 6.6 참조)에서 데이터 필드– 총 값을 결정해야 하는 계산된 필드.



    쌀. 6.6. 데이터 필드 정의

    마법사는 예상되는 계산 필드(일반적으로 숫자 필드)를 목록 상단에 배치하고 확인한 후 일반적으로 이러한 필드의 결과 기능을 결정합니다. 합집합. 데이터 필드를 선택할 때 차원을 결정하려면 하나 이상의 필드를 계산 필드로 선택해야 하며 하나 이상의 필드를 선택 취소 상태로 두어야 합니다.

    OLAP 큐브를 생성할 때 다음 네 가지 요약 기능을 사용할 수 있습니다. 합집합, 숫자(값의 개수), 최저한의, 최고숫자 필드와 하나의 함수에 대해 숫자다른 모든 분야의 경우. 동일한 필드에 대해 여러 가지 다른 요약 기능을 사용하려면 해당 필드가 필요한 횟수만큼 쿼리에 포함되어야 합니다.

    계산된 필드의 이름은 열에서 변경할 수 있습니다. 데이터 필드 이름.

    마법사의 두 번째 단계에서는 설명 데이터와 그 차원이 결정됩니다(그림 6.7 참조). 측정 필드를 선택하려면 목록에서 다음을 수행해야 합니다. 소스 필드원하는 차원 필드를 드래그하세요. 최상위 수준목록에 측정으로 표시된 지역으로 차원을 만들려면 여기로 필드를 드래그하세요.. OLAP 큐브를 생성하려면 하나 이상의 차원을 정의해야 합니다. 마법사와 동일한 단계에서 상황에 맞는 메뉴차원 또는 수준 필드의 이름을 변경할 수 있습니다.

    쌀. 6.7. 차원 필드 정의

    격리된 데이터나 개별 데이터를 포함하고 계층구조에 속하지 않는 필드는 단일 수준 차원으로 정의할 수 있습니다. 그러나 일부 필드를 수준으로 구성하면 큐브가 더 효율적이 됩니다. 차원의 일부로 수준을 생성하려면 목록에서 필드를 끌어서 놓습니다. 소스 필드차원 또는 수준인 필드에서. 더 자세한 정보가 포함된 필드는 낮은 수준에 배치해야 합니다. 예를 들어, 그림 6.7에서 필드 직위필드레벨이다 부서 이름.

    필드를 더 낮거나 높은 수준으로 이동하려면 해당 필드를 차원 내의 더 낮거나 높은 필드로 끌어야 합니다. 레벨을 표시하거나 숨기려면 각각 또는 버튼을 사용합니다.

    날짜 또는 시간 필드를 최상위 차원으로 사용하는 경우 OLAP 큐브 마법사는 해당 차원에 대한 수준을 자동으로 만듭니다. 그런 다음 사용자는 보고서에 표시할 수준을 선택할 수 있습니다. 예를 들어 주, 분기, 연도 또는 월을 선택할 수 있습니다(그림 6.7 참조).

    마법사는 최상위 차원을 생성할 때만 날짜 및 시간 필드에 대한 수준을 자동으로 생성한다는 점을 기억하십시오. 이러한 필드를 차원의 하위 수준으로 추가하면 자동 수준이 생성되지 않습니다.

    마법사의 세 번째 단계에서는 마법사가 생성한 큐브 유형이 결정되며 세 가지 옵션이 가능합니다(그림 6.8 참조).

    쌀. 6.8. 마법사의 세 번째 단계에서 생성할 큐브 유형 선택

    · 처음 두 가지 옵션은 보고서를 열 때마다 큐브를 만드는 것과 관련됩니다(큐브를 Excel에서 보는 경우 피벗 테이블에 대해 이야기합니다). 이 경우 요청 파일과 해당 파일은 큐브 정의 *.oqy에는 큐브 생성에 대한 지침이 포함되어 있습니다. *.oqy 파일은 다음에서 열 수 있습니다. 엑셀 프로그램큐브를 기반으로 보고서를 생성하고, 큐브를 변경해야 하는 경우 쿼리를 열어 큐브 생성 마법사를 다시 실행할 수 있습니다.

    기본적으로 쿼리 파일과 같은 큐브 정의 파일은 Application Data\Microsoft\Que-ries의 사용자 프로필 폴더에 저장됩니다. 표준 폴더에 *.oqy 파일을 저장하면 탭에 큐브 정의 파일 이름이 표시됩니다. OLAP 큐브 Microsoft Query에서 새 쿼리를 열 때 또는 명령을 선택할 때 요청 만들기(메뉴 데이터, 하위 메뉴 외부 데이터 가져오기) 마이크로소프트 엑셀에서.

    · 큐브형의 세 번째 옵션을 선택한 경우 큐브에 대한 모든 데이터가 포함된 큐브 파일 저장, 큐브에 대한 모든 데이터가 검색되고 확장자가 *인 큐브 파일이 사용자가 지정한 위치에 생성됩니다. .견습생, 이 데이터가 저장됩니다. 창조 이 파일버튼을 눌렀을 때 즉시 발생하지 않습니다. 준비가 된; 큐브 정의를 파일에 저장하거나 큐브를 기반으로 보고서를 만들 때 파일이 만들어집니다.

    큐브 유형 선택은 다음과 같은 여러 요소에 따라 결정됩니다. 큐브에 포함된 데이터의 양; 큐브를 기반으로 생성될 보고서의 유형 및 복잡성 시스템 자원(메모리 및 디스크 공간) 등

    다음과 같은 경우에는 별도의 *.cub 큐브 파일을 생성해야 합니다.

    1) 디스크 공간이 충분한 경우 자주 변경되는 대화형 보고서의 경우

    2) 보고서를 생성할 때 다른 사용자에게 큐브에 대한 액세스를 제공하기 위해 네트워크 서버에 큐브를 저장해야 하는 경우. 큐브 파일은 다른 사용자가 액세스하지 못하도록 방지하려는 중요한 데이터를 생략하면서 원본 데이터베이스의 특정 데이터를 제공할 수 있습니다.



  • 
    맨 위