[DB] 1. 데이터베이스와 SQL

Woohyun Shin·2022년 2월 6일
0

DB

목록 보기
1/3

데이터 베이스란?

컴퓨터 안에 기록되어 있는 숫자를 데이터라고 부르며 이러한 데이터의 집합을 데이터베이스라고 부른다.
넓은 의미에서는 '컴퓨터 안에 기록된 모든 것'이고 일반적으로 통용되는 개념은 '특정 데이터를 확인하고 싶을 때 간단하게 찾아낼 수 있도록 정리된 형태'이다.

데이터베이스 내의 데이터는 영구적으로 보존되어야 하므로 하드디스크나 플래시메모리(SSD) 등과 같은 비휘발성 저장장치에 저장한다.

데이터베이스는 다양한 시스템에서 사용하며 일상생활과도 밀접히 관련되어 있다. ex)휴대전화의 전화번호부

데이터베이스를 효율적으로 관리하는 소프트웨어를 DBMS(Database Management System), 데이터베이스 관리 시스템이라고 부르며 DBMS의 사용 목적은 생산성 향상, 기능성, 신뢰성 확보에 있다.

DBMS와의 대화에 필요한 것이 바로 SQL인데, SQL은 관계형 데이터베이스 관리 시스템(RDBMS:Relational Database Management System)을 조작할 때 사용한다.

SQL명령의 종류 :
DML(Data Manipulation Language)-데이터를 조작할 때 사용하는 가장 기본이 되는 명령어
DDL(Data Definition Language)-데이터베이스는 데이터베이스 객체(Object)라는 데이터 그릇을 이용하여 데이터를 관리하는데, 이와 같은 객체를 만들거나 삭제하는 명령어
DCL(Data Control Language)-데이터를 제어하는 명령어

다양한 데이터베이스

  1. 계층형 데이터베이스 : 폴더와 파일 등의 계층 구조로 데이터를 저장하는 방식의 DB
  2. 관계형 데이터베이스 : 관계 대수(Relational algebra)라는 것에 착안하여 고안한 DB, 행과 열을 가지는 표 형식 데이터를 저장하는 형태의 DB(엄밀히 말해 관계 대수는 표 형식 데이터와는 관계X)
  3. 객체지향 데이터베이스 : 가능하면 객체 그대로를 데이터베이스의 데이터로 저장하는 것
  4. XML 데이터베이스 : XML형식(태그를 이용하는 자료 형식)으로 기록된 데이터를 저장하는 DB
  5. 키-밸류 스토어(KVS) : 키와 그에 대응하는 값(밸류)이라는 단순한 형태의 데이터를 저장하는 DB

RDBMS는 비교적 오래된 축에 속하는 DB이긴 하지만, 변화가 빠른 시스템 업계에서 여전히 DB의 주류를 이룬다.

데이터베이스 제품(RDBMS) : Oracle, DB2, SQL Server, PostgreSQL, MySQL, SQLite

RDBMS는 처음부터 SQL 명령어를 이용해 DB를 조작하도록 설계된 만큼, SQL을 사용할 수 없는 RDBMS는 없다.

하지만 각 DB 제품 별로 기능 확장이 이루어지는 과정에서 방언들이 생겨났는데, 방언 대신 표준 SQL을 사용하는 것이 좋다 !

데이터베이스 서버

RDBMS는 복수의 클라이언트가 보내오는 요청에 응답할 수 있도록 클라이언트/서버 모델로 동작한다.

클라이언트는 서버에 '접속 요청'이나 'SQL명령 실행요청'을 보낼 수 있으며 서버는 이를 처리하고 클라이언트에 그 결과를 반환한다.

클라이언트/서버 모델이란 사용자 조작에 따라 요청을 전달하는 클라이언트와 해당 요청을 받아 처리하는 서버로 소프트웨어를 나누고, 복수의 컴퓨터 상에서 하나의 모델을 구현하는 시스템을 말한다.

데이터베이스를 사용할 때는 ID와 비밀번호를 이용한 사용자 인증이 필요하다 ! (인증에 실패하면 DB에 접속할 수 X)

인증에 성공한 후 RDBMS에 접속하면 SQL명령을 서버에 보낼 수 있다.

일단 한 번 DB에 접속하면, 이를 유지하여 재접속 없이 SQL명령을 여러 번 보낼 수 있다.

웹 애플리케이션은 일반적으로 '웹 서버'와 '데이터베이스 서버'의 조합으로 구축된다.

profile
조급함보다는 꾸준하게

0개의 댓글