데이터베이스 종류

이주희·2022년 9월 30일
0

CS

목록 보기
46/66

1. 데이터베이스

  • 다수의 인원, 시스템 또는 프로그램이 사용할 목적으로 통합하여 관리되는 데이터의 집합

1-1. 데이터베이스의 정의 🌟

  • 통합된 데이터: 자료의 중복을 배제한 데이터의 모임

  • 저장된 데이터: 저장 매체에 저장된 데이터

  • 운영 데이터: 조직의 업무를 수행하는 데 필요한 데이터

  • 공용 데이터: 여러 애플리케이션, 시스템들이 공동으로 사용하는 데이터


1-2. 데이터베이스의 특성 🌟

(1) 실시간 접근성

실시간으로 응답 가능

(2) 계속적인 변화

항상 최신의 데이터 유지

(3) 동시 공용 (동시 공유)

다수의 사용자가 동시에 같은 내용의 데이터 이용 가능

(4) 내용 참조

데이터를 참조할 때 데이터 레코드의 주소나 위치에 의해서가 아니라, 사용자가 요구하는 데이터 내용으로 데이터 탐색


1-3. 데이터베이스 종류

  • File System: 표가 아닌 파일 형태

  • RDBMS: 관계형 모델을 기반으로 한 DB

  • HDBMS: 계층형 데이터베이스 관리 시스템 (트리형)
    HDBMS; Hierarchical Database Management System

  • NDBMS: 네트워크 데이터베이스 관리 시스템 (망형)


2. DBMS 🌟

Database Management System

  • 데이터 관리의 복잡성을 해결하는 동시에 데이터 추가, 변경, 검색, 삭제 및 백업, 복구, 보안 등의 기능을 지원하는 소프트웨어

2-1. DBMS 유형

(1) Key-Value DBMS

  • 키 기반 Get / Put / Delete 명령어로 제공되는 빅데이터 처리 기능 DBMS
  • Unique한 키에 하나의 값을 가지고 있는 형태
    ex) Redis, DynamoDB

(2) Column Family Data Store DBMS

  • 키 안에 (Column, Value) 조합으로 된 여러 개의 필드를 갖는 DBMS
    ex) HBase, Cassandra

(3) Document Store DBMS

  • 값의 데이터 타입이 문서(Document)라는 타입을 사용하는 DBMS
  • 문서 타입은 XML, JSON과 같이 구조화된 데이터 타입으로, 복잡한 계층 구조 표현 가능
    ex) MongoDB, Couchbase

(4) Graph DBMS

  • 시맨틱 웹과 온톨로지 분야에서 활용되는 그래프로 데이터를 표현하는 DBMS

    온톨로지 Ontology

    실세계에 존재하는 모든 개념들과 개념들의 속성, 그리고 개념들 간의 관계 정보를 컴퓨터가 이해할 수 있도록 서술해 놓은 지식베이스

  • SNS에서 많이 사용

  • 노드 간 관계를 구조화하여 저장
    ex) Neo4j, AllegroGraph


2-2. DBMS 특징

(1) 데이터 무결성

  • 부적절한 자료가 입력되어 동일한 내용에 대하여 서로 다른 데이터가 저장되는 것을 허용하지 않는 성질

(2) 데이터 일관성

  • 삽입, 삭제, 갱신, 생성 후에도 저장된 데이터가 변함없이 일정

(3) 데이터 회복성

  • 장애가 발생하였을 시 특정 상태로 복구되어야 하는 성질

(4) 데이터 보안성

  • 불법적인 노출, 변경, 손실로부터 보호되어야 하는 성질

(5) 데이터 효율성

  • 응답 시간, 저장 공간 활용 등이 최적화되어 사용자, 소프트웨어, 시스템 등의 요구 조건을 만족시켜야 하는 성질

2-3. 상용 DBMS 및 오픈 소스 기반 DBMS

(1) 상용 DBMS

  • 특정 회사에서 유료로 판매하는 시스템

  • 유지보수와 지원 원활

(2) 오픈 소스 기반 DBMS

  • 오픈 소스 라이선스 정책을 준용하는 범위 내에서 자유롭게 사용 가능

3. 빅데이터

시스템, 서비스, 조직(회사) 등에서 주어진 비용, 시간 내에서 처리 가능한 데이터 범위를 넘어서는 수십 페타바이트(PB) 크기의 비정형 데이터

3-1. 3V :: 빅데이터 특성

(1) Volume : 데이터의 양

  • 페타바이트 수준의 대규모 데이터

  • 빅데이터 분석 규모에 관련된 특성

  • 디지털 정보량이 기하급수적으로 폭증하는 것을 의미

(2) Variety : 데이터의 다양성

  • 정형, 비정형, 반정형의 다양한 데이터

    • 정형: 나이, 이름 등 특정한 형태가 있는 것
    • 비정형: 문장, 멀티미디어 데이터 등 형식이 정해져있지 않은 것
    • 반정형: 로그같은 데이터
  • 빅데이터 자원 유형에 관련된 특성

  • 로그, 소셜, 위치 등 데이터 유형이 다양해지는 것을 의미

(3) Velocity : 데이터의 속도

  • 빠르게 증가하고 수집되며, 처리되는 데이터

  • 빅데이터 수집, 분석, 활용 속도와 관련된 특성

  • 가치 있는 정보 활용을 위해 실시간 분석이 중요해지는 것을 의미


3-2. HDFS

Hadoop Distributed File System

대용량 데이터의 집합을 처리하는 응용 프로그램에 적합하도록 설계된 분산 파일 시스템

하둡

대용량 데이터를 분산 처리할 수 있는 자바 기반의 오픈 소스 프레임워크


3-3. 맵 리듀스

구글에서 대용량 데이터 처리분산 병렬 컴퓨팅에서 처리하기 위한 목적으로 제작하여 2004년에 발표한 소프트웨어 프레임워크


4. NoSQL

Not Only SQL

전통적인 RDBMS와 다른 DBMS를 지칭하기 위한 용어로,
데이터 저장 시 ❌ 고정된 테이블 스키마 가 필요하지 않고
❌ 조인 연산을 사용할 수 없으며
⭕️ 수평적으로 확장이 가능한 DBMS


4-1. BASE :: NoSQL의 특성

💡 선 처리 후 갱신

똑같은 내용이 분산되어 저장되어 있기 때문에 이러한 특성이 나타남

(1) Basically Available

  • 언제든지 데이터는 접근할 수 있어야 하는 속성

  • 분산 시스템이기 때문에 향상 가용성 중시

(2) Soft-State

  • 노드의 상태는 내부에 포함된 정보에 의해 결정되는 것이 아니라 외부에서 전송된 정보를 통해 결정되는 속성

  • 특정 시점에서는 데이터의 일관성이 보장되지 않음(가용성 중점)

(3) Eventually Consistency

  • 일정 시간이 지나면 데이터의 일관성이 유지되는 속성

  • 일관성을 중시하고 지향


4-2. NoSQL의 유형

DBMS 유형과 동일

(1) Key-Value Store

(2) Column Family Data Store

(3) Document Store

(4) Graph


5. 데이터 마이닝 🌟🌟🌟 Data Mining

대규모 데이터 안에서 체계적이고 자동적으로 통계적 규칙이나 패턴을 찾아내는 기술


5-1. 데이터 마이닝 주요 기법

(1) 분류 규칙

  • 과거 데이터로부터 특성을 찾아내어 분류모형을 만들어 이를 토대로 새로운 레코드의 결과 값을 예측하는 기법

(2) 연관 규칙

  • 데이터 안에 존재하는 항목들 간의 종속 관계를 찾아내는 기법

(3) 연속 규칙

  • 연관 규칙에 시간 관련 정보가 포함된 형태의 기법

(4) 데이터 군집화

  • 대상 레코드들을 유사한 특성을 지닌 몇 개의 소그룹으로 분할하는 작업

5-2. 텍스트 마이닝

대량의 텍스트 데이터로부터 패턴 또는 관계를 추출하여 의미 있는 정보를 찾아내는 기법


5-3. 웹 마이닝

웹으로부터 얻어지는 방대한 양의 정보로부터 유용한 정보를 찾아내기 위해 분석하는 기법

profile
🍓e-juhee.tistory.com 👈🏻 이사중

0개의 댓글