Trino 0.206 릴리스 노트
Trino 0.206 릴리스 노트
Trino 0.206 릴리스 노트입니다. 이번 릴리스에서는 일반 개선 사항과 JDBC 드라이버, Hive 커넥터 관련 변경 사항이 들어 있어요.
출처: 문서
본문
일반 (General)
dictionary_aggregation이 활성화됐을 때 조인 다음에 집계가 오는 특정 쿼리의 실행 실패를 수정했어요.- 쿼리에
GROUP BY가 있지만 그룹핑 컬럼의 카디널리티가 1일 때 계획 실패를 수정했어요. 예:SELECT c1, sum(c2) FROM t WHERE c1 = 'foo' GROUP BY c1 - 버킷화 실행을 사용하는 쿼리 실행 중 코디네이터의 높은 메모리 압력을 수정했어요.
ST_Union(),ST_Geometries(),ST_PointN(),ST_InteriorRings(),ST_InteriorRingN()지리공간 함수를 추가했어요.split_to_multimap()함수를 추가했어요.approx_distinct()함수를 다음 타입을 지원하도록 확장했어요:INTEGER,SMALLINT,TINYINT,DECIMAL,REAL,DATE,TIMESTAMP,TIMESTAMP WITH TIME ZONE,TIME,TIME WITH TIME ZONE,IPADDRESS.system.runtime.queries테이블에 리소스 그룹 ID 컬럼을 추가했어요.LIMIT없이ORDER BY를 분산 방식으로 실행하는 것을 지원해요.distributed-sort구성 속성이나distributed_sort세션 속성으로 비활성화할 수 있어요.VARCHAR(n)에서CHAR(n)으로의 암시적 강제 변환을 추가하고 반대 방향의 암시적 강제 변환을 제거했어요. 결과적으로CHAR를VARCHAR와 비교하면 이제 뒤쪽 공백에 민감하지 않은CHAR비교 의미 체계를 따르게 돼요.- 평균 행 크기를 계산할 때 null이 아닌 행만 포함해 쿼리 비용 추정을 개선했어요.
- 데이터 크기 추정 시 오버헤드를 더 잘 반영하도록 쿼리 비용 추정을 개선했어요.
- 시간 타입에 대한 SQL 표준을 따르는 새 의미 체계를 추가했어요. 이는
TIMESTAMP(일명TIMESTAMP WITHOUT TIME ZONE),TIME(일명TIME WITHOUT TIME ZONE),TIME WITH TIME ZONE타입에 영향을 줘요. 레거시 동작이 기본값으로 유지돼요. 현재 시점에는 새 의미 체계를 활성화하는 것을 권장하지 않아요. 시간 타입을 지원하는 모든 커넥터는 새 의미 체계와 올바르게 동작하려면 코드 변경이 필요하지만, 아직 업데이트된 커넥터는 없어요. 또한 특히TIME WITH TIME ZONE타입 주변에서 더 많은 파괴적 변경이 계획되어 있어 새 의미 체계는 아직 안정적이지 않아요.
JDBC 드라이버
ApplicationName속성과 결합되어 클라이언트 소스 이름을 구성하는applicationNamePrefix파라미터를 추가했어요.
Hive 커넥터
- 불필요하게 큰 내부 버퍼를 줄여 ORC 리더 메모리 사용을 줄였어요.
- Kerberos로 HDFS 인증을 사용할 때
skip.footer.line.count와skip.header.line.count가 있는 테이블에서 읽는 것을 지원해요. - Parquet 리더의 대소문자 구분 없는 컬럼 조회를 지원해요.
더 알아보기 (Learn more)
Trino 0.206의 변경 사항을 더 자세히 확인하고 싶다면 공식 릴리스 노트를 참고해 주세요.