본문 바로가기
데이터베이스

데이터베이스 아키텍처 구성 요소 및 작동 원리

by 데이널 2023. 11. 3.

이번 포스팅에서는 데이터베이스의 일반적인 구성 요소를 살펴보겠습니다. 그리고 우리가 SQL 쿼리를 수행했을 때 어떤 방식으로 동작하는지에 대해도 알아보도록 하겠습니다. 

 

 

데이터베이스 구성 요소

데이터베이스 아키텍처는 DBMS의 물리적인 구성과 동작하는 방식을 말합니다. 데이터베이스 구성요소는 메모리, 프로세스, 데이터베이스(파일)로 구분할 수 있습니다. 

1. 메모리

  • 데이터 처리를 더 빠르게 작업하기 위한 공간. 컴퓨터에서도 프로그램을 실행하면 메모리 공간에서 작하는 것과 같은 원리로 DB에서도 메모리에서 작업을 합니다. 

2. 프로세스

  • 데이터베이스에서 메모리, CPU, 데이터, 로그(Log) 등 컨트롤하기 위한 프로세스를 말함. 오라클 기준으로 8개 정도의 프로세스가 존재합니다. 예를 들어, 데이터파일에 데이터를 기록하는 프로세서인 Database Writer가 있습니다. 줄여서 DBWn이라고 합니다. 또 Log를 기록하는 Log Writer는 LGWR이라고 합니다. 

3. 데이터베이스(파일)

  • 데이터를 일관성 있게 보관하고 관리하는 공간. 실제 대부분의 용량을 차지하는 부분입니다. 저장할 데이터를 넣어두는 파일이라고 생각하면 됩니다. 

 

데이터베이스 아키텍처
데이터베이스 아키텍처

 

데이터베이스 작동 원리

1. 데이터 조회(select)

  1. SQL 실행 : 사용자가 원하는 쿼리를 수행
  2. SQL 구문 분석 : SQL을 파싱해서 어떤 내용인지 분석
  3. 메모리 확인 : 우선 데이터가 메모리에 있는지 확인
  4. Datafile 확인 : 메모리에 없는 데이터의 경우 Datafile에서 데이터를 찾음
  5. 데이터 가져오기 : data를 가지고 와서 출력

2. 데이터 변경(update 등)

  1. SQL 실행 : 사용자가 원하는 쿼리를 수행
  2. SQL 구문 분석 : SQL을 파싱해서 어떤 내용인지 분석
  3. Datafile 기록 : 데이터의 변경 사항에 대해 Datafile에서 내용을 변경함
  4. Redo Log 기록 : Redo Log에 변경된 내용에 대해 기록함
  5. 결과 메시지 :  변경에 대한 결과 메시지 출력 

 

데이터베이스 작동 원리
데이터베이스 작동 원리