데이터베이스

[DB] 관계 데이터 연산(relational data operator)
·
Computer Science and Engineering/Database
관계 해석과 관계 대수 (Relational Calculus and Relational Algebra) 데이터 모델은 현실 세계의 데이터를 구조화하여 표현하기 위한 도구로, 데이터베이스의 구조, 제약조건, 그리고 데이터를 처리하는 연산을 정의한다. 이 중 개념적 데이터 모델의 대표적인 예는 개체-관계(ER, entity-relationship) 모델로, 데이터베이스의 개념적 구조를 시각적으로 표현하는 데 사용된다. 반면, 논리적 데이터 모델의 대표적인 예는 관계형 데이터 모델(참고링크)이며, 이는 데이터를 표(table)의 형태로 표현하고 논리적인 구조를 정의한다.관계형 데이터 모델은 데이터 구조, 제약조건, 연산의 세 가지 구성 요소로 이루어진다. 데이터 구조는 데이터를 테이블 형식으로 나타내며, 각 ..
[DB] 관계 데이터 모델(relation data model)
·
Computer Science and Engineering/Database
기본 개념 관계(relation)란 하나의 개체에 관한 데이터를 2차원 테이블 구조로 정리한 것으로 아래와 같이 생겼다. 릴레이션 내에서 생성되는 데이터 간 관계가 있고, 릴레이션 간 생성되는 릴레이션 간 관계가 있다.행을 튜플(tuple) 혹은 행(row)라 하고, 열을 속성(attribute) 혹은 열(column)이라 한다.열의 수를 차수(degree), 행의 수를 카디널리티(cardinality)라 한다.가장 위 열 이름을 스키마(schema)로 볼 수 있고, 각 행에 들어가 있는 값을 인스턴스(instance)로 볼 수 있다.도메인(domain)은 하나의 속성이 가질 수 있는 모든 값의 집합, 즉 정의역이다. 속성 값에 대한 입력, 수정에서 적합성 여부를 판단하는 기준이 되며, 속성 특성을 고려..
[DB] 데이터 모델링(data modeling) 및 표기법(notation)
·
Computer Science and Engineering/Database
데이터 모델링 (Data Modeling) 데이터 모델링은 정보 시스템에서 사용할 데이터를 구조화하고, 정의하며, 조직화하는 과정을 말한다. 즉 현실 세계의 정보를 체계적으로 정리하여 데이터베이스로 설계하기 위한 핵심 작업이다.데이터 모델링은 크게 세 단계로 나뉜다. 첫 번째는 현실 세계의 데이터를 분석하여 개념적인 구조로 표현하는 개념적 데이터 모델링(Conceptual Modeling)이다. 두 번째는 개념 모델을 기반으로, 데이터베이스에 적합한 형태로 구조화하는, 즉 정규화, 키설정 등을 해주는 논리적 데이터 모델링(Logical Modeling)이며, 세 번째는 논리 모델을 실제 사용하는 데이터베이스 시스템의 특성과 성능 요건에 맞게 최적화하는 물리적 데이터 모델링(Physical Modeling..
[DB] 데이터 정의어(DDL),데이터 조작어(DML), 데이터 제어어(DCL)
·
Computer Science and Engineering/Database
데이터 언어 • 데이터 정의어 (DDL, Data Definition Language)데이터베이스의 구조, 즉 스키마를 정의하고 변경하는 데에 사용된다. 구체적으로는 테이블, 뷰, 인덱스 등을 생성 및 삭제할 때 사용한다. 주로 데이터베이스 관리자(DBA)가 사용한다.대표적으로 CREATE, ALTER, DROP, TRUNCATE가 있다. • 데이터 조작어 (DML, Data Manipulation Language)데이터베이스의 데이터를 조회, 삽입, 수정, 삭제하는 명령어이다. 사용자가 실제 데이터를 다룰 때 사용된다.절차적 조작어(procedural DML)와 비절차적 조작어(nonprocedural DML)로 구분된다. 절차적 조작어는 사용자가 어떤 데이터를 원하고, 그 데이터를 얻기 위해 어떻게 ..
[DB] 데이터베이스 구조 및 구성
·
Computer Science and Engineering/Database
데이터베이스 구조 데이터베이스를 구성할 때는 ANSI/SPARC에서 제안한 3단계 구조로 구성하여 쉽게 이해하고 관리하도록 한다. 이는 관점에 따라 데이터베이스를 나눈다.구조를 보기 전에 기본 개념을 알아야 한다. 스키마(schema)는 데이터베이스에 저장되는 데이터 구조와 제약 조건을 정의한 것으로 일종의 설계도로 생각하면 편하다. 테이블, 칼럼, 데이터 타입, 제약 조건, 관계, 인덱스 등을 설정하는 것이다. 데이터베이스를 생성하거나 변경하면 스키마를 수정하게 된다. 인스턴스(instance)는 스키마에 따라 실제 저장된 데이터 값이다.다시 돌아와 데이터베이스의 구조를 확인하면 크게 외부 단계(external level), 개념 단계(conceptual level), 내부 단계(internal lev..
[DB] 데이터베이스 관리 시스템(DBMS, database management system)
·
Computer Science and Engineering/Database
배경 파일 시스템(file system)은 데이터를 파일로 관리하는 소프트웨어이다. 즉 파일을 통해 데이터를 생성, 삭제, 수정, 검색한다. 파일로 데이터를 다루게 되면 응용 프로그램마다 필요한 데이터를 별도의 파일로 관리해야 한다. 따라서 같은 내용의 데이터가 여러 파일에 중복 저장되는 문제가 발생한다. 이것이 문제인 이유는 데이터의 일관성(consistency), 무결성(integrity)을 유지하기 어렵기 때문이다. 또한 응용 프로그램이 데이터 파일에 종속적이게 된다.결과적으로 파일 시스템으로 데이터를 관리하게 된다면 데이터 파일에 대한 동시 공유, 보안, 회복 기능 부분에서 취약해진다. 데이터 중복 때문에 일관성과 무결성을 유지하기 어렵고, 파일 수정 중 장애 발생 시 데이터가 날아갈 수도 있다...
[DB] 데이터베이스(database) 및 데이터(data)
·
Computer Science and Engineering/Database
데이터베이스 (Database) 일반적으로 데이터(data)라는 말을 여기저기 사용하지만, 조금 엄밀하게 분리하면 데이터는 현실을 기반으로 측정, 수집된 사실이나 값을 의미하고, 이를 가공한 것은 정보(information)라 한다. 즉 데이터는 원시자료만을 의미한다.데이터에서 정보를 추출하는 과정이나 방법을 정보 처리(information processing)이라 한다. 예를 들어 "온라인 주문 내역"이라는 데이터에서 "분기별 매출"이라는 정보를 추출하는 것을 정보 처리라 할 수 있을 것이다. 물론 일반적으로는 데이터 처리(data processing)이라 하기도 한다.정보 시스템(information system)은 데이터르 수집 및 처리하고 필요할 때 유용한 정보로 만들어주는 수단이다. 이 정보 시..
애스터로이드