2022_04 번들

이 항목에서는 다음과 같이 그달의 동작 변경 사항(있는 경우)을 설명합니다.

  • 사용되지 않게 된 기능.

  • 활성화된 번들 변경 사항.

  • 번들로 제공되지는 않고 구현된 기타 변경 사항.

이러한 변경 사항에 대해 궁금한 점이 있으면 Snowflake 지원 에 문의하십시오.

이 달에 도입된 새로운 기능, 개선된 사항, 수정 사항에 대한 자세한 내용은 2022년 7월 문서를 참조하십시오.

중요

별도로 명시되는 경우를 제외하고, 이러한 변경 사항은 6.25 릴리스에서 기본적으로 활성화되는 2022_04 번들에 포함됩니다.

이 항목의 내용:

SQL 변경 사항 — 일반

영구 하위 테이블이 있는 영구 스키마를 복제하여 일시적 스키마 만들기

영구 스키마를 복제하여 일시적 스키마를 만들면 스키마의 하위 오브젝트도 복제됩니다.

복제된 일시적 스키마에서 하위 테이블 오브젝트의 유형이 다음과 같이 변경되었습니다.

이전:

원본 스키마의 모든 영구 테이블은 대상 스키마에서 영구 테이블로 복제되었고, 모든 일시적 테이블은 일시적 테이블로 복제되었습니다.

현재:

원본 스키마의 모든 영구 테이블은 대상 스키마에서 일시적 테이블로 복제됩니다.

SQL 변경 사항 — 명령 및 함수

SHOW EXTERNAL TABLES 명령: 출력의 새 열

다음 두 개의 새 열이 SHOW EXTERNAL TABLES 명령의 출력에 추가되었습니다.

  • TABLE_FORMAT

  • LAST_REFRESH_DETAILS

이 변경 사항이 미치는 영향을 제한하기 위해 새 열은 출력의 마지막 열로 추가되었습니다.

이런 열은 향후 도입되는 기능을 지원하기 위해 추가되었습니다.

SHOW SCHEMAS 명령: 스키마의 RETENTION_TIME 출력으로 변경

DATA_RETENTION_TIME_IN_DAYS 설정이 0인 데이터베이스의 스키마에 대한 SHOW SCHEMAS 명령의 출력에서 RETENTION_TIME 열의 값이 다음과 같이 변경되었습니다.

이전:

RETENTION_TIME 값은 빈 문자열입니다.

현재:

RETENTION_TIME 값은 0입니다.

SHOW WAREHOUSES 명령: 출력의 새 열

Query Acceleration Service 기능이 활성화된 계정에 대한 SHOW WAREHOUSES 명령의 출력에 다음의 새 열이 추가되었습니다.

열 이름

설명

enable_query_acceleration

웨어하우스에 대해 Query Acceleration Service가 사용되는지 여부입니다.

query_acceleration_max_scale_factor

Query Acceleration Service의 최대 배율입니다.

comment 열과 resource_monitors 열 사이에 새 열이 추가되었습니다. SHOW WAREHOUSES 명령의 출력에 의존하는 쿼리는 열 출력에 대해 하드 코딩된 인덱스가 아닌 열 이름을 사용해야 합니다.

GET_DDL 함수: 함수와 프로시저의 출력 변경 사항

현재, GET_DDL 함수를 호출하여 UDF, 외부 함수 또는 저장 프로시저를 생성한 DDL 문을 가져올 때 함수 또는 프로시저의 이름이 따옴표로 묶이지 않은 오브젝트 식별자에 대한 규칙을 따르더라도 해당 이름은 큰따옴표로 묶입니다.

함수 또는 프로시저의 정규화된 이름을 반환하는(즉, TRUE를 세 번째 인자로 사용하여 GET_DDL을 호출하는) 경우에 이 출력이 변경되었습니다.

이전:

GET_DDL은 함수 또는 프로시저의 이름을 따옴표로 묶어 반환했습니다.

+-------------------------------------------------------+
| GET_DDL('FUNCTION', 'MYFUNC(FLOAT)', TRUE)            |
|-------------------------------------------------------|
| CREATE OR REPLACE FUNCTION MYDB.MYSCHEMA."MYFUNC" ... |
+-------------------------------------------------------+
Copy
현재:

GET_DDL은 함수 또는 프로시저의 이름을 따옴표 없이 반환합니다.

+-------------------------------------------------------+
| GET_DDL('FUNCTION', 'MYFUNC(FLOAT)', TRUE)            |
|-------------------------------------------------------|
| CREATE OR REPLACE FUNCTION MYDB.MYSCHEMA.MYFUNC ...   |
+-------------------------------------------------------+
Copy

이는 함수나 프로시저의 정규화된 이름을 반환하는 경우에만 영향을 미칩니다. GET_DDL에 대한 세 번째 인자를 생략하거나 FALSE를 지정하면 GET_DDL은 함수 또는 프로시저의 이름을 따옴표로 묶어 반환합니다.

+-------------------------------------------------------+
| GET_DDL('FUNCTION', 'MYFUNC(FLOAT)')                  |
|-------------------------------------------------------|
| CREATE OR REPLACE FUNCTION "MYFUNC" ...               |
+-------------------------------------------------------+
Copy

SQL 변경 사항 — Usage 뷰 및 Information Schema 뷰/테이블 함수

POLICY_REFERENCES 뷰(Account Usage): 새 열

태그 기반 마스킹 정책을 지원하기 위해, 이제 POLICY_REFERENCES 뷰(공유 SNOWFLAKE 데이터베이스의 ACCOUNT_USAGE 스키마에 있음)에 다음 열이 포함됩니다.

  • 태그_이름

  • tag_database

  • tag_schema

  • policy_status

이러한 새 열이 있을 때는 다음 사항에 유의하십시오.

  • 열, 열의 데이터 타입, 설명이 Information Schema POLICY_REFERENCES 테이블 함수의 동일한 열과 일치합니다.

  • 뷰의 기존 행에 대해, Snowflake는 새 열에 대해 NULL을 반환합니다.

  • 이 업데이트는 뷰에 새 열만 추가합니다. Snowflake 계정이 Enterprise Edition 또는 그 이상인 경우 이 동작 변경 사항을 활성화하지 않고 태그 기반 마스킹 정책 기능을 사용할 수 있습니다.

이 변경 사항이 미치는 영향을 제한하기 위해 이러한 새 열은 출력의 마지막 열로 추가되었습니다.

QUERY_HISTORY 뷰(Account Usage): 새 열

Account Usage QUERY_HISTORY 뷰에 다음의 새 열이 추가되었습니다.

열 이름

데이터 타입

설명

QUERY_ACCELERATION_BYTES_SCANNED

NUMBER

Query Acceleration Service에서 스캔한 바이트의 수입니다. 쿼리가 가속화되지 않은 경우 기본값은 0입니다.

QUERY_ACCELERATION_PARTITIONS_SCANNED

NUMBER

쿼리 가속 서비스에서 스캔한 파티션의 수입니다. 쿼리가 가속화되지 않은 경우 기본값은 0입니다.

QUERY_ACCELERATION_UPPER_LIMIT_SCALE_FACTOR

NUMBER

쿼리가 혜택을 받았을 상한 배율입니다. 쿼리가 가속화되지 않은 경우 기본값은 0입니다.

이 변경 사항이 미치는 영향을 제한하기 위해 새 열은 출력의 마지막 열로 추가되었습니다.

데이터 파이프라인 변경 사항

ALTER STREAM 명령: APPEND_ONLY 또는 INSERT_ONLY 매개 변수 설정이 더 이상 허용되지 않음

스트림이 생성된 후에는 스트림 유형을 변경할 수 없습니다. 스트림이 생성될 때 유형은 다음과 같이 설정됩니다.

  • Append-only 스트림을 생성하려면 APPEND_ONLY = TRUE를 설정하십시오.

  • Insert-only 스트림을 생성하려면 INSERT_ONLY = TRUE를 설정하십시오.

  • 표준(델타) 스트림을 생성하려면 두 매개 변수를 모두 생략하십시오.

ALTER STREAM 명령을 사용하여 기존 스트림의 유형을 변경하려고 하면 이제 사용자 오류가 반환됩니다.

기존 스트림의 유형을 변경하려면 (CREATE OR REPLACE STREAM 을 사용해) 스트림을 다시 만들고 원하는 스트림 유형을 지정해야 합니다.

작업: 오류 메시지 변경

서버리스 작업(즉, Snowflake 관리 컴퓨팅 리소스를 사용하여 실행하는 작업)과 관련된 잘못된 SQL 동작을 시도할 때 반환되는 사용자 오류 메시지가 다음과 같이 변경되었습니다.

  • 사용 사례 1: 전역 EXECUTE MANAGED TASK 권한이 부여되지 않은 역할을 사용하여 CREATE TASK 문을 실행하고 WAREHOUSE 매개 변수를 생략합니다.

    이전 오류 텍스트:

    Missing option(s): [WAREHOUSE]

    현재 오류 텍스트:

    WAREHOUSE not specified and missing serverless task privilege to create task {task name}. To create it as a user-managed task, specify a WAREHOUSE. To create it as a serverless task, execute the CREATE TASK command with a role that has been granted the 'EXECUTE MANAGED TASK' account-level privilege.

  • 사용 사례 2: 전역 EXECUTE MANAGED TASK 권한이 부여되지 않은 역할을 사용할 때는 적절한 CREATE … CLONE 명령을 사용하여 서버리스 작업(또는 하나 이상의 서버리스 작업을 포함한 데이터베이스 또는 스키마)을 복제합니다.

    이전 오류 텍스트:

    Task {task name} requires a warehouse.

    현재 오류 텍스트:

    WAREHOUSE not specified and missing serverless task privilege to create task {task name}. To create it as a user-managed task, specify a WAREHOUSE. To create it as a serverless task, execute the CLONE command with a role that has been granted the 'EXECUTE MANAGED TASK' account-level privilege.

  • 사용 사례 3: 전역 EXECUTE MANAGED TASK 권한이 부여되지 않은 역할을 사용할 때는 고객 관리 컴퓨팅 리소스를 사용하여(ALTER TASK … UNSET WAREHOUSE 문 사용) 실행되는 기존 작업에 대한 WAREHOUSE 매개 변수 설정을 해제합니다.

    이전 오류 텍스트:

    Task {task name} requires a warehouse.

    이전 오류 텍스트:

    Cannot UNSET WAREHOUSE on task {task_name} because its owner role has not been granted the 'EXECUTE MANAGED TASK' account-level privilege. Grant this privilege to the role or use GRANT OWNERSHIP to change the task's owner role to one with this privilege.

  • 사용 사례 4:

    1. (다른 최소 권한과 함께) 전역 EXECUTE MANAGED TASK 권한이 부여된 역할을 사용할 때는 서버리스 작업을 만들고 다시 시작합니다.

    2. EXECUTE MANAGED TASK 권한은 소유자 역할(작업에 대한 OWNERSHIP 권한이 있는 역할)에서 취소됩니다.

    3. 작업이 일시 중지되지 않고 다음으로 예약된 실행을 시작하거나, 소유자 역할이 있는 사용자가 EXECUTE TASK 명령을 실행하여 작업 실행을 시작하려 합니다.

    이전 오류 텍스트:

    Cannot execute task, USAGE privilege on the task's warehouse must be granted to the owner role

    현재 오류 텍스트:

    작업을 실행할 수 없습니다. 소유자 역할에 EXECUTE MANAGED TASK 권한을 부여해야 합니다.

이러한 변경 사항은 서버리스 작업과 관련된 문제를 더 잘 이해하고 해결하는 데 도움을 주려는 것입니다.

데이터 개인정보 보호 변경 사항

분류: 데이터 분류 모델과 수정된 출력의 업데이트

데이터 분류는 이제 AWS와 Azure의 모든 Enterprise Edition(또는 그 이상) 계정에서 일반 공급(GA)으로 제공됩니다.

이 기능의 GA를 위해 향상된 예측 모델과 데이터 패턴 결과를 생성하도록 데이터 분류 모델이 업데이트되었습니다. 또한 데이터 분류 프로세스에는 이제 다음을 비롯해 입력에 지정된 모든 테이블 열의 출력이 포함됩니다.

  • 이전에 분류할 수 없었던 데이터 타입이 있는 열.

  • NULL 값만 있는 열.

이러한 개선 사항은 이전의 데이터 분류 모델을 사용하여 분류된 데이터를 다시 분류할 때 더 낫지만 다를 수도 있는 결과를 반환할 가능성이 있으므로 동작 변경 프로세스를 통해 도입되었습니다. 2022_04 번들의 옵트아웃 단계 도중에 번들을 활성화/비활성화하여 분류 개선 사항을 테스트하는 동시에 새로운 결과에 익숙해질 때까지 프로덕션 계정에 미치는 영향을 최소화할 수도 있습니다.