DOCUMENTATION
/
언어
English
Français
Deutsch
日本語
한국어
Português
시작하기
가이드
개발자
참조
릴리스 정보
자습서
상태
  1. 개요
    • Snowflake Horizon Catalog
      • Snowflake에 연결하기 위한 애플리케이션 및 도구
      • 가상 웨어하우스
      • 데이터베이스, 테이블 및 뷰
      • 데이터 타입
        • 데이터 통합
          1. Snowflake Openflow
          2. Apache Iceberg™
            1. Apache Iceberg™ 테이블
            2. Snowflake Open Catalog
        • Data engineering
          1. 데이터 로딩
          2. 동적 테이블
          3. Streams and tasks
          4. Row timestamps
            • DCM Projects
            • Snowflake의 dbt 프로젝트
            • 데이터 언로딩
          5. Storage lifecycle policies
          6. 마이그레이션
          7. 쿼리
          8. 목록
          9. 협업
          10. Snowflake AI & ML
              1. 리전 간 추론
                • AI 기능에서 옵트아웃
                  • Snowflake Intelligence
                  • Cortex Code
                  • Cortex AI Functions
                  • Cortex Agents
                  • Snowflake 관리 MCP 서버
                    • Cortex Analyst
                    • Cortex Search
                        1. Cortex Search Service 쿼리하기
                          • Cortex Search Service 복제
                            • Customize Cortex Search Scoring
                              • 비용 이해하기
                                • Batch Cortex Search
                                  • Monitor Cortex Search requests
                                    • 자습서
                                • Cortex Knowledge Extension
                                • Cortex REST API
                                • AI Observability
                                • ML 함수
                                • 프로비저닝된 처리량
                                  • ML 개발 및 ML 운영
                                • Snowflake Postgres
                                • 경고 및 알림
                                • 보안
                                • 데이터 거버넌스
                                • 개인정보 보호
                                • 조직 및 계정
                                • 비즈니스 연속성 및 데이터 복구
                                • 성능 최적화
                                • 비용 및 청구
                                가이드Snowflake AI & MLCortex SearchBatch Cortex Search

                                일괄 Cortex Search¶

                                검은색 Snowflake 로고(텍스트 없음) 미리 보기 기능 — 공개

                                모든 계정에서 사용 가능합니다.

                                Batch Cortex Search 함수는 Cortex Search Service에 쿼리 배치를 제출할 수 있는 테이블 함수입니다. 이는 엔터티 확인, 중복 제거 또는 클러스터링 작업과 같이 처리량이 높아야 하는 오프라인 사용 사례를 위해 설계되었습니다..

                                CORTEX_SEARCH_BATCH 함수를 사용하여 Cortex Search Service에 제출된 작업은 추가 컴퓨팅 리소스를 활용하여 대화형(Python, REST 또는 SEARCH_PREVIEW) API 검색 쿼리 표면보다 높은 처리량(초당 쿼리)을 제공합니다.

                                구문¶

                                CORTEX_SEARCH_BATCH 테이블 함수를 사용하여 일괄 모드에서 Cortex Search Service를 쿼리하려면 다음 구문을 사용합니다.

                                SELECT
                                    q.query,
                                    r.*
                                FROM query_table AS q,
                                LATERAL CORTEX_SEARCH_BATCH(
                                    service_name => '<database>.<schema>.<cortex_search_service>',
                                    query => q.query,                   -- optional STRING
                                    multi_index_query => q.miq,         -- optional VARIANT
                                    filter => q.filter,                 -- optional VARIANT
                                    limit => 10,                        -- optional INT
                                    options => q.options                -- optional VARIANT
                                ) AS r;
                                

                                매개 변수¶

                                CORTEX_SEARCH_BATCH 함수는 다음 매개 변수를 지원합니다.

                                service_name (문자열, 필수)

                                쿼리할 Cortex Search Service의 정규화된 이름입니다.

                                ``query``(문자열, 선택 사항)

                                서비스 검색을 위한 쿼리 문자열이 포함된 열입니다.

                                ``multi_index_query``(베리언트, 선택 사항)

                                서비스 인덱스에 대해 검색할 하나 이상의 벡터 또는 키워드 쿼리 입력을 지정하는 오브젝트입니다. 이 매개 변수를 구성하는 방법에 대한 자세한 내용은 multi_index_query 섹션을 참조하세요.

                                참고

                                성능상의 이유로, ``multi_index_query``는 현재 쿼리 배열에서 최대 하나의 벡터 인덱스 항목을 지원합니다.

                                ``filter``(베리언트, 선택 사항)

                                검색 결과에 적용할 필터 오브젝트가 포함된 열입니다.

                                ``limit``(정수, 선택 사항)

                                쿼리당 반환할 최대 결과 수입니다. 기본값: 10.

                                ``options``(베리언트, 선택 사항)

                                선택적 쿼리별 설정이 있는 VARIANT 오브젝트가 포함된 열입니다. 지원되는 최상위 키는 다음과 같습니다.

                                • scoring_config``(오브젝트, 선택 사항): 대화형 Cortex Search 쿼리를 위한 ``scoring_config 매개 변수(Python, REST 또는 SEARCH_PREVIEW)와 동일한 구조입니다. 이를 사용하여 해당 행의 일괄 쿼리에 대한 순위를 사용자 지정합니다. Cortex Search Scoring 사용자 지정하기 섹션을 참조하십시오.

                                • replicas (정수, 선택 사항): 해당 행의 일괄 쿼리를 제공하는 검색 색인의 복사본 수입니다. 기본값: 2. 값이 높을수록 처리량이 향상될 수 있으며, 서비스 비용은 복제본 수에 비례하여 증가합니다.

                                • ``experimental``(오브젝트, 선택 사항): 실험적 또는 미리 보기 검색 동작을 위해 예약된 오브젝트입니다. 필드와 의미 체계는 예고 없이 변경될 수 있습니다. Snowflake 설명서 또는 지원에서 특정 키를 설정하도록 지시하는 경우에만 사용하세요.

                                참고

                                query, multi_index_query, filter 중 하나 이상을 지정해야 합니다.

                                사용법 노트¶

                                • 일괄 검색 함수의 처리량은 쿼리된 Cortex Search Service에서 인덱싱된 데이터의 양과 검색 쿼리의 복잡성에 따라 달라질 수 있습니다. 소수의 쿼리에서 함수를 실행하여 특정 워크로드의 처리량을 측정합니다. 일반적으로 필터 조건이 더 많은 대규모 서비스에 대한 쿼리는 처리량이 더 낮습니다.

                                • 일괄 검색 함수의 처리량, 즉 초당 처리되는 검색 쿼리 수는 쿼리에 사용되는 웨어하우스의 크기에 영향을 받지 않습니다.

                                • 일괄 검색은 각 작업을 처리하기 위해 전용 리소스를 가동하므로 시작 대기 시간이 추가로 발생합니다. 2,000개 미만의 쿼리를 실행해야 하는 경우 일반적으로 일괄 검색이 아닌 대화형 Cortex Search API(Python 또는 REST API)를 사용하여 더 빠른 결과를 얻을 수 있습니다 .

                                • 대화형 Cortex Search API와 달리, 일괄 검색 함수는 현재 서비스가 일시 중단된 서비스를 쿼리할 수 있습니다.

                                • 단일 Cortex Search Service는 대화형 쿼리 성능이나 처리량의 저하 없이 대화형 및 일괄 모드에서 동시에 쿼리할 수 있습니다. 대화형 쿼리와 일괄 쿼리를 제공하는 데는 별도의 컴퓨팅 리소스가 사용됩니다.

                                비용 고려 사항¶

                                일괄 검색에는 3가지 비용 구성 요소가 있습니다.

                                서비스 비용

                                시작 시간을 제외하고 검색 색인 데이터의 크기 및 일괄 검색 작업의 기간을 기준으로 한 요금입니다. options 의 replicas 값도 반영합니다(기본값 2). 위의 replicas 옵션을 참조하세요.

                                쿼리 임베딩 비용

                                입력 쿼리의 결과로 포함된 토큰 수에 대한 요금입니다. 대화형 Cortex Search와 달리, 쿼리 임베딩은 일괄 검색에 무료가 아닙니다.

                                가상 웨어하우스 비용

                                일괄 작업을 실행하는 데 사용되는 가상 웨어하우스 컴퓨팅에 대한 요금입니다.

                                사용량 추적은 CORTEX_SEARCH_BATCH_QUERY_USAGE_HISTORY Account Usage 뷰를 참조하세요. Cortex Search 비용에 대한 자세한 내용은 비용 고려 사항 섹션을 참조하세요.

                                리전 가용성¶

                                일괄 검색은 Cortex Search를 사용할 수 있는 모든 리전에서 사용할 수 있습니다. 지원되는 리전의 전체 목록은 리전 가용성 섹션을 참조하세요.

                                사용 예¶

                                이 예에서는 사용자가 제출한 주문 양식의 제품을 “골든” 제품 카탈로그와 일치시킵니다. CORTEX_SEARCH_BATCH 호출은 options 를 사용하므로 기본 검색 쿼리 접두사 없이 임베딩이 계산됩니다. 벡터 임베딩을 위한 쿼리 접두사 비활성화 섹션을 참조하세요. 결과 품질에 대한 영향을 평가한 경우에만 해당 설정을 사용합니다.

                                -- Create the golden product catalog with canonical product names
                                CREATE OR REPLACE TABLE golden_catalog (product_name TEXT);
                                INSERT INTO golden_catalog VALUES
                                  ('Wireless Bluetooth Headphones'),
                                  ('Wireless Noise-Canceling Earbuds'),
                                  ('USB-C Charging Cable 6ft'),
                                  ('Portable Power Bank 10000mAh');
                                
                                -- Create Cortex Search Service on the golden catalog
                                CREATE CORTEX SEARCH SERVICE golden_product_service
                                ON product_name
                                WAREHOUSE = <warehouse_name>
                                TARGET_LAG = '1 day'
                                AS
                                SELECT product_name FROM golden_catalog;
                                
                                -- Create a table of user-submitted products (may contain variations or typos)
                                CREATE OR REPLACE TABLE submitted_products (product TEXT);
                                INSERT INTO submitted_products VALUES
                                  ('bluetooth headphones wireless'),
                                  ('usb c cable');
                                
                                -- For each user-submitted product, query the service for the two closest golden results
                                SELECT
                                  q.product, s.*
                                FROM submitted_products AS q,
                                LATERAL CORTEX_SEARCH_BATCH(
                                    service_name => 'golden_product_service',
                                    query => q.product,
                                    limit => 2,
                                    options => OBJECT_CONSTRUCT(
                                        'scoring_config', OBJECT_CONSTRUCT(
                                            'disable_vector_embedding_query_prefix', true
                                        )
                                    )
                                ) AS s;
                                

                                다음 예제에서는 multi_index_query``를 사용하여 원시 텍스트 대신 미리 계산된 임베딩을 쿼리 입력으로 제출합니다. 여기서 소스 테이블 ``my_db.my_schema.product_embeddings``에는 미리 계산된 벡터가 있는 열 ``embedding``이 포함되어 있으며, Cortex Search Service ``my_db.my_schema.golden_product_service``는 자체 벡터 가져오기(BYOV) 구성으로 생성되었습니다. ``multi_index_query 구성에 대한 자세한 내용은 :ref:`multi_index_query <label-cortex_multi_index_search>`를 참조하세요.

                                SELECT
                                    q.product_name,
                                    s.*
                                FROM (
                                    SELECT
                                        product_name,
                                        embedding::ARRAY AS emb_arr
                                    FROM my_db.my_schema.product_embeddings
                                    LIMIT 100000
                                ) q,
                                LATERAL CORTEX_SEARCH_BATCH(
                                    service_name => 'my_db.my_schema.golden_product_service',
                                    multi_index_query => OBJECT_CONSTRUCT(
                                        'EMBEDDING', ARRAY_CONSTRUCT(
                                            OBJECT_CONSTRUCT('vector', q.emb_arr)
                                        )
                                    ),
                                    limit => 5
                                ) s;
                                

                                이 페이지가 도움이 되었습니까?

                                Snowflake 방문하기
                                대화에 참여하기
                                Snowflake로 개발하기
                                피드백 공유하기
                                블로그에서 최신 게시물 읽기
                                자체 인증 받기
                                개인정보 보호정책사이트 이용약관쿠키 설정© 2026 Snowflake, Inc. All Rights Reserved.
                                1. 구문
                                2. 매개 변수
                                3. 사용법 노트
                                4. 비용 고려 사항
                                5. 리전 가용성
                                6. 사용 예
                                1. Cortex Search
                                2. Cortex Search Service 쿼리하기
                                3. Cortex Search Scoring 사용자 지정하기
                                4. CREATE CORTEX SEARCH SERVICE