릴리스 406
릴리스 406 (2023년 1월 25일)
이번 릴리스에서는 오류 허용 실행의 HDFS 교환 스풀링과 INSERT 문의 CHECK 제약 조건 지원이 눈에 띄어요.
출처: Trino 릴리스 406 문서
본문
일반 (General)
- 오류 허용 실행이 켜졌을 때 HDFS 교환 스풀링을 지원해요. (#15160)
INSERT문에서CHECK제약 조건을 지원해요. (#14964)ORDER BY·LIMIT가 포함된 서브쿼리 위의 외부 조인이 있는 쿼리 계획자 추정을 개선했어요. (#15428)- 테이블 스캔의 메모리 사용량 보고 정확도를 개선했어요. (#15711)
- ISO 8601 형식의 날짜 값을 파싱하는 쿼리의 성능을 개선했어요. (#15548)
- 선별적 조인이 있는 쿼리의 성능을 개선했어요. (#15569)
query.execution-policy구성값의 옵션에서legacy-phased실행 스케줄러를 제거했어요. (#15657)WHERE·JOIN절에 상수가 아닌 패턴·이스케이프가 있는LIKE표현식이 포함된 경우 발생하던 실패를 고쳤어요. (#15629)- 통계가 없는 컬럼의 필터가 있는 쿼리의 부정확한 계획자 추정을 고쳤어요. (#15642)
- 오류 허용 실행이 켜졌을 때 외부 조인이 있는 쿼리가 실패하던 문제를 고쳤어요. (#15608)
MATCH_RECOGNIZE를 쓸 때 발생할 수 있는 쿼리 실패를 고쳤어요. (#15461)- 그룹 기반 접근 제어를 컬럼 마스크·행 필터와 함께 쓸 때 쿼리가 실패하던 문제를 고쳤어요. (#15583)
- 종료 중 발생할 수 있는 정지(hang)를 고쳤어요. (#15675)
row타입을 만드는 컬럼 마스크 표현식을 적용한 결과 필드를 참조할 때 잘못된 결과가 나오던 문제를 고쳤어요. (#15659)- 마스크 표현식이 하부 테이블의 다른 컬럼을 참조할 때 컬럼 마스크가 잘못 적용되던 문제를 고쳤어요. (#15680)
BigQuery 커넥터
- 오류 허용 실행 지원을 추가했어요. (#15620)
- 테이블에 방금 쓰여진 경우
count(*)같은 특정 쿼리에서 잘못된 결과가 나올 수 있던 문제를 고쳤어요. (#14981)
Cassandra 커넥터
- Cassandra
list,map,set타입에 사용자 정의 타입이 포함된 경우 잘못된 결과가 나오던 문제를 고쳤어요. (#15771)
Delta Lake 커넥터
- 비파티션 테이블의
INSERT쿼리 지연 시간을 줄였어요. (#15708) - Parquet 파일 읽기 성능을 개선했어요. (#15498)
- Parquet 리더의 메모리 회계를 개선했어요. (#15554)
- Parquet 파일에 저장된 낮은 카디널리티 문자열 컬럼의 필터·프로젝션이 있는 쿼리의 성능을 개선했어요. (#15269)
- 필터가 있는 쿼리용 Parquet 파일에서 불필요하게 많은 데이터를 읽던 문제를 고쳤어요. (#15552)
BIGINT컬럼에INTEGER범위가 있는 테이블에서 Parquet로 쓸 때 발생할 수 있는 쿼리 실패를 고쳤어요. (#15496)- Parquet 컬럼 인덱스의 null 개수가 없어 발생하던 쿼리 실패를 고쳤어요. (#15706)
Hive 커넥터
- Hudi 커넥터를 사용하는 카탈로그로의 테이블 리다이렉션을 지원해요. (#14750)
- 비파티션 테이블의
INSERT쿼리 지연 시간을 줄였어요. (#15708) - 캐싱 성능을 개선했어요. (#13243)
- Parquet 파일 읽기 성능을 개선했어요. (#15498)
- Parquet 리더의 메모리 회계를 개선했어요. (#15554)
- Parquet 파일에 저장된 낮은 카디널리티 문자열 컬럼의 필터·프로젝션이 있는 쿼리의 성능을 개선했어요. (#15269)
- Parquet 파일에 Bloom 필터 인덱스가 있을 때 필터가 있는 쿼리의 성능을 개선했어요. Parquet 파일의 Bloom 필터 사용은
parquet.use-bloom-filter구성값이나parquet_use_bloom_filter세션 속성으로 끌 수 있어요. (#14428) - Hive
UNIONTYPE과 HiveSTRUCT타입 컬럼 사이의 변환을 허용해요. (#15017) - 필터가 있는 쿼리용 Parquet 파일에서 불필요하게 많은 데이터를 읽던 문제를 고쳤어요. (#15552)
- Parquet 컬럼 인덱스의 null 개수가 없어 발생하던 쿼리 실패를 고쳤어요. (#15706)
- 새 스키마 생성 시 클라이언트 타임아웃으로 인한 잘못된
schema already exists오류를 고쳤어요. (#15174)
Hudi 커넥터
- Parquet 파일 읽기 성능을 개선했어요. (#15498)
- Parquet 리더의 메모리 회계를 개선했어요. (#15554)
- Parquet 파일에 저장된 낮은 카디널리티 문자열 컬럼의 필터·프로젝션이 있는 쿼리의 성능을 개선했어요. (#15269)
- 필터가 있는 쿼리용 Parquet 파일에서 불필요하게 많은 데이터를 읽던 문제를 고쳤어요. (#15552)
- Parquet 컬럼 인덱스의 null 개수가 없어 발생하던 쿼리 실패를 고쳤어요. (#15706)
Iceberg 커넥터
- 컬럼 타입 변경 지원을 추가했어요. (#15515)
- JDBC 카탈로그 지원을 추가했어요. (#9968)
- 비파티션 테이블의
INSERT쿼리 지연 시간을 줄였어요. (#15708) - Parquet 파일 읽기 성능을 개선했어요. (#15498)
- Parquet 리더의 메모리 회계를 개선했어요. (#15554)
- Parquet 파일에 저장된 낮은 카디널리티 문자열 컬럼의 필터·프로젝션이 있는 쿼리의 성능을 개선했어요. (#15269)
- 필터가 있는 쿼리용 Parquet 파일에서 불필요하게 많은 데이터를 읽던 문제를 고쳤어요. (#15552)
- Parquet 컬럼 인덱스의 null 개수가 없어 발생하던 쿼리 실패를 고쳤어요. (#15706)
- 서브쿼리에 타임 트래블이 포함된 경우 쿼리가 실패하던 문제를 고쳤어요. (#15607)
- 다른 쿼리 엔진이
float에서double로 타입을 바꾼 컬럼을 읽을 때 발생하던 실패를 고쳤어요. (#15650) - 파티션 컬럼에서
real·double타입으로NaN을 읽거나 쓸 때 잘못된 결과가 나오던 문제를 고쳤어요. (#15723)
MongoDB 커넥터
mongodb.case-insensitive-name-matching구성값이 켜진 상태에서 스키마를 삭제하려 할 때 스키마가 삭제되지 않던 문제를 고쳤어요. (#15716)
PostgreSQL 커넥터
- 컬럼 타입 변경 지원을 추가했어요. (#15515)
SPI
ConnectorMetadata에서getDeleteRowIdColumnHandle(),beginDelete(),finishDelete(),getUpdateRowIdColumnHandle(),beginUpdate(),finishUpdate()메서드를 제거했어요. (#15161)UpdatablePageSource인터페이스를 제거했어요. (#15161)- 단일 컬럼의 여러 마스크 지원을 제거했어요. (#15680)