릴리스 0.129
릴리스 0.129 (Release 0.129)
이 릴리스에서는 GROUP BY·JOIN 쿼리의 성능 회귀 임시 경고가 포함되고, 일반·JDBC 드라이버·CLI·네트워크 토폴로지 인식 스케줄링·Hive 개선이 이어져요.
출처: 문서
본문
⚠️ 이 릴리스에서는 키 길이가 16~31바이트일 때
GROUP BY와JOIN쿼리에 성능 회귀가 있어요. 이 문제는 릴리스 0.130에서 고쳐져요.
일반 (General)
OUTER JOIN을 포함하는 쿼리가 잘못된 결과를 반환할 수 있는 플래너 문제를 고쳤어요.- 일부 쿼리, 특히
max_by()나min_by()를 사용하는 쿼리가 이제 실제 메모리 사용량을 정확히 반영해 이전보다 메모리를 더 사용하는 것처럼 보여요. SHOW SESSION이 숨겨진 세션 프로퍼티를 표시하지 않도록 고쳤어요.ORDER BY와LIMIT가 있는 대형 쿼리에서 멈추던(hang) 문제를 고쳤어요.- 빈 배열이나
NULL만 담긴 배열을 다른 타입으로 캐스팅할 때의 문제를 고쳤어요. - 테이블 프로퍼티 이름이 이제 대소문자를 구분하지 않도록 제대로 처리돼요.
- 쿼리 상세 페이지의 UI를 약간 개선했어요.
- verifier에서 예상되는 예외에 대해 쓸모없는 스택 트레이스를 표시하지 않도록 했어요.
- 데이터를 쓰는
UNION ALL쿼리의 성능을 개선했어요. P4HyperLogLog타입을 도입했어요. 이 타입은 HyperLogLog 자료구조 구현을 사용하는데, 작은 집합을 다룰 때 정확도와 메모리 요구량을 절충해 성능을 높여요.
JDBC 드라이버
SET SESSION이나RESET SESSION을 사용할 때 조용히 무시하는 대신 예외를 던지도록 했어요.- 드라이버가 이제 non-query 문을 제대로 지원해요.
Statement인터페이스가execute메서드의 모든 변형을 지원하고,getUpdateCount와getLargeUpdateCount메서드도 지원해요.
CLI
ctrl-C로 쿼리를 취소할 때 항상 화면을 지우도록 했어요.- 클라이언트 요청 타임아웃을 설정 가능하게 만들었어요.
네트워크 토폴로지 인식 스케줄링 (Network topology aware scheduling)
이제 스케줄러가 split을 스케줄링할 때 네트워크 토폴로지를 고려하도록 구성할 수 있어요. 이는 node-scheduler.network-topology 설정으로 켜요. 자세한 내용은 Tuning Trino 문서를 참고해요.
Hive
- S3 리전이 EC2에서 실행될 때 더 이상 자동으로 구성되지 않아요. 이 기능을 켜려면 Hive 카탈로그 프로퍼티 파일에서
hive.s3.pin-client-to-current-region=true를 사용해요. 이 기능은 중국 격리 리전의 S3 데이터에 접근할 때 필요하지만, 현재 리전 밖의 데이터에는 접근하지 못하게 해요. - S3에 대해 서버측 암호화를 지원하게 됐어요. 켜려면 Hive 카탈로그 프로퍼티 파일에서
hive.s3.sse.enabled=true를 사용해요. retention_days테이블 프로퍼티를 지원하게 됐어요.- S3
EncryptionMaterialsProvider를 지원하게 됐어요.
더 알아보기 (Learn more)
이 릴리스에서 지적된 성능 회귀가 어떻게 해결됐는지 릴리스 0.130을 확인해 보세요.