본문 바로가기

CS/DB13

[DB - 데이터베이스 개론] Chapter 06. 관계 데이터 연산 목차 01. 관계 데이터 연산의 개념 이번 장에서는 데이터 모델의 연산에 대해서 알아보자. 연산은 원하는 데이터를 얻기 위해 릴레이션에 필요한 처리 요구를 수행하는 것으로, 데이터베이스 시스템의 구성 요소 중 데이터 언어의 역할을 한다. 대표적인 관계 데이터 연산으로 관계 대수와 관계 해석이 있다. 관계 대수와 관계 해석은 원하는 데이터를 얻기 위한 처리 절차를 얼마나 자세히 기술하느냐에서 큰 차이를 보인다. 관계 대수(relational algebra) : 데이터의 처리 과정을 순서대로 기술하는 절차 언어(procedural language) 관계 해석(relational calculus) : 처리를 원하는 데이터가 무엇인지만 기술하는 비절차 언어(nonprocedural language) 데이터를 처.. 2022. 1. 23.
[DB - 데이터베이스 개론] Chapter 05. 관계 데이터 모델 목차 01. 관계 데이터 모델의 개념 1. 관계 데이터 모델의 기본 용어 일반적으로 관계 데이터 모델에서는 하나의 개체에 관한 데이터를 릴레이션(relation) 하나에 담아 데이터베이스에 저장한다. 아래 사진의 릴레이션의 예를 통해 관련 용어를 알아보자. 1.1 속성 (attribute) 릴레이션의 열을 의미한다. 각 속성은 서로 다른 이름을 이용해 구별한다. 릴레이션은 파일 관리 시스템에서의 파일, 속성은 해당 파일의 필드(field)에 대응하는 개념이다. 1.2 튜플 (tuple) 릴레이션의 행을 의미한다. 고객 개체의 인스턴스에 해당한다. 튜플은 파일 관리 시스템 관점에서 해당 파일의 레코드(record)에 대응하는 개념이다. 1.3 도메인 (domain) 속성 하나가 가질 수 있는 모든 값의 집.. 2022. 1. 21.
[DB] 트랜잭션(Transaction)이란? 목차 트랜잭션의 정의 데이터베이스의 상태를 변환시키는 하나의 논리적 기능을 수행하기 위한 작업의 단위 또는 한꺼번에 모두 수행되어야 할 일련의 연산들 데이터베이스 시스템에서 병행 제어 및 회복 작업 시 처리되는 작업의 논리적 단위를 의미한다. 사용자가 시스템에 대한 서비스 요구 시 시스템이 응답하기 위한 상태 변환 과정의 작업단위이다. 데이터베이스 연산은 SQL문으로 표현되므로 트랜잭션을 작업 수행에 필요한 SQL문들의 모임으로 이해해도 된다. 트랜잭션의 모든 명령문이 완벽하게 처리되거나 하나도 처리되지 않아야 데이터베이스는 모순이 없는 일관된 상태를 유지할 수 있다. 데이터베이스에 장애가 발생했을 때 복구작업을 수행하거나, 다수의 사용자가 동시에 사용할 수 있도록 작업을 하는 데 중요한 단위로 사용된다.. 2022. 1. 18.
[DB - 데이터베이스 개론] Chapter 04. 데이터 모델링 목차 01. 데이터 모델링과 데이터 모델의 개념 현실 세계에 존재하는 데이터를 컴퓨터 세계의 데이터베이스로 옮기는 변환 과정을 데이터 모델링(data modeling)이라 한다. 하지만 현실 세계에 존재하는 엄청난 양의 데이터를 데이터베이스에 옮기는 것은 쉽지 않다. 데이터베이스에 저장하여 관리할 만한 가치가 있는 중요 데이터를 찾아내는 것을 추상화(abstraction)라고 한다. 현실 세계에서 대상에 대한 중요 데이터를 추출하여 개념 세계로 옮기는 작업을 개념적 모델링(conceptual modeling)이라고 한다. 그리고 개념 세계의 데이터를 데이터베이스에 저장할 구조를 결정하고 이 구조로 표현하는 작업을 논리적 모델링(logical modeling)이라 한다. 데이터 모델링을 쉽게 할 수 있도록.. 2022. 1. 17.
[DB - 데이터베이스 개론] Chapter 03. 데이터베이스 시스템 목차 01. 데이터베이스 시스템의 정의 데이터베이스 : 데이터를 저장해두는 곳 데이터베이스 관리 시스템 : 데이터베이스에 저장된 데이터가 일관되고 무결한 상태로 유지되도록 관리하는 역할을 한다 데이터베이스 시스템 : 데이터베이스와 데이터베이스 관리 시스템을 이용해 조직에 필요한 정보를 제공해주는 전체 시스템 02. 데이터베이스의 구조 1. 스키마(schema) 데이터베이스에 저장되는 데이터 구조와 제약조건을 정의한 것 정의된 스키마에 따라 데이터베이스에 실제로 저장된 값이 인스턴스(instance)다. 보통 스키마는 한번 정의되면 자주 변경되지 않지만, 인스턴스는 계속 변하는 특성이 있다. 2. 3단계 데이터베이스 구조 2.1 3단계 데이터베이스 구조의 개념 3단계 데이터베이스 구조는 하나의 데이터베이스.. 2022. 1. 15.
[DB - 데이터베이스 개론] Chapter 02. 데이터베이스 관리 시스템 목차 01. 데이터베이스 관리 시스템의 등장 배경 과거에는 데이터를 관리하기 위해 파일 시스템(file system)이라는 소프트웨어를 이용하였다. 필요한 데이터를 별도의 파일로 관리하는데 별도의 구매 비용이 들지 않는다는 장점이 있지만 응용 프로그램마다 파일을 따로 유지하는 특징 때문에 다음과 같은 문제가 발생한다. 같은 내용의 데이터가 여러 파일에 중복 저장된다. -> 데이터가 중복되면 저장 공간이 낭비될 뿐 아니라 데이터 일광성과 데이터 무결성을 유지하기가 어렵다. 응용 프로그램이 데이터 파일에 종속적이다. -> 사용하는 파일의 구조가 변경되면 응용 프로그램도 함께 변경해야 한다. 데이터 파일에 대한 동시 공유, 보안, 회복 기능이 부족하다. 응용 프로그램을 개발하기 쉽지 않다. 02. 데이터베이스.. 2022. 1. 15.