study/TIL🐥

DBMS 종류, 데이터 웨어 하우스

서나쓰 2020. 12. 26. 11:31
728x90

출처 : 위키

MYSQL에 데이터타입에 JSON을 지원하게 되었다. → 관계 객체형으로 쓰일 수 있다. 오늘날 big 데이터 시장에서 중요한 시사점을 갖는다.

1. 계층형(Hierachical) 데이터베이스 관리 시스템(HDBMS): 데이터가 계층적이며 상하 종속적인 관계로 구성- 장점 : 데이터의 엑세스 속도가 빠르고, 데이터의 사용량을 쉽게 예측 할 수 있다.- 단점 : 상하 종속적인 관계로 구성되어 있어 초기 셋팅 후 변화하는 프로세스를 수용하기가 쉽지 않다.

2. 망형(Network) 데이터베이스 관리 시스템 (NDBMS): 데이터 구조를 네트워크상의 노드 형태로 논리적이게 표현한 데이터 모델로서 각각의 노드를 서로 대등한 관계로 구성한 시스템(여기서 노드란 시스템을 의미하는 것이 아니라 자료를 말한다.)- 장점 : 계층형데이터베이스관리 시스템의 문제점인 상하 종속적인 관계는 해결되었다.- 단점 : 구성과 설계가 복잡하고 궁극적으로 데이터의 종속성을 해결하지 못하였다.

3. 관계형(Relational) 데이터베이스 관리시스템(RDBMS): 수학적 논리 관계를 테이블의 형태로 구성한 구조로서 테이블 내의 컬럼 중 일부를 다른 테이블과 중복해 각 테이블간의 상관관계를 정의- 장점 : 업무 변화에 대한 적응력 높아 변화하는 업무에 쉽게 활용하며 유지보수 편리하다. 따라서 생산성도 향상된다.- 단점 : 다른 DBMS 보다 더 많은 자원이 필요로해 시스템의 부하가 높다.

4. 객체지향(Object Oriented) 데이터베이스 관리 시스템(ODBMS): 멀티미디어 데이터의 원활한 처리와 RDBMS의 비지니스형 데이터 타입만 처리되는 기본적인 제한점을 극복하고자 고안

(※비지니스형 데이터 타입?? 문자, 숫자,날짜형 데이터)

 


 

데이터웨어하우스 = 데이터 창고

  • 사용자의 의사결정에 도움을 주기 위해 다양한 시스템에서 데이터를 추출, 변환, 요약하여 능동적으로 사용자에게 제공될 수 있는 데이터베이스 집합체
  • 기본적으로 관계형 데이터베이스(RDB)가 있는 상태에서 데이터웨어하우스(DW)를 구성한다. DB와 차원이 다른 데이터를 저장, 무형식의 데이터가 많으므로 DW에서 유용한 정보를 뽑아내는 과정이 중요하다. 예를 들면 음악이나 동영상 파일 중 필요한 부분을 추출해서 사용자에게 보여줄 수 있다.
  • 데이터 원산지(DB)에서 데이터를 조달해 오면, 이 데이터를 예쁘게 어떻게 쌓을 것인지가 DW 설계의 목적이다. 이러한 설계는 노하우가 없으면 하기 힘든데, 미리 많이 쌓아본 설계가 BI(Business Intellingence) 프로그램이라 한다. 이러한 프로그램을 문제를 해결해 줬다고 하여 솔루션이라 부른다.
  • DW는 ERP 기능과 비슷하다.

장점

  1. 더욱 좋은 의사 결정 가능
  2. 많은 소스로부터 데이터 통함
  3. 데이터 품질, 일관성, 정확성
  4. Raw Data를 관리하는 트랜잭션 데이터베이스와 데이터 웨어를 분리 관리, 두 데이터를 관리하는 서비스의 성능을 향상
  5. 히스토리 관리

기타 DBMS 종류

  • Maria DB : MySQL이 sun으로 넘어가면서 당시 MySQL 출신들이 따로 나와 MySQL 기반으로 한 오픈 소스 DBMS
  • PostgreSQL : ORDBMS, 엔터프라이즈급이나 차세대 DBMS에서 제공하는 기능들을 제공
  • MongoDB : 많이 쓰이는 NoSQL, 다양한 인덱신 지원
  • Couchbase : memcahed + CouchDB, 단순히 In-memory DB인 memcached에 persistence를 붙여 DB로 만든것이 membase이고 여기에 CouchDB를 결합하여 persistence layer를 CouchDB로 대체시킨 것이 Couchbase. 맵&리듀스 방식을 사용한다.
  • memcached : memcached는 레디스와 다르게 순수한 메모리 DB다.
  • Redis : REmote DIctionary System. NoSQL로도 분류된다. 레디스는 memcached와 다르게 데이터를 디스크에 저장할 수 있다..

information_schema

  • 데이터가 많을 경우 목록화 시킬 필요가 있는데, 이러한 요구에 생겨난 것이 메타데이터이다.
  • MySQL은 메타데이터들을 묶어 테이블을 만들고, 테이블을 모아 데이터베이스를 만드는데, 그 데이터베이스가 바로 information_schema이다.
  • MySQL 서버가 운영하는 모든 다른 데이터베이스에 대한 정보를 저장하는 장소이다.
  • 대부분의 infomation_schema 안에 table 들은 읽기 권한만 가지고 있어서 인위적인 수정을 불가능하다.

performance_schema

  • DBMS의 곳곳에 숨어있는 여러 수집 도구용 코드들을 통해 성능 데이터를 수집하여 메모리에 쌓아두고, 이를 사용자가 SQL을 통해 집계 조회, 집계해 볼 수 있도록 만든 도구
  • 위의 information 스키마는 가장 중요한 메타 정보들을 담고 있기에 사용자에게 권한을 주더라도 삭제할 수 없지만, performance 스키마는 물리적 테이블로 구성되어있어서 삭제도 가능하다

 

728x90

'study > TIL🐥' 카테고리의 다른 글

ORM/NoSQL  (0) 2020.12.27
DAO란?  (0) 2020.12.27
데이터웨어하우스(DW)란?  (0) 2020.12.27
인텔리제이의 장점  (0) 2020.12.26
String 객체 생성의 차이  (0) 2020.12.26