오래되었거나 원치 않는 기록 삭제

  • 릴리스 버전: Xanadu
  • 업데이트 날짜 2024년 08월 01일
  • 읽기2분
  • 테이블에서 오래되었거나 만료되었거나 원치 않는 기록을 자동으로 삭제합니다.

    작업 [task] 테이블과 같은 핵심 테이블에서 오래된 비활성 기록을 삭제하고 테이블 정리 규칙을 사용하여 생성 Now Platform 한 사용자 지정 테이블의 기록을 삭제합니다.

    기본적으로 기본 시스템에는 몇 가지 테이블 정리 규칙이 포함되어 있습니다.
    • 필터 탐색기에 sys_auto_flush.list 를 입력하여 자동 플러시 [sys_auto_flush] 테이블의 모든 테이블 클리너 규칙 목록을 볼 수 있습니다. 자동 플러시 테이블에는 기본 시스템 테이블과 해당 기록 수명에 대한 규칙이 표시됩니다.
    • 다음으로 이동하여 단일 테이블에 정의된 테이블 클리너 규칙 목록을 볼 수 있습니다. 모두 > 데이터 관리 정책 을 클릭하고 테이블에 대한 데이터 관리 정책 기록(있는 경우)을 선택합니다. 시스템은 보관 규칙 또는 테이블 클리너 규칙이 있는 모든 테이블에 대한 데이터 관리 정책 기록을 자동으로 생성합니다.

    느린 규칙 처리

    테이블 클리너 예약 작업은 기본적으로 시간당 한 번씩 실행됩니다. 테이블 클리너 작업이 실행되면 각 테이블 클리너 규칙은 프로세스의 일부로 여러 쿼리를 실행합니다. 규칙의 일치 필드 또는 조건의 상당 부분에 인덱스가 없는 경우 쿼리가 많은 양의 데이터에서 비효율적으로 실행되기 때문에 규칙 처리 속도가 느려질 수 있습니다.

    테이블 클리너 규칙에 완료하는 데 30초 이상 걸리는 쿼리가 있는 경우 전체 테이블 클리너 작업이 중지됩니다. 기본적으로 테이블 클리너는 2일 동안 기다렸다가 테이블 클리너 작업에 해당 규칙을 다시 포함하므로 그 동안 중단 없이 테이블 클리너 작업을 실행할 수 있습니다. 시스템 속성을 추가하여 대기 기간을 구성할 수 있습니다. 테이블 클리너 속성 문서를 참조하십시오.

    테이블 정리 비활성화

    테이블의 딕셔너리 기록에 테이블 클리너 사용 안 함 속성을 추가하여 관리자가 테이블 정리 규칙을 만들거나 특정 테이블에서 테이블 클리너를 실행하지 못하도록 할 수 있습니다. 일부 내부 시스템 테이블에는 테이블 클리너 사용 안 함 속성이 기본적으로 추가되었습니다.

    테이블 정리 제한 사항

    • 테이블 교대 또는 테이블 확장으로 구성된 테이블에는 테이블 클리너 규칙이 지원되지 않습니다. 인스턴스의 일부 테이블에는 테이블 교대 또는 테이블 확장이 활성화되기 전에 설정된 레거시 테이블 클리너 규칙이 있을 수 있습니다. 이러한 레거시 규칙은 무시해도 됩니다.
    • 성능은 테이블의 크기와 지정한 조건에 따라 달라집니다. 예를 들어 큰 테이블에서 인덱스 없이 사용자 지정 열을 사용하면 성능이 심각하게 저하됩니다. 성능은 삭제할 행 수에 따라서도 달라집니다.
    • 테이블 클리너는 단일 테이블에서 기록을 삭제하는 데 최대 20분을 소비합니다. 쿼리 속도가 느리면 20분 동안 삭제되는 기록의 양이 적을 수 있습니다.
    • 테이블 클리너는 DBDelete.setWorkflow()를 호출하지 않습니다. 즉 , DBDelete 객체는 workflow=false (false는 Java Boolean의 기본값)로 실행됩니다. 결과적으로 기록 삭제 시 트리거할 것으로 예상한 비즈니스 규칙, 워크플로우 및 플로우는 테이블 클리너 컨텍스트에서 트리거되지 않습니다. 이러한 유형의 기능에 의존하는 비즈니스 논리가 있는 경우 이 점을 고려하는 것이 중요합니다.