회복과 병행 제어 트랜잭션 테이터베이스는 항상 정확하고 일관된 상태를 가져야 하므로 이를 위해 트랜잭션이라는 기능을 제공한다. 트랜잭션은 한 작업을 수행하기 위해 모아놓은 여러 작업의 집합으로 볼 수 있으며, 데이터베이스의 논리적인 작업 단위이다. 예시로 내 계좌에서 다른 사람의 계좌로 입금을 진행할 때 내 계좌에서 돈이 빠져나감과 동시에 다른 ...
회복과 병행 제어
데이터베이스 정규화
데이터베이스 정규화 정규화는 데이터베이스를 설계하는데 사용하기도 하지만 설계된 데이터베이스를 검증하기 위해 사용하기도 한다. 데이터베이스를 잘못 설계하면 불필요한 데이터중복 같은 각종 문제가 발생할 수 있는데 이를 이상 현상 이라고 한다. 이 이상현상을 제거하면서 데이터베이스를 설계하는 과정이 정규화이다. 이상 현상의 종류 삽입 이상 새 데이...
데이터베이스 설계
데이터베이스 설계 관계 데이터 모델을 기반으로 데이터베이스를 설계할 때는 E-R 모델과 릴레이션 변환 규칙을 사용한 설계와 정규화를 이용한 설계 이 두가지 방법을 주로 사용한다. E-R 모델과 릴레이션 변환 규칙을 이용한 설계는 아래와 같은 단계로 나누어 설계한다. 요구 사항 분석 사용자의 요구 사항을 수집하고 분석하여 개...
데이터베이스 언어 SQL
데이터베이스 언어 SQL SQL (Structured Query Language) 은 관계 데이터베이스를 위한 표준 질의어로 사용되는 언어로 사용자가 원하는 데이터가 무엇인지만 알려주면 되기 때문에 비절차적 데이터 언어의 특성을 가진다. SQL은 기능에 따라 데이터 정의어(DDL), 데이터 조작어(DML), 데이터 제어어(DCL) 로 나뉜다. ...
관계 데이터 연산
관계 데이터 연산 관계 데이터 연산의 개념 원하는 데이터를 얻기 위해 릴레이션에 필요한 처리 요구를 수행하는 것으로 데이터베이스 시스템의 구성 요소 중 데이터 언어의 역할을 한다. 대표적으로 관계 대수와 관계 해석이 있다. 관계 대수 : 원하는 결과를 얻기 위해 데이터의 처리 과정을 순서대로 기술하는 절차 언어 관계 해석 : 원하는 결과...
관계 데이터 모델
관계 데이터 모델 관계 데이터 모델의 용어 관계 데이터 모델에서는 데이터를 행과 열로 구성된 2차원 테이블인 릴레이션에 담아 데이터베이스에 저장한다. 속성 : 릴레이션의 열을 속성 혹은 애튜리뷰트라 부른다. 위의 그림에서 속성은 5개이다. 튜플 : 릴레이션의 행을 튜플이라 부른다. 위의 그림에서 튜플은 5개이다. 도메인 : 속성 ...
데이터 모델링
데이터 모델링 현실 세계에 존재하는 데이터를 컴퓨터 세계의 데이터베이스로 옮기는 변환 과정을 데이터 모델링이라 한다. 현실 세계에서 데이터를 추출하여 개념 세계로 옮기는 작업을 개념적 모델링, 개념 세계의 데이터를 데이터베이스에 저장할 구조를 결정하고 구조를 표현하는 작업을 논리적 모델링이라고 한다. 데이터 모델 데이터 모델링의 결과물을 표...
데이터베이스 시스템
데이터베이스 시스템 데이터베이스 시스템 (DBS)은 데이터베이스와 DBMS를 이용하여 조직에 필요한 정보를 제공해주는 전체 시스템이다. 데이터베이스의 구조 스키마란 데이터베이스에 저장되는 데이터 구조와 제약조건을 정의한 것을 말하고 인스턴스는 스키마에 따라 데이터베이스에 실제로 저장된 값으로 테이블 그림의 스키마 아래에 존재하는 실제 값이다. ...
데이터베이스 관리 시스템
데이터베이스 관리 시스템 과거에는 데이터를 관리하기 위해 파일 시스템이라는 소프트웨어를 사용했다. 파일 시스템은 응용 프로그램마다 파일을 따로 유지하는 특성 때문에 같은 내용의 데이터가 여러 파일에 중복 저장되거나 응용 프로그램이 데이터파일에 종속적인 문제, 데이터 파일에 대한 동시 공유, 보안, 회복기능의 부족 등의 문제점을 가지고 있다. 이러한 ...
데이터베이스의 기본 개념
데이터베이스 기본 개념 데이터란 현실 세계에서 단순히 관찰하거나 측정하여 수집한 사실이나 값으로 자료라고도 하며 정보는 데이터를 의사 결정에 유용하게 활용할 수 있도록 처리하여 체계적으로 조작한 결과물이다. 즉 데이터를 가공하면 정보가 된다. 정보 처리는 데이터에서 정보를 추출하는 과정으로 데이터를 상황에 맞게 분석하거나 해석하여 데이터 간의 의미...