Release 0.102
Release 0.102
Trino(당시 Presto) 0.102 릴리스의 변경 사항이에요. 모든 문자열 함수의 유니코드 지원, 정규식 함수 재작성, 다양한 일반·Hive 개선이 포함돼요.
출처: 문서
본문
유니코드 지원 (Unicode support)
모든 문자열 함수를 유니코드를 지원하도록 업데이트했어요. 함수들은 문자열이 유효한 UTF-8 인코딩 코드 포인트를 담고 있다고 가정해요. 유효한 UTF-8에 대한 명시적 검사는 없으며, 유효하지 않은 UTF-8에서는 함수가 잘못된 결과를 반환할 수 있어요. 유효하지 않은 UTF-8 데이터는 from_utf8()로 교정할 수 있어요.
또한 함수들은 사용자가 보는 문자(또는 grapheme cluster)가 아니라 유니코드 코드 포인트를 기준으로 동작해요. 일부 언어는 여러 코드 포인트를 하나의 사용자 인지 문자로 결합하는데, 함수들은 각 코드 포인트를 별도의 단위로 취급해요.
정규식 함수 (Regular expression functions)
모든 정규식 함수를 성능 개선을 위해 다시 작성했어요. 새 버전은 자주 두 배 빠르고, 어떤 경우에는(이차 동작 제거로) 여러 자릿수만큼 더 빠를 수 있어요. 이 변경은 문서에 설명된 몇 가지 사소한 비호환성을 도입했어요.
일반 (General)
- 파티셔닝된 right outer join 지원을 추가했어요. 내부 측에서 더 큰 테이블을 조인할 수 있게 해줘요.
- full outer join 지원을 추가했어요.
- JDBC 드라이버에서 boolean을 숫자로 반환하는 것을 지원해요.
- 값이 발견되지 않고
NULL이 있었다면contains()가NULL을 반환하도록 수정했어요. DESCRIBE에서 중첩 ROW 렌더링을 수정했어요.array_join()을 추가했어요.- map 첨자 연산자를 최적화했어요.
from_utf8()과to_utf8()함수를 추가했어요.task.writer-count를 설정하는task_writer_count세션 프로퍼티를 추가했어요.ARRAY(F)에서ARRAY(T)로의 캐스트를 추가했어요.ARRAY요소 타입으로의 암시적 강제 변환(implicit coercion)을 확장했어요.VALUES표현식에서 암시적 강제 변환을 구현했어요.- 스케줄러의 잠재적 교착 상태를 수정했어요.
Hive
PrestoS3FileSystem에서 더 많은 메트릭을 수집해요.PrestoS3FileSystem에서 seek할 때 재시도하도록 했어요.PrestoS3FileSystem에서InvalidRange오류를 무시하도록 했어요.PrestoS3FileSystem에서 rename과 delete를 구현했어요.SHOW TABLES FROM schema실행 시 assertion 실패를 수정했어요.- ORC 파일을 읽을 때 S3 소켓 누수를 수정했어요.
더 알아보기 (Learn more)
0.102 릴리스의 변경 사항을 봤어요. 이어서 이전 버전인 Release 0.101을 살펴보면 좋아요.