2022_05 번들¶
이 항목에서는 다음과 같이 그달의 동작 변경 사항(있는 경우)을 설명합니다.
사용되지 않게 된 기능.
활성화된 번들 변경 사항.
번들로 제공되지는 않고 구현된 기타 변경 사항.
이러한 변경 사항에 대해 궁금한 점이 있으면 Snowflake 지원 에 문의하십시오.
이 달에 도입된 새로운 기능, 개선된 사항, 수정 사항에 대한 자세한 내용은 2022년 8월 문서를 참조하십시오.
중요
별도로 명시되는 경우를 제외하고, 이러한 변경 사항은 6.29 릴리스에서 기본적으로 활성화되는 2022_05 번들에 포함됩니다.
이 항목의 내용:
보안 변경 사항¶
키 페어 인증: 발행 시간은 1일 이내여야 함¶
JSON 웹 토큰(JWT)을 사용한 키 페어 인증이 다음과 같이 변경되었습니다.
- 이전:
발행 시간 및 만료 시간을 초 단위로 지정해 JWT 토큰을 제출할 수 있었습니다. 이러한 값이 밀리초 단위로 제출된 경우 Snowflake는 밀리초 값을 초 단위의 값인 것처럼 처리했습니다.
JWT 토큰의 발행 시간을 미래 시간으로 지정할 수 있었습니다.
- 현재:
이제는 밀리초 또는 초 단위의 발행 시간과 만료 시간으로 JWT 토큰을 제출할 수 있습니다.
더 이상 발행 시간을 미래 시간으로 지정한 JWT 토큰을 제출할 수 없습니다. 필요한 경우 발행 시간 값이 미래 시점이 되지 않도록 토큰 생성 프로세스를 업데이트하십시오.
SQL 변경 사항 — 일반¶
트랜잭션 ID 및 타임스탬프 변경 사항¶
트랜잭션 ID의 크기가 늘었으며 일부 시스템 함수에서 반환되는 타임스탬프의 정밀도가 향상되었습니다.
- 이전:
트랜잭션 ID 값이 약 13자리였습니다.
타임스탬프의 정밀도는 밀리초였습니다.
- 현재:
이제는 트랜잭션 ID가 부호 있는 64비트(long) 정수입니다. 값 범위는
-9,223,372,036,854,775,808 (-263)
에서9,223,372,036,854,775,807 (263 – 1)
까지입니다.타임스탬프는 나노초 정밀도로 변환됩니다.
이 변경 사항은 다음과 같은 영향을 줍니다.
다음 명령과 함수에 대한 트랜잭션 ID는 이전 값보다 약 백만 배 더 큽니다.
SHOW TRANSACTIONS (
id
열)DESCRIBE TRANSACTION (
id
열)CURRENT_TRANSACTION (함수의 출력)
LAST_TRANSACTION (함수의 출력)
SHOW LOCKS (
transaction
열)
다음 시스템 함수에 대한 타임스탬프 출력값이 밀리초에서 나노초 정밀도로 변환되었습니다.
SYSTEM$LAST_CHANGE_COMMIT_TIME (함수의 출력)
SYSTEM$STREAM_GET_TABLE_TIMESTAMP (함수의 출력)
SQL 변경 사항 — 명령 및 함수¶
GET_DDL 함수: 큰따옴표와 마침표를 포함한 식별자의 출력 변경 사항¶
GET_DDL 함수의 출력이 다음과 같이 변경되었습니다.
- 이전:
문자열에 큰따옴표가 포함된 경우 GET_DDL은 오브젝트 또는 열 이름을 올바르게 반환하지 않았습니다. 이름에 큰따옴표가 포함된 경우 큰따옴표 앞에 또 다른 큰따옴표가 있어야 하므로 큰따옴표 쌍을 포함하는 문자열이 됩니다. 하지만 이 함수는 큰따옴표 중 하나만 반환했습니다.
예를 들어
"foo""one"
이라는 테이블이 있는데, 이 테이블에서 GET_DDL을 실행하면"foo"one"
이라는 잘못된 테이블 이름이 잘못 반환되었습니다. 결과적으로 함수 출력값을 사용하여 테이블을 다시 만들 수 없습니다.또한 GET_DDL은 물론이고 정규화된 오브젝트 이름을 문자열로 허용하는 다른 함수도 마침표가 이름의 시작 부분에 있거나 문자열에서 큰따옴표 바로 뒤에 오면 지정된 이름을 구문 분석할 수 없었습니다.
예를 들어 다음 문자열은 오브젝트 이름으로 지원되지 않았습니다.
".foo"
("
는 스키마 이름으로,FOO"
는 오브젝트 이름으로 구문 분석됨)"public"".foo"
(public"
은 스키마 이름으로,FOO"
는 오브젝트 이름으로 구문 분석됨)
- 현재:
GET_DDL이 큰따옴표를 포함한 오브젝트 및 열 이름을 정확하고 성공적으로 반환합니다.
또한 GET_DDL은 물론이고 정규화된 오브젝트 이름을 허용하는 다른 함수도 이름의 시작 부분이나 문자열에서 큰따옴표 바로 뒤에 마침표를 포함하는 지정된 오브젝트 이름을 구문 분석할 수 있습니다.
SQL 변경 사항 — Usage 뷰 및 Information Schema 뷰/테이블 함수¶
FUNCTIONS 뷰(Information Schema): 뷰의 새 열¶
Information Schema FUNCTIONS 뷰의 출력에는 이제 다음과 같은 새 열이 포함됩니다.
열 이름 |
데이터 타입 |
설명 |
---|---|---|
PACKAGES |
STRING |
함수에서 요청한 패키지를 지정합니다. |
RUNTIME_VERSION |
STRING |
함수의 런타임 버전을 지정합니다. 함수가 SQL 또는 Javascript인 경우 NULL입니다. |
INSTALLED_PACKAGES |
STRING |
함수로 설치된 모든 패키지를 나열합니다. Python 함수에 대한 출력 전용입니다. |
데이터 파이프라인 변경 사항¶
DESCRIBE STREAM/SHOW STREAMS 명령: 출력의 새 INVALID_REASON 열¶
DESCRIBE STREAM 및 SHOW STREAMS 명령의 출력에는 이제 다음의 열이 포함됩니다.
열 이름 |
데이터 타입 |
설명 |
---|---|---|
INVALID_REASON |
STRING |
스트림의 내용을 성공적으로 쿼리할 수 없는 이유를 명시합니다. 이 열은 향후 기능을 지원하기 위해 도입되었습니다. 이 열이 도입될 경우 유일하게 반환되는 값은 N/A입니다. |
이 변경 사항이 미치는 영향을 제한하기 위해 새 열은 출력의 마지막 열로 추가되었습니다.
데이터 레이크 변경 사항¶
SHOW EXTERNAL TABLES 명령: LOCATION 열은 데이터 컨슈머에 대해 NULL을 반환합니다.¶
공급자는 Snowflake Secure Data Sharing을 통해 컨슈머 계정에 대한 공유에 다른 데이터베이스 오브젝트 중에서 외부 테이블을 포함할 수 있습니다.
컨슈머 계정의 사용자가 SHOW EXTERNAL TABLES 명령을 실행할 때 공유 외부 테이블에 대한 출력이 다음과 같이 변경되었습니다.
- 이전:
LOCATION 열에 가져온 공유의 외부 테이블에 대한 외부 테이블 정의에 있는 외부 스테이지 및 폴더 경로(즉, 컨슈머 계정의 외부 테이블에 대해 반환된 동일한 정보)가 표시되었습니다.
- 현재:
LOCATION 열에 가져온 공유의 외부 테이블에 대해 NULL이 표시됩니다.
Snowflake CLI, 커넥터, 드라이버 및 SQL API 변경 사항¶
Snowflake SQL API: 이전 엔드포인트 제거¶
Snowflake SQL API 의 사용되지 않는 기존 엔드포인트는 더 이상 제공되지 않습니다. 다음 엔드포인트가 그 대상에 포함됩니다.
/api/statements/
/api/statements/<statementHandle>
/api/statements/<statementHandle>/cancel
이제는 이러한 엔드포인트를 호출하면 HTTP 404 오류 코드가 반환됩니다.
SQL API의 최신 버전을 사용 중인지 확인해야 합니다. 자세한 내용은 SQL API 엔드포인트 정보를 참조하십시오.