테이블 교대

  • 릴리스 버전: Australia
  • 업데이트 날짜 2026년 03월 12일
  • 소요 시간: 1분
  • 테이블을 회전하여 성능을 최적화하고 데이터 수명주기를 관리하면 시스템 효율성을 유지하면서 오래된 데이터를 체계적으로 보관할 수 있습니다.

    테이블 교대는 인스턴스 성능을 유지하고 증가하는 데이터 세트 쿼리와 관련된 위험을 방지합니다. 이 기능은 sys_created_on 필드를 사용하여 데이터 세트를 날짜를 기준으로 여러 테이블로 구분합니다.

    기능
    관리자는 프로세스의 시간 매개변수(기간)와 프로세스 내의 테이블 수(교대)를 지정합니다. 교대가 교대의 마지막 테이블을 쓴 후 교대가 교대의 첫 번째 테이블을 덮어씁니다.
    예제:
    • 2015/12/10 08:49에서 2015/12/09 07/34 사이에 생성된 쿼리 기록에서 topic=SystemCommand는 단일 테이블의 SQL 쿼리로 변환됩니다. sys_created_on의 절은 단일 샤드를 대상으로 하기 때문입니다.
    • 2015/12/10 08:49 및 2015/12/09 07/34 사이에 업데이트된 쿼리 기록(여기서 topic=SystemCommand이거나 날짜 범위가 없는 경우)은 모든 샤드를 대상으로 해야 하므로 모든 샤드에 대한 유니언 쿼리로 변환됩니다.
    장점
    • 현재 데이터에 영향을 주지 않고 이전 데이터를 삭제할 수 있습니다(예: 테이블 삭제 또는 잘라내기 위해).
    • 테이블이 적당한 크기까지만 성장하도록 합니다.
    • 쿼리에 대한 날짜를 알고 있는 경우 데이터 작업 집합을 줄입니다.
    단점
    • 테이블 교대 날짜를 사용하지 않는 쿼리( 예: sys_created_on 필드 사용)는 비효율적인 유니언 쿼리를 여러 테이블에 걸쳐 있는 시간 범위를 쿼리하도록 강제 적용하며 하위 테이블 수가 많은 경우 속도가 매우 느려질 수 있습니다.

      성능을 개선하려면 쿼리에 생성된 날짜 창을 포함하는 것이 좋습니다.

    • 사용자는 회전된 테이블로 닷워킹할 수 없습니다.

    순차적으로 작성된 테이블이나 삽입 전용 테이블에 대해 테이블 교대를 사용할 수 있습니다. sys_import 테이블 또는 작업[task] 테이블을 확장하는 테이블에는 테이블 교대를 사용할 수 없습니다.