DataBase

Database와 DBMS

 

데이터베이스란 ( Database, DB )

일반적으로 컴퓨터 시스템에 전자 방식으로 저장된 구조화된 정보 또는 데이터의 체계적인 집합을 의미한다.

핵심은 데이터베이스는 중복을 최소화하고, 다수의 사용자가 공유할 수 있도록 데이터들을 모아둔 시스템 인것이다.

데이터베이스는 혼자서 사용하는 시스템이 아니기때문에, 여러명의 사용자나 시스템간에 상호 공유가 가능해야 한다.

 

데이터베이스는 단순히 데이터가 모여있는것을 의미하는것이 아니라, 사용자 요구에 따라 필요한 데이터를 빠르게 검색할 수 있어야 하며, 데이터를 추가, 삭제, 수정 할 수 있도록 구성된 데이터의 집합체 이다.

 

한마디로 관련된 데이터를 모아 이를 통합하여 관리할 수 있도록 하는 것 이다.

 

데이터베이스 관리시스템 (DataBase Management System, DBMS)

데이터베이스를 공부할때 데이터베이스 관리시스템(DBMS) 을 빼놓을 순 없다.

DBMS는 모든 응용 프로그램들이 데이터베이스를 공유할 수 있도록 관리해주고, 데이터베이스를 유지하기 위한 일련의 소프트웨어 시스템 이다.

 

대표적으로 Oracle, MySQL 이 있다.

 

 

✔ DBMS기능

  1. 정의기능(생성)
  2. 조작기능
  3. 제어기능

1. 정의기능 (생성)

논리적 구조 정의 : 테이블 등의 논리적 구조를 정의 < Logical >

물리적 구조 정의 : 실제 파일 < Physical > 

논리적/물리적 구조 매핑 : 물리적으로 만든 파일과 우리가 볼 수 있는 것을 연결

 

2. 조작기능

코드를 통해서 데이터를 검색, 삽입, 수정, 삭제 할 수 있는 기능

즉, Select, Insert, Update, Delete 가 가능하다.

 

3. 제어기능

데이터의 정확성, 안정성을 유지하는 기능 (무결성, 보안)

 

데이터베이스와 테이블의 관계

출처 : 유투브 생활코딩 강의 사진

 

💡 데이터베이스라는 큰 통 안에 정보가 들어있는 다수의 테이블이 존재한다.

 

데이터베이스의 기본 단위. 테이블

 

테이블 이란, 여러 개의 레코드(데이터)를 담고 있는 논리적인 구조를 말한다.

 

즉, 테이블을 자료형들을 모아놓은 표 라고 생각하자.

> 모든 자료는 테이블에 등록이 되고, 우리는 테이블로부터 원하는 자료를 꺼내볼 수 있다.

( 우리가 원하는 자료를 찾아보려면 데이터 베이스에 접속하고 테이블을 찾아봐야 한다는것 )

 

 

❔ 데이터베이스, 데이터베이스 서버 ...

말이 헷갈리니까 테이블들을 모아놓은 데이터베이스를 스키마 라고도 부르기도 한다.

 

 

 

데이터베이스 예시

데이터베이스의 장점

  • 데이터 중복 최소화
  • 데이터 공유
  • 무결성 유지
  • 일관성 유지
  • 데이터의 보안 보장

데이터베이스의 단점

  • 운영비 증대 : 많은 시스템 자원 요구
  • 자료 처리의 복잡화 : 고급 프로그래밍 요구
  • 복잡한 예비와 회복 : 장애 발생 대비를 위한 작업 필요
  • 시스템의 취약성 : 시스템의 성능에 따라 DBMS성능이 좌우됨

 

데이터베이스의 본질은 CRUD 이다.
  Create, Read, Update, Delete
어떤 부분에서는 수정과 삭제가 없을 수 도 있기 때문에, Create, Read를 중요시 한다. 

 

다음은 관계형 데이터베이스 (RDBMS) 에 대해 포스팅 해보도록 하겠다.

 


참고 자료 : www.youtube.com/watch?v=0pU6_5BQ2Dk&list=PLuHgQVnccGMCgrP_9HL3dAcvdt8qOZxjW&index=15

'DataBase' 카테고리의 다른 글

SQL 소개  (0) 2021.03.04
관계형 데이터 RDBMS, 제1정규화  (0) 2021.03.04