2011년 5월 31일 화요일

Data Warehouse

Data Warehouse의 정의
Data Warehouse는 핵심성과지표와 성과측정을 지원하는 정보시스템이다.

다차원 분석
성과 측정
성과 측정과 연관시킨 Data Warehouse의 개념은 경영활동에 참여하는 사람들이 활용하는 기업의 핵심성과 지표(KPI)와 성과 측정(Performance Measure)을 정보기술(IT)를 이용하여 데이터베이스화 한 것이다.
  • KPI -> Dimension
  • PM -> Fact

  • 기존의 운영계 시스템은 회사의 비즈니스 프로세스를 자동화, 구체화 하기 위해 존재하는 시스템으로서 업무를 신속하게 입력하고 조회하기 위한 부분에 최적화된 시스템이며 데이터는 여러 시스템에서 중복되어 관리되고 있다.
  • 운영계의 데이터를 통해 성과를 분석하려고 한다면 매번 새로운 데이터를 추출하고, 이를 정제 해야 한다. 중복된 데이터는 서로 다른 값을 가질 수 있다.
  • 분석할 때마다 전산실에게 데이터를 요청해야 하며 분석가가 직접 정제 해야 한다. 매번 분석 시간이 걸리므로 즉각 분석해서 의사 결정에 반영하기 힘들다.
  • 같은 데이터를 두 사람이 분석할 경우에 서로 다른 결과가 나올 수도 있다.


데이터 중복성
데이터는 여러 시스템에 중복 관리되고 있음. 성과측정 시 필요한 데이터를 추출하기 위해서는 여러 데이터를 가져와서 통합하고 분석하는 작업 필요(즉각적 의사결정 어려움)

데이터 불일치성
데이터가 여러 시스템에 산재 되어 있음
일부 시스템에서 데이터 값 변경 시 다른 시스템에 존재하는 같은 데이터와 값이 서로 불일치

Is Data Warehouse?
W.H Inmon[Building The Data Warehouse]
의사결정과정을 지원하기 위한 주제지향적, 통합적, 시계열적, 비휘발적 데이터의 집합

장동인[실무자를 위한 Data Warehouse]
수년간의 기업의 운영계 시스템에서 생긴 내부데이터와 외부 데이터를 주제별로 통합하여 별도의 프로그래밍 없이 즉시 여러 각도에서 분석 가능한 통합 시스템

Data Warehouse의 특징
주체지향적
기존 시스템(운영계)
  • 업무중심으로 구축
  • 인사시스템, 보험업무시스템 등


Data Warehouse
  • 주제별 구축
  • 고객이 우리외사에 얼마나 재무적인 이익을 가져다 주는가를 분석하기 위한 고객재무분석과 같은 주제별로 구축

통합적
데이터 통합의 어려운 예)
  • 저장 코드 체계가 다름
  • 데이터 저장 단위가 다름
  • 시스템 별 관리 단위가 다름
  • 같은 속성 다른 값
    • 이러한 데이터를 적절히 통합하여 Data Warehouse에 적재해야 합니다.
    • 통합은 회사가 분석하고자 하는 주제영역에 따라 여러 기업의 시스템 데이터를 하나의 View로 만드는 과정을 말합니다.

시계열적
시계열적 성과측정 지표
  • 전월 대비, 전 분기 대비, 전 반기 대비, 전년 대비 등 시간의 추이에 따라 분석


비휘발적
Data Warehouse는 비휘발적 속성을 갖는다. Data Warehouse 시스템은 데이터를 적재하거나 읽는 작업만을 주로 하므로 한번 적재된 데이터는 삭제되거나 수정되지 않는다.

구축 방법에 따른 분류
전사적 Data Warehouse(EDW): 약 2년
  • 데이터 인프라 혹은 정보인프라 라는 비전을 가지고 산발적으로 구축되어 있는 각 종 운영계 시스템에 대한 데이터를 정제하여 통합한 Data Warehouse 시스템
  • 데이터 인프라를 구축하는데 중점
  • 미래의 급변하는 경영환경에 유연하게 적응하기 위해 구축하여 활용


데이터 마트(DM): 단기간 구축
  • 소수의 사용자들이 제한된 주제를 가지고 데이터를 추출하여 만든 Data Warehouse 시스템을 말한다.
  • 다차원분석에 중점
  • 당장 필요한 데이터 분석에 활용
    Top-Down 방식: 전사적 Data Warehouse를 구축하고 나서 데이터 마트를 구축
    • 다양한 데이터 마트를 추후 지원 가능함.
    • 프로젝트가 성공만 한다면 기업의 데이터 인프라를 구축함에 있어서 안정적인 방법임
    • 구축기간이 길며, 구축 비용이 많이 들어 대규모 투자가 필요함.


    Bottom-Up 방식: 데이터 마트를 우선적으로 다수 구축하고 나서 통합방식으로 전사적 Data Warehouse를 구축하는 방식
    • 부분별 단기간 구축도 가능하며 당장에 대규모의 비용이 들지 않음.
    • 다양한 주제로 구축된 여러 데이터 마트를 통합하여 전사적인 뷰 생성 어려움
    • 데이터 마트에서 잔사적 Data Warehouse로 데이터 이관이 힘들어 통합의 어려움이 있음.


    Middle-out 방식: 전사적 Data Warehouse와 데이터마트를 동시에 구축해 나가는 방식

클라우드 컴퓨팅(Cloud Computing)

클라우드 컴퓨팅 개념
“클라우드 컴퓨팅”은 서로 다른 물리적인 위치에 존재하는 컴퓨터들의 리소스를 가상화 기술로 통합해 제공하는 기술을 말한다. , 개인용 컴퓨터나 기업의 서버에 개별적으로 저장해 두었던 프로그램이나 문서를 인터넷으로 접속할 있는 대형 컴퓨터에 저장하고, 개인 PC 물론이고 모바일 다양한 단말기로 브라우저 필요한 애플리케이션을 구동해 원하는 작업을 수행할 있는 이용자 중심의 컴퓨터 환경을 말한다. 아직까지 본격적인 클라우드 컴퓨팅이 이루어진 것은 아니지만, Google DOCs(Google), Work Space(Microsoft), Acrobat.Com(Adobe) 등에서 제한적으로 클라우드 컴퓨팅 서비스가 제공되고 있다.

클라우드 컴퓨팅 정의
"인터넷 기술을 활용하여 다수의 고객들에게 높은 수준의 확장성을 가진 IT 자원들을 '서비스' 제공하는 컴퓨팅." - 가트너

"표준화된 IT 기반 기능들이 IP 통해 제공되며, 언제나 접근이 허용되고, 수요의 변화에 따라 가변적이며, 사용량이나 광고에 기반한 과금모형을 제공하며, 혹은 프로그램적인 인터페이스 제공을 제시한다." - 포레스터 리서치

클라우드 컴퓨팅은 다양한 응용 프로그램들을 수용할 있는 관리되고 높은 확장성을 갖는 추상화된 컴퓨팅 인프라의 집합이라고 정의할 있다. 이러한 개념은 유틸리티 컴퓨팅이나 서비스로서의 소프트웨어(Software As A Service, SaaS), 그리고 그리드(Grid) 컴퓨팅 개념들이 혼합된 개념이다. , 하드웨어적인 또는 소프트웨어적인 컴퓨팅 자원을 사용한 만큼 비용을 지불한다는 사용자 측면에서는 유틸리티 컴퓨팅이나 SaaS 유사하고, 분산된 여러 컴퓨팅 자원을 취합하여 하나의 컴퓨팅 자원처럼 사용할 있도록 제공한다는 자원 제공자 측면에서는 그리드 컴퓨팅의 개념이라고 있다.

클라우드 서비스의 주요 특성
  • 표준화된 IT 기반 기능
  • IP망을 통한 접근
  • Always on 수요에 따른 확장성 지원
  • 사용량이나 광고기반 과금
  • Web 혹은 Programmatic 기반 Control Interface
  • 사용자 셀프 서비스


클라우드 서비스 아키텍쳐
클라우드 컴퓨팅은 Web 2.0, Software as a service 같이 최근 알려진 기술 경향들과 연관성을 가지는 일반화된 개념이다. 이들 개념들의 공통점은 사용자들의 컴퓨팅 요구를 만족시키기 위해 인터넷을 이용한다는 사실이다. 예로서 Google Apps 있다. 브라우저로 이용할 있는 일반적인 비즈니스 응용프로그램들을 온라인으로 제공한다. 소프트웨어와 데이터는 서버에 저장된다.

사용자들은 서비스 제공자가 제공하는 서비스 카탈로그를 통해 원하느 서비스를 요청하고, 서비스 제공자의 시스템관리 모듈은 같은 요청에 대하여 가상화된 서버 네트워크를 통해 필요한 리소스를 조달하게 된다. 사용자들은 서비스를 이용만 어떻게 서비스가 제공되고, 자신의 데이터와 정보가 어디에 보관되는지, 어느 곳에 위치한 서버가 활용되는지 세부적인 정보는 알지 못한다.

사용자들은 어떤 장소에서든 인터넷 접속과 기본적인 연산기능만 있는 단말기를 가지고 있으면 인터넷을 통해 대용량의 저장장치와 고성능 컴퓨팅 리소스가 필요한 작업들을 수행하고, 고도화된 서비스들도 이용할 있게 된다. 이런 의미에서 클라우드 컴퓨팅은 향후 유비쿼터스 시대를 구현하게 핵심 컴퓨팅 환경으로 언급된다.

클라우팅 컴퓨팅과 컴퓨팅의 비교
주요개념
클라우팅 컴퓨팅과의 관계
Grid
Computing
높은 컴퓨팅 리소스를 필요로 하는 작업의 수행을 위해 인터넷 상의 분산된 다양한 시스템과 자원들을 공유하여 가상의 수퍼컴퓨터와 같이 활용하는 방식(분산 컴퓨팅 아키텍쳐)Grid 방식의 분산 컴퓨팅과 Utility 개념의 과금모형을 혼합한 컴퓨팅 방식
그리드 : 인터넷상의 모든 컴퓨팅 리소스
클라우드 : 서비스제공 사업자의 사유서버 네트워크
Utility
Computing
컴퓨팅 리소스를 구매하거나 소유하지 않고, 가스, 전기 등과 같이 유틸리티로 필요할 마다 사용하는 방식(사용량 기반 과금 모형)
Server Base
Computing
서버에 어플리케이션과 데이터를 두고 필요할 때마다 접속해서 사용하는 방식(클라이언트는 ,출력만 처리. 모든 작업은 100% 서버가 처리-Thin Client 방식)클라우드 컴퓨팅은 가상화된 분산 컴퓨팅에, SBC 특정 기업의 서버에 중심을 둔다는 차원에서 개념적으로 구분, 그러나 SBC 발전으로 점차 구분이 모호해
Network
Computing
SBC 비슷하나, 어플리케이션을 서버에서 로드하여 로컬에서 수행하는 형태(이용자의 CPU 사용하여 동작)이용자의 컴퓨팅 리소스보다는 클라우드 상의 IT 리소스를 사용하므로 개념적 구분
SaaS서비스 제공자의 서버에 저장된 SW 인터넷으로 통해 서비스로 이용하는 SW 딜리버리 모형클라우드 컴퓨팅은 모든 IT자원을 서비스로 활용한다는 차원에서 보다 SaaS 포함하는 포괄적인 개념


클라우드 서비스 시장 유형

소비자 시장 유형 : 개인소비자(Web-based Service) 기업사용자(Software-as-a-service)
개인 소비자 시장은 블로그와 위치, 소셜네트워킹 서비스 등과 같이 웹기반 서비스 시장으로 광고기반 수익에 기반하는 시장. Google, MS, Yahoo 등의 많은 클라우드 서비스 제공자들은 소비자 시장을 중심으로 서장하고 있으며, 이를 기반으로 기업용 SaaS 시장으로 영역을 확장하고 있다.

기업사용자 시장은 기업의 IT 환경을 클라우드 환경으로 전환하고자 하는 기업들의 수요로 가입자 과금모형에 기반한 기업용 SaaS시장으로 볼수 있다. 클라우드 컴퓨팅이 초기 도입단계를 넘어 본격적인 성장단계로 진입하기 위해서는 기업시장이 중요한 역할을 한다.
SaaS 기술발전에 따른 시장전망
1세대
2세대
Challenge Gap
SOA 도입
기업프로세스 표준화
기존시스템과의 통합을 위한 중계표준
3세대
4세대
지원수준기본적인 업무 프로세스 지원데이터 관리를 포함하는 기능적 효율성 지원기업내부 프로세스 통합지원Business Ecosystem 지원
특성단순 기능성을 제공하는 ASP기본적인 커스터마이징 데이터 통합지원고객 자원, 회사데이터 통합부서간/파트너와의 협업프로세스 지원
도입 분야세금, 회계관리 특수영역의 보편화된 서비스CRM, 영업등 고객서비스 제공분야고객/자원/데이터등 통합솔루션을 개별서비스관점에서 제공복잡한 자원 접근 권한 관리 지원



IT 구매시장 : 어플리케이션 컴포넌트 서비스, 플랫폼 서비스, IT 인프라 서비스
클라우드 인프라를 활용하여 서비스를 재생산함으로써 웹을 기반으로 하는 비즈니스를 수행하고자 하는 개발자와 사업수요. 개발자들이 접근할 잇는 자원의 수준에 따라 어플리케이션 컴포넌트 서비스 시장, SW 플랫폼 서비스 시장, 가상인프라 서비스 시장으로 나룰 있다. 어플리케이션 컴포넌트 서비스는 개발자들을 위해 다양한 어플리케이션 모듈들을 제공하는 서비스로 Google 캘린더 API 세일즈포스닷컴의 AppExchange API등이 있다. 개발자들은 새로운 어플리케이션 개발을 위해 처음부터 개발을 하지 않고, 서비스 제공자가 제공하는 API 통해 신속하게 어플리케이션을 개발할 있다.

SW 플랫폼 서비스는 어플리케이션 API 제공수준을 넘어 미들웨어 까지 포괄적인 개발 플랫폼을 제공하는 서비스로, 세일즈포스닥컴의 Force.com 서비스가 대표적이다. 어플리케이션 개발 벤더들은 서비스 제공사업자가 제공하는 플랫폼 상에서 DB 어플리케이션 서버, 파일 관리 시스템과 관련한 솔루션 미들웨어까지 확장된 IT 자원을 활용하여 새로운 어플리케이션을 만들어 사용할 있다.

가상인프라 서비스는 개발자들과 IT기업들이 필요로 하는 가상의 IT 인프라자원을 포괄적으로 제공하는 서비스로 대표적으로는 아마존의 E2C서비스가 있다. 사용자들은 가상서버와 저장장치, 가상네트워크, 시스템관리 모든 가상의 자원들을 사용할 있고, 초기 인프라 구축비용 없이도 자신들의 비즈니스 모형을 구축하고, 웹을 통해 서비스를 제공할 있다.

주요 클라우드 서비스 비교
클라우드
서비스
아마존 EC2
Google App Engine
MS Live Mesh
분야
인프라플랫폼
인프라
서비스유형
Computing & Storage(S3)Web ApplicationStorage
가상화
OS Level running on a Xen HypervisorApplication ContainerOS Level
Qos 보장
미보장
미보장
미보장
사용자
인터페이스
EC2 Common-line Tools웹기반 Admin, Console웹기반 Live Desktop Live Mesh 설치된 모든 디바이스
Web API
제공
제공
미제공
부가서비스
제공
미제공
미제공
프로그램 Framewokr리룩스기반 AMI(Amazon Machie Image)PythonN.A



클라우드 서비스의 Pros & Cons
Pros
Cons
- 사용도가 낮은 IT 자원에 대한 자산구매를 회피하여 운영비용 절감
- 갑작스런 IT자원의 수용변화에 대한 저렴하고 신속한 대응 가능
- 필요한 자원의 선택적 구매와 사용량기반 대가 지불의 합리적인 가격모델
- 자산의 운영비화로 재무적 유연성 확보
- 해커와 외부 침입 공격 시스템 데이터보호 용이
- 클라우드 서비스의 안정성에 대한 우려
- 클라우드에 주요데이터와 정보를 저장하는데 따른 보안상의 우려
- 표준의 부족으로 인한 클라우드로의 전환 어려움
- 기존의 레거시 인프라로부터의 전화에 따른 기회비용 정확한 투자편익 계산의 어려움


클라우드 서비스 발전 조건
  • 클라우드 서비스의 Qos보장과 SLA(Service Level Agreement) 제공
  • 기업수요를 충족시킬 있는 어플리케이션/서비스의 고도화
  • Best Practice 기업 레퍼런스의 확대
  • 주요 SW기업들의 적극적인 클라우드 서비스 시장 진출을 통한 경쟁 활성화


클라우드 컴퓨팅 사업자의 성공 조건
성공조건
배경
높은 브랜드 인지도클라우드 서비스의 특성상 급작스런 서비스의 중단이나 사고로 인한 정보의 분실 등은 사용자들에게 중대한 손실을 야기할 있어, 서비스의 지속성과 안정성을 보장할 있는 높은 브랜드 인지도가 중요
IT 자원에 대한 규모의 경제 달성클라우드 서비스 제공자는 막대한 물리적인 IT인프라 구축이 필수적, 따라서 이를 저렴하게 구축하고, 단위 인프라에 대한 효율성(단위 인프라당 평균사용자 이용도) 높이는 것이 핵심경쟁력으로, 이를 위해서는 규모의 결제 달성이 중요
높은 SW 기술력, 효율적인 자원관리 역량 검증된 서버운용 경험IT 자원을 효율성을 극대화하면서도 사용자에게 안정적인 서비스를 제공하기 위해, 가변적인 사용자들의 서비스 요청을 최적화된 자원배분을 통해 실시간적으로 제공할 있는 고도화된 SW 기술력 필요, 특히 기업시장과 PassS전략을 추진하는 사업자들의 경우 플랫폼의 유연성과 안정성을 동시에 만족시킬 있는 기술력이 필수적
다양한 기업 솔루션 확보 초기시장 확보를 위한 마케팅 역량현재 클라우드 서비스는 개인시장을 중심으로 성장하고 있으나, 본격적인 성장을 위해서는 기업시장으로 확산이 중요하며, 결국 기업시장을 대상으로 핵심적인 솔루션을 안정적으로 제공함으로써, 초기 시장을 선점하는 사업자가 향후 시장을 주도할 가능성이 높음


미국의 클라우드 컴퓨팅 이용 현황
미국의 Pew Internet & American Life Project 18 이상의 미국성인 2,251명을 대상으로 2008 4 8일부터 5 11일까지 조사한 결과에 따르면, 미국의 온라인 이용자들의 69% 웹메일 서비스, 온라인 데이터 저장서비스, 웹기반 워드프로세싱 애플리케이션과 같은 소프트웨어 프로그램 초기 형태의 클라우드 컴퓨팅 서비스를 이용하고 있는 것으로 조사되었다.

ETL 솔루션 환경

ETL 솔루션 환경 하둡은 대용량 데이터를 값싸고 빠르게 분석할 수 있는 길을 만들어줬다. 통계분석 엔진인 “R”역시 하둡 못지 않게 관심을 받고 있다. 빅데이터 역시 데이터라는 점을 볼때 분산처리와 분석 그 이전에 데이터 품질 등 데이...