릴리스 0.126
릴리스 0.126 (Release 0.126)
이 릴리스에서는 일반 기능과 Hive 커넥터에 걸쳐 여러 수정과 개선이 들어 있어요. 오류 위치 정보, 파서·플래너 수정, 몇 가지 편의 기능 추가가 핵심이에요.
출처: 문서
본문
일반 (General)
- 의미(semantic) 오류에 오류 위치 정보(행 번호와 열 번호)를 추가했어요.
- 스키마가 선택되지 않은 상태에서 tab 완성 기능을 사용하다 CLI가 크래시하던 문제를 고쳤어요.
- CLI에서
USE를 실행할 때 세션 프로퍼티가 리셋되던 문제를 고쳤어요. - 프로젝션 push down 최적화의 버그로 가끔 쿼리 계획 수립이 실패하던 문제를 고쳤어요.
- 표현식에
POSITION(x in (y))형태가 포함됐을 때 파싱이 되지 않던 문제를 고쳤어요. - 정확도(accuracy) 파라미터를 받는 새 버전의
approx_percentile()을 추가했어요. INSERT쿼리에서 컬럼 이름을 지정할 수 있게 됐어요.- blackhole 커넥터에
field_length테이블 프로퍼티를 추가해 생성되는VARCHAR와VARBINARY필드의 크기를 제어할 수 있게 했어요. - Teradata 함수 플러그인을 서버 패키지에 포함시켰어요.
- 윈도우 함수를 사용하는 쿼리의 성능을 높일 수 있는 물리 프로퍼티 처리 방식을 개선했어요.
- 인덱스 조인 조회와 캐시를 태스크 내에서 공유할지 제어하는 기능을 추가했어요. 이를 통해 인덱스 캐시 히트 또는 더 높은 CPU 병렬성을 최적화할 수 있어요. 이 옵션은
task.share-index-loading설정 프로퍼티 또는task_share_index_loading세션 프로퍼티로 전환해요. - Tableau 웹 커넥터를 추가했어요.
- 상수 값 목록이 큰
IN표현식을 사용하는 쿼리의 성능을 개선했어요. - 모든 비교 가능하고 동등(equatable)한 타입에 대해 커넥터 프레디킷 push down을 활성화했어요.
UNNEST의 출력 컬럼에GROUP BY,DISTINCT같은 특정 연산을 사용할 때 쿼리 계획 수립이 실패하던 문제를 고쳤어요.ExchangeClient에서maxResponseSize를 설정값보다 약간 작게 잡아PageTooLargeException이 발생할 가능성을 줄였어요.- 코디네이터의 메모리 누수를 고쳤어요.
- 테이블 프로퍼티 이름에 대한 검증(validation)을 추가했어요.
Hive
- Parquet에서 null을 포함하는 구조적 타입을 읽지 못하던 문제를 고쳤어요.
- 타임존 오프셋이 음수일 때
DATE타입을 쓰지 못하던 문제를 고쳤어요. 이전 버전에서는 날짜가 하루 어긋나게(off by one) 저장됐어요. - 기존 테이블에 추가한
VARCHAR컬럼을 조회할 수 없던 문제를 고쳤어요. - 초기 split이 과도하게 생성되던 문제를 고쳤어요.
hive.immutable-partitions설정 프로퍼티가 파티션되지 않은 테이블에도 적용되도록 고쳤어요.DELETE쿼리에서VARCHAR가 아닌 컬럼을 허용하게 됐어요.- parquet 테이블에서
DATE컬럼을 파티션 컬럼으로 지원하게 됐어요. - 파티션 컬럼이 테이블 컬럼이기도 한 경우의 오류 메시지를 개선했어요.
더 알아보기 (Learn more)
이어서 다음 릴리스 노트를 보면 버전별 변화 흐름을 파악할 수 있어요. 오류 위치 정보와 프레디킷 push down처럼 이어지는 개선 사항이 궁금하다면 릴리스 0.127로 이어가 보세요.