이번 포스팅에서는 데이터베이스의 일반적인 구성 요소를 살펴보겠습니다. 그리고 우리가 SQL 쿼리를 수행했을 때 어떤 방식으로 동작하는지에 대해도 알아보도록 하겠습니다.
데이터베이스 구성 요소
데이터베이스 아키텍처는 DBMS의 물리적인 구성과 동작하는 방식을 말합니다. 데이터베이스 구성요소는 메모리, 프로세스, 데이터베이스(파일)로 구분할 수 있습니다.
1. 메모리
- 데이터 처리를 더 빠르게 작업하기 위한 공간. 컴퓨터에서도 프로그램을 실행하면 메모리 공간에서 작하는 것과 같은 원리로 DB에서도 메모리에서 작업을 합니다.
2. 프로세스
- 데이터베이스에서 메모리, CPU, 데이터, 로그(Log) 등 컨트롤하기 위한 프로세스를 말함. 오라클 기준으로 8개 정도의 프로세스가 존재합니다. 예를 들어, 데이터파일에 데이터를 기록하는 프로세서인 Database Writer가 있습니다. 줄여서 DBWn이라고 합니다. 또 Log를 기록하는 Log Writer는 LGWR이라고 합니다.
3. 데이터베이스(파일)
- 데이터를 일관성 있게 보관하고 관리하는 공간. 실제 대부분의 용량을 차지하는 부분입니다. 저장할 데이터를 넣어두는 파일이라고 생각하면 됩니다.
데이터베이스 작동 원리
1. 데이터 조회(select)
- SQL 실행 : 사용자가 원하는 쿼리를 수행
- SQL 구문 분석 : SQL을 파싱해서 어떤 내용인지 분석
- 메모리 확인 : 우선 데이터가 메모리에 있는지 확인
- Datafile 확인 : 메모리에 없는 데이터의 경우 Datafile에서 데이터를 찾음
- 데이터 가져오기 : data를 가지고 와서 출력
2. 데이터 변경(update 등)
- SQL 실행 : 사용자가 원하는 쿼리를 수행
- SQL 구문 분석 : SQL을 파싱해서 어떤 내용인지 분석
- Datafile 기록 : 데이터의 변경 사항에 대해 Datafile에서 내용을 변경함
- Redo Log 기록 : Redo Log에 변경된 내용에 대해 기록함
- 결과 메시지 : 변경에 대한 결과 메시지 출력
'데이터베이스' 카테고리의 다른 글
오라클(Oracle) 관계형 DB 특징, MS SQL Server (0) | 2023.11.07 |
---|---|
데이터베이스(Database) 종류, DB 역사는 어떻게 달라졌나? (1) | 2023.11.06 |
데이터베이스(Database)는 어떤 특징이 있는가? (0) | 2023.11.02 |
데이터 표준화 - 표준 코드, 코드 유형, 코드 에러 사례 (0) | 2023.10.31 |
데이터 표준화 - 표준단어, 도메인, 표준용어 (0) | 2023.10.30 |