Trino 0.213 릴리스 노트
Trino 0.213 릴리스 노트
Trino 0.213 릴리스 노트입니다. 이번 릴리스에서는 일반 개선 사항과 지리공간, Server RPM, Web UI, Hive 커넥터, Memory 커넥터, Thrift 커넥터, Verifier 관련 변경 사항이 들어 있어요.
출처: 문서
본문
일반 (General)
- 계획에 공동 배치(colocated) 조인이 있을 때 스플릿 스케줄링 백프레셔를 수정했어요. 이전에는 두 번째 이후의 스캔 노드(스케줄링 순서 기준)에 대한 스플릿이 충분한 대기 스플릿 때문에 멈추는 대신 완료될 때까지 계속 스케줄링됐어요.
- 그룹화 실행 중 어떤 lifespan의 모든 스플릿이 완전히 필터링됐을 때 쿼리 실행 실패나 무기한 중단을 수정했어요.
- 그룹화 실행이 구성된 작업당 동시 lifespan을 존중하도록 수정했어요. 이전에는 항상 작업당 단일 lifespan을 사용했어요.
- 오른쪽이 조인 키로 분할되지 않은 오른쪽 또는 전체 외부 조인과 함께 그룹화 실행을 사용할 때 실행 실패를 수정했어요.
- 단일 응답으로 클라이언트에 너무 많은 행이 반환되던 시나리오를 수정했어요.
- SET SESSION으로 잘못된 속성 값을 설정할 수 없게 했어요.
- 특정 복잡한 쿼리에 대해 계획 실패를 일으킬 수 있으므로 통계 계산기(stats calculator)를 기본적으로 비활성화했어요.
experimental.enable-stats-calculator구성 속성이나enable_stats_calculator세션 속성으로 켤 수 있어요. - 조인 필터 추정 시 추측을 피하도록 했어요. 이전에는 필터에 대해 알려진 것이 없으면
0.9계수를 필터 계수로 적용했어요. 이제 필터에 대해 알려진 것이 없으면 추정치가 알 수 없음(unknown)이 돼요. 적어도 하나의 결합 조건(conjunct)을 합리적으로 추정할 수 있다면 추가 결합 조건 모두에0.9계수가 적용돼요. - 내부 조인에 대한 조건자 추론을 개선했어요.
- CPU 시간을 추가하고 CPU 비율의 정확도를 높여
EXPLAIN ANALYZE출력을 개선했어요. - 쿼리 완료 시 생성되는 텍스트 계획에 통계와 비용 추정치를 포함했어요.
SHOW STATS가SELECT절의WHERE조건에서IN과BETWEEN조건자를 지원하도록 개선했어요.- 인덱스 조인을 위한 explain 계획에서 트랜잭션을 제거했어요.
- 사용자가 시스템 구성 최대값보다 낮은 수를 지정해 동시성을 제한할 수 있게 하는
max_drivers_per_task세션 속성을 추가했어요. 이는 쿼리를 더 느리게 실행하고 자원을 덜 소비하게 할 수 있어요. AUTOMATIC조인 분포 타입을 사용할 때 브로드캐스트할 수 있는 테이블의 최대 추정 크기를 제어하는join-max-broadcast-table-size구성 속성과join_max_broadcast_table_size세션 속성을 추가했어요(#11667).- 예약 메모리 풀을 비활성화하는 실험적 구성 옵션
experimental.reserved-pool-enabled를 추가했어요. - 응답 데이터 크기를 제어하는
/v1/statement엔드포인트에targetResultSize쿼리 파라미터를 추가했어요.
지리공간 (Geospatial)
- SQL/MM 사양 요구 사항에 따라
ST_Distance()함수가 입력 중 하나가 빈 지오메트리면NULL을 반환하도록 수정했어요. - 점 배열에서 다중점(multi-point) 지오메트리를 만드는
ST_MultiPoint()함수를 추가했어요. - 지오메트리 배열을 효율적으로 합치는
geometry_union()함수를 추가했어요. - 분산 공간 조인을 지원해요(#11072).
Server RPM
- 어떤 공급업체의 JVM에서도 실행할 수 있게 했어요.
Web UI
- 레거시 계획 UI를 제거했어요.
- 모든 오류 범주로 쿼리를 필터링하는 것을 지원해요.
- 코디네이터에서 데이터를 새로고칠 때 오류를 보여 주는 대화상자를 추가했어요.
- 페이지 성능을 개선하기 위해 워커 스레드 목록이 기본적으로 스레드 스택을 표시하지 않도록 변경했어요.
Hive 커넥터
- Hadoop이 압축한 특정 데이터와 함께 동작하도록 LZO와 LZOP 압축 해제를 수정했어요.
- ORC 라이터 검증 비율이 0일 때 100% 검증이 되지 않도록 수정했어요.
- 손상된 입력에 대한 ZSTD의 잠재적 범위 초과(out-of-bounds) 읽기를 수정했어요.
- 컬럼 null fraction 통계가
1.0보다 작을 때 고유 값이 없다고 가정하지 않도록 했어요. - Impala가 쓴 통계와의 호환성을 위해
-1을 null 수가 없는 것으로 취급했어요. - 메타스토어 네트워크 오류에 대해 원래 예외를 보존하도록 했어요.
- Avro 역직렬화기의 예외를 보존하도록 했어요.
- 텍스트 줄 길이 초과 오류를 분류했어요.
- 이전 Parquet 리더를 제거했어요.
hive.parquet-optimized-reader.enabled구성 속성과parquet_optimized_reader_enabled세션 속성은 더 이상 존재하지 않아요. hive.parquet-predicate-pushdown.enabled구성 속성과parquet_predicate_pushdown_enabled세션 속성을 제거했어요. Parquet 리더에서 푸시다운은 이제 항상 활성화돼요.- 최적화된 ORC 라이터를 기본값으로 활성화했어요.
hive.orc.optimized-writer.enabled구성 속성이나orc_optimized_writer_enabled세션 속성으로 비활성화할 수 있어요. - 새 테이블이나 파티션의 기본값으로 ORC 파일 형식을 사용하도록 했어요.
- Avro 스키마 URL이 HDFS 위치인 Avro 테이블을 지원해요.
- Parquet 라이터 옵션 조정을 위한
hive.parquet.writer.block-size와hive.parquet.writer.page-size구성 속성, 그리고parquet_writer_block_size와parquet_writer_page_size세션 속성을 추가했어요.
Memory 커넥터
- 테이블 데이터 크기 회계를 개선했어요.
Thrift 커넥터
- 인덱스 조인을 위한 explain 계획에 제약을 포함했어요.
- explain 계획에서 컬럼, 테이블, 레이아웃, 인덱스의 가독성을 개선했어요.
Verifier
- 쓰기를 섀도잉할 때 쿼리를 병렬로 다시 작성하도록 했어요.
더 알아보기 (Learn more)
Trino 0.213의 변경 사항을 더 자세히 확인하고 싶다면 공식 릴리스 노트를 참고해 주세요.