데이터베이스(DataBase) 란? 

  • 데이터 베이스는 컴퓨터 시스템에 전자적으로 저장된 체계적 데이터의 모듬
  • 컴퓨터가 초기 발명된 시점에는 과학적인 연구의 용도(수학적 계산)로 사용
  • 컴퓨터 과학이 발전하면 점점 더 대용량의 데이터를 저장하고 조회하는 요구사항 증가
  • 이러한 환경에서 데이터베이스의 개념 도입 

 

● 데이터 베이스 사용 이전 

 

- 일반 텍스트 파일 사용

- 데이터베이스 발명 이전에 데이터는 텍스트 파일 형태로 저장 및 관리 

- 파일 형태는 여러 사용자가 동시에 공유하기 어려움

- 파일을 서로 주고받으면서 데이터의 유실 등의 가능성 존재 

 

 

 

● 모든 것이 데이터 베이스로 관리되는 시대

 

- 현재 모든 것이 데이터 베이스로 관리 

- 주소록, 직원관리, 매출관리, 쇼핑몰, 영화 예매, 증권, 등등

- 텍스트, 그림, 동영상, 파일 등 모든 데이터가 데이터베이스로 관리 

 

 

데이터 베이스 관리 시스템이란? 

 

데이터베이스 관리 시스템(database managements system, DBMS)은 다수의 사용자들이 데이터베이스의 데이터를 접근할 수 있도록 해주는 소프트웨어 도구의 집합. 

 

② DBMS은 사용자 또는 다른 프로그램의 요구를 처리하고 적절히 응답하여 데이터를 사용하도록 함. 

 

데이터 베이스 시스템의 특징 

특징 설명
실시간 접근석(real time accessibility) - 데이터 베이스는 실시간으로 서비스 된다. 사용자가 데이터를 요청하면 몇 시간이나 몇 일 뒤에 결과를 전송하는 것이 아니라 수 초 내에 결과를 서비스 한다. 
계속적인 변화(continuous change) - 데이터 베이스에 저장된 내용은 어느 한 순간의 상태를 나타내지만, 데이터 값은 시간에 따라 항상 바뀐다. 

- 데이터베이스는 삽입, 삭제, 수정 등의 작업을 통하여 바뀐데이터 값을 저장한다. 
동시 공유(concurrent sharing) - 데이터 베이스는 서로 다른 업무 또는 여러 사용자에게 동시에 공유된다. 

- 동시는 병행 이라고도 하며, 데이터베이스에 접근하는 프로그램이 여러 개 있다는 의미이다. 
내용에 따른 참조(reference by content)  - 데이터베이스에 저장된 데이터는 데이터의 물지적인 위치가 아니라 데이터 값에 따라 참조된다. 

 

 

● 데이터 베이스의 기본 기능 

 

데이터 삽입, 삭제, 수정, 조회 기능 

 

 

- 동시성 제어 

ex) 영화 예매 

 

한 사람이 결제를 진행하고 있는 상태라면 같은 시간, 같은 좌선은 선택할 수 없다. 

동시성 제어의 중요성 

 

① 데이터 베이스의 동시성 제어가 보장되지 않는다면 같은 좌석에 대한 결제가 동시에 진행될 수 있다.

② 만약 같은 시간, 같은 자리, 간은 영화를 예매한다면 해당 좌석은 누구의 다리도 아닌 좌석이 된다. 

③ 영화관의 대혼란을 맞이한다.

④ 데이터베이스의 동시성은 한 기업의 비즈니스 성패를 좌우할 수 있을 정도로 중요하다.  

 

 

 

- 장애 대응 기능 

: 데이터베이스는 데이터 손실이 발생한 겨웅에 복원이 가능해야한다. 즉, 데이터의 보호와 장애에 대한 방안이 있어야한다. 

 

- 보안기능

  • 데이터베이스의 보안 기능은 사용자에게 보여줄 데이터만 보여주는 것
  • 보안에 위배되는 데이터는 데이터베이스 서버 내에서 관리
  • 사용자는 데이터베이스 내부를 알 필요가 없고 자신이 원하는 정보처리만을 수행
  • 개인 정보의 유출등 매우 심각한 문제가 되므로 데이터의 보안이 중요

 

● 데이터 베이스의 종류 

종류 명  설명
계층형 데이터베이스  계층 구조로 데이터 관리, 최초의 현대적 데이터베이스
관계형 데이터베이스 2차원 표 형식으로 데이터 관리, 가장 널리 사용됨
객체 지향형 데이터베이스  아직 널리 사용되지 않음
NOSQL 데이터베이스  Not Only SQL, 최근 각곽받고 있으며, 관계형 데이터베이스 기능 일부 삭제 

 

- 데이터베이스 세계 순위 

 

'빅데이터 > SQLD' 카테고리의 다른 글

[SQLD] 데이터베이스 아키텍처 (1)  (0) 2020.12.07
[SQLD] 관계형 데이터베이스란  (0) 2020.12.06

+ Recent posts