[SQL첫걸음] 1강 데이터 베이스

1강 데이터 베이스

0. 데이터베이스란?

  1. 넓은 의미에서의 데이터베이스: 데이터는 컴퓨터 안의 기록되어 있는 숫자를 의미하며 데이터베이스는 이러한 데이터의 집합.

  2. 통용적인 의미의 데이터베이스: 특정 데이터를 확인하고 싶을 때 간단하게 찾아낼 수 있도록 정리된 형태, 정리된 데이터.

=> 데이터베이스 내의 데이터는 영구적으로 보존되어야 한다. 주기억장치에만 데이터를 저장한다면 전원을 끄는 순간 모든 데이터가 사라지기 때문에 데이터베이스의 데이터는 하드디스크나 SSD와 같은 비휘발성 저장장치에 저장한다.

1. 데이터 베이스 예시

  1. 웹 시스템

인터넷에서 쇼핑을 하거나 뭔가를 예약할 때 웹시스템을 통해 데이터베이스에 접근할 수 있다.( 데이터 센터에 설치된 데이터베이스의 예 )

  1. 계산대

편의점에서 물건을 사면, 계산대(POS 시스템)에서 데이터베이스로 전송된다.

  1. 휴대폰 기기

휴대폰 기기에도 작은 데이터베이스가 있다. 휴대전화의 전화번호부가 좋은 예.

2. DB와 DBMS

3. DBMS가 필요한 이유

생산성

=> DBMS를 사용하면 생산성이 향상된다. 어떤 시스템이든 데이터 검색, 추가, 삭제, 갱신과 같은 처리가 이루어지기 마련인데 이러한 기본 기능을 DBMS가 제공한다.
시스템을 구축할 때 기본 기능부터 구현하는 것은 비용 측면에서 당연히 효율적이지 않다.

기능성

=> DBMS는 DB를 다루는 기능을 많이 제공한다. (1) 복수 유저의 요청에 대응하거나,(2) 대용량의 데이터를 저장하고 고속으로 검색하는 기능을 제공하고, (3) 또 DB 관리 기능을 유저가 확장할 수 있어 유연하게 시스템 개발 가능하다.

신뢰성(Reliability)

=> 대규모 데이터베이스는 많은 요청에 대응할 수 있도록 만들어져 있다. 많은 요청에 대응하기 위해 하드웨어를 여러대로 구성하여 신뢰성을 높였다. 신뢰도가 높다는 것은 예를 들어 한 하드웨어가 고장나더라도 다른 하드웨어로 요청들에 대응가능한 경우가 신뢰도가 높은 경우이다. 동시에 성능(Performance) 향상을 꾀하기도 한다.
실제로 일부 DBMS는 컴퓨터 여러 대를 두고, 소프트웨어를 통해 확장성(Scalability)부하 분산(Load balancing)을 구현한다. 이를 보통 ‘클러스터 구성’ 또는 ‘스케일 아웃’이라 부른다.

정리 : DBMS란 데이터베이스를 관리하는 소프트웨어로, 사용 목적은 생산성 향상과 기능성, 신뢰성 확보에 있다.

4. 데이터베이스를 조작하는 언어 SQL

SQL 명령의 종류

  1. DML
    => Data Manipulation Language의 약자. 데이터베이스에 새롭게 데이터를 추가하거나 삭제하거나 내용을 갱신하는 등, 데이터를 조작할 때 사용한다. SQL의 가장 기본이 되는 명령어 셋(set).

  2. DDL
    => Data Definition Language의 약자로 데이터를 정의하는 명령어. 데이터베이스는 ‘데이터베이스 객체(Object)’ 라는 데이터 그릇을 이용하여 데이터를 관리하는데, 이 같은 객체를 만들거나 삭제하는 명령어이다.

  3. DCL
    => Data Control Language의 약자로 데이터를 제어하는 명령어. DCL에는 트랜잭션을 제어하는 명령과 데이터 접근권한을 제어하는 명령이 포함되어 있다.

정리 : SQL 명령은 DML, DDL, DCL의 세 종류로 나뉜다.