Release 0.116
Release 0.116
Trino(당시 Presto) 0.116 릴리스의 변경 사항이에요. JSON·VARCHAR 간 캐스트 제거, 클러스터 메모리 관리자 저메모리 킬러, 새 함수가 포함돼요.
출처: 문서
본문
JSON과 VARCHAR 사이의 캐스트 (Cast between JSON and VARCHAR)
JSON과 VARCHAR 사이 양방향 캐스트가 제거됐어요. 스크립트나 뷰에 그러한 캐스트가 있다면, 0.116으로 이동할 때 메시지와 함께 실패해요. 현재 캐스트의 의미를 얻으려면 다음을 사용해요.
CAST(x as JSON)대신JSON_PARSE(x)CAST(x as VARCHAR)대신JSON_FORMAT(x)
향후 릴리스에서 JSON을 포함한 다른 캐스트와 함께 JSON과 VARCHAR 사이의 캐스트를 다시 도입할 계획이에요. 새 JSON·VARCHAR 캐스트의 의미는 도입 중인 다른 캐스트와 일치할 거예요. 하지만 0.115 이하의 의미와는 달라요. 그때가 되면 이전 스크립트와 뷰의 JSON·VARCHAR 캐스트는 예상하지 못한 결과를 낳을 거예요.
클러스터 메모리 관리자 개선 (Cluster memory manager improvements)
클러스터 메모리 관리자에 이제 저메모리 킬러(low memory killer)가 있어요. 클러스터 메모리가 부족해지면 킬러가 처리량을 개선하기 위해 쿼리를 종료해요. query.low-memory-killer.enabled 구성 플래그로 활성화할 수 있고, 클러스터 메모리가 부족해진 시점부터 킬러가 호출될 때까지의 지연은 query.low-memory-killer.delay 옵션으로 구성할 수 있어요.
일반 (General)
multimap_agg()함수를 추가했어요.checksum()함수를 추가했어요.- 두 번째 인자를 받아
n개의 가장 큰 값 또는n개의 가장 작은 값을 만드는max()와min()을 추가했어요. query_max_run_time세션 프로퍼티와query.max-run-time구성을 추가했어요. 지정된 시간이 지나면 쿼리가 실패해요.experimental.cluster-memory-manager-enabled구성을 제거했어요. 클러스터 메모리 관리자는 이제 항상 활성화돼요.task.max-memory구성을 제거했어요.optimizer.optimize-hash-generation과distributed-joins-enabled이제 둘 다 기본으로 활성화돼요.- 상수 조건에 대한
IF최적화를 추가했어요.
더 알아보기 (Learn more)
0.116 릴리스의 변경 사항을 봤어요. 이어서 이전 버전인 Release 0.115를 살펴보면 좋아요.