데이터베이스와 DBMS

황승현·2023년 12월 22일
0
post-thumbnail

정보와 데이터

  • 데이터(Data): 현실 세계에서 관찰이나 측정을 통해서 수집된 사실이나 값

    • 단순히 수집된 원시 데이터
  • 정보(Information): 어떠한 목적이나 의도에 맞게 데이터를 가공하여 얻은 결과

    • 의사 결정을 할 수 있게하는 유효한 해석이나 상호 관계

데이터베이스(Database, DB)

단순하게 설명하면 정보를 저장한 공간을 의미

  • 여러 사람이 공유하고 사용할 목적으로 통합 관리되는 정보의 집합

    • 컴퓨터 상에 논리적으로 존재하는 데이터를 구조화한 것
  • 단어, 숫자, 이미지, 비디오 및 파일을 포함한 모든 유형의 데이터가 포함된다.

데이터베이스 특징

  • 자료 추상(Data Abstraction): 관련 데이터를 논리적으로 묶어서 데이터 사용을 쉽게 한다.
  • 자료 독립(Data Independency): 데이터가 논리적, 물리적으로 독립되어 있다.
  • 자기 정의(Self Definition): 데이터베이스가 스스로 구조와 내용을 정의할 수 있다.

데이터베이스 일반성

  • 실시간 접근성(Real-Time Accessibility): 사용자는 DB에 실시간으로 접근할 수 있다.

  • 지속적인 변화(Continuous Evolution): 데이터베이스는 추가, 삭제, 수정이 빈번하게 일어난다.

  • 동시 공유: 다수의 사용자가 같은 데이터에 동시에 접근할 수 있다.

  • 내용에 대한 참조: 데이터베이스에 있는 데이터를 참조할 때 데이터 레코드의 주소나 위치가 아닌 사용자가 요구하는 데이터 내용으로 데이터를 찾는다.

데이터베이스 장점

  • 데이터의 중복을 최소화할 수 있다.

  • 다수의 사용자가 동일한 데이터를 공유할 수 있다.

  • 일관성 유지: 데이터의 일관성이 유지된다.

  • 무결성 유지: 데이터의 정확성과 일관성이 유지된다.

  • 보안성 유지: 데이터에 대한 중앙집중 관리에 의하여 사용자의 접근을 효율적으로 통제할 수 있다.

  • 언제나 최신의 데이터를 유지할 수 있다.

  • 데이터의 표준화가 가능하다. ※표준화: 어떠한 표준에 따라 제한하고 통일하는 것

  • 데이터가 논리적으로 독립되어 있다.

    • 데이터베이스의 논리적 구조가 변경되어도 응용 프로그램이나 사용자의 요구에 영향을 주지 않는다.

    • 개념 스키마가 변경되더라도 외부 스키마에는 영향을 미치지 않는다.

  • 데이터가 물리적으로 독립되어 있다.

    • 데이터베이스의 물리적 구조(저장장치의 구조)가 변경되어도 논리적 구조나 데이터의 내용에 영향을 주지 않는다.

    • 내부 스키마가 변경되더라도 외부, 개념 스키마에는 영향을 미치지 않는다.

  • 데이터에 접근하기 용이하다.

  • 데이터 저장 공간을 절약할 수 있다.

데이터베이스 단점

  • 데이터베이스 전문가가 필요하다.

  • 구축 및 관리에 많은 비용이 든다.

  • 데이터 백업과 복구가 어렵다.

  • 시스템이 복잡하다.

  • 대용량 디스크로 엑세스가 집중되면 과부하가 발생한다.

DBMS(DataBase Manegement System)

데이터베이스에 여러 사용자가 접근하여 데이터를 저장 및 관리 등의 기능을 수행하며 공유할 수 있는 환경을 제공하는 응용 소프트웨어 프로그램

  • DB : 데이터를 저장하는 공간

  • DBMS : 데이터를 저장하거나, 조회, 처리하는 등 데이터와 관련된 업무를 수행할 수 있는 별도의 소프트웨어

DBMS 종류

  • RDBMS (Relational Database Management System)
    • 테이블 형태로 데이터를 저장하고 관리하는 시스템
    • 데이터는 행(row)과 열(column)로 구성된 테이블에 저장되며, 테이블 간의 관계를 통해 데이터를 구조화
    • 가장 범용적으로 사용됨
    • MySQL, PostgreSQL, Oracle Database, Microsoft SQL Server 등
  • NoSQL(Not only SQL) DBMS
    • 전통적인 RDBMS의 제약을 벗어나 다양한 형태의 데이터 모델 및 스키마를 지원하는 DBMS
    • 정해진 테이블 형태가 아니라 다양한 형태로 저장됨(json 형태 등)
    • 비정형 데이터를 저장할 때 많이 사용
    • MongoDB, CockroachDB, Cassandra 등
  • In-Memory DBMS
    • 메모리에 데이터를 저장하고 관리하는 DBMS
    • 빠른 읽기 및 쓰기 성능을 제공
    • 주로 실시간 분석 및 처리에 사용됩니다.
    • Redis, Memcached, LevelDB, RocksDB 등이 있습니다.
  • Graph Database
    • 그래프 형태의 데이터를 저장하고 관리하는 DBMS
    • 복잡한 관계를 쉽게 표현하고 검색 가능
    • AmazoneNeptune, Neo4j 등
  • Time-Series Database
    • 시계열 데이터를 저장하고 관리하는 DBMS
    • 타임스탬프 기준으로 데이터가 나열됨
    • OpenTSDB, InfluxDB 등

참고자료

데이터와 정보의 차이
위키피디아 - 데이터베이스
TTA정보통신용어사전
데이터 독립성과 스키마
DBMS 정리
스키마란?

0개의 댓글