공부했던 자료 정리하는 용도입니다.
재배포, 수정하지 마세요.
데이터와 정보
- 데이터 : 어떤 필요에 의해 수집했지만 아직 특정 목적을 위해 평가하더나 정제하지 않은 값이나 사실 또는 자료 자체
- 정보 : 수집한 데이터를 어떠한 목적을 위해 분석하거나 가공하여 가치를 추가하거나 새로운 의미를 이끌어 낼 수 있는 결과
- 데이터베이스 : 효율적인 관리와 검색을 위해 구조화한 데이터 집합
파일 시스템과 DBMS
■ 데이터베이스를 통한 데이터 관리
- 여러 목적으로 사용할 데이터의 접근/관리 등의 업무를 DBMS가 전담하는 방식
- 응용프로그램이 필요한 데이터 작업을 DBMS에 요청하면 DBMS는 자신이 관리하는 데이터베이스로 관련 작업을 수행하고 결과값을 제공한다.
- 작업 영역의 분리로 응용 프로그램의 서비스 제공과 데이터 관련 작업 효율을 높인다.
- 통합된 데이터를 같은 방식으로 사용/관리할 수 있으므로 데이터의 누락이나 중복을 방지할 수 있다.
데이터 모델
■ 계층형 데이터 모델(hierarchical data model)
트리(tree)구조를 활용하여 데이터 관련성을 계층별로 나누어 부모 자식 같은 관계를 정의하고 데이터를 관리한다. 기본적으로 하나의 부모 개체가 여러 자식을 가질 수 있는 반면에 자식 개체는 여러 부모 개체를 가질 수 없다는 제약이 있다.
- 데이터가 저장된 파일은 상위 개념에 하위 개념이 포함되어 있는 특징이 있다.
- 일대다(1:N) 구조의 데이터를 표현하기에는 알맞지만 자식 개체가 여러 부모를 가진 관계는 표현할 수 없다.
■ 네트워크형 데이터 모델(network data model)
망형 데이터 모델이라고도 하며 그래프(graph) 구조를 기반으로 한다. 개체 간 관계를 그래프 구조로 연결하므로 자식 개체가 여러 부모 개체를 가질 수 있다.
■ 객체 지향형 데이터 모델(object-oriented data model)
데이터를 독립된 객체로 구성하고 관리하며 상속, 오버라이드 등 객체 지향 프로그래밍에 사용되는 기능을 활용할 수 있다.
■ 관계형 데이터 모델(relational data model)
데이터의 관계에 초점을 둔 데이터 모델이다. 관계형 데이터 모델의 핵심 구성 요소(개체, 속성, 관계)를 활용하여 데이터를 안전하게 관리하기 위해 필요한 개념들을 정의한다. (ex 독립성(independency), 무결성(integrity)등..)
관계형 데이터 모델의 핵심 구성
이 름 | 설 명 |
개체(entity) | 데이터베이스에서 데이터화 하려는 사물, 개념의 정보단위 관계형 데이터베이스의 테이블(table)개념과 대응되며 테이블은 릴레이션(relation)으로 표기하기도 한다. |
속성(attribute) | 개체를 구성하는 데이터의 가장 작은 논리적 단위로서 데이터의 종류 · 특성 · 상태 등을 정의한다. 관계형 데이터베이스의 열(column) 개념과 대응 |
관계(relationship) | 개체와 개체 or 속성 간의 연관성을 나타내기 위해 사용 관계형 데이터베이스에서는 테이블 간의 관계를 왜래키(foreign key)등으로 구현하여 사용 |
관계형 데이터베이스(RDBMS)
관계형 데이터 모델 개념을 바탕으로 데이터를 저장 · 관리하는 데이터베이스를 의미한다. 관계형 데이터베이스를 관리하는 시스템은 RDBMS(relational database management system, 관계형 데이터베이스 관리 시스템)라고 한다. 오라클 데이터베이스는 관계형 데이터베이스에 객체 개념을 도입한 객체 관계형 데이터베이스라고 하는 것이 더 정확한 표현이라고 한다.
SQL(Structured Query Language) : RDBMS에서 데이터를 다루고 관리하는 데 사용하는 데이터베이스 질의 언어
■ SQL의 종류
종 류 | 설 명 |
DQL(Data Query Language) | RDBMS에 저장한 데이터를 원하는 방식으로 조회하는 명령어 |
DML(Data Manipulation Language) | RDBMS 내 테이블의 데이터를 저장 · 수정 · 삭제하는 명령어 |
DDL(Data Definition Language) | RDBMS 내 데이터 관리를 위해 테이블을 포함한 여러 객체를 생성 · 수정 · 삭제하는 명령어 |
TCL(Transaction Control Language) | 트랜잭션 데이터의 영구 저장 · 취소 등과 관련된 명령어 |
DCL(Data Control Language) | 데이터 사용 권한과 관련된 명령어 |
'Back end > Database' 카테고리의 다른 글
[Oracle] 숫자 함수, 날짜 함수, 형변환 함수, NULL처리 함수, DECODE와 CASE (0) | 2019.09.03 |
---|---|
[Oracle] 함수의 종류와 문자함수 (0) | 2019.09.02 |
[Oracle] WHERE절과 연산자 (0) | 2019.08.28 |
[Oracle] SELECT문의 기본형식 (0) | 2019.08.27 |
[Oracle] 관계형 데이터베이스와 오라클 데이터베이스 (0) | 2019.08.05 |