blog

킹베이스 데이터베이스의 KES 스토리지 구조 소개

KES 스토리지 구조 소개\n키워드:\n\n1. KES 논리 구조\nKES 데이터베이스 논리 구조는 데이터베이스 클러스터, 데이터베이스, 스키마, 데이터 오브젝트로 나눌 수 있습니...

Oct 3, 2025 · 5 min. read
シェア

KES 스토리지 구조 소개

키워드:

1. KES논리 구조

  • KES 데이터베이스의 논리적 구조는 데이터베이스 클러스터, 데이터베이스, 스키마, 데이터 객체로 나눌 수 있습니다.
  • 스키마 중 하나는 데이터베이스 객체의 모음이며, 데이터 객체는 데이터베이스 데이터를 직접 참조하는 논리 구조입니다.
  • 기본 사용자 모드: 공개
  • 데이터베이스 개체는 스키마 개체, 비스키마 개체로 구분됩니다.

2. 시스템 초기화

글로벌 데이터베이스 만들기: 글로벌 데이터베이스는 데이터베이스 클러스터와 관련된 정보를 저장하고, 사용자는 글로벌 데이터베이스에 연결할 수 없으며, 글로벌 데이터베이스의 데이터 작업은 DBMS에 의해 자동으로 완료됩니다.

임시 데이터베이스 생성: 임시 데이터베이스는 DBMS가 운영 과정에서 생성한 임시 정보를 저장하는 데 사용되며, 사용자는 임시 데이터베이스에 연결할 수 없고 임시 데이터베이스의 데이터 작업은 DBMS에 의해 자동으로 완료됩니다.

템플릿 데이터베이스 만들기: 템플릿 데이터베이스는 각 데이터베이스에 대한 시스템 테이블 정보를 저장하며 새 데이터베이스를 만들기 위한 템플릿입니다.

Template0: 가장 원시적인 템플릿 라이브러리로, 데이터베이스 연결을 허용하지 않습니다.

Template1: 사용자 지정할 수 있는 다른 데이터베이스에서 사용하는 템플릿 데이터베이스를 만듭니다.

샘플 데이터베이스 만들기

사용자 데이터베이스 생성: 도구에서 사용하는 데이터베이스

킹베이스 스토리지 구조

논리적 스토리지 구조와 물리적 스토리지 구조는 두 부분으로 나뉘어 별도로 관리됩니다.

3.1 논리적 저장소 구조:

모든 운영 체제 및 하드웨어 플랫폼에 대해 내부적으로 데이터를 구성하고 관리하는 방식은 KingbaseES입니다.

KingbaseES는 저장 및 유지 관리를 위해 데이터를 논리적으로 작은 단위로 나눕니다:

포괄적인 데이터베이스

테이블 스페이스: 데이터베이스가 논리적으로 여러 저장 단위로 나뉘어 논리적으로 관련된 구조를 함께 배치합니다.

데이터베이스 개체는 논리적으로는 테이블 스페이스에 저장되고 물리적으로는 테이블 스페이스와 연결된 데이터 파일에 저장됩니다.

테이블스페이스가 여러 데이터 파일에 해당하는 경우, KingbaseES는 객체의 데이터를 모든 데이터 파일에 저장할 수 있으며 동일한 객체의 데이터도 여러 데이터 파일에 분산할 수 있습니다.

여러 테이블 스페이스의 장점:

데이터 사전과 사용자 데이터를 분리하여 사전 객체와 사용자 객체가 동일한 데이터 파일에 저장되어 발생하는 I/O 충돌을 방지하는 기능입니다.

테이블스페이스 데이터 파일을 여러 하드 디스크에 분산하여 물리적 I/O 작업을 균등하게 분산하는 기능

데이터베이스의 일부를 백업하거나 복원하기 위해 테이블 스페이스를 오프라인 또는 온라인 상태로 설정하는 기능

테이블 스페이스를 읽기 전용 상태로 설정하는 기능

섹션

영역: 영역은 킹베이스ES에서 가장 작은 공간 할당 단위입니다. 8개의 연속된 페이지가 하나의 영역을 형성합니다.

블록: 데이터 블록은 KingbaseES 관리 저장 공간의 가장 기본적인 단위로, 데이터베이스 작업은 블록 단위로 수행되며, 데이터 파일의 데이터는 블록 단위로 구성됩니다.

데이터 페이지에는 두 가지 유형이 있습니다:

데이터 페이지는 객체의 데이터를 저장하는 데 사용됩니다.

제어 페이지는 이러한 데이터 페이지를 관리하는 데 사용됩니다. 공간을 구성하고 할당하는 방법

GAM은 영역 할당을 기록하는 데 사용됩니다. GAM 페이지에서 1비트는 영역 할당을 나타내는 데 사용됩니다.

PFS 페이지는 데이터 파일에서 페이지의 공간 사용량을 기록하는 데 사용되며, 파일의 각 페이지에 대해 세 가지 가능한 상태가 있습니다:

PFS_FREE: 페이지가 물리적으로 할당되었지만 개체 또는 제어 페이지에 할당되지 않았습니다;

PFS_DATA: 이 객체는 데이터 페이지로 사용하기 위해 할당됩니다;

PFS_CTRL: 이 객체는 제어 페이지로 사용하기 위해 할당됩니다.

IAM(인덱스 할당 맵) 페이지는 해당 페이지가 속한 데이터베이스 오브젝트에 할당된 범위 내의 익스텐트를 추적하는 데 사용됩니다. 각 IAM 페이지는 데이터베이스 오브젝트에 속하지만 데이터베이스 오브젝트에는 여러 개의 IAM 페이지가 있을 수 있습니다. GAM 페이지 및 PFS 페이지와 달리 IAM 페이지는 위치가 고정되어 있지 않습니다. sys_class의 relfilenode는 이 개체에 대한 첫 번째 IAM 페이지의 오프셋을 가리킵니다. 테이블에 액세스할 때 relfilenode는 해당 IAM 페이지를 찾는 데 사용되며, 그 다음 IAM 페이지는 해당 데이터를 찾는 데 사용됩니다. 데이터베이스 개체가 생성되면 IAM이 할당되고, 데이터가 삽입되면 영역 단위로 공간이 할당되며, 데이터베이스 개체가 삭제되면 IAM의 레코드에 따라 데이터베이스 개체가 차지한 공간이 회수됩니다.

3.2 물리적 스토리지 구조: 운영 체제에서 데이터가 구성 및 관리되는 방식

데이터 파일

로그 파일:

KingbaseES는 정전 등의 장애로 인한 데이터 손실을 방지하기 위해 로그 파일을 활용합니다.

KingbaseES는 데이터베이스의 내용을 수정하는 각 작업에 대해 자동으로 로그 항목을 생성하고 이를 로그 파일에 기록합니다.

시스템에는 기본적으로 3개의 로그 파일이 있으며, 기본 이름은 REDOLOG0.ldf, REDOLOG1.ldf, REDOLOG02.ldf입니다.

KingbaseES는 라운드 로빈 방식으로 재실행 로그 파일을 사용합니다.

로그 파일을 덮어쓰는 경우, KingbaseES는 백그라운드 프로세스에 의해 자동으로 수행되는 "아카이빙"이라는 운영 체제 파일을 복사하여 기록된 로그 파일을 지정된 위치에 저장할 수 있습니다.

제어 파일:

데이터베이스 클러스터의 상태 정보를 기록하는 데 사용됩니다. 제어 파일은 시스템에 의해 자동으로 유지 관리되며, KingbaseES는 사용자가 제어 파일을 추가, 삭제 또는 수정할 수 없도록 합니다.

매개변수 파일:

KingbaseES의 시스템 파라미터 구성 파일은 서버 데이터 디렉토리에 있는 kingbase.conf입니다. 사용자는 파라미터 설정을 수정하여 시스템 런타임 구성을 조정하고 시스템 성능을 최적화할 수 있습니다.

매개변수를 설정하는 방식에 따라 시스템 매개변수는 다음과 같이 나눌 수 있습니다.

고정 레벨

시스템 수준

글로벌 수준

세션 수준

파라미터 파일의 예시입니다:

Kingbase.conf 데이터베이스 구성 파일 ,

Sys_hba.conf 호스트 기반 인증 구성 파일

Sys_ident.conf ID 기반 인증 구성 파일

매개변수 설정:

시스템 설정 변경: 시스템 수준 및 전역 매개변수를 수정하고 시스템 구성 파일 kingbase.conf의 매개변수 설정을 수정합니다. 이 명령을 호출하는 사용자에게는 수퍼유저 권한이 있어야 합니다. 시스템 구성 파일 kingbase.conf를 수정하고 시스템 신호를 통해 구성 파일을 다시 로드합니다.

데이터베이스 세트 변경: 데이터베이스의 기본 매개변수를 수정합니다.

이 데이터베이스에서 새 세션이 시작될 때마다 이 매개변수의 기본값은 명령에 설정된 값을 사용하며 kingbase.conf 또는 KingbaseES 시작 명령줄의 설정을 재정의합니다.

이 명령을 호출하는 사용자는 수퍼유저 권한이 있거나 이 데이터베이스의 소유자여야 합니다.

set: SET 명령으로 설정한 시스템 매개변수는 현재 연결에 대해서만 유효합니다.

시스템을 초기화할 때 데이터 디렉터리, 로그 디렉터리를 지정해야 합니다.

Read next

Maven007-Maven 프로젝트 상속 및 집계 관계

Maven007-Maven 프로젝트 상속과 집계 관계 [목차] I. Maven 프로젝트 상속 관계 1. 상속의 개념 Maven은 프로젝트 간 상속 관계를 지원하여 한 프로젝트가 다른 프로젝트의 부모 역할을 할 수 있습니다. 이 상속

Oct 3, 2025 · 5 min read