오라클 14

오라클 아키텍처 - Buffer Cachey, Redo Log Buffer, Undo

Buffer Cache, Redo Log Buffer, Undo 개요SGA의 구성요소인 Shared Pool 에 이어서 주요 구성 요소인 Buffer Cache와 Redo Log Buffer, undo를 정리해본다. Buffer Cache버퍼 캐시는 SGA에서 가장 큰 메모리 영역 중 하나로 디스크에서 읽은 데이터 블록의 복사본을 저장한다. 이 영역은 모든 사용자가 접근 할 수 있는 공유 데이터를 제공하며 한 사용자가 데이터를 요청할 떄 이미 캐시에 존재한다면 디스크 접근 없이 빠르게 데이터를 제공한다. 만약 요청한 데이터의 일부만 캐시에 존재한다면 나머지 데이터만 디스크에서 읽어오는 방식으로 처리한다. 데이터베이스 버퍼 캐시 쓰기 과정은 "더티 블록(Dirty Blocks)"이라 불리는 수정된 불록들을..

DB&SQL 2024.05.13

오라클 데이터 베이스 아키텍처 - Shared Pool

Shared Pool 개요이번 글에서는 SGA(System Global Area)의 핵심 구성 요소중 하나인 Shared Pool에 대해서 자세히 정리해본다. Shared Pool은 모든 세션에 의해 공유되는 여러 하위 메모리 영역을 포함하고 있으며 이 영역들은 데이터 베이스 성능 튜닝에 중요한 역할을 한다. Shared Pool의 구성1. Data Dictionary Cache데이터베이스 객체의 정의와 권한 정보를 저장한다.데이터베이스의 테이블이나 컬럼이 존재하는지, 사용자에게 해당 객체에 대한 접근 권한이 있는지 확인하는데 사용된다.복잡한 데이터베이스 환경에서 수천 개의 세션에서 동시에 발생하는 유사한 쿼리 요청을 효율적으로 처리하기 위해 필수적이다.2. Result Cache반복적으로 실행되는 쿼리..

DB&SQL 2024.05.12

오라클 데이터 아키텍처 - PGA

개요오라클 데이터 아키텍처에서 다루었던 PGA 영역에 대해서 보다 깊이 있는 이해를 위하여 정리한다. PGA는 유저마다 독립적으로 할당되는 메모리 영역으로 다른 유저가 접근할 수 있는 개인적인 공간이다. PGA의 주요 구성 요소PGA는 여러 하위 메모리 영역으로 구성된다. 각 영역은 데이터 베이스와 유저 간의 세션 관리, SQL 쿼리 실행, 커서 관리 등 여러 기능을 수행한다. 주요 영역은 다음과 같이 정리할 수 있다. 1. 세션 메모리 영역(Session Memory Area) : 사용자가 데이터베이스에 접속하면 해당 사용자를 위한 세션이 생성된다.세션 정보, 로그인 정보, 세션 상태 등이 저장된다.불필요한 연결은 추가적인 메모리를 사용하므로 관리가 중요하다.2. 개인 SQL 영역(Private SQL..

DB&SQL 2024.05.11

오라클 SQL튜닝 - 데이터베이스 블록

데이터베이스 블록(Block)이란?데이터베이스 블록은 오라클 데이터베이스에서 데이터를 저장하는 가장 작은 단위이다.  블록은 여러 운영체제블록으로 구성된 논리적 단위로 수백만 또는 수십억개가 될 수 있으며 실제 데이터를 저장한다. 하나의 블록에는 한 테이블 전체 또는 몇 개의 행만 포함될 수 있다. 때로는 여러 테이블이 클러스터링 될 때 다른 테이블의 행들이 하나의 블록에 포함될 수도 있다. 블록의 구조블록은 2KB에서 32KB까지 다양한 크기를 가질 수 있지만 일반적으로 8KB로 설정된다. 이 크기는 데이터베이스 설치 시 DBA에 의해 지정할 수 있다. 블록은 블록 헤더와 행으로 구성된다. 블록 헤더에는 블록 유형 정보, 해당 블록에 포함된 테이블의 정보, 그리고 각 행의 주소가 포함된 행 디렉토리를 ..

DB&SQL 2024.05.09