릴리스 376

릴리스 376 (2022년 4월 7일)

이번 릴리스에서는 테이블 RENAME 리다이렉션 인지, 누락 null 함수 의미론 통일, 그리고 여러 커넥터의 기능 확장이 핵심이에요.

출처: Trino 릴리스 376 문서

본문

일반 (General)

  • RENAME table 작업에 테이블 리다이렉션 인지(redirection awareness)를 추가했어요. (#11277)
  • 커넥터가 이 기능을 지원하지 않으면 주석과 함께 컬럼을 추가하는 것을 거부하도록 했어요. (#11486)
  • 부등식 표현식이 포함된 쿼리의 성능을 개선했어요. (#11518)
  • array_except, array_union, map_concat, map_from_entries, multimap_from_entries, multimap_agg 함수에서 null 값을 동일한 값으로 간주하도록 했어요. (#560)
  • 입력 데이터가 사전 인코딩(dictionary encoded)일 때 DISTINCT .. LIMIT 연산자의 실패를 고쳤어요. (#11776)
  • 입력 데이터가 사전 인코딩일 때 distinct 집계의 잘못된 결과 반환을 고쳤어요. (#11776)
  • 인덱스 조회를 지원하는 커넥터와 조인을 수행할 때 쿼리가 실패하던 문제를 고쳤어요. (#11758)
  • retry-policyTASK로 설정된 상태에서 실행되는 쿼리의 잘못된 스테이지 메모리 통계 보고를 고쳤어요. (#11801)

보안 (Security)

  • LDAP 인증에서 양방향 TLS/SSL 인증서 검증을 지원해요. 또한 ldap.ssl-trust-certificate 구성은 ldap.ssl.truststore.path로 대체됐어요. (#11070)
  • 시스템 역할을 쓰는 카탈로그의 information schema 역할 테이블 오류를 고쳤어요. (#11694)

웹 UI (Web UI)

  • 클러스터의 모든 워커 런타임 정보를 표시하는 새 페이지를 추가했어요. (#11653)

JDBC 드라이버

  • SSLUseSystemTrustStore 매개변수로 시스템 truststore를 사용하는 것을 지원해요. (#10482)
  • ResultSet.getAsciiStream()ResultSet.getBinaryStream()을 지원해요. (#11753)
  • user 속성 요구를 제거했어요. (#11350)

CLI

  • --use-system-truststore 옵션으로 시스템 truststore를 사용하는 것을 지원해요. (#10482)

Accumulo 커넥터

  • 스키마 추가·삭제 지원을 추가했어요. (#11808)
  • 존재하지 않는 스키마에서 테이블을 만드는 것을 금지했어요. (#11808)

ClickHouse 커넥터

  • 새 테이블 생성 시 컬럼 주석을 지원해요. (#11606)
  • 새 컬럼 추가 시 컬럼 주석을 지원해요. (#11606)

Delta Lake 커넥터

  • 오류 허용 실행으로 Delta Lake 테이블의 INSERT, UPDATE, DELETE 쿼리를 지원해요. (#11591)
  • delta.dynamic-filtering.wait-timeout 구성값으로 동적 필터링 완료 시간을 설정할 수 있게 했어요. (#11600)
  • ALTER TABLE ... EXECUTE optimize 후 항상 트랜잭션 로그 체크포인트를 만들어 쿼리 계획 시간을 개선했어요. (#11721)
  • 자동 커밋 모드가 꺼진 상태에서 Delta Lake 테이블 읽기를 지원해요. (#11792)

Hive 커넥터

  • 실제 min·max 값이 64바이트를 초과해도 문자열 컬럼의 파일 min/max ORC 통계를 저장하도록 했어요. 이로써 그런 컬럼으로 필터링할 때 쿼리 성능이 개선돼요. (#11652)
  • Parquet 데이터를 읽을 때 성능을 개선했어요. (#11675)
  • 같은 테이블이 쿼리 안에서 여러 번 참조될 때 쿼리 성능을 개선했어요. (#11650)

Iceberg 커넥터

  • Iceberg Glue 카탈로그를 쓸 때 뷰를 지원해요. (#11499)
  • 삭제 파일(deleteion files)이 포함된 Iceberg v2 테이블 읽기를 지원해요. (#11642)
  • Hive 커넥터로의 테이블 리다이렉션을 지원해요. (#11356)
  • Hive 카탈로그에서 테이블을 나열할 때 비Iceberg 테이블을 포함하도록 했어요. (#11617)
  • $partitions 메타데이터 테이블에 nan_count를 노출했어요. (#10709)
  • 실제 min·max 값이 64바이트를 초과해도 문자열 컬럼의 파일 min/max ORC 통계를 저장하도록 했어요. 이로써 그런 컬럼으로 필터링할 때 쿼리 성능이 개선돼요. (#11652)
  • Parquet 데이터를 읽을 때 성능을 개선했어요. (#11675)
  • Iceberg 데이터 파일에 null 개수 통계가 없을 때 발생하던 NPE를 고쳤어요. (#11832)

Kudu 커넥터

  • 주석과 함께 컬럼을 추가하는 것을 지원해요. (#11486)

MySQL 커넥터

  • 계산을 MySQL 데이터베이스로 프러시다운해 조인이 포함된 쿼리의 성능을 개선했어요. (#11638)

Oracle 커넥터

  • 집계 계산을 Oracle 데이터베이스로 프러시다운해 집계가 포함된 쿼리의 성능을 개선했어요. (#11657)

SPI

  • 코디네이터에서만 실행되는 테이블 프로시저를 지원해요. (#11750)

더 알아보기 (Learn more)