728x90
반응형
데이터베이스의 개요


> 데이터베이스의 개념
- 방대한 데이터를 효율적으로 관리하기 위해 컴퓨터에 통합 및 저장 한 것
- 특정 조직의 여러 사용자가 공유하여 사용할 수 있도록 통합해서 저장한 운영 데이터의 집합
- 데이터베이스 관리 시스템(DBMS)이라는 프로그램을 이용하여 관리

> 데이터의 특징
- 공유데이터(Shared Data):
특정 조직의 여러 사용자가 함께 사용자가 이용할 수 있는 공용 데이터

여러 응용프로그램들이 공동으로 사용하는 데이터

 

- 저장데이터(Stored Data):
컴퓨터가 접근할 수 있는 매체에 저장된 데이터


- 통합데이터(Integrated Data):
최소의 중복과 통제 가능한 중복만 허용하는 데이터

검색의 효율성을 위해 중복이 최소화된 데이터의 모임

- 운영데이터(Operational Data):
조직의 주요기능을 수행하기 위해 지속적으로 필요한 데이터

조직의 목적을 위해 존재 가치가 확실하고 반드시 필요한 데이터

> 데이터베이스의 특징
- 실시간접근성(Real-time Accessibility):
사용자의 데이터 요구에 실시간으로 응답

- 계속변화(Continuous evolution):
데이터의 계속적인 삽입, 삭제, 수정을 통해 현재의 정확한 데이터 유지

- 동시공유(Concurrent Sharing):
서로 다른 데이터의 동시 사용뿐만 아니라 같은 데이터의 동시 사용 지원

- 내용기반참조(Content reference):
데이터가 저장된 주소나 위치가 아닌 내용으로 참조 예) 성적이 70점 이상인 학생

 

- 데이터의 독립성(Independence):

논리적 독립성: 데이터의 논리적 구조를 변경시키더라도, 응용프로그램은 변경되지 않음

물리적 독립성: 데이터베이스의 물리적 구조를 변경시켜도 응용프로그램이나 논리적 구조에는 영향을 미치지 않음

 

데이터베이스 관리 시스템

 

> 파일처리시스템
- 데이터를 파일로 관리하기 위해 파일을 생성, 삭제, 수정, 검색하는 기능을 제공하는 소프트웨어
- 응용 프로그램마다 필요한 데이터를 별도의 파일로 관리함

 

> 파일처리시스템의 문제점

- 같은 내용의 데이터가 여러 파일에 중복되어 저장(데이터 중복성)

: 저장 공간의 낭비는 물론 데이터 일관성과 무결성을 유지하기 어렵다.

 

- 응용 프로그램이 데이터 파일에 종속적(데이터 종속성)

: 사용하는 파일의 구조를 변경하면 응용 프로그램도 함께 변경해야 한다.

 

- 데이터 파일에 대한 동시 공유, 보안, 회복 기능 부족

: 하나의 파일을 동시에 공유해서 사용하기 어렵고, 누가 접근해서 사용하는지 보안 관리가 없으며,

시스템 문제가 발생하여 파일의 내용이 사라져도 회복이 어렵다.

 

- 응용 프로그램 개발이 어려움

: 파일에 대한 처리 및 관리를 응용 프로그램에서 일부 해주어야 하므로 개발 자체가 쉽지 않다.

 

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

- 파일 시스템의 문제를 해결하기 위해 제시된 소프트웨어(DB 조작 위한 별도 SW)

- 데이터베이스를 구축하는 틀을 제공하고,조직에 필요한 데이터를 효율적으로 데이터베이스에 통합하여 검색하고 저장하며 관리함

- 사용자와 응용 프로그램에 편리하고 효율적인 데이터 베이스 환경을 제공하는 소프트웨어

- DBMS 를 통해 데이터베이스를 관리하여 응용 프로그램들이 데이터베이스를 공유하고, 사용할 수 있는 환경을 제공

- 응용 프로그램들이 데이터베이스에 접근할 수 있는 인터페이스 제공과 장애에 대한 복구와 사용자 권한에 따른 보안성 유지 기능 등을 제공

 

 

https://cloudtweaks.com/2020/04/advantages-of-database-management-systems-dbms/

 

> 데이터 베이스 사용자

- 응용프로그래머

: 프로그래밍 언어(C, COBOL 등)를 사용하여 특정 응용 프로그램이나 인터페이스를 구현하는 사람

 

- 최종 사용자

: 데이터의 검색, 삽입, 삭제, 갱신 등을 위해 DBMS를 사용하는 사람

 

- 데이터베이스 관리자

: 데이터 정의 언어(DDL)와 데이터 제어 언어(DCL)를 사용하여 데이터베이스 스키마를 생성하고 관리하는 사람

 

 

> 데이터베이스 관리 시스템의 종류 및 순위

https://db-engines.com/en/ranking

> 데이터베이스 관리 시스템의 주요 기능

- 데이터 정의 언어 (Data Definition Language, DDL) / 정의

: 데이터베이스 구조를 정의하거나 수정 가능

: 데이터에 대한 형식, 구조, 제약조건들을 명세하는 기능

 

- 데이터 조작 언어 (Data Manipulation Language, DML) / 조작

: 데이터를 삽입, 삭제, 수정, 검색의 연산 가능

: 특정한 데이터를 검색하기 위해 질의, 데이터베이스의 갱신, 보고서 생성 기능

 

- 데이터 제어 언어 (Data Control Language, DCL) / 제어

: 데이터를 항상 정확하고 안전하게 유지

: 데이터베이스의 무결성 유지, 보안 및 접근 제어, 시스템 장애로부터의 복구, 병행 수행 제어 기능 등을 수행

728x90
반응형

+ Recent posts