카테고리:

:doc:`/sql-reference/functions-system`(시스템 정보)

SYSTEM$CKE_HASH_FUNCTION

Cortex Search Service의 원래 문서 기본 키에 hashedDocumentIds`를 다시 매핑하여 :doc:`Cortex Knowledge Extensions(CKE) </user-guide/snowflake-cortex/cortex-knowledge-extensions/cke-overview> 사용량을 분석합니다. Snowflake는 개인정보 보호를 위해 해시된 IDs만 공유하기 때문에 이 작업이 필요합니다.

이 함수는 :doc:`/sql-reference/data-sharing-usage/listing-access-history`의 HASHED_DOC_ID에 매핑되는 해시된 문서 식별자를 반환합니다.

참고 항목:

SYSTEM$ENCODE_CKE_PRIMARY_KEY

구문

SYSTEM$CKE_HASH_FUNCTION( '<hash_version>', '<encoded_primary_key>' )

인자

hash_version

사용된 해시 함수의 버전으로, LISTING_ACCESS_HISTORY 뷰 뷰에 제공됩니다.

encoded_primary_key

SYSTEM$ENCODE_CKE_PRIMARY_KEY 함수를 호출할 때 반환된, 인코딩된 기본 키입니다.

반환

해시 버전으로 지정된, 해시된 인코딩 기본 키를 반환합니다.

다음 예제에서는 해시 버전을 검색하고 SYSTEM$CKE_HASH_FUNCTION을 사용하여 모든 기본 키에 대한 해시된 문서 ID를 계산합니다. 다음 예제에서 ``cke_document_daily_access``는 :doc:`/sql-reference/data-sharing-usage/listing-access-history`에서 생성된 뷰입니다.

WITH
  encoded_primary_keys AS
  (
    SELECT pkCol1,
          pkCol2,
          SYSTEM$ENCODE_CKE_PRIMARY_KEY(pkCol1, pkCol2) AS encoded_primary_key
      FROM your_cortex_search_table
  )
,
  hash_versions AS
  (
    SELECT DISTINCT(hash_version) AS hash_version
      FROM cke_document_daily_access
  )
SELECT pkCol1,
      pkCol2,
      hash_version,
      SYSTEM$CKE_HASH_FUNCTION(hash_version, encoded_primary_key) AS hashed_doc_id
  FROM encoded_primary_keys
  CROSS JOIN hash_versions;