데이터베이스의 기본개념 (정의)
-데이터의 집합 ( a Set of Data )
-여러 응용 시스템(프로그램)들의 통합된 정보들을 저장하여 운영할 수 있는 공용(share) 데이터의 집합
-효율적으로 저장, 검색, 갱신할 수 있도록 데이터 집합들끼리 연관시키고 조직화되어야 한다.
DBMS가 하는일
데이터 통합, 저장, 운영, 공유 기능 담당. 이를 위해 조직화 되어있어야 함.
데이터베이스의 특성
-실시간 접근성(Real-time Accessability)
사용자의 요구를 즉시 처리할 수 있다.
-계속적인 변화(Continuous Evolution)
정확한 값을 유지하려고 삽입·삭제·수정 작업 등을 이용해 데이터를 지속적으로 갱신할 수 있다.
-동시 공유성(Concurrent Sharing)
사용자마다 서로 다른 목적으로 사용하므로 동시에 여러 사람이 동일한 데이터에 접근하고 이용할 수 있다.
-내용 참조(Content Reference)
저장한 데이터 레코드의 위치나 주소가 아닌 사용자가 요구하는 데이터의 내용, 즉 데이터 값에 따라 참조할 수 있어야 한다.
데이터베이스 관리 시스템 장점
데이터 중복이 최소화
데이터의 일관성 및 무결성 유지
데이터 보안 보장
데이터 베이스의 종류
객체 관계형 데이터베이스 ( Object Relation DataBase = ORDB )
-관계형 데이터베이스에서 사용하는 데이터를 확장
-관계형 데이터베이스를 객체 지향 모델링과 데이터를 관리하는 기능을 갖도록 확장한 것
NoSQL(Not Only SQL - SQL문 만을 이용하지 않아도 된다.)
-대용량 데이터의 웹 서비스와 SNS, 클라우드 컴퓨팅의 확대 보급과 대중화로 최근 주목 받는 데이터베이스 기술
PK
다른 행과 구분하기 위해 필요.
PK를 설정할 땐 비즈니스와 상관없는 컬럼을 지정하는것이 좋다.(비즈니스 변경시 귀찮아 질 수 있다.)
PK는 인덱싱이 자동으로 잡혀 빠르다.
릴레이션에서 튜플(행)을 구분하기 위하여 사용하는 기본 키
하나의 애트리뷰트, 또는 애트리뷰트의 집합(복합키) 가능
관리자에 의해 릴레이션 생성시 정의됨 (자동으로 Index생성됨)
동일한 PK를 지닌 레코드가 존재할 수 없음
기타
Candidate Key (후보키): 튜플을 식별할 수 있는 최소한의 애트리뷰트 집합
하나의 릴레이션에는 PK가 될 수 있는 키가 여러 개 있을 수 있음
유일성과 최소성이 있으면 candidate key가 될 수 있음.
Alternative Key (대체키): 후보키 중 기본키가 아닌것
Composite key (복합키): 둘 이상의 애트리뷰트가 하나의 Key를 이루는 경우