Trino 0.208 릴리스 노트
Trino 0.208 릴리스 노트
Trino 0.208 릴리스 노트입니다. 이번 릴리스에는 버킷화 정렬 테이블 작성 시 Hive 커넥터에서 데이터 손실 가능성이 있으니 주의가 필요해요. 그 외 일반 개선 사항과 CLI, Hive 커넥터, Thrift 커넥터 관련 변경 사항이 들어 있어요.
출처: 문서
본문
경고: 이 릴리스는 버킷화 정렬 테이블을 쓸 때 Hive 커넥터에서 데이터 손실이 발생할 가능성이 있어요.
일반 (General)
- 가비지 컬렉션 일시 중지와 메모리 부족 예외로 이어질 메모리 회계 문제를 수정했어요.
push_aggregation_through_join이 활성화됐을 때 잘못된 결과를 내는 문제를 수정했어요(#10724).ROW타입의 컬럼을 언네스팅할 때 필드 이름을 보존하도록 했어요.- 클러스터 메모리 부족 킬러가 메모리 회계 누수에 더 탄력적이도록 했어요. 이전에는 워커의 메모리 회계 누수가 메모리 부족 킬러를 사실상 비활성화할 수 있었어요.
- 컬럼 수가 많은 테이블에 대한 쿼리의 계획 시간을 개선했어요.
- 쿼리의 스테이지 수에 제한을 추가했어요. 기본값은
100이며query.max-stage-count구성 속성과query_max_stage_count세션 속성으로 변경할 수 있어요. spooky_hash_v2_32()과spooky_hash_v2_64()함수를 추가했어요.- 워커에서 메모리를 잘못 회계했을 가능성이 있는 쿼리를 로그로 남기는 클러스터 메모리 누수 감지기를 추가했어요. 이는 내부 오류를 디버깅하기 위한 도구예요.
- 강제 변환(coercion)이 필요한 상관 서브쿼리를 지원해요.
- Linux ppc64le에서 실행하는 실험적 지원을 추가했어요.
CLI
- 히스토리 파일이 없을 때 생성을 수정했어요.
- 히스토리 파일 위치를 재정의하는
PRESTO_HISTORY_FILE환경 변수를 추가했어요.
Hive 커넥터
- 버킷화 정렬 테이블 작성의 크기 제한을 제거했어요.
- Parquet에 대한 라이터 스케일링을 지원해요.
- 최적화된 ORC 라이터의 스트라이프 크기 추정을 개선했어요. 이는 아주 작은 ORC 스트라이프가 쓰여지는 경우를 줄여줘요.
- 비용 기반 최적화기에 CHAR, VARCHAR, VARBINARY 컬럼의 실제 크기를 제공해요.
- 테이블 작성 시 컬럼 수준 통계를 수집해요. 기본적으로 비활성화되어 있으며
hive.collect-column-statistics-on-write속성으로 켤 수 있어요.
Thrift 커넥터
- 쿼리 실패 메시지에 원격 서버의 오류 메시지를 포함하도록 했어요.
더 알아보기 (Learn more)
Trino 0.208의 변경 사항을 더 자세히 확인하고 싶다면 공식 릴리스 노트를 참고해 주세요.