텍스트 검색 결과에 영향을 주지 않고 테이블 재인덱싱

  • 릴리스 버전: Xanadu
  • 업데이트 날짜 2024년 08월 10일
  • 소요 시간: 2분
  • 검색 결과에 부정적인 영향을 주지 않고 텍스트 검색 인덱스를 다시 작성합니다. 인덱스 재작성이 수행되는 동안 테이블에서 텍스트 검색을 계속 수행할 수 있습니다.

    시작하기 전에

    필요한 역할: admin
    주:
    glide.script_processor.admin 시스템 속성 값이 기본값에서 변경된 경우 해당 속성 값으로 지정된 역할이 필요합니다. 이 속성 값과 그 효과에 대한 자세한 내용은 을 참조하십시오 Restrict access to background script [Updated in Security Center 1.3 and 2.0].

    이 태스크 정보

    이 재인덱싱 방법은 재작성이 수행되기 전에 전체 텍스트 검색 색인을 제거하지 않습니다. 텍스트 검색 테이블 인덱스는 한 번에 한 레코드씩 다시 작성하고 대상 테이블 계층 구조만 다시 색인화합니다. 예를 들어, sc_cat_item 테이블을 선택하면 sc_cat_item 테이블만 다시 인덱싱됩니다.

    프로시저

    1. 다음으로 이동 모두 > 시스템 정의 > 스크립트 - 백그라운드.
      주:
      glide.script_processor.admin 시스템 속성 값이 security_admin로 설정되어 있는 경우 이 모듈에 액세스하려면 권한 있는 역할로 상승해야 합니다. 권한 상승에 대한 자세한 내용은 을 참조하십시오 Elevated privilege roles.
    2. 스크립트 실행(서버에서 실행된 JavaScript) 텍스트 필드에 다음 백그라운드 스크립트를 입력하고 그림과 같이 두 인수를 따옴표로 묶어야 합니다.
      new GlideTextIndexEvent ( ).indexUpdate('TABLE_NAME', 'EMAIL_ADDRESS');
      위치:
      • TABLE_NAME 는 다시 인덱싱할 테이블의 이름입니다.
        주:
        지정된 테이블과 해당 하위 테이블만 다시 인덱싱됩니다.
      • EMAIL_ADDRESS 은 테이블 재색인화가 완료될 때 이메일 알림을 받을 주소입니다. 이메일 알림이 없는 경우 null 을 입력합니다.
      예를 들어 kb_knowledge 테이블 텍스트 검색 인덱스를 다시 생성하고 다시 작성이 완료된 후 이메일 알림이 필요하지 않도록 지정하려면 다음 백그라운드 스크립트를 만듭니다.
      new GlideTextIndexEvent ( ).indexUpdate('kb_knowledge', 'null');
      스크립트는 인덱스 처리기가 처리하는 이벤트를 생성하므로 스크립트는 재인덱싱 작업 완료를 차단하지 않고 완료됩니다.
    3. 스크립트 실행을 선택합니다.

    결과

    시스템은 지정된 테이블에 대한 텍스트 검색을 다시 인덱싱합니다. sys_metadata와 같은 큰 테이블의 경우 재인덱싱에 몇 시간이 걸릴 수 있지만 스크립트가 실행되는 동안에도 테이블에서 텍스트 검색을 수행할 수 있습니다.