Release 317
Release 317 (2019년 8월 1일)
Presto 317 릴리스예요. all_match()·any_match()·none_match() 함수, approx_percentile()의 분수 가중치, 노드 동적 필터링 등이 담겼어요.
본문
General
- 쿼리 문자열에 인코딩된
&나=문자가 포함됐을 때url_extract_parameter()문제를 고쳤어요. - db 리소스 그룹 구성 관리자에서 MBean을 내보내도록 했어요(#1151).
all_match(),any_match(),none_match()함수를 추가했어요(#1045).approx_percentile()에 분수 가중치(fractional weights) 지원을 추가했어요(#1168).- 실험적 WorkProcessor pipelines 기능이 켜져 있으면 semi-join과 필터에 대한 노드 동적 필터링(node dynamic filtering) 지원을 추가했어요(#1075, #1155, #1119).
sql.forced-session-time-zone설정 속성으로 클라이언트의 세션 시간대를 재정의(override)할 수 있게 했어요(#1164).
Web UI
- 스테이지 성능 상세 페이지에서 툴팁 가시성 문제를 고쳤어요(#1113).
- 쿼리 상세 페이지에 계획(planning) 시간을 추가했어요(#1115).
Security
- 파일 기반 커넥터 접근 제어(file-based connector access control)를 쓸 때 스키마 소유자가 스키마를 생성·삭제·이름 변경할 수 있게 했어요(#1139).
- 쿼리를 제출하는 클라이언트의 IP 주소를 가져올 때
X-Forwarded-For헤더를 존중할 수 있게 했어요. 이 정보는 쿼리 이벤트의QueryContext클래스remoteClientAddress필드에서 확인할 수 있어요. 이 동작은dispatcher.forwarded-header설정 속성으로 제어할 수 있는데, 헤더는 Presto 코디네이터가 프록시 뒤에 있을 때만 사용해야 해요(#1033).
JDBC 드라이버
DatabaseMetaData.getURL()이jdbc:접두사를 포함하도록 고쳤어요(#1211).
Elasticsearch 커넥터
- 중첩 필드(nested fields) 지원을 추가했어요(#1001).
Hive 커넥터
- 버킷팅 버전 안전 검사를 고쳐, 지원되지 않는 버킷팅 버전을 사용하는 테이블에 대한 쓰기를 올바르게 거부하도록 했어요(#1199).
- 메타스토어 디버그 로깅이 켜져 있을 때의 메타스토어 오류 처리 문제를 고쳤어요(#1152).
- 특히 S3에서
system.sync_partition_metadata프로시저의 파일 목록 성능을 개선했어요(#1093).
Kudu 커넥터
- Kudu 클라이언트 라이브러리 버전을 1.10.0으로 업데이트했어요(#1086).
MongoDB 커넥터
- 비밀번호에
:이나@문자를 포함할 수 있게 했어요(#1094).
PostgreSQL 커넥터
hstore데이터 타입 읽기 지원을 추가했어요(#1101).
SPI
- 비-레거시 커넥터에 delete를 구현할 수 있게 했어요(#1015).
ConnectorPageSourceProvider에서 더 이상 쓰이지 않는 메서드를 제거했어요(#1095).
더 알아보기 (Learn more)
노드 동적 필터링은 조인·필터 성능을 크게 높이는 기능이에요. approx_percentile()과 동적 필터링의 최신 동작은 Trino 문서를 참고해 보세요.