Release 314

Release 314 (2019년 6월 7일)

Presto 314 릴리스예요. ROW 필드에 대한 위치 기반 접근(subscript), delete pushdown 지원, LZ4·ZSTD 압축 Parquet 읽기 지원 등이 담겼어요.

출처: Trino Release 314

본문

General

  • NULL 값을 포함하는 BETWEEN의 잘못된 결과를 고쳤어요(#877).
  • 코디네이터의 쿼리 기록 누수(query history leak)를 고쳤어요(#939, #944).
  • 유휴 클라이언트(클라) 타임아웃 처리를 고쳤어요(#947).
  • json_parse() 함수 성능을 개선했어요(#904).
  • EXPLAIN 출력에서 계획 구조를 시각화했어요(#888).
  • 서브스크립트 연산자로 ROW 필드에 위치 기반 접근(positional access)을 지원하게 됐어요(#860).

CLI

  • JSON 출력 형식을 추가했어요(#878).

Web UI

  • UI의 대기 쿼리(queued queries) 카운터를 고쳤어요(#894).

Server RPM

  • http-request.log의 기본 위치를 /var/log/presto로 변경했어요. 이전에는 기본적으로 /var/lib/presto/data/var/log에 있었어요(#919).

Hive 커넥터

  • Derby와 Oracle을 포함한 특정 데이터베이스에서 Hive 2.3+ 메타스토어의 테이블·뷰 나열 문제를 고쳤어요. SHOW TABLES, SHOW VIEWS, information_schema.tables 테이블 읽기가 고쳐져요(#833).
  • Hive SERDEPROPERTIESavro.schema.url이 정의된 Avro 테이블 처리 문제를 고쳤어요(#898).
  • ORC 블룸 필터(bloom filters)가 무시되던 회귀를 고쳤어요(#921).
  • LZ4와 ZSTD 압축 Parquet 데이터 읽기 지원을 추가했어요(#910).
  • ZSTD 압축 ORC 데이터 쓰기 지원을 추가했어요(#910).
  • hive.compression-codec 설정 옵션으로 ZSTD와 LZ4를 기본 압축 방법으로 설정하는 것을 지원하게 됐어요(#910).
  • 헤더나 푸터가 있는 텍스트 형식 테이블에 삽입하는 것을 허용하지 않도록 했어요(#891).
  • 텍스트 형식 테이블의 헤더·푸터 줄 수를 지정하는 textfile_skip_header_line_counttextfile_skip_footer_line_count 테이블 속성을 추가했어요(#845).
  • split 발견율을 제한해 파일 시스템 부하를 줄일 수 있는 hive.max-splits-per-second 설정 속성을 추가했어요(#534).
  • insert 쿼리에서 파티션되지 않은 테이블 덮어쓰기를 지원하게 됐어요(#924).

PostgreSQL 커넥터

  • 내부 타입 이름으로 선언된 PostgreSQL 배열을 지원하게 됐어요. 예를 들어 int[] 대신 _int4 같은 형식이에요(#659).

Elasticsearch 커넥터

  • 혼합 대소문자(mixed-case) 필드 이름 지원을 추가했어요(#887).

Base-JDBC 커넥터 라이브러리

  • 커넥터가 NULL 값을 저장하는 방식을 커스터마이즈할 수 있게 했어요(#918).

SPI

  • 실행된 prepared statement의 SQL 텍스트를 EventListener에 노출했어요(#908).
  • ConnectorMetadata.makeCompatiblePartitioning()에 대한 더 이상 쓰이지 않는 테이블 레이아웃을 deprecate했어요(#689).
  • ConnectorMetadata.applyDelete()ConnectorMetadata.executeDelete() 메서드를 통해 커넥터로의 delete pushdown 지원을 추가했어요(#689).
  • 분산 테이블(distributed tables)이 없는 커넥터를 허용하게 됐어요(#893).

더 알아보기 (Learn more)

ROW 필드의 위치 기반 접근과 delete pushdown은 최신 Trino SQL·SPI 문서에서 자세히 확인할 수 있어요. Hive 커넥터의 압축 코덱 설정도 운영에 유용한 주제예요.