zkvn99

[데이터베이스] 데이터베이스 기본 개념 본문

Computer Science/데이터베이스

[데이터베이스] 데이터베이스 기본 개념

zkvn1103 2023. 9. 6. 20:34

데이터베이스는 구조화된 정보나 데이터의 모음

이러한 데이터는 일반적으로 컴퓨터 시스템에 저장되며, 데이터베이스 관리 시스템(DBMS)을 통해 관리되고,

데이터베이스는 조직화된 방식으로 데이터를 저장하고 검색하며, 여러 애플리케이션 혹은 시스템에서 공유할 수 있음

연결된 애플리케이션과 데이터와 DBMS를 하나로 묶어 데이터베이스 시스템이라고 하며 줄여서 데이터베이스라고도 함

 

데이터베이스 관리 시스템(DBMS)은 데이터베이스를 관리하고 조작하는 소프트웨어로 데이터를 추가, 수정, 삭제 및 검색할 수 있으며, 데이터의 무결성과 보안을 유지할 수 있음 (ex. Oracle, MySQL, PostgreSQL)

 

그렇다면 데이터베이스가 왜 필요할까?

데이터베이스는 여러가지 장점을 가지고 있는데 그 중 몇가지만 살펴보자면,

  1. 데이터 일관성 : 여러 사용자나 애플리케이션이 동시에 데이터에 접근하더라도 데이터베이스는 일관성을 유지하고 데이터의 무결성을 보호함 (트랜잭션을 통해 보장)
  2. 데이터 공유와 동시 접근 : 데이터베이스는 기본적으로 공유 데이터인데, DBMS는 다중 사용자 환경에서 데이터 공유와 동시 접근을 관리, 동시에 데이터에 접근하더라도 트랜잭션 관리를 통해 충돌을 방지하고 데이터 일관성을 보장함
  3. 데이터 중복 최소화 : 데이터베이스는 중복 데이터를 최소화하고 중복 데이터 문제를 해결하는 제약조건 메커니즘을 제공해서 데이터 일관성을 유지하고 데이터의 정확성을 보장함
  4. 데이터 관리의 효율성 :  데이터베이스 시스템은 데이터를 구조화하고 관리하는데 효율적이며, 데이터의 유지보수 및 관리를 단순화함

이외에도 보안, 성능 최적화(인덱스, 캐싱) 등 다양한 장점들이 있는데 결국 데이터의 일관성과 안정성을 보장하고,  다중 사용자 환경에서도 데이터의 정확성과 신뢰성을 유지하는 핵심 기능들이다.

 

데이터베이스의 언어 종류

데이터베이스와 소통하는 언어를 데이터베이스 언어라고 하는데 가장 많이 사용되는 것이

SQL(Structure Query Language)로 종류도 크게 4가지로 나뉜다

 

DDL(Data Definition Language) : 데이터 정의어 (CREATE, ALTER, DROP, RENAME, TRUNCATE)

테이블과 같은 데이터 구조를 정의하는데 사용하는 명령어들로 구조와 관련된 명령어들

 

DML(Data Manipulation Language) : 데이터 조작어 (SELECT, INSERT, UPDATE, DELETE)

데이터베이스 테이블에 들어 있는 데이터에 변형을 가하는 명령어들

 

DCL(Data Control Language) : 데이터 제어어 (GRANT, REVOKE)

데이터베이스에 접근하고 객체들을 사용하도록 권한을 주고 회수하는 명령어들 

 

TCL(Transaction Control Language) : 트랜잭션 제어어 (COMMIT, ROLLBACK, SAVEPOINT)

논리적인 작업의 단위, DML에 의해 조작된 결과를 작업단위 별로 제어하는 명령어