위 포스트는 "혼자 공부하는 SQL" 책 Chapter 01-1 내용을 정리한 글입니다.
** 데이터베이스와 DBMS
01. DBMS의 정의
데이터베이스란 데이터의 집합이다.
우리는 이러한 데이터베이스를 관리하고 운영하는 소프트웨어를 DBMS라고 한다.
DBMS가 되기 위해서는 2가지 특징을 충족해야 한다.
1. 다양한 데이터가 저장되어 있는 데이터의 집합인 데이터베이스를 가지고 있어야 한다.
2. 여러 명의 사용자나 응용 프로그램과 공유하고 동시에 접근이 가능해야 한다.
엑셀은 1번 특징은 성립하지만,
대용량 데이터를 관리하거나 여러 사용자와 공유하는 개념과는 거리가 멀다는 점에서
DBMS 라고 부를 수 없다.
02. DBMS의 종류
데이터베이스를 사용하기 위해서는 소프트웨어, 즉 DBMS를 설치해야 한다.
DBMS의 대표적인 예시로는 MySQL, 오라클, SQL 서버, MariaDB 등이 있다.
** DBMS의 발전 과정
지금의 DBMS 사용하기까지 정보 관리 방법 역사에 대해 알아보자.
종이를 이용해 펜으로 기록을 남겼던 시기를 거쳐 컴퓨터가 등장하게 되고,
그 이후로 사람들은 이 기록들을 컴퓨터에 파일로 저장을 해왔다.
파일은 소수인원, 소량의 데이터 처리할 때 속도가 빠르고, 사용법이 쉽다는 장점이 있지만,
데이터 불일치 가능성이 존재한다는 단점이 있다.
이러한 파일의 단점을 보완하고, 대량의 데이터 효율적으로 관리, 운영하기 위해 등장한 것이 DBMS이다.
DBMS는
데이터베이스를 잘 관리하고 운영하기 위한 시스템 또는 소프트웨어를 말한다.
이때 SQL은 DBMS에서 사용되는 언어로, 중요한 정보들을 입력, 관리, 추출할 수 있다.
원활한 DBMS 사용을 위해서 SQL문을 잘 이해하는 것이 중요하다.
** DBMS의 분류
DBMS의 유형은 계층형, 망형, 관계형, 객체지향형, 객체관계형 등으로 분류된다.
현재 사용되는 DBMS 중에는 "관계형 DBMS"가 가장 많은 부분을 차지하며,
MySQL 역시 관계형 DBMS에 포함된다.
01. 계층형 DBMS
각 계층이 트리 형태로 이루어진 것이 특징이다.
처음 구성을 완료한 후에 이를 변경하기 어렵고, 다른 구성원을 찾아가는 것이 비효율적인 단점을 가지고 있다.
02. 망형 DBMS
계층형 DBMS의 문제점을 개선하기 위해 등장했으며, 하위에 있는 구성원끼리도 연결된 유연한 구조이다.
프로그래머가 모든 구조를 이해해야만 프로그램 작성이 가능하다는 단점을 가지고 있다.
03. 관계형 DBMS
주로 줄여서 RDBMS 라고 부르고, 대부분의 DBMS가 RDBMS 형태로 사용된다.
RDBMS의 DB는 "테이블(Table)" 이라는 최소단위로 구성되며,
이 테이블은 하나 이상의 "행(row)" 과 "열(column)" 으로 이루어져 있다.
* 테이블(Table) : 행과 열으로 이루어진 2차원 구조
* 행(Row) : 가로
* 열(Column) : 세로
DB >> 테이블 >> 행 + 열 순으로 구성된다고 생각하면 된다.
** DBMS에서 사용되는 언어 : SQL
SQL(Structured Query Language)은
관계형 데이터베이스에서 사용되는 언어이다.
특정 회사에서 이 언어를 만드는 것이 아닌,
국제표준화기구에서 SQL에 대한 표준을 정해서 발표하고 이를 "표준 SQL"이라고 한다.
SQL을 사용하는 DBMS 제작사가 여러 곳이기에
되도록이면 표준 SQL을 준수하되, 각 제품의 특성을 반영한 SQL을 사용한다.
'DB' 카테고리의 다른 글
[ SQL 스터디 - 2주차 ] SQL 프로그래밍 (1) | 2024.02.09 |
---|---|
[ SQL 스터디 - 2주차 ] 두 테이블을 묶는 조인 (0) | 2024.02.07 |
[ SQL 스터디 - 2주차 ] MySQL의 데이터 형식 (1) | 2024.02.07 |
[ SQL 스터디 - 1주차 ] 데이터 모델링의 이해 (0) | 2024.01.31 |