Data와 Database
o Data
관찰 결과로 나타난 정량적 혹은 정성적인 실제 값
o 정보
데이터를 기반으로 의미를 부여한 것
에베레스트 높이 : 8848m -> Data
에베레스트는 세계에서 가장 높은 산이다 -> 정보
o Database(DB)
한 조직에 필요한 정보를 여러 응용 시스템에서 공용할 수 있도록 논리적으로 연관된 데이터를 모으고 중복되는 데이터를 최소화하여 구조적으로 통합/저장해 놓은 데이터이다.
DBMS
데이터 베이스에서 데이터를 추출, 조작, 정의, 제어 등을 할 수 있게 해주는 데이터베이스 전용 관리 프로그램
사용자와 데이터베이스 간의 중계 역할을 하는 S/W 시스템이다.
o DBMS의 기능
기능 |
설명 |
추출 (Retrieval) |
사용자가 조회하는 데이터 혹은 응용 프로그램의 데이터 추출 |
조작 (Manipulation) |
데이터를 조작하는 소프트웨어가 요청하는 데이터 삽입, 수정, 삭제 작업 지원 |
정의 (Definition) |
데이터의 구조를 정의하고 데이터 구조에 대한 삭제 및 변경 기능 수행 |
제어 (Control) |
데이터베이스 사용자를 생성하고 모니터링하며 접근 제어 백업과 회복, 동시성 제어 등의 기능 지원 |
DBMS 사용 이점
1. 데이터 독립화
데이터와 응용 프로그램을 분리시킴으로써 상호 영향 정도를 줄일 수 있다.
2. 데이터 중복 최소화, 데이터 무결성 보장
중복되는 데이터를 최소화 시키면 데이터 무결성이 손상될 가능성이 줄어든다.
중복되는 데이터를 최소화 시키면 필요한 저장공간의 낭비를 줄일 수 있다.
3. 데이터 보안 향상
응용프로그램은 DBMS를 통해 DBMS가 허용하는 데이터에만 접근이 가능하다.
권한에 맞게 데이터 접근을 제한하거나 데이터를 암호화시켜 저장이 가능하다.
4. 관리 편의성 향상
다양한 방법으로 데이터 백업 및 장애 발생 시 데이터 복구가 가능하다.
Database 유형
o 계층형(Hierachical) 데이터베이스 (HDBMS)
트리 형태의 계층적 구조를 가진 데이터베이스로 최상위 계층의 데이터부터 검색하는 구조이다.
즉, 상위 레코드가 복수의 하위 레코드를 갖는 구조이나 데이터 중복의 문제가 있다.
o 네트워크형(Network) 데이터베이스 (NDBMS)
계층형 데이터 베이스의 데이터 중복 문제를 해결하여 레코드 간의 다양한 관계를 갖는 구조이다.
하위 데이터들끼리의 관계까지 정의할 수 있는 구조로 설계 및 구현이 복잡하고 어렵다.
o 관계형(Relational) 데이터베이스 (RDBMS)
모든 데이터를 2차원 형태(행,열)로 표현하고 테이블 간의 관계를 도출하는 구조이다.
데이터의 중복을 최소화할 수 있으며 업무 변화에 대한 적응력이 우수하다.
o 객체-관계형(Object Relational) 데이터베이스 (ODBMS)
기존의 관계형 데이터베이스 시스템들과 객체지향 데이터베이스가 제공하는 기능들 중 장점만을 선별하여 관계형 모델에 통합한 개념의 데이터베이스이다.
1. 사용자 정의 타입 지원 : 사용자가 임의로 정한 데이터 유형으로 넘어 다양한 형태의 데이터를 다룰 수 있다.
2. 참조(reference)타입 지원 : 객체들로 이루어진 객체 테이블의 경우 하나의 레코드가 다른 레코드를 참조할 수 있다.
3. 중첩 테이블 지원 : 로우(row)에서 다른 테이블로 구성되는 테이블을 지원하며 조금 더 복잡하고 복합적인 정보 표현이 가능하다.
4. 대단위 객체의 저장 및 추출 가능 : 이미지, 오디오, 비디오 등 저장하기 위한 대단위 객체(LOB) 지원한다.
5. 객체 간의 상속관계 지원 : 오라클의 경우 OBJECT타입을 지원함으로써 상속 기능을 구현하고 있다.
'DB' 카테고리의 다른 글
[SQL] SELECT문 명령어 - BETWEEN, IS NULL, IN (0) | 2021.02.27 |
---|---|
[SQL] SELECT문 명령어 - DISTINCT, WHERE, 연산자 (0) | 2021.02.27 |
[SQL] SELECT문 - 정의, 산술 연산, 별칭, 리터럴 (0) | 2021.02.27 |
[SQL] SQL 개념 및 종류(DDL,DML,DQL,DCL,TCL) (0) | 2021.02.27 |
[Database] DB 기초 용어 정리 - 테이블(Table), 행(Row), 열(Column) 등 (0) | 2021.02.25 |