Database란?
한 조직(enterprise)의 여러 응용 시스템들이 공유(shared)하기 위해 통합(integrated), 저장(stored)한 운영 데이타(operational data)의 집합
- 공용 데이타 (shared data)
- 한 조직의 여러 응용 시스템들이 공동으로 소유, 유지, 이용하는 데이타
- 통합 데이타 (integrated data)
- 최소의 중복(minimal redundancy)
- 통제된 중복(controlled redundancy)
- 저장 데이타 (stored data)
- 컴퓨터가 접근 가능한 저장 매체에 저장
- 플래시 메모리, 하드디스크, 클라우드 저장소 등
- 운영 데이타 (operational data)
- 한 조직의 고유 기능을 수행하기 위해 필요한 데이타
- 데이터에 대한 검색, 조회, 업데이트, 자료 추가 등
Database의 특성
- 실시간 접근성 (real-time accessibilities)
- 질의에 대한 실시간 처리(real-time processing) 및 응답
- 계속적인 변화 (continuous evolution)
- 갱신(update), 삽입(insert), 삭제(delete) : 동적(dynamic) 특성
- 동시 공용 (concurrent sharing)
- 여러 사용자(multi-user)가 동시에 사용
- 내용에 의한 참조 (content reference)
- 데이타의 위치(location)나 주소(address)가 아닌 내용(contents)에 따라 참조
Database의 구성요소
- 논리적 구성요소(logical components)
- 사용자의 입장
- 데이타베이스 = {개체(entities), 관계(relationships)}
- 개체(entity)
- 표현하려는 유무형 정보의 객체(object)
- 레코드와 비슷한 개념
- 정보의 단위(unit)
- 개체타입
- Entity type
- 하나 이상의 속성(attribute)으로 구성
- 속성: 데이타의 가장 작은 논리적 단위(logical unit)
- 개체 집합(entity set)
- entity instance 들의 집합
개체 (entity)
관계 (relationship)
- 속성관계(attribute relationship)
- 개체와 속성 간의 관계
- 개체관계(entity relationship)
- 개체 간 관계
- 일반적으로, 관계는 개체 간의 관계를 말함
Database의 구조
- 논리적 구조 (logical organization)
- 사용자의 관점에서 본 데이타의 개념적 구조(conceptual structure)
- 데이타의 논리적 배치(logical allocation)
- 논리적 레코드(logical record)
- 예) 테이블 구조, 트리 구조등
- 물리적 구조 (physical organization)
- 저장 관점에서 본 데이타의 물리적 배치(physical allocation)
- 저장장치에 저장된 데이타의 실제 구조(actual structure)
- 저장 레코드(stored record)
- 예) 하드디스크의 플래터, 실린더, 트랙, 섹터에 저장되는 구조