힌트 - AWS Clean Rooms

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

힌트

SQL 분석을 위한 힌트는 쿼리 실행 전략을 안내하는 최적화 지침을 AWS Clean Rooms제공하므로 쿼리 성능을 개선하고 컴퓨팅 비용을 절감할 수 있습니다. 힌트는 Spark 분석 엔진이 실행 계획을 생성하는 방법을 제안합니다.

구문

SELECT /*+ hint_name(parameters), hint_name(parameters) */ column_list FROM table_name;

힌트는 주석 스타일 구문을 사용하여 SQL 쿼리에 포함되며 SELECT 키워드 바로 뒤에 배치해야 합니다.

지원되는 힌트 유형

AWS Clean Rooms 는 조인 힌트와 파티셔닝 힌트라는 두 가지 범주의 힌트를 지원합니다.

여러 힌트 결합

쉼표로 구분하여 단일 쿼리에 여러 힌트를 지정할 수 있습니다.

-- Combine join and partitioning hints SELECT /*+ BROADCAST(d), REPARTITION(8) */ e.name, d.dept_name FROM employees e JOIN departments d ON e.dept_id = d.id; -- Multiple join hints SELECT /*+ BROADCAST(s), MERGE(d) */ * FROM employees e JOIN students s ON e.id = s.id JOIN departments d ON e.dept_id = d.id; -- Hints within separate hint blocks within the same query SELECT /*+ REPARTITION(100) */ /*+ COALESCE(500) */ /*+ REPARTITION_BY_RANGE(3, c) */ * FROM t;

고려 사항 및 제한 사항

  • 힌트는 명령이 아닌 최적화 제안입니다. 쿼리 최적화 프로그램은 리소스 제약 조건 또는 실행 조건에 따라 힌트를 무시할 수 있습니다.

  • 힌트는 CreateAnalysisTemplate 및 StartProtectedQuery APIs 모두에 대한 SQL 쿼리 문자열에 직접 포함됩니다.

  • 힌트는 SELECT 키워드 바로 뒤에 배치해야 합니다.

  • 명명된 파라미터는 힌트에서 지원되지 않으며 예외가 발생합니다.

  • REPARTITION amd REPARTITION_BY_RANGE 힌트의 열 이름은 입력 스키마에 있어야 합니다.

  • REBALANCE 힌트의 열 이름은 SELECT 출력 목록에 나타나야 합니다.

  • 숫자 파라미터는 1에서 2147483647 사이의 양의 정수여야 합니다. 1e1과 같은 과학 표기법은 지원되지 않습니다.

  • 힌트는 차등 프라이버시 SQL 쿼리에서 지원되지 않습니다.

  • SQL 쿼리에 대한 힌트는 PySpark 작업에서 지원되지 않습니다. PySpark 작업에서 실행 계획에 대한 지시문을 제공하려면 데이터 프레임 API를 사용합니다. 자세한 내용은 Apache Spark DataFrame API 문서를 참조하세요.