Cortex Analyst의 라우팅 모드¶
라우팅 모드는 의미 체계 SQL을 우선시하고 필요한 경우에만 표준 SQL로 다시 돌아가는 쿼리 생성 전략입니다. 이는 SQL의 간소화된 버전으로 작동하며, 안전 장치는 의미 체계 뷰에서 제공됩니다. 라우팅 모드는 의미 체계 뷰를 사용하여 정확도와 일관성을 높입니다. 따라서 메트릭, 조인 및 필터는 의미 체계 뷰의 관리되는 정의를 따릅니다.
Cortex Analyst는 의미 체계 뷰를 기반으로 를 생성할 때 라우팅 모드를 자동으로 사용합니다. text-to-sql 품질이 향상된다는 점을 제외하면 워크플로에는 변경 사항이 없습니다.
참고
라우팅 모드는 권한을 변경하지 않습니다. 의미 체계 뷰는 표준 권한이 있는 Snowflake 오브젝트입니다. 액세스는 테이블 또는 뷰와 동일한 방식으로 적용됩니다.
라우팅 모드의 이점¶
라우팅 모드는 다음과 같은 이점을 제공합니다.
일관된 메트릭: 쿼리는 SQL이 아닌 의미 체계 뷰의 정의를 사용합니다.
더 안전한 기본값: 차원, 메트릭, 조인은 관리되는 메타데이터에서 가져옵니다.
LLM 친화적: SQL이 더 짧으면 LLM을 올바르게 생성하기에 더 쉽습니다.
라우팅 모드는 다음과 같은 상황에서 유용할 수 있습니다.
핵심 비즈니스 엔터티와 메트릭을 정의하는 하나 이상의 의미 체계 뷰가 있습니다.
에지 케이스에 대한 유연성과 함께 일반적인 질문에 대한 일관된 답변을 원합니다.
예를 들어, 다음 시나리오와 라우팅 모드가 이를 처리하는 방법을 생각해 보시기 바랍니다.
비즈니스 차원별로 관리되는 메트릭 요청
사용자 의도: “고객 세그먼트별 평균 주문 금액.”
라우팅 동작: 먼저 의미 체계 SQL을 시도하므로 조인 및 메트릭 계산은 뷰에서 가져옵니다.
SELECT * FROM SEMANTIC_VIEW( tpch_analysis DIMENSIONS customer.customer_market_segment METRICS orders.order_average_value ) ORDER BY customer_market_segment;
장점: 수동 조인 또는 메트릭 수식이 필요하지 않습니다. 결과가 BI 정의에 맞춰 조정됩니다.
하나의 차원이 있는, 관리되는 여러 메트릭
사용자 의도: “연도별 총 수익 및 주문 수 표시.”
SELECT * FROM SEMANTIC_VIEW( tpch_analysis DIMENSIONS orders.order_year METRICS orders.total_revenue, orders.order_count ) ORDER BY order_year;
장점: 두 메트릭 모두 의미 체계 뷰에서와 동일한 정의 및 필터를 사용합니다.
적용되지 않은 요청에 대한 대체
사용자 의도: “뷰에서 모델링되지 않은 원시 열 또는 변환 표시.”
라우팅 동작: 의미 체계 뷰가 요청을 충족할 수 없는 경우 Cortex Analyst는 자동으로 기본 테이블에 대한 표준 SQL로 라우팅합니다.
장점: 사용자를 차단하지 않는 유연성을 제공합니다.
작동 방법¶
다음 절차에서는 라우팅 모드를 사용할 때 Cortex Analyst가 수행하는 단계를 간략하게 설명합니다.
Cortex Analyst는 Playground, API 및 모든 제품 표면에서 라우팅 모드를 사용합니다.
Cortex Analyst는 의미 체계 SQL을 생성하려고 시도합니다.
SELECT … FROM SEMANTIC_VIEW(...).
Cortex Analyst가 시간 제한 내에 질문에 답하는 유효한 의미 체계 SQL 쿼리를 생성할 수 없는 경우, Cortex Analyst는 물리적 테이블에 대한 표준 SQL로 라우팅합니다.
참고
라우팅 모드에서는 전체 쿼리의 약 10%에 대해서만 의미 체계 SQL을 생성합니다. 이 수치는 의미 체계 뷰에 정의된 메트릭의 적용 수준에 따라 다릅니다.
고려 사항¶
의미 체계 뷰가 질문을 충족할 수 없는 경우 Cortex Analyst는 표준 SQL로 대체됩니다. 시간 경과에 따른 대체를 줄이려면 의미 체계 뷰를 확장해야 합니다.