CREATE CORTEX SEARCH SERVICE¶
새로운 Cortex Search Service 를 만들거나 기존 서비스를 대체합니다.
구문¶
CREATE [ OR REPLACE ] CORTEX SEARCH SERVICE [ IF NOT EXISTS ] <name>
ON <search_column>
ATTRIBUTES <col_name> [ , ... ]
WAREHOUSE = <warehouse_name>
TARGET_LAG = '<num> { seconds | minutes | hours | days }'
COMMENT = '<comment>'
AS <query>;
매개 변수¶
name
Cortex Search Service의 식별자(즉, 이름)를 지정하는 문자열로, 서비스가 생성되는 스키마에 대해 고유해야 합니다.
또한, 식별자는 알파벳 문자로 시작해야 하며 전체 식별자 문자열을 큰따옴표(예:
"My object"
)로 묶지 않는 한 공백이나 특수 문자를 포함할 수 없습니다. 큰따옴표로 묶인 식별자도 대/소문자를 구분합니다.자세한 내용은 식별자 요구 사항 섹션을 참조하십시오.
ON search_column
검색하려는 기본 테이블의 텍스트 열을 지정합니다. 이 열은 텍스트 값이어야 합니다.
ATTRIBUTES col_name [ , ... ]
서비스에 쿼리를 실행할 때 필터링할 기본 테이블에서 쉼표로 구분된 열 목록을 지정합니다. 명시적 열거 또는 와일드카드(
*
)를 통해 원본 쿼리에 특성 열을 포함해야 합니다.WAREHOUSE = warehouse_name
원본 쿼리 실행, 검색 인덱스 작성, TARGET_LAG 대상별로 새로 고침 상태를 유지하는 데 사용할 웨어하우스를 지정합니다.
TARGET_LAG = 'num { seconds | minutes | hours | days }'
Cortex Search Service 콘텐츠가 원본 쿼리에 지정된 기본 테이블에 대한 업데이트보다 지연되어야 하는 최대 시간을 지정합니다.
COMMENT = 'comment'
서비스에 대한 설명을 지정합니다.
AS query
서비스가 생성되는 기본 테이블을 정의하는 쿼리를 지정합니다.
액세스 제어 요구 사항¶
이 SQL 명령을 실행하는 데 사용되는 역할 에는 최소한 다음 권한 이 있어야 합니다.
권한 |
오브젝트 |
---|---|
CREATE CORTEX SEARCH SERVICE |
검색 서비스를 만들려는 스키마입니다. |
SELECT |
새로운 서비스에 대해 쿼리하려는 테이블 및 뷰입니다. |
USAGE |
서비스를 새로 고치는 데 사용하려는 웨어하우스입니다. |
스키마의 모든 오브젝트에 대해 작업하려면 상위 데이터베이스 및 스키마에 대한 USAGE 권한도 필요합니다.
지정된 권한 세트로 사용자 지정 역할을 만드는 방법에 대한 지침은 사용자 지정 역할 만들기 섹션을 참조하십시오.
보안 오브젝트 에 대해 SQL 작업을 수행하기 위한 역할과 권한 부여에 대한 일반적인 정보는 액세스 제어의 개요 섹션을 참조하십시오.
주의
Cortex Search Service를 만들려면 역할에 Cortex LLM Functions를 사용하는 데 필요한 것과 동일한 권한이 있어야 합니다. Cortex LLM Functions 필수 권한 섹션을 참조하십시오.
사용법 노트¶
주의
고객은 Snowflake 서비스를 사용할 때 개인 데이터(사용자 오브젝트 제외), 민감한 데이터, 수출 통제 대상 데이터 또는 기타 규제 데이터가 메타데이터로 입력되지 않도록 해야 합니다. 자세한 내용은 Snowflake의 메타데이터 필드 섹션을 참조하십시오.
CREATE OR REPLACE <오브젝트> 문은 원자성입니다. 즉, 오브젝트가 바뀔 때 단일 트랜잭션으로 이전 오브젝트가 삭제되고 새 오브젝트가 생성됩니다.
Cortex Search Service 원본 쿼리를 실행하는 데 사용되는 웨어하우스의 크기는 각 새로 고침의 속도와 비용에 영향을 미칩니다. 웨어하우스가 클수록 빌드 및 새로 고침 시간이 줄어듭니다. 그러나 이 미리 보기 중에는 Cortex Search Service에 대해 MEDIUM보다 크지 않은 웨어하우스 크기를 사용하는 것이 좋습니다.
다른 워크로드를 방해하지 않도록 각 Cortex Search Service 전용 웨어하우스를 사용하는 것이 좋습니다.
검색 인덱스는 create 문의 일부로 개발되므로, 더 큰 데이터 세트의 경우 CREATE CORTEX SEARCH SERVICE 문을 완료하는 데 시간이 더 오래 걸릴 수 있습니다.
예¶
다음 예에서는 mysvc
라는 Cortex Search Service를 만듭니다.
USE SCHEMA support_db.public;
CREATE OR REPLACE CORTEX SEARCH SERVICE mysvc
ON transcript_text
ATTRIBUTES region,agent_id
WAREHOUSE = mywh
TARGET_LAG = '1 hour'
AS (
SELECT
transcript_text,
date,
region,
agent_id
FROM support_db.public.transcripts_etl
);