카테고리:

Information Schema , 테이블 함수

SEARCH_OPTIMIZATION_HISTORY

이 테이블 함수는 지정된 날짜 범위 내에서 지정된 테이블에 대한 검색 최적화 서비스 유지 관리 기록을 쿼리하는 데 사용됩니다. 함수에서 반환된 정보에는 검색 최적화 유지 관리 작업이 발생할 때마다 사용된 테이블 이름과 크레딧이 포함됩니다.

구문

SEARCH_OPTIMIZATION_HISTORY(
      [ DATE_RANGE_START => <constant_expr> ]
      [ , DATE_RANGE_END => <constant_expr> ]
      [ , TABLE_NAME => '<string>' ] )
Copy

인자

모든 인자는 선택 사항입니다.

DATE_RANGE_START => constant_expr , . DATE_RANGE_END => constant_expr

기록을 표시할 날짜/시간 범위입니다. 예를 들어 시작 날짜를 2019-04-03으로 지정하고 종료 날짜를 2019-04-05로 지정하면 4월 3일, 4월 4일, 4월 5일에 대한 데이터를 가져옵니다. (엔드포인트가 포함됩니다.)

  • 시작 날짜와 종료 날짜가 모두 지정되지 않은 경우, 기본값은 지난 12시간입니다.

  • 종료 날짜는 지정하지 않았지만, 시작 날짜는 지정하는 경우, 자정의 CURRENT_DATE 가 범위의 끝으로 사용됩니다.

  • 시작 날짜는 지정하지 않았지만, 종료 날짜는 지정하는 경우, 범위는 DATE_RANGE_END 시작 12시간 전에 시작됩니다.

TABLE_NAME => string

테이블 이름입니다. 지정된 경우, 지정된 테이블에 대한 기록만 표시합니다. 이름에는 스키마 이름과 데이터베이스 이름이 포함될 수 있습니다.

이름을 지정하지 않는 경우, 지정된 시간 범위 내에서 유지 관리가 발생한 검색 최적화가 있는 각 테이블에 대한 데이터가 결과에 포함됩니다.

사용법 노트

  • ACCOUNTADMIN 역할에 대한 결과 또는 MONITOR USAGE 전역 권한이 명시적으로 부여된 역할에 대한 결과만 반환합니다.

    참고

    MONITOR USAGE 권한이 있는 역할은 오브젝트별 크레딧 사용량을 볼 수 있지만, 오브젝트 이름은 볼 수 없습니다. 이 함수에서 오브젝트 이름을 반환하려면 오브젝트에 대한 SELECT 권한도 역할에 부여되어야 합니다. 역할에 오브젝트 이름을 볼 수 있는 충분한 권한이 없는 경우, 오브젝트 이름이 《unknown_#》와 같은 대체 이름으로 표시될 수 있으며, 여기서 《#》는 한 자리 이상의 숫자를 나타냅니다.

  • Information Schema 테이블 함수를 호출할 때 세션에는 사용 중인 INFORMATION_SCHEMA 스키마가 있거나 또는 함수 이름이 정규화되어야 합니다. 자세한 내용은 Snowflake Information Schema 섹션을 참조하십시오.

  • 기록은 1시간 단위로 표시됩니다.

출력

이 함수는 다음 열을 반환합니다.

열 이름

데이터 타입

설명

START_TIME

TIMESTAMP_LTZ

지정된 시간 범위의 시작입니다.

END_TIME

TIMESTAMP_LTZ

지정된 시간 범위의 끝입니다.

CREDITS_USED

TEXT

START_TIME 및 END_TIME 기간 동안 검색 색인 유지 관리를 위해 청구된 크레딧 수입니다.

TABLE_NAME

TEXT

테이블의 이름입니다.

계정에 대한 1시간 범위의 기록을 검색합니다.

select *
  from table(information_schema.search_optimization_history(
    date_range_start=>'2019-05-22 19:00:00.000',
    date_range_end=>'2019-05-22 20:00:00.000'));
Copy

다음은 샘플 출력입니다.

+-------------------------------+-------------------------------+--------------+----------------------------------+
| START_TIME                    | END_TIME                      | CREDITS_USED | TABLE_NAME                       |
|-------------------------------+-------------------------------+--------------+----------------------------------|
| 2019-05-22 19:00:00.000 -0700 | 2019-05-22 20:00:00.000 -0700 |  0.223276651 | TEST_DB.TEST_SCHEMA.TEST_TABLE_1 |
+-------------------------------+-------------------------------+--------------+----------------------------------+
Copy

계정에 대한 지난 12시간 동안의 기록을 검색합니다.

select *
  from table(information_schema.search_optimization_history(
    date_range_start=>dateadd(H, -12, current_timestamp)));
Copy

지정된 테이블에 대한 지난주의 기록을 검색합니다.

select *
  from table(information_schema.search_optimization_history(
    date_range_start=>dateadd(D, -7, current_date),
    date_range_end=>current_date,
    table_name=>'mydb.myschema.my_table')
    );
Copy

계정의 모든 테이블에 대한 지난주 유지 관리 기록을 검색합니다.

select *
  from table(information_schema.search_optimization_history(
    date_range_start=>dateadd(D, -7, current_date),
    date_range_end=>current_date)
    );
Copy