In-Memory Column Store의 고가용성

In-Memory Column Store의 고가용성에 대하여 설명합니다.

TAC 환경에서의 In-Memory Column Store 기능

Tibero Active Cluster(이하 TAC) 환경에서 IMCS 기능을 사용할 경우, 실행 중인 모든 인스턴스는 자신만 의 In-Memory(IM) Column Store 공간을 가진다. 기본적으로 TAC 환경에서 오브젝트에 대한 populate를 수행할 경우 해당 오브젝트의 데이터는 각 노드에 분산되어 저장됩니다.

Tibero에서 모든 TAC 노드의 INMEMORY_SIZE 파라미터의 값은 동일해야합니다.

In-Memory Distribution

In-Memory 오브젝트에 지정하는 DISTRIBUTE 옵션은 오브젝트의 데이터가 각 TAC 노드에 어떻게 분산 되어 저장될지를 결정합니다.

다음은 DISTRIBUTE 옵션에 대한 설명입니다.

옵션
설명

AUTO

Tibero 내부 규칙에 따라 데이터를 각 노드별로 균등하게 분산시킴 (기본값)

By Rowid Range

  • 데이터를 rowid의 range로 나누어 각 노드 별로 분산시킴

  • 현재 Tibero 에서 미지원 상태

By Partition

  • 데이터를 파티션 별로 나누어 각 노드별로 분산시킴

  • 현재 Tibero에서 미지원 상태

By Subpartition

  • 데이터를 서브파티션 별로 나누어 각 노드 별로 분산시킴

  • 현재 Tibero 에서 미지원 상태

In-Memory Duplication

In-Memory 오브젝트에 지정하는 DUPLICATE 옵션은 각 TAC 노드가 데이터의 복제본을 저장 여부 및 방식을 결정합니다.

다음은 DUPLICATE 옵션에 대한 설명입니다.

옵션
설명

NO DUPLICATE

In-Memory 데이터의 복제본이 존재하지 않음 (기본값)

DUPLICATE

  • 각 In-Memory 데이터는 하나의 복제본이 존재함

  • duplicate 옵션이 지 정된 In-Memory 오브젝트에 대한 populate 수행 시 2개의 TAC 노드에 같은 데이터가 저장됨

  • 현재 Tibero에서 미지원 상태

DUPLICATE ALL

  • 각 In-Memory 데이터는 노드 갯수만큼의 복제본이 존재함

  • 모든 인스 턴스는 In-Memory 오브젝트의 복사본을 자신의 In-Memory Column Store 공간에 저장하고 있음

TAC 환경에서의 Parallelism

기본적으로 TAC 환경에서 In-Memory 데이터는 각 TAC 노드 별로 분산되어 저장되므로 In-Memory 데이 터에 대한 쿼리 수행은 병렬적으로 수행됩니다. 예를 들어, 3-node TAC 환경에서 populate가 완료된 테이블 에 대한 In-Memory scan을 수행하면, 각 TAC 노드에서 저장하고 있는 해당 테이블의 데이터를 읽어서 전 송해주게 됩니다.

즉, TAC 환경에서 In-Memory scan을 수행하면 노드 갯수만큼의 DOP(Degree Of Parallelism) 를 가지고 병렬적으로 스캔을 수행합니다.

Last updated