데이터 웨어하우스(Data Warehouse, DW)는 비즈니스 인텔리전스(BI) 활동, 특히 분석 작업을 지원하도록 설계된 일종의 데이터 관리 시스템이다. 데이터 웨어하우스는 오로지 쿼리와 분석을 수행하기 위해 개발된 것으로, 주로 대량의 과거 데이터를 포함한다. 데이터 웨어하우스에 있는 데이터는 일반적으로 애플리케이션 로그 파일이나 트랜잭션 애플리케이션과 같은 다양한 출처에서 수집된다.[1]
개요
데이터 웨어하우스(Data Warehouse)는 1980년대 중반 IBM이 자사의 하드웨어를 판매하기 위해 처음으로 도입했던 개념으로, IBM은 ‘정보창고’의 의미로 인포메이션 웨어하우스(Information Warehouse)라는 용어를 사용하였다. 이후 이 개념은 많은 하드웨어, 소프트웨어 및 툴(tool) 공급 업체들에 의해 이론적, 현실적으로 성장하였으며, 1980년대 후반 W.H Inmon에 의해 최초로 데이터 접근 전략으로 데이터웨어하우스 개념을 사용함으로써 많은 관심과 집중을 받게 되었다. 데이터웨어하우스의 일반적인 정의는 의사결정에 필요한 정보처리 기능을 효율적으로 지원하기 위한 통합된 데이터를 가진 양질의 데이터베이스이다.[2]
목적
데이터 웨어하우스는 기존 정보를 활용해 더 나은 정보를 제공하고, 데이터의 품질을 향상시키며, 조직의 변화를 지원하고 비용과 자원관리의 효율성을 향상시키는 것을 주목적으로 하고 있다. 데이터웨어하우스는 사용자의 의사결정을 지원하기 위해 기업이 축적한 많은 데이터를 사용자 관점에서 주제별로 통합하여 운영시스템과 사용자 사이의 별도의 장소에 저장해 놓은 데이터베이스로 이해할 수 있다.
특징
주제지향성
- 데이터웨어하우스 내의 데이터는 일상적인 트랜잭션을 처리하는 어플리케이션과 기능성들을 중심으로 하는 운영시스템의 데이터와는 달리 정보 이용자 관점에서 접근이 가능한 일정한 주제별 데이터로 분류 가능한 특징을 지닌다. 예를 들어 금융기관에서의 운영시스템은 대출, 예금, 은행, 카드 신탁 처리 등과 같은 어플리케이션과 기능들을 중심으로 디자인 되어 있지만, 데이터웨어하우스 방식에서는 고객 거래처, 상품, 활동 등과 같은 주제 영역을 중심으로 조직화된다. 따라서 데이터웨어하우스의 데이터는 의사결정시스템에 사용되지 않은 데이터는 저장하지 않는 반면, 운영시스템의 데이터는 의사결정 분석자의 의도와는 관계없는 즉시적인 요구를 만족시킬 수 있는 상세 데이터를 포함하게 된다.
통합성
- 데이터하우스에 보관되는 데이터는 애플리케이션 환경에서 발생되는 다양한 운영 데이터를 표준적이고 일관된 웨어하우스용 데이터베이스로 변환되어야 하며, 이를 위해서는 데이터웨어하우스 내의 데이터는 고도의 통합과 데이터에 대한 품질 보증과 과정이 필요하다. 이러한 통합성은 데이터의 이름 작성 방법, 일관된 변수 측정, 일관된 코드와 구조, 일관된 물리적 특성 등 여러 가지 면에서 나타난다. 예를 들어, 기존의 애플리케이션 중심의 운영 환경에서는 남자와 여자를 남/여, Male/Female, 1/0 등으로 다양하게 적용할 수 있으나, 데이터 웨어하우스에서는 이들을 통합할 필요가 있다(예: 남자와 여자는 ‘남’과 ‘여’로 통합). 이러한 데이터의 통합을 위한 운영시스템의 데이터베이스 내에서 데이터 변환 작업은 데이터 웨어하우스 구축의 중요한 작업 중 하나를 차지하게 된다.
시계열성
비휘발성
필요성
이러한 기존 시스템의 문제점을 보완하기 위하여 통합데이터베이스 방식의 시스템이 제안되기도 하였으나, 이러한 비정형화된 결과 생성을 위한 프로그래밍, 개발기간의 장기화 등의 단점으로 새로운 시스템을 요구하게 되었다.
구분
|
기존 데이터베이스
|
데이터 웨어하우스
|
기능
|
업무 프로세스
|
의사결정
|
데이터 형태
|
기능별 상세 데이터
|
주제별 요약 데이터
|
데이터 조작
|
read/write/update/delete
|
read only
|
지향방향
|
신속한 처리
|
다차원 분석 제공
|
각주
참고자료
같이 보기
이 데이터 웨어하우스 문서는 프로그래밍에 관한 글로서 검토가 필요합니다. 위키 문서는 누구든지 자유롭게 편집할 수 있습니다. [편집]을 눌러 문서 내용을 검토·수정해 주세요.
|
개발 : 프로그래밍 □■⊕, 소프트웨어, 데이터, 솔루션, 보안, 하드웨어, 컴퓨터, 사무자동화, 인터넷, 모바일, 사물인터넷, 게임, 메타버스, 디자인
|
|
프로그래밍 언어
|
ASP • C 언어 • C++ • C# • CSS • D 언어 • HTML • HTML5 • JSP • PHP • R • XHTML • XML • XSLT • 고(Go) • 고급언어 • 기계어 • 델파이 • 러스트 • 루비 • 루아 • 리액트 • 리퀴디티 • 무브 • 미켈슨 • 베이직 • 브이비스크립트 • 비주얼 C++ • 비주얼베이직(VB) • 비주얼베이직닷넷(VB.NET) • 솔리디티 • 스몰토크 • 스위프트 언어 • 스칼라 • 스크립트 언어 • 알골 • 어셈블리 • 언리얼스크립트 • 얼랭 • 에이잭스(Ajax) • 엠에프씨(MFC) • 오브젝티브-C • 오브젝트 파스칼 • 오카멜 • 웹어셈블리(WASM) • 이와즘(eWASM) • 자바 • 자바스크립트 • 저급언어 • 제이슨(JSON) • 제이쿼리(jQuery) • 카멜 • 코볼 • 코틀린 • 콜드퓨전 • 타입스크립트 • 파스칼 • 파워스크립트 • 파이썬 • 펄(Perl) • 포트란 • 프로씨(Pro-C) • 피엘에스큐엘(PL/SQL) • 피엘원(PL/I) • 하스켈
|
|
개발방법론
|
CBD 개발방법론 • EA • 구조적 개발방법론 • 객체지향 개발방법론 • 라이브러리 • 람다 아키텍처 • 모듈 • 모듈화 • 벤치마킹 • 소프트웨어 개발방법론 • 스크럼 • 스프린트 • 아키텍처 • 아키텍트 • 애자일 • 웹개발방법론 • 정보공학 개발방법론 • 컴포넌트 • 테일러링 • 템플릿 • 폭포수 모델 • 프로젝트 • 프로토타입 • 피드백
|
|
코딩
|
EUC-KR • UTF-8 • 값 • 글루웨어 • 노팔로우 링크 • 두팔로우 링크 • 디버깅 • 디코딩 • 마크업 • 버그 • 부트스트랩 • 세이브포인트 • 소스코드 • 시큐어코딩 • 아스키 • 액티브엑스 • 오픈소스 • 유니코드 • 인코딩 • 재컴파일 • 주석 • 컴파일 • 컴퓨터 프로그램 • 코드 • 코딩 • 태그 • 테스트 • 테이블 • 텍스트 • 파싱 • 퍼블리싱 • 퓨니코드 • 하드코딩 • 하이퍼링크 • 하이퍼텍스트
|
|
프로그래밍
|
C 명령어 • 객체 • 객체지향 • 객체지향 프로그래밍 • 거짓 • 관계연산자 • 기본형 변수 • 널 • 논리 • 논리연산 • 논리연산자 • 다중상속 • 다형성 • 대입 • 대입문 • 대입연산자 • 더블 • 도스 명령어 • 디폴트 • 레지스터변수 • 루프 • 리눅스 명령어 • 리턴 • 메모리 주소 • 메소드 • 멤버 • 명령문 • 명령어 • 무한루프 • 문자 • 문자열 • 바이트 • 반복문 • 배열 • 변수 • 분기 • 분기문 • 불린 • 브레이크 • 비교연산자 • 비트연산자 • 산술연산자 • 상속 • 상수 • 생성자 • 선언 • 선언문 • 설정자 • 속성 • 스위치 • 스태틱 • 시프트연산자 • 실행 • 실행문 • 어노테이션 • 에코 • 역참조 • 연산 • 연산문 • 연산자 • 오버로딩 • 오버라이딩 • 외부변수 • 윈도우 명령어 • 유닉스 명령어 • 인스턴스 • 인스트럭션 • 인클루드 • 인터페이스 • 임포트 • 입력 • 입력문 • 입출력 • 입출력문 • 자료형(데이터 타입) • 자바 명령어 • 자바 예약어 • 자바 컬렉션 • 전역변수 • 접근자 • 접근제어자 • 정보은닉 • 정수형 • 정적변수 • 제어 • 제어문 • 제어자 • 조건 • 조건문 • 조건연산자 • 주소 • 증감연산자 • 지역변수 • 참 • 참조 • 참조변수 • 초기화 • 추상메소드 • 추상클래스 • 추상화 • 출력 • 출력문 • 캡슐화 • 케이스 • 클래스 • 파라미터(매개변수) • 파이널 • 패키지 • 퍼블릭 • 포인터 • 프라이빗 • 프로텍티드 • 필드(멤버변수) • 함수 • 환경변수
|
|
명령어
|
abstract • array • boolean • break • byte • case • char • continue • default • double • do while • echo • elif • else • else if • false • final • float • for • gosub • goto • if • if else • import • include • int • join • long • long long • null • print • printf • println • private • protected • public • return • scanf • short • stdio.h • static • string • switch • temp • then • true • unsigned • void • while
|
|
디자인패턴
|
구조패턴 • 동시성패턴 • 동시실행패턴 • 모델-뷰-컨트롤러 패턴 • 상태패턴 • 생성패턴 • 싱글톤패턴 • 아키텍처패턴 • 전략패턴 • 커맨드패턴 • 행동패턴
|
|
프로그래밍 인물
|
귀도 반 로썸 • 그레이스 머레이 호퍼 • 니클라우스 비르트 • 댄 브릭클린 • 더그 커팅 • 데니스 리치 • 리누스 토르발스 • 리처드 그린블라트 • 마거릿 해밀턴 • 마크 앤드리슨 • 빈트 서프 • 빌 게이츠 • 빌 조이 • 스티브 잡스 • 에이다 러브레이스 • 제임스 고슬링 • 척 벤턴 • 켄 톰슨 • 팀 패터슨
|
|
위키 : 자동차, 교통, 지역, 지도, 산업, 기업, 단체, 업무, 생활, 쇼핑, 블록체인, 암호화폐, 인공지능, 개발, 인물, 행사, 일반
|
|