SQL 분석 서비스 
BI와 인사하기 Again #3
Posted on 2007/10/25 13:37

시스템 구성


사용자 삽입 이미지
 

MS BI관련 세미나에 가면 Microsoft BI Framework이라는 위 그림과 같은 것을 받기도 합니다.

 

구축된 기간시스템(ERP, CRM, LOB, 엑셀 같은 문서 데이터)에서 데이터를 ETL(추출, 변환, 적재)하여 데이터웨어하우스에 담아 놓고 이를 분석할 수 있는 OLAP 큐브로 만들어 각 현업담당자에게 배포하는 프로세스로 되어 있습니다.

 

제가 회사에서 처리하고 있고 앞으로 하고자 하는 프로세스도 이와 유사 합니다.

현재는 데이터웨어하우스에 직접 오피스 액세스 프로그램이나 In-House Application(자체 개발한)으로 접근하여 분석 데이터를 가져가고 있지만 추후에는 OLAP 큐브를 통해 좀더 나은 분석을 할 수 있는 정보데이터를 만들어 배포하도록 하는 것이 저의 1차 계획 입니다.

 

앞서(Again #2) 보여 드렸던 개발 화면은 기간시스템에서 하루 한번씩 스케줄러에 의해 데이터를 가져와 데이터웨어하우스에 집계된 데이터를 만들어 놓고 이를 비주얼베이직 닷넷으로 개발하여 조회하기도 하고 엑셀로 다운로드 받아 편집하기도 하는 프로그램 입니다.

 

만일 이를 큐브로 잘 구성하여 엑셀2007에서 조회하고 바로 편집할 수 있다면 개발에 소요되는 시간과 노력이 줄어 들것이며 레이아웃의 변화(필드를 추가해 달라거나 색상을 변경해 달라거나 하는 등의)가 생기더라도 좀더 효율적으로 대응할 수 있으리라 생각됩니다.

 

앞으로 제가 만들어가는 큐브들은 시간나는대로 블로그에 공유하도록 하겠습니다.

물론 보안상 큰 문제가 되지 않는 범위 내에서 겠죠.

내년부터 헝그리하게 혼자서 만들어 볼 예정이니 대단한게 탄생하진 않을겁니다. ^^

 

요즘 생기는 업무들이 많아 블로그 들르기가 쉽지 않습니다.

그러더라두 그냥 외면하지 마시구 일주일에 한번씩은 놀러와주셔요. ㅋㅋ

그럼 행복들 하시구 4편에서 뵙겠습니다.

BI, SSAS
SecretComment
     
 SQL 분석 서비스 
오피스2007용 SQL 2005 데이터마이닝 추가 기능 설치
Posted on 2007/08/03 19:07
오늘 회사에서 업무시간에 약간 여유가 있어 팀장님 몰래(?) ㅋㅋ 엑셀 2007 데이터마이닝 addin을 설치해 보았습니다.

역시 백견이 불여일행 ... 하다보니 막히는게 많더군여.

addin을 다운 받으실 수 있는 사이트는 아래와 같습니다.
http://www.microsoft.com/downloads/details.aspx?familyid=7C76E8DF-8674-4C3B-A99B-55B17F3C4C51&displaylang=ko

그런데 받으시기 전에 유의하실 점은 시스템의 요구사항을 주의깊게 살펴보는겁니다.

우선 운영체제는 윈도우 2000 서비스팩 4, XP 서비스팩 2, 비스타이어야 하구여
오피스 2007 버전도 Standard는 되지 않습니다. Professional, Professional Plus, Ultimate,
Enterprise에서 된다고 합니다.

닷넷 프레임웍은 2.0 버전이 설치되어 있어야 합니다.
만일 설치되어 있지 않은 경우 아래와 같은 메시지가 나타납니다.
사용자 삽입 이미지
위의 사항들을 다 만족하고서 설치를 마치면 엑셀에 데이터마이닝 탭이 생깁니다.
사용자 삽입 이미지
샘플 문서를 불러서 간단한 분석인 '주요영향요인분석'을 해보았습니다.
사용자 삽입 이미지
그런데 실행했더니 '데이터 마이닝 차원을 처리하는데 사용되는 특수 데이터 원본뷰를 비롯한 ...' 어쩌구 하면서 오류가 뜨는 겁니다.
이런 난감할때가... 어디 찾아볼데도 없고 ...
한참 헤메다가 설치사이트의 '시스템 요구사항'을 다시 읽어봤더니
참고 부분에 SQL 2005 누적 핫픽스 패키지 빌드 3152가 적용되어야 한다는 문구가 보이더군여 하~ 그래서 서버의 SQL 2005버전을 확인해 봤습니다.
9.00.3042 더군여
친절하게 링크까지 걸어놓은 3152 핫픽스를 받아서 설치후에 다시 해보았습니다.
사용자 삽입 이미지

드디어 원하던 결과물이 나왔습니다.
성별을 요인으로 해서 분석해 두줄밖에 나타나지 않았지만 그래두 먼가 나타나서 엄청 기뻤다는...
사용자 삽입 이미지

오늘은 여기까지 입니다.

이전에 세미나에서 엑셀의 데이터마이닝을 돌리기 위해서는 SQL 2005를 활용하고 작업한 결과를 엑셀에서 받는다고 들은것 같습니다.

제대로 데이터마이닝 탭을 사용하려면 양쪽(엑셀2007, SQL2005)의 설정이 다 맞아야겠습니다.

틈나는 대로 공부해서 또 올리겠습니다. 그럼 ^^
SQL Server 2005, SSAS, 데이터마이닝, 엑셀
OnRainbow 수정/삭제 답변하기
2007/08/03 23:36
전 노가다 쪽이라 무식한 질문 좀 드린다면...
데이타마이닝 하면 결과 좀 나오나요?
배운적은 없지만 가끔 동기들 만나 들어보면 영~ 아니다는 식으로 얘기 하더라구요.

rawdata의 한계 때문인지는 모르겠지만, 말로는 데이타가 너무 튄다고 하던데...
아마도 다변량 쪽이라 분산이 상대적으로 커서가 아닐까하고
지레짐작만 하고 있습니다.
정상석 수정/삭제 답변하기
2007/08/06 10:29
저도 그쪽으론 덩달아 무식해서리 ^^;;

아직 회사업무에 적용해보진 못했습니다.

주로 CRM쪽이 될것 같긴 한데 ... 고민만 하구 있습니다요...
OnRainbow 수정/삭제
2007/08/06 23:32
무슨 겸손에 말씀을...^^
결과가 좋으면 사례 발표 좀 부탁드립니다. ㅋㅋㅋ

즐거운 시간 되세요.
SecretComment
     
 SQL 분석 서비스 
SSAS 분석 시나리오 2편
Posted on 2007/07/16 14:36

쓰다가 한번 날려먹구선 다시 쓰게 됩니다. ㅠㅠ
비오는 샌뒤치 데이(일요일과 제헌절 사이에 끼어서)입니다.
전 점심먹구선 제가 좋아하는 카페라떼 마시며 블로그에 글 올리기를 두번째 시도하구 있습니다.
머리속은 복잡했는데 막상 정리할려구 하니 어디서 어떻게 나열해야 좋을지 막막하네요.
자꾸 쓰다보면 나아지리라 생각됩니다. ^^

SSAS 자습서를 무작정 따라하여 큐브를 만들어 보고 만든 큐브를 엑셀에서 불러와 보았습니다.
몇개 화면을 캡쳐하여 간단히 살펴보겠습니다.

화면캡쳐 프로그램은 오픈캡쳐라는 무료 프로그램을 사용하였습니다.
다운로드 주소는 http://openproject.nazzim.net/opencapture.htm

큐브를 작성하기 위해서 데이터베이스 AdventureWorksDW를 연결하고
테이블 5개를 가져다가 씁니다.

5개의 테이블은
DimGeography (지역)
DimCustomer (고객)
DimProduct (제품)
DimTime (시간)
FactInternetSales (인터넷 판매)
입니다.

Dim으로 시작하는 4개의 테이블은 차원을 Fact로 시작하는 1개의 테이블은 측정값을
분석하기 위한 테이블이라는 것을 추측해 볼 수 있습니다.

사용자 삽입 이미지

SSAS 큐브구조 화면입니다. 왼쪽에 차원과 측정값이 가운데에는 사용하는 5개의 테이블이 있고 오른쪽 화면엔 솔루션탐색기를 사용하여 원하는 디자인창을 불러오거나 속성창에서 속성을 편집할 수 있습니다.
사용자 삽입 이미지
솔루션 탐색기 창을 확대해 보았습니다.
위에서 부터 순서대로 만들어 나가면됩니다.
데이터 원본 -> 데이터 원본 뷰 -> 큐브 (차원은 자동으로 생김) -> 마이닝 구조 ...



만들어진 큐브의 데이터를 엑셀에서 불러와 피벗으로 구성하는 작업을 단계별로 캡쳐해 봤습니다.

시간은 많이 걸렸는데 생각보다 처음 계획보다 내용이 알차게 채워지지 못했습니다. ^^;;
요즘 오튜 온라인강좌 최준선님의 '누구나 쉽게 따라하는 엑셀 데이터 분석'을 듣고 있는데 내용이 참 좋은것 같습니다.
SSAS에다 어떻게 데이터를 큐브로 구성해 놓구선 가져와서 엑셀로 어떻게 분석하면 좋을지 고민하면서 듣게 됩니다.
다음번에는 엑셀2007 데이터마이닝 addin에 대해서 간단히 살펴보겠습니다.

SQL Server 2005, SSAS
SecretComment
     
 SQL 분석 서비스 
SSAS 분석 시나리오 1편
Posted on 2007/07/11 08:34
BI 관련 세미나나 강의에서 빠지지 않고 등장하는게 있다면
SSAS(Sql Server Anaysis Service)의 분석 시나리오입니다.

이중에서 오늘은 BI 세미나를 몇번 참석하셨다면 친숙한(?) 자전거 회사인
Adventure Works Cycles에 대하여 SQL2005 자습서를 참조하여 살펴보겠습니다.
자습서의 내용이 이해하기에 어려워(전 그렇더군여 ^^;;) 나름대로 수정해 보았습니다.

물론
Adventure Works Cycles은 가상의 회사입니다.

* 회사개요

Adventure Works Cycles 는 북미, 유럽 및 아시아 시장에서 금속 및 합성 소재 자전거를 생산하고 판매하는 대규모 다국적 제조 회사입니다.

본사는 미국 서부 워싱턴주 Bothell에 위치하고 있으며 직원 수는 500명입니다.

또한 판매 시장에 전반에 걸쳐 몇몇 지역에 영업 팀을 운영하고 있습니다.

Adventure Works Cycles 2000년에 멕시코에 위치한 소규모 부품제조업체인 Importadores Neptuno를 인수했습니다.

2001 Importadores Neptuno는 여행용 자전거의 유일한 제조업체이자 유통업체가 되었습니다.

* 목표

회계 연도를 성공적으로 마무리한 Adventure Works Cycles

우수 고객을 중심으로 광고를 제공해 시장 점유율을 높이고

홈페이지를 통해 제품에 대한 인지도를 높이며

생산 비용을 절감하여 판매 비용을 낮추려고 합니다.


* 현황과 문제점

영업팀과 마케팅팀 등의 사용자들에게 필요한 정보와 경영정보 관리에 필요한 데이터 분석을 지원하기 위해 AdventureWorks 데이터베이스에 생성된 데이터와 매출목표와 같은 엑셀에서 작성한 데이터를 가져와 이 정보들을 AdventureWorks DW 관계형 데이터웨어하우스로 통합하여 분석하고 있습니다.

그러나 관계형 데이터웨어하우스에는 다음과 같은 문제가 있습니다.
 

1. 보고서가 고정적입니다.

일반 사용자에게는 미리 정의된 보고서로 충분하지만 고급 사용자에게는 대화형 쿼리와 특수한 보고서 작성을 위해 데이터베이스에 대한 직접 쿼리 액세스가 필요합니다. 그러나 AdventureWorksDW 데이터베이스가 복잡하여 사용자가 효과적인 쿼리 작성 방법에 익숙해지는 데 상당한 시간이 필요합니다.


2.
쿼리 성능이 크게 다릅니다.

일부 쿼리는 몇 초만에 빠르게 결과를 반환하지만 다른 쿼리는 몇 분이 걸립니다.


3.
집계 테이블은 관리하기가 어렵습니다.

AdventureWorks 의 데이터웨어하우스팀은 쿼리 성능을 향상시키기 위해 AdventureWorks DW 데이터베이스에 몇 개의 집계 테이블을 작성했습니다.

예를 들어 월간 판매를 요약하는 테이블 같은 그러나 이러한 집계 테이블은 쿼리 성능을 크게 향상시키기는 하지만 시간에 따라 집계 데이터가 맞지 않거나 집계가 실행되지 않는 등의 오류가 발생할 수 있습니다.


4.
계산식이 보고서 마다 다를 수 있고 보고서 간에 계산식이 공유되기가 어렵습니다.

각 보고서마다 계산식이 별도로 생성되므로 보고서 간 요약 정보가 다를 수도 있습니다.

따라서 경영진이 보고서에 대한 신뢰가 떨어질 수 있습니다.

사용자는 보고서마다 계산식을 별도로 정의해야 하므로 계산식 정의 방법을 통일해서 관리하고 공유하는 것이 필요합니다. 예를 들어 사용자가 이동 평균법 같은 기본 통계 기법을 사용해야 함을 알고 있지만 그러한 계산방법을 모를 경우에는 이러한 기법을 사용하지 않습니다.


5.
관련 정보들을 결합한 정보를 만들기가 어렵습니다.

예를 들어 매출계획과 매출액 같은 두 가지 관련 정보를 결합한 쿼리는 일반 사용자가 만들기 어렵습니다.


6.
보고서는 주로 해당국가의 비즈니스 정보를 기준으로 합니다.

다른 국가에 있는 지사의 사용자는 다른 통화와 다른 언어로 보고서를 보고자 합니다.


7.
정보는 분석하기가 어렵습니다.

재무 부서에서는 데이터를 엑셀로 다운로드 하여 데이터를 준비하고 엑셀로 편집하여 작성하는데 상당한 시간을 소비합니다. 따라서 회사 전체에서 기업 재무 보고서를 준비, 감사 및 관리하기가 어렵습니다.


* 문제 해결을 위한 솔루션

Adventure Works Cycles에서는 위에서 나열한 문제들을 해결하기 위하여 Microsoft SQL Server 2005 Analysis Services(SSAS)를 사용하여 이를 하나 하나 보완해 나가기로 한다는 시나리오 입니다.

정리가 좀 되었나 모르겠습니다. ^^
사실 저희 회사도 위에 나열된 문제들 중 몇가지를 겪고 있습니다.
그래서 SSAS에 더더욱 관심이 가는지도...
올 하반기 부터 자체적인 SSAS 구축을 해볼 예정입니다.
물론 헝그리하게 할게 될것 같습니다.
이미 SQL2005는 몇개의 서버에 설치되어 있는데 그중에 사용량이 적은
서버를 선택하여 큐브를 만들어 볼까 합니다.
그게 어느정도 가시화 되면 엑셀2007도 몇카피 구매하고 MOSS도 도입하여
어느정도 모양새를 갖춰본다는 대략적인 생각입니다. ㅋㅋ

쓰다보니 내용이 좀 길어졌네요...
저두 개인적으로 길게 써있는 글은 눈이 잘 안가는 편이라 더 쓰다보면
무시 당할 수도 있다는 압박감이 엄습해 옵니다.
이미 그렇게 되었는지도... ㅠㅠ

이번이 1편이라구 제목을 붙였으니 다음엔 2편을 준비해 보겠습니다.
2편에서는 SSAS에서
Adventure Works Cycles 회사의 큐브를 어케 만들었는지에
대한 부분이 될것 같습니다.
열씨미 준비해서 담주에 올릴 수 있게 해보겠습니다.
그럼 비오는 날이지만 마음은 맑고 화창하게 보내셔요!!!

BI, SQL Server 2005, SSAS
SecretComment
     
 SQL 분석 서비스 
세미나 자료 추가합니다.
Posted on 2007/07/04 10:08
6/27일에 진행되었던 "Office Excel 2007 이용한 SQL Server 2005 Analysis Service 활용" 세미나 자료중 세번째 세션의 자료 추가합니다. (세미나 소개는 이전글에서 이미...)

세번째 세션에서는 아래의 내용이 소개되었습니다.

Session 3: 사용자 화면 작성을 위한 도구 소개
- Office 2007 Excel과 Excel Service 
- Mining을 위한 Excel Add-In 소개 
- Visio를 사용한 UI 구현 소개 
- Performance Point Server 2007 소개



BI, SSAS, 세미나 정보
SecretComment
     
 SQL 분석 서비스 
SQL Server 2005 BI 세미나 후기
Posted on 2007/06/30 18:08

지난 수요일(6/27)에 SQL Server 2005 BI 세미나에 다녀왔습니다.

Session 1: Attribute Dimension Relation 구성에 따른 성능 최적화 구현 소개
(13:00~13:50 / 50분)
[세션1] http://www.mcpworld.com/SqlMagazineChannel/pds/session1.ppt
Session 2: 큐브 저장소 설정 과 Real Time BI를 위한 구성
(14:00~14:50 / 50분)
[세션2] http://www.mcpworld.com/SqlMagazineChannel/pds/session2.ppt
Session 3: 사용자 화면 작성을 위한 도구 소개
(15:00~16:50 / 110분)
- Office 2007 Excel과 Excel Service 
- Mining을 위한 Excel Add-In 소개 
- Visio를 사용한 UI 구현 소개 
- Performance Point Server 2007 소개
(아쉽게도 세션3 자료는 올려져 있지 않고 세미나 현장에서 배포받았습니다.)

이렇게 세개의 세션으로 진행된 세미나 였습니다.
물론 세번째 세션이 젤 재밌었죠. ^^

비슷한 주제를 4번쯤 듣는건 같습니다. 그런데도 아직 개념이해도 부족하죠.. ㅋㅋ

고맙게도 세미나장은 회사에서 걸어서 20분정도 걸리는 포스틸건물이었고
유료세미나(사전등록하면 만원정도)였지만 소프트웨어 구매하는 업체에서 후원해주셔서
감사하게 잘다녀왔죠 ^^

사용자 삽입 이미지

                          사진1) 잠시 쉬는 시간에 세미나장 밖에서 음료수 마시는 중 ...

사용자 삽입 이미지
                 사진2) 3번째 세션이 시작하기 전에 내부를 찍음 ... 빈곳이 꽤 보입니다.

개인적인 생각을 정리하면 ...

BI에서 보여지는 사용자 분석도구도 중요하지만 무엇보다 분석을 위한 재료(?)들
SSAS에서 만들어지는 큐브가 정말 잘 구성되어야 겠다는 생각입니다.

세미나를 좀더 잘 이해하기 위해서 SSAS에 포함된 샘플 큐브의 가상의 회사
자전거 판매 회사죠 Adventureworks(맞나 ^^;;)에 대한 이해를 미리 하시는게 도움이 되구여.

큐브의 구성요소들인 차원과 측정값 ... 자주나타나는 차원테이블과 측정값테이블이 있죠.
이들도 한번 정리하고 가셔야 막 헤메지 않을것 같습니다. 저의 경우엔.. ^^;;

현재까지 이해한 바로는 차원이라는게 계층구조의 어떤것... 매출분석이라고 한다면
유통경로 -> 영업소 -> 대리점 ... 이런식으로 + 버튼을 누르면 상세하게 조회가능한 구조를
만든것이라고 생각이 들고
측정값은 말그대로 매출액이나 수량 등의 측정하고자 하는 데이터로 생각됩니다.

다음주에 SSAS 온라인 도움말을 참고하여 샘플 데이터인 자전거 판매 회사에 대한
정리를 올리도록 하죠.

관련 세미나가 또 있다면 참석해서 듣거나 도움말 파일보구선 실습을 좀더 해야 될것같습니다.
7~8월엔 간단한 큐브도 함 만들어보구여...

더위에 건강들 잘 챙기시기 바랍니다.

BI, SQL Server 2005, SSAS, 세미나 정보