DB2-테이블 스페이스

이 장에서는 테이블 스페이스에 대해 자세히 설명합니다.

소개

테이블 스페이스는 스토리지 구조이며 테이블, 인덱스, 대형 오브젝트 및 긴 데이터를 포함합니다. 데이터베이스의 데이터를 시스템에 저장된 데이터와 관련된 논리적 저장소 그룹으로 구성하는 데 사용할 수 있습니다. 이 테이블 스페이스는 데이터베이스 파티션 그룹에 저장됩니다.

데이터베이스 테이블 스페이스의 이점

테이블 스페이스는 다음과 같이 다양한 방식으로 데이터베이스에서 유용합니다.

Recoverability: 테이블 스페이스는 백업 및 복원 작업을보다 편리하게 만듭니다. 단일 명령을 사용하여 테이블 스페이스의 모든 데이터베이스 개체를 백업하거나 복원 할 수 있습니다.

Automatic storage Management: 데이터베이스 관리자는 필요에 따라 컨테이너를 만들고 확장합니다.

Memory utilization: 단일 버퍼 풀이 여러 테이블 스페이스를 관리 할 수 ​​있습니다. 임시 테이블 스페이스를 자체 버퍼 풀에 할당하여 정렬 또는 조인과 같은 활동의 성능을 높일 수 있습니다.

컨테이너

테이블 스페이스에는 하나 이상의 컨테이너가 포함됩니다. 컨테이너는 디렉토리 이름, 장치 이름 또는 파일 이름이 될 수 있습니다. 데이터베이스에서 단일 테이블 스페이스는 동일한 물리적 저장 장치에 여러 컨테이너를 가질 수 있습니다. 자동 스토리지 테이블 스페이스 옵션을 사용하여 테이블 스페이스를 생성하면 컨테이너 생성 및 관리가 데이터베이스 관리자에 의해 자동으로 처리됩니다. 자동 저장 테이블 스페이스 옵션으로 생성되지 않은 경우 컨테이너를 직접 정의하고 관리해야합니다.

기본 테이블 스페이스

새 데이터베이스를 작성할 때 데이터베이스 관리자는 데이터베이스에 대한 일부 기본 테이블 스페이스를 작성합니다. 이 테이블 스페이스는 사용자 및 임시 데이터를위한 스토리지로 사용됩니다. 각 데이터베이스는 다음과 같이 최소한 3 개의 테이블 스페이스를 포함해야합니다.

  1. 카탈로그 테이블 스페이스
  2. 사용자 테이블 스페이스
  3. 임시 테이블 스페이스

Catalog tablespace: 데이터베이스에 대한 시스템 카탈로그 테이블을 포함합니다. SYSCATSPACE로 이름이 지정되며 삭제할 수 없습니다.

User tablespace:이 테이블 스페이스는 사용자 정의 테이블을 포함합니다. 데이터베이스에는 USERSPACE1이라는 하나의 기본 사용자 테이블 스페이스가 있습니다. 테이블을 생성 할 때 테이블에 대해 사용자 정의 테이블 스페이스를 지정하지 않으면 데이터베이스 관리자가 기본 사용자 테이블 스페이스를 선택합니다.

Temporary tablespace: 임시 테이블 스페이스에는 임시 테이블 데이터가 포함됩니다. 이 테이블 스페이스에는 시스템 임시 테이블 스페이스 또는 사용자 임시 테이블 스페이스가 포함됩니다.

시스템 임시 테이블 스페이스는 정렬 또는 결합과 같은 작업을 수행하는 동안 데이터베이스 관리자에 필요한 임시 데이터를 보유합니다. 데이터베이스에는 하나 이상의 시스템 임시 테이블 스페이스가 있어야하며 이름은 TEMPSPACE1입니다. 데이터베이스 생성시 생성됩니다. 사용자 임시 테이블 스페이스는 테이블의 임시 데이터를 보유합니다. DECLARE GLOBAL TEMPORARY TABLE 또는 CREATE GLOBAL TEMPORARY TABLE 문으로 생성됩니다. 이 임시 테이블 스페이스는 데이터베이스 생성시 기본적으로 생성되지 않습니다.

Tablespaces and storage management:

테이블 스페이스는 사용 방법에 따라 다른 방법으로 설정할 수 있습니다. 운영 체제를 설정하여 테이블 스페이스 할당을 관리하거나 데이터베이스 관리자가 공간을 할당하도록하거나 데이터에 대한 테이블 스페이스 자동 할당을 선택할 수 있습니다.

다음 세 가지 유형의 관리 공간을 사용할 수 있습니다.

System Managed Space (SMS): 운영 체제의 파일 시스템 관리자가 테이블이 저장된 공간을 할당하고 관리합니다. 저장 공간은 요청시 할당됩니다. 이 모델은 데이터베이스 개체를 나타내는 파일로 구성됩니다. 이 테이블 스페이스 유형은 사용자 정의 테이블 스페이스에 대해 버전 10.1에서 더 이상 사용되지 않으며 카탈로그 및 임시 테이블 스페이스에 대해서도 더 이상 사용되지 않습니다.

Database Managed Space (DMS): 데이터베이스 서버는 저장 공간을 제어합니다. 스토리지 공간은 DMS 테이블 공간을 작성할 때 지정하는 컨테이너 정의에 따라 파일 시스템에 미리 할당됩니다. 사용자 정의 테이블 스페이스의 경우 버전 10.1 수정 팩 1에서 더 이상 사용되지 않지만 시스템 테이블 스페이스 및 임시 테이블 스페이스에 대해서는 더 이상 사용되지 않습니다.

Automatic Storage Tablespace: 데이터베이스 서버를 자동으로 관리 할 수 ​​있습니다. 데이터베이스 서버는 데이터베이스의 데이터에 따라 컨테이너를 만들고 확장합니다. 자동 스토리지 관리를 사용하면 컨테이너 정의를 제공 할 필요가 없습니다. 데이터베이스 서버는 데이터베이스에 할당 된 스토리지를 사용하기 위해 컨테이너를 만들고 확장합니다. 스토리지 그룹에 스토리지 공간을 추가하면 기존 컨테이너가 최대 용량에 도달하면 새 컨테이너가 자동으로 생성됩니다. 새로 추가 된 스토리지를 즉시 사용하려는 경우 테이블 스페이스를 재조정 할 수 있습니다.

Page, table and tablespace size:

임시 DMS 및 자동 스토리지 테이블 스페이스, 데이터베이스에 대해 선택한 페이지 크기에 따라 테이블 스페이스 크기에 대한 최대 제한이 결정됩니다. 테이블 SMS 및 임시 자동 스토리지 테이블 스페이스의 경우 페이지 크기는 테이블 자체의 크기를 제한합니다. 페이지 크기는 4kb, 8kb, 16kb 또는 32kb가 될 수 있습니다.

테이블 스페이스 유형 4K 페이지 크기 제한 8K 페이지 크기 제한 16K 페이지 크기 제한 32K 페이지 크기 제한
DMS, 비 임시 자동 저장 테이블 스페이스 일반 64G 128G 256G 512G
DMS, 임시 DMS 및 비 임시 자동 스토리지 테이블 스페이스가 큼 1892G 16384G 32768G 65536G