DB란
DB
DataBase 의 줄임말
여러 사람에 의해 공유되어 사영될 목적으로 통합하여 관리되는 데이터의 집합
별개의 미들웨어(DBMS, DataBaseManagemantSystem, DB관리 시스템)를 통해서 관리되며 DB 자체만으로는 거의 아무것도 못 함
-
파일로 저장과의 비교
단점으로 간단하고 오버헤드도 적음
장점으로 인덱싱, 멀티스레드 작업가능하며 줄 수도 줄어듦
-
DBMS
DB 를 다루며 관리함
-
RDBMS
관계형 DB를 다루는 관리 시스템
가장 널리 쓰임
-
SQL (Structured Query Language, 구조화 질의 언어)
RDBMS를 다루기 위한 표준 언어
-
-
RDBMS 그 외
비-관계형 DB
NoSQL 이라고 불림
여러 형태 존재
-
-
특징
-
자기 기술성
DBMS가 데이터의 삼입 및 삭제를 데이터/구조적 종속 없이 가능하게 해줌
-
프로그램과 데이터의 격리
자기 기술성으로 인해 저장 구조 등을 수정하는 것이 응용 프로그램(DBMS)에 영향을 미치지 않음
-
추상화
복잡한 DB의 구조에 대한 정보를 감추고, 각 사용자에게 뷰 제공
-
동시성 제어
다수의 사용자에게 동시 접근을 허용해서 동시에 복수의 적용 업무를 수행함
-
데이터의 특성, 실체 상호 간의 의미 관계와 형식 관계를 기술한 개념적인 구조에 따라서 편성된 데이터 집합
-
데이터 중복 불허, 다양한 접근 방식 마련, 검색, 갱신 효율성 지향
-
주기억장치 (RAM, ROM 등)이 아닌 컴퓨터에서 사용할 수 있는 보조기억장치(HDD, SSD 등) 에 저장됨
-
설계
-
단계
-
요구 조건 분석
사용자가 무엇의 정보를 필요로 하는지, 문제가 무엇인지 등을 분석해 어떤 DB 만들어야 할지 결정
-
개념적 설계
DB의 구성요소(속성)등을 정하고 다음 단계인 논리적 설계에서 수행할 작업 설계
개체-관계모델(ERD) 사용함
-
논리적 설계
본격적인 스키마 설계
개념적 설계를 사람들이 알아볼 수 있는 형태로 작업
이외의 제약조건 등을 이 단계에서 제작
-
물리적 설계
저장장치에 저장되늰 형태의 알고리즘을 효율적이게 개선하고 수정
-
구현
실제로 자료들을 수집한 뒤 DB의 알맹이(인스턴스)들을 채워 넣는 것
-
운영 및 개선
DB 운영하고 실제 사용하면서 생기는 문제점들을 개선
-
-
-
-
종류
-
관계형
데이터를 ROW, COLUMN 이라는 일종의 표 형태로 저장
데이터의 종속성은 관계(Relation)으로 표현
한 테이블에 있는 모든 로우는 같은 길이의 컬럼을 가지고 있으며 이 컬럼의 구조와 데이터의 관계가 테이블 Schema로 사전 정의됨
가장 신뢰성이 높고 데이터 분류, 정렬, 탐색 속도 빠름
-
키-값형
-
객체형
-
문서형
-
컬럼 패밀리형
-
출처 : https://namu.wiki/w/%EB%8D%B0%EC%9D%B4%ED%84%B0%EB%B2%A0%EC%9D%B4%EC%8A%A4#s-4.1