데이터
= 컴퓨터 안에 기록되어 있는 숫자를 의미
데이터베이스
= 데이터의 집합을 의미
일반적으로 통용되는 데이터 베이스 개념은
특정 데이터를 확인하고 싶을 때 간단하게 찾아낼 수 있도록 정리된 형태를 가리킴
데이터는 영구적으로 보존되어야 하기 때문에 하드디스크 혹은 SSD 등 비휘발성 저장장치
에 저장시킨다
데이터베이스를 관리하는 소프트웨어로서, 사용목적은 생산성
향상과 기능성
, 신뢰성
확보에 있다.
- 생산성
- 데이터 검색,추가,삭제,갱신과 같은 기본기능을 제공해줌으로써 생산성을 향상 시킬 수 있다.- 기능성
- 데이터베이스를 다루는 기능을 많이 제공한다.- 신뢰성
RDBMS(관계형데이터베이스)
에서 사용한다.
- DML
- Data Manipulation Language.
- 데이터 추가,삭제,갱신 등 데이터를 조작할 때 사용.
- 가장 기본 명령셋(set)- DDL
- Data Definition Language.
- 데이터를 정의하는 명령어.
- 데이터베이스 객체(object)를 만들거나 삭제하는 명령어- DCL
- Data Control Language.
- 데이터를 제어하는 명령어.
- DCL에는 트랜잭션을 제어하는 명령어와 접근권한을 제어하는 명령이 포함되어 있음
<출처 - SQL 첫걸음>
계층형 데이터베이스
- 폴더와 파일 등의 계층 구조로 데이터를 저장하는 방식
- DBMS로 채택되는 경우는 많지 않음
관계형 데이터베이스(RDBMS)
- 행과 열을 가지는 표 형식 데이터를 저장하는 방식
- SQL
명령어로 조작할 수 있음
객체지향 데이터베이스
- 객체 그대로를 데이터베이스의 데이터로 저장하는 방식
XML 데이터베이스
- XML형식으로 기록된 데이터를 저장하는 방식
- XML이란 자료 형식을 가리키는 용어, Tag를 이용해 마크업 문서를 작성할 수 있음
Key-Value 스토어(KVS)
- 키와 밸류의 형태로 데이터를 저장하는 방식
- *연상배열이나 해시 테이블에서 자주 볼 수 있음
- NoSQL
에서 생겨난 데이터베이스로, 열 지향 데이터베이스
라고도 불림
*연상배열 = 자료구조의 하나로, 키하나와 값하나가 연관되어 있으며, 키를 통해 값을 얻을 수 있는 구조를 말함.
사용자 조작에 따라 요청을 전달하는 '클라이언트'
와 해당 요청을 받아 처리하는
'서버'
로 소프트웨어를 나누고, 복수의 컴퓨터 상에서 하나의 모델을 구현하는 시스템
RDBMS의 클라이언트/서버
RDBMS는 사용자 별로 데이터베이스 접근을 제한할 수 있기 때문에, 사용자 인증이 필요하다. ID/PW 로 실행되며, 인증에 실패할 경우 데이터베이스에 접속할 수 없다.
SQL명령 실행
RDBMS에 사용자 인증을 통해 접속하게 되면 SQL 명령을 서버에 보낼 수 있음.