Trino 0.180 릴리스 노트
Trino 0.180 릴리스 노트
Trino 0.180 릴리스 노트입니다. 이번 릴리스에서는 일반 개선 사항과 더불어 Hive, Cassandra, JDBC 드라이버, CLI, SPI 관련 변경 사항이 들어 있어요.
출처: 문서
본문
일반 (General)
null값만 들어 있는 행이 클라이언트로 반환되지 않던 희귀한 버그를 수정했어요. 이 문제는 결과 페이지 전체에null값만 있을 때만 발생하며, 알려진 유일한 사례는 데이터를 전혀 변환하지 않는 ORC로 인코딩된 Hive 테이블에 대한 쿼리였어요.- 근사 데이터 타입(
REAL,DOUBLE)의 값과 특정 정확한 숫자 타입(INTEGER,BIGINT,DECIMAL)의 컬럼을 비교할 때 잘못된 결과가 나오던 문제를 수정했어요. - 복합 타입에서
min_by()와max_by()의 메모리 회계를 수정했어요. - 플러그인에 선언된 스칼라 함수를 인스턴스 메서드로 구현했을 때
NoClassDefFoundError로 쿼리가 실패하던 문제를 수정했어요. - 맵 서브스크립트(map subscript) 성능을 모든 경우에 O(n)에서 O(1)로 개선했어요. 이전에는 특정 함수와 리더가 만든 맵만 이 개선 효과를 누릴 수 있었어요.
EXPLAIN출력에서 알 수 없는 비용을 건너뛰도록 했어요.- Presto 노드 간 보안 내부 통신을 지원해요.
LATERAL파생 테이블에 대한CROSS JOIN초기 지원을 추가했어요.VARBINARY연결(concatenation)을 지원해요.- 커스텀 커넥터를 구현하지 않고도 외부 시스템에서 Presto를 사용할 수 있게 해 주는 Thrift 커넥터를 추가했어요.
- 코디네이터에 실험용
/v1/resourceGroupStateREST 엔드포인트를 추가했어요.
Hive
int32또는int64타입으로 뒷받침되는 최적화된 Parquet 리더에서 짧은 decimal 값을 건너뛰던 문제를 수정했어요.- 테이블이 버킷화되지 않았다면 파티션 버킷화를 무시하도록 했어요. 이렇게 하면 테이블 메타데이터에서 버킷화(bucketing)를 제거하고도 오래된 파티션에는 그대로 남길 수 있어요.
- 실행 중에 삭제된 Hive 파티션에 대한 오류 메시지를 개선했어요.
- 최적화된 RCFile 라이터가 기본적으로 활성화되며,
hive.rcfile-optimized-writer.enabled구성 옵션으로 비활성화할 수 있어요. 이 라이터는 파일을 쓴 뒤 전체 파일을 다시 읽어 검증하는 기능을 지원하며, 검증은 기본적으로 꺼져 있고hive.rcfile.writer.validate구성 옵션으로 켤 수 있어요.
Cassandra
INSERT를 지원해요.- 클러스터링 키에 대한 비동등(non-equality) 조건자의 푸시다운을 지원해요.
JDBC 드라이버
- Kerberos를 사용한 인증을 지원해요.
- 연결 단위로 SSL/TLS 및 Kerberos 속성을 구성할 수 있게 했어요.
- SOCKS 또는 HTTP 프록시를 사용한 쿼리 실행을 지원해요.
CLI
- HTTP 프록시를 사용한 쿼리 실행을 지원해요.
SPI
ResourceGroupInfo에 실행 시간 제한과 대기 시간 제한을 추가했어요.
더 알아보기 (Learn more)
Trino 0.180의 변경 사항을 더 자세히 확인하고 싶다면 공식 릴리스 노트를 참고해 주세요.