* 데이터베이스의 발전
- 60s : 플로우차트 중심의 개발 방법을 사용, 파일 구조를 통해 데이터를 저장하고 관리
- 70s : 데이터베이스 관리 기법이 처음 태동되던 시기, 계층형, 망형 데이터베이스 상용화
- 80s : 현재 대부분의 기업에서 사용되는 관계형 데이터베이스가 상용화
- 90s : oracle, sybase, informix, DB2, Teradata, SQL server외 많은 제품들이 보다 향상된 기능으로 정보시스템 솔루션
* 관계형 데이터베이스
- 현재 기업에서 사용하는 대부분의 데이터베이스는 기존 관계형 데이터베이스에서 객체 지원 기능을 추가
- 파일시스템 : 동시에 검색은 가능하지만 동시에 입력, 수정, 삭제 불가능
- 파일시스템은 분산된 데이터 간 정합성 보장이 힘듦
- 관계형 데이터베이스는 정규화를 통해 합리적인 테이블 모델링으로 이상현상 제거
데이터 중복을 피할 수 있으며 동시성 관리, 병행 제어를 통해 동시에 데이터 공유 및 조작 가능
- 메타 데이터를 총괄 관리할 수 있어서 데이터 성격, 속성, 표현방법을 체계화할 수 있음
- 데이터 표준화로 데이터 품질을 확보할 수 있는 장점
- DBMS는 인증된 사용자만 참조할 수 있도록 보안 기능 제공하여 무결성 보장
- 갑작스런 장애로부터 입력, 수정, 삭제하던 데이터가 제대로 반영되도록 보장
- 시스템 다운, 재해 등의 상황에서도 회복/복구 기능 제공
* SQL
- 관계형 데이터베이스에서 데이터의 정의, 조작, 제어를 위한 언어
- ANSI/ISO 표준을 기준으로 할 것을 권고
- SQL 문장은 단순 스크립트가 아니라 이름에도 포함되듯, 일반적인 개발 언어처럼 독립된 하나의 개발 언어
* TABLE
- 데이터는 관계형 데이터베이스의 기본 단위인 테이블 형태로 저장
- 모든 자료는 테이블에 등록 되고, 우리는 테이블로부터 원하는 자료를 꺼내 올 수 있음
- 테이블은 어느 특정한 주제와 목적으로 만들어지는 일종의 집합
- 테이블은 데이터를 저장하는 객체로서 관계형 데이터베이스의 기본 단위
- 관계형 데이터베이스에서는 모든 데이터를 컬럼과 행의 2차원 구조로 나타냄
- 컬럼과 행이 겹치는 하나의 공간을 필드라고 함
- 정규화를 통해 데이터의 정합성 확보와 데이터 입력/수정/삭제 이상현상을 방지
* ERD
- 팀 정보와 선수 정보 간에 어떤 의미의 관계가 존재하며
다른 테이블과도 어떤 의미의 연관성이나 관계를 가지고 있다
- ERD는 관계의 의미를 직관적으로 표현할 수 있는 좋은 수단
- 팀과 선수 간 소속이라는 관계, ERD 구성요소는 엔티티, 관계, 속성
하나의 팀은 여러 선수를 포함할 수 있음
한 명의 선수는 하나의 팀에 꼭 속함
하나의 팀은 하나의 전용 구장을 가짐
하나의 운동장은 하나의 홈팀을 가짐
하나의 운동장에는 여러 게임 스케줄을 가질 수 있음
하나의 스케줄은 하나의 운동장에 꼭 배정됨
하나의 부서는 여러 명의 사원을 보유할 수 있음
한 명의 사원은 하나의 부서에 꼭 속함
'SQLD' 카테고리의 다른 글
[SQLD : Ⅲ. SQL 기본] 3. DML (0) | 2020.08.16 |
---|---|
[SQLD : Ⅲ. SQL 기본] 2. DDL (0) | 2020.08.16 |
[SQLD : Ⅱ. 데이터 모델과 성능] 6-2. 분산데이터베이스와 성능 - 적용기법 (0) | 2020.08.16 |
[SQLD : Ⅱ. 데이터 모델과 성능] 6-1. 분산데이터베이스와 성능 - 개요 (0) | 2020.08.16 |
[SQLD : Ⅱ. 데이터 모델과 성능] 5-2. 데이터베이스 구조와 성능 - PK/FK (0) | 2020.08.16 |