2022_07 번들¶
이 항목에서는 다음과 같이 그달의 동작 변경 사항(있는 경우)을 설명합니다.
사용되지 않게 된 기능.
활성화된 번들 변경 사항.
번들로 제공되지는 않고 구현된 기타 변경 사항.
이러한 변경 사항에 대해 궁금한 점이 있으면 Snowflake 지원 에 문의하십시오.
이 달에 도입된 새로운 기능, 개선된 사항, 수정 사항에 대한 자세한 내용은 2022년 10월 문서를 참조하십시오.
중요
별도로 명시되는 경우를 제외하고, 이러한 변경 사항은 6.35 릴리스에서 기본적으로 활성화되는 2022_07 번들에 포함됩니다.
이 항목의 내용:
SQL 변경 사항 — 명령 및 함수¶
CREATE MATERIALIZED VIEW 명령: Time Travel 절이 더 이상 허용되지 않음¶
구체화된 뷰의 한 가지 제한 사항은 Time Travel이 지원되지 않는다는 점입니다. 하지만 CREATE MATERIALIZED VIEW 명령을 실행할 때 뷰의 기본 테이블에 대해 Time Travel 절(예: AT
)을 지정할 수 있었습니다.
CREATE MATERIALIZED VIEW에서 Time Travel 절을 지정하면 지금은 오류가 발생합니다.
- 이전:
CREATE MATERIALIZED VIEW에서 Time Travel 절을 지정해도 오류가 발생하지 않았습니다.
예를 들어 다음 문은 어떤 오류도 없이 성공적으로 실행되었습니다.
예 1:
create or replace materialized view mv as select * from basetbl at(offset => -2);
예 2:
create or replace materialized view mv as select * from basetbl at(timestamp => $ts);
예 3:
create or replace materialized view mv as select * from basetbl at(statement => $uuid_dml);
- 현재:
CREATE MATERIALIZED VIEW에서 Time Travel 절을 지정하면 지금은 다음 오류가 발생합니다.
002274 (42601): SQL compilation error: Invalid materialized view: Time travel on base table in line X at position Y.
SQL 변경 사항 — Usage 뷰 및 Information Schema 뷰/테이블 함수¶
GRANT_TO_ROLES 뷰(Account Usage): 뷰 변경 사항¶
ACCOUNT_USAGE.GRANTS_TO_ROLES 뷰에 다음 변경 사항이 도입되었습니다.
- 이전:
뷰의 출력에 임시 테이블에 대한 역할에 부여된 권한이 포함되었습니다.
- 현재:
뷰의 출력에 임시 테이블에 대한 역할에 부여된 권한이 포함되지 않습니다.
데이터 레이크 변경 사항¶
CREATE EXTERNAL TABLE 명령: 사용자가 지정한 파티션과 자동으로 새로 고쳐진 메타데이터¶
외부 테이블에 있는 파티션을 사용자 지정으로 정의한다는 것은 식과 일치하는 외부 저장소 위치에 있는 모든 새 파일의 파티션을 자동으로 추가하기보다는 파티션을 선택적으로 추가 및 제거한다는 것을 의미합니다. 외부 테이블을 만들 때 PARTITION_TYPE = USER_SPECIFIED
매개 변수를 포함함으로써 이 파티션 유형을 지정합니다. 사용자 지정 분할은 외부 테이블 메타데이터의 자동 새로 고침을 지원하지 않습니다.
PARTITION_TYPE = USER_SPECIFIED
및 AUTO_REFRESH = TRUE
매개 변수가 모두 설정된 상태에서 CREATE EXTERNAL TABLE 문을 실행할 때 동작이 다음과 같이 변경되었습니다.
- 이전:
CREATE EXTERNAL TABLE 문이 성공했지만, 외부 테이블에 대해 클라우드 저장소에서 수신된 모든 이벤트 알림(예: “새 오브젝트” 메시지)은 오류를 생성했습니다.
- 현재:
CREATE EXTERNAL TABLE 문은 사용자 오류를 반환합니다.
GET_DDL 함수: Delta Lake의 외부 테이블에 대한 TABLE_FORMAT 매개 변수를 반환함¶
GET_DDL 함수에 대한 입력이 Delta Lake 테이블을 참조하는 외부 테이블일 때 함수에서 반환된 CREATE EXTERNAL TABLE 문이 다음과 같이 변경되었습니다.
- 이전:
이 문은 Delta Lake 테이블을 참조하는 것으로 외부 테이블을 식별하는
TABLE_FORMAT = DELTA
매개 변수를 생략했습니다.- 현재:
이 문은
TABLE_FORMAT = DELTA
매개 변수를 포함합니다.
확장성 변경 사항¶
Python용 Snowpark: 유효하지 않은 패키지를 추가할 때 더 일찍 오류를 반환함¶
Python 패키지를 Python Snowpark 세션에 추가할 때 Snowflake에서 그 패키지나 패키지의 지정된 버전을 지원하지 않으면 사용자에게 오류 메시지가 표시됩니다.
오류 메시지가 수신된 시간이 이전으로 변경되었습니다.
- 이전:
사용자가 UDF 또는 저장 프로시저를 등록하려고 할 때만 오류가 수신되었습니다.
- 현재:
add_packages를 사용하여 Python 패키지를 추가할 때는 오류가 더 일찍 발생합니다.
예를 들어,
"session.add_packages('numpy==21.21.21')"
을 호출하면 패키지 버전이 유효하지 않으므로"ValueError"
가 됩니다.
Scala 및 Java용 Snowpark: DeleteResult, MergeResult, UpdateResult에 있는 멤버의 유형 변경¶
Snowpark Scala 및 Java API에서 DeleteResult
, MergeResult
및 UpdateResult
클래스는 삽입, 업데이트, 삭제된 행의 수를 반환하는 값 멤버 및 getter 메서드를 제공합니다.
Snowpark Scala API에서 이러한 값 멤버의 이름이 다음으로 지정됩니다.
rowsInserted
multiJoinedRowsUpdated
rowsUpdated
rowsDeleted
Snowpark Java API에서 이러한 getter 메서드의 이름이 다음으로 지정됩니다.
getRowsInserted
getMultiJoinedRowsUpdated
getRowsUpdated
getRowsDeleted
Scala 및 Java용 Snowpark 라이브러리의 1.7.0 릴리스에서 이러한 값 멤버의 유형과 이러한 getter 메서드의 반환 유형이 변경되었습니다.
- 1.7.0 이전:
Scala API에서 유형은
Int
입니다.Java API에서 유형은
int
입니다.
- 1.7.0부터 시작:
Scala API에서 유형은
Long
입니다.Java API에서 유형은
long
입니다.