Babelfish의 파티셔닝 이해 - Amazon Aurora

Babelfish의 파티셔닝 이해

버전 4.3.0부터 Babelfish는 제한된 지원으로 테이블 및 인덱스 파티셔닝을 도입합니다. 다음 섹션에서는 Babelfish에서 파티션 함수 생성, 파티션 체계 정의, 파티션된 테이블 및 인덱스 구현에 대한 세부 정보를 제공합니다.

Babelfish 파티셔닝 소개

  • 파티션 함수:

    • CREATE PARTITION FUNCTION: 분할 열 유형과 각 파티션의 값 범위를 지정하여 테이블 또는 인덱스를 파티셔닝하는 방법을 정의합니다.

    • DROP PARTITION FUNCTION: 기존 파티션 함수를 제거합니다.

  • 파티셔닝 체계:

    • CREATE PARTITION SCHEME: 파티션과 파일 그룹 간의 매핑을 정의합니다.

      참고

      Babelfish에서 파일 그룹은 더미 객체로 취급되며 물리적 스토리지 위치를 나타내지 않습니다.

    • DROP PARTITION SCHEME: 기존 파티션 체계를 제거합니다.

  • 시스템 함수:

    • $PARTITION: 이 시스템 함수는 파티셔닝 열의 지정된 값이 지정된 파티셔닝된 테이블에 속하는 파티션 번호를 반환합니다.

  • 파티셔닝된 테이블 및 인덱스:

    • CREATE TABLE ... ON partition_scheme_name (partition_column_name): 지정된 파티션 체계 및 파티셔닝 열을 기반으로 파티셔닝된 테이블을 생성합니다.

    • CREATE INDEX ... ON partition_scheme_name (partition_column_name): 지정된 파티션 체계 및 파티셔닝 열을 기반으로 파티셔닝된 인덱스를 생성합니다.

  • 메타데이터 파티셔닝을 위한 시스템 뷰:

    파티셔닝과 관련된 메타데이터를 제공하기 위해 다음 시스템 뷰가 추가됩니다.

    • sys.destination_data_spaces

    • sys.partitions

    • sys.partition_functions

    • sys.partition_parameters

    • sys.partition_range_values

    • sys.partition_schemes

제한 사항 및 해결 방법

Babelfish의 파티셔닝에는 다음 제한이 적용됩니다.

  • ALTER PARTITION FUNCTIONALTER PARTITION SCHEME은 아직 지원되지 않습니다.

    참고

    Babelfish에서는 분할 또는 병합 작업이 아직 지원되지 않아 파티션 추가 또는 제거가 불가능하므로 파티션 함수에 모든 파티션을 미리 정의해야 합니다.

  • 계산된 열은 아직 파티셔닝 열로 지원되지 않습니다.

  • INSERT BULKBCP 유틸리티는 파티셔닝된 테이블에 대해 아직 지원되지 않습니다.

  • 파티션 함수의 LEFT 경계 옵션은 아직 지원되지 않습니다.

  • 파티션 함수에는 SQL_VARIANT 데이터 유형이 아직 지원되지 않습니다.

  • TRUNCATE TABLE ... WITH PARTITION은 아직 지원되지 않습니다.

  • ALTER TABLE ... SWITCH PARTITION은 아직 지원되지 않습니다.

  • 파티션 체계 및 파티션 테이블과 다른 파티션 열과 같이 정렬되지 않은 파티션된 인덱스는 지원되지 않습니다.

  • Babelfish 소스에서의 DMS 마이그레이션은 파티셔닝된 테이블의 전체 로드 작업에만 지원됩니다.

  • 다음 구문은 아직 지원되지 않지만 해결 방법이 있습니다.

    • CREATE TABLE 문에 제약 조건 또는 인덱스가 있는 파티션 체계를 사용합니다.

    • ALTER TABLE ... ADD CONSTRAINT ... ON partition_scheme_name (partition_column_name).

    참고

    babelfishpg_tsql.escape_hatch_storage_on_partition 이스케이프 해치를 무시하도록 설정할 수 있습니다. 이렇게 하면 파서가 제약 조건 또는 인덱스와 함께 사용되는 파티션 체계 옵션을 무시할 수 있으며 백엔드는 각 파티션에 대해 개별 제약 조건 또는 인덱스를 생성합니다.