백엔드 개발자로서 필수적으로 알아야 하는 데이터베이스 개념에 대해 알아보도록 하자. 데이터베이스의 정의, 특징, 유형 등을 다뤄보겠다. 데이터베이스는 특정 조직의 여러 사용자가 공유하여 사용할 수 있도록 통합해서 저장한 운영 데이터의 집합이다.
데이터베이스관리시스템(Database Management System:DBMS)에 대해 알아보자. DBMS의 주요 기능, 장단점에 대해 간단히 다뤄보도록 하겠다.
데이터베이스 시스템이 무엇인지, 앞서 다뤘던 DBMS의 개념과는 어떤 차이점이 있는지, 어떤 구조로 이루어져 있는지, 어떤 언어를 사용하는지 살펴보도록 하겠다. 데이터베이스에 데이터를 저장하고, 저장된 데이터를 관리하여 조직에 필요한 정보를 생성해주는 시스템이다.
데이터 모델링(Data modeling)이란? 현실 세계에 존재하는 데이터를 컴퓨터 세계의 데이터베이스로 옮기는 과정이다. 데이터베이스 설계의 핵심 과정이라고 볼 수 있다.
모든 DBMS는 데이터 처리를 위해 하나 이상의 데이터 언어를 제공한다. 관계 대수(Relation algebra)에 대해 알아보자.
지난 포스트에서 모든 DBMS는 데이터 처리를 위해 하나 이상의 데이터 언어를 제공한다고 한 바 있다. SQL 데이터베이스 언어에 대해 알아보자.
DDL(Data Definition Language)은 데이터베이스 구조를 정의하고 변경하는 기능을 제공하는 언어이다.
SELECT 쿼리는 테이블에서 원하는 데이터를 검색하는 SQL이다.
DML(Data Manipulation Language)은 테이블에 새 데이터를 삽입하거나, 테이블에 저장된 데이터를 수정, 삭제하는 기능을 제공하는 언어이다.