2022년 12월

이 달에는 다음과 같은 새로운 기능, 동작 변경 사항, 업데이트(개선된 사항, 수정 사항 등)가 도입되었습니다. 이러한 추가 사항에 대해 궁금한 점이 있으면 Snowflake 지원 에 문의하십시오.

중요

각 릴리스에는 웹 인터페이스를 새로 고쳐야 적용되는 업데이트가 포함될 수 있습니다.

일반적으로, 업데이트로 인해 사용에 방해가 되지 않도록 하려면 각 Snowflake 릴리스가 배포된 후에 웹 인터페이스를 새로 고치는 것이 좋습니다.

이 항목의 내용:

새로운 기능

액세스 제어: 데이터베이스 역할 — 미리 보기

이 릴리스에서는 데이터베이스 역할에 대한 미리 보기 지원을 제공합니다. 데이터베이스 역할 은 동일한 데이터베이스의 보안 오브젝트에 대한 권한을 부여하거나 취소할 수 있는 데이터베이스 내 엔터티입니다. 이 기능은 새로운 Snowflake 오브젝트 유형인 데이터베이스 역할을 통해 구현됩니다. 데이터베이스 역할은 해당 역할의 범위를 제외하고는 계정 수준에서 생성된 기존 역할과 본질적으로 동일합니다. 계정의 모든 오브젝트에 대한 권한은 계정 역할에 부여할 수 있지만, 동일한 데이터베이스 내의 오브젝트에 대한 권한만 데이터베이스 역할에 부여할 수 있습니다.

데이터베이스 역할은 다음 사용 사례를 충족하기 위한 것입니다.

관리 용이성

데이터베이스 소유자는 자체 데이터베이스 내의 보안 오브젝트에 대한 액세스를 독립적으로 관리할 수 있습니다. 데이터베이스 소유자는 다음 작업을 수행할 수 있습니다.

  • 데이터베이스 역할을 만들고 관리합니다.

  • 데이터베이스 역할에 권한을 부여합니다.

    데이터베이스 역할에 부여된 오브젝트에 대한 권한은 역할이 존재하는 데이터베이스에 포함된 오브젝트로 범위가 지정되어야 합니다. 한 데이터베이스의 오브젝트(예: 테이블 또는 뷰)에 대한 권한은 다른 데이터베이스의 데이터베이스 역할에 부여할 수 없습니다.

    데이터베이스의 오브젝트에 대한 데이터베이스 역할에 OWNERSHIP을 포함한 모든 권한을 부여할 수 있습니다. 계정 역할만 데이터베이스 자체에 대한 OWNERSHIP 권한을 보유할 수 있습니다.

  • 역할 계층 구조를 만들거나 확장합니다. 동일한 데이터베이스 내의 다른 데이터베이스 역할에 데이터베이스 역할을 부여한 다음, 데이터베이스의 최상위 수준 데이터베이스 역할을 계정 역할에 부여합니다. 자세한 내용은 데이터베이스 역할과 역할 계층 구조 섹션을 참조하십시오.

계정 역할에 데이터베이스 역할을 부여하면 데이터베이스 역할을 포함한 데이터베이스에 대한 USAGE 권한이 암시적으로 부여됩니다. 데이터베이스에 대한 USAGE 권한을 명시적으로 부여할 필요는 없습니다.

데이터 공유

Snowflake의 Secure Data Sharing 기능을 사용하는 데이터 공급자는 공유할 데이터베이스에 여러 데이터베이스 역할을 생성하고 데이터베이스의 오브젝트 하위 세트에 대한 권한을 각 데이터베이스 역할에 부여하여 공유의 보안 오브젝트를 분할할 수 있습니다.

데이터베이스 역할을 포함하는 공유에서 데이터베이스를 만든 후, 데이터 컨슈머는 공유된 각 데이터베이스 역할을 자신의 계정에 있는 하나 이상의 계정 수준 역할에 부여합니다.

데이터 컨슈머 계정에서 데이터베이스 역할이 없는 계정 관리자가 사용자로 하여금 공유의 모든 데이터베이스와 데이터베이스 오브젝트(테이블, 보안 뷰 등)에 액세스할 수 있도록 단일 권한 IMPORTED PRIVILEGES를 역할에 부여합니다. 데이터 컨슈머 계정의 다양한 사용자 그룹이 공유 오브젝트의 하위 세트에 액세스하도록 허용하는 옵션은 없습니다. 이러한 양자택일 접근 방식에서는 데이터 공급자가 동일한 데이터베이스의 서로 다른 오브젝트에 대한 액세스 권한을 부여하기 위해 여러 공유를 생성해야 합니다.

참고

현재, 데이터베이스 역할은 기본 데이터베이스의 복제에 포함되지 않습니다. 결과적으로, 데이터베이스 역할을 통해 오브젝트에 공유에 대한 권한이 부여될 때는 리전 간 데이터 공유가 지원되지 않습니다.

자세한 내용은 데이터베이스 역할 을 참조하십시오.

액세스 제어: SNOWFLAKE 데이터베이스 역할 — 미리 보기

이 릴리스에서는 SNOWFLAKE 데이터베이스 역할에 대한 미리 보기 지원을 제공합니다. SNOWFLAKE 데이터베이스 역할은 일반 데이터베이스 역할의 개념을 구현하지만, 특히 SNOWFLAKE 데이터베이스에 대해 구현합니다. SNOWFLAKE 데이터베이스 역할은 ACCOUNT_USAGE 스키마, READER_ACCOUNT_USAGE 스키마, ORGANIZATION_USAGE 스키마, DATA_SHARING_USAGE 스키마 등에 대해 세분화된 액세스 권한을 제공하는 데 사용할 수 있는 역할 세트를 정의합니다.

SNOWFLAKE 데이터베이스 역할은 2022년 12월 12일이 속한 주간에 모든 계정에 배포됩니다. 자세한 내용은 SNOWFLAKE 데이터베이스 역할 섹션을 참조하십시오.

Snowflake Extension for Visual Studio Code — 미리 보기

이 릴리스에서는 Snowflake Extension for Visual Studio Code (VS Code)의 미리 보기를 제공합니다. 개발자는 Snowflake Extension for Visual Studio Code 를 통해 VS Code 환경 내에서 Snowflake에 액세스할 수 있습니다. 이 확장 프로그램을 사용하면 Snowflake에 연결하고, SQL 쿼리를 작성 및 실행하고, VS Code를 종료하지 않고 결과를 볼 수 있습니다. 로그인하면 활성 데이터베이스, 스키마, 역할, 웨어하우스를 보고 변경할 수 있습니다.

Snowflake Intellisence 는 데이터베이스 오브젝트 이름, 기본 제공 함수, Snowflake SQL 키워드에 대한 자동 완성 지원을 제공합니다. Intellisense를 사용하면 쿼리를 입력할 때 데이터베이스, 스키마 및 테이블 이름 제안 항목이 표시됩니다. 단일 또는 쿼리 그룹을 실행할 수 있으며, 결과는 VS Code 자체 내에서 직접 제공됩니다.

자세한 내용은 Snowflake Extension for Visual Studio Code 섹션을 참조하십시오.

보안 업데이트

세션 정책 — 일반 공급

이 릴리스에서는 세션 정책이 일반 공급으로 제공됩니다. 세션 정책은 유휴 세션 시간 제한 기간을 분 단위로 정의하고 기본 유휴 세션 시간 제한 값인 4시간을 재정의할 기회를 제공합니다. 유휴 세션 시간 제한은 Snowflake 클라이언트(예: SnowSQL, JDBC 드라이버)를 사용하는 Snowflake 웹 인터페이스 또는 클라이언트 애플리케이션의 비활성 기간을 나타냅니다. 유휴 세션 시간 제한 기간이 만료되면 사용자는 Snowflake에 다시 인증해야 합니다.

규정 준수 요구 사항을 충족시키기 위해 계정 또는 사용자에 대한 세션 정책을 설정할 수 있고 이 정책에서는 구성 가능한 유휴 시간 제한 기간을 지원합니다. 계정 및 사용자 수준 세션 정책 모두와 연결된 사용자의 경우 사용자 수준 세션 정책이 우선 적용됩니다.

이 기능은 2021년 11월에 미리 보기로 발표되었습니다. 자세한 내용은 Snowflake 세션 및 세션 정책 섹션을 참조하십시오.

SQL 업데이트

새 SQL 함수

다음 함수가 최근 릴리스에 도입되었습니다.

함수 카테고리

새 함수

설명

시스템 함수(쿼리), 테이블 함수

GET_QUERY_OPERATOR_STATS

쿼리 내의 개별 쿼리 연산자에 대한 통계를 반환합니다.

ALTER TAG 명령: FORCE 키워드를 추가하여 단일 문의 태그에 대한 마스킹 정책을 대체함

구문

키워드

설명

ALTER TAG <이름> SET MASKING POLICY <마스킹_정책_이름> [ FORCE ]

FORCE

태그에 현재 설정된 마스킹 정책을 단일 문에서 다른 마스킹 정책으로 바꿉니다.

데이터 타입이 같은 정책이 태그에 이미 설정된 경우 FORCE 키워드를 사용하면 정책이 바뀝니다.

마스킹 정책이 태그에 현재 설정되어 있지 않으면 이 키워드를 지정해도 아무 효과가 없습니다.

데이터 거버넌스 업데이트

단일 문에서 태그에 대한 마스킹 정책 바꾸기

이 릴리스에서, Snowflake는 단일 문의 태그에 현재 설정된 마스킹 정책을 ALTER TAG 명령으로 바꿀 때 FORCE 키워드를 지정하기 위한 지원을 추가합니다. FORCE 키워드를 사용 가능하게 되기 전, 태그에 대한 마스킹 정책을 바꾸려면 다음 두 개의 문이 별도로 필요했습니다.

  • 기존 정책을 설정 해제합니다.

  • 새 정책을 설정합니다.

FORCE 키워드를 사용하면 UNSET 작업과 SET 작업 사이의 시간 간격이 제거되어 태그에 대한 마스킹 정책을 바꾸는 동안 열 데이터가 보호된 상태로 유지됩니다.

자세한 내용은 다음을 참조하십시오.

설명서 및 학습 리소스

목차(TOC) 업데이트

개발자가 콘텐츠를 더 쉽게 찾을 수 있도록 다음과 같이 TOC를 변경했습니다.

최상위 수준 항목

두 번째 수준 항목

세 번째 수준 항목

변경

Snowflake로 애플리케이션 개발

Snowflake에서의 애플리케이션 개발 소개

제거되었습니다.

커넥터, 드라이버, 클라이언트 API 개요

제거되었습니다.

UDFs

이동 위치: 애플리케이션 및 확장 프로그램 개발 » 함수와 프로시저로 Snowflake 확장하기

Snowpark

이동 위치: Snowpark API

외부 함수

이동 위치: 애플리케이션 및 확장 프로그램 개발 » 함수와 프로시저로 Snowflake 확장하기

저장 프로시저

이동 위치: 애플리케이션 및 확장 프로그램 개발 » 함수와 프로시저로 Snowflake 확장하기

Secure UDF와 저장 프로시저로 민감한 정보 보호하기

이동 위치: 애플리케이션 및 확장 프로그램 개발 » 함수와 프로시저로 Snowflake 확장하기 » 함수와 프로시저의 설계 지침 및 제약 조건

푸시다운 최적화 및 데이터 가시성

이동 위치: 애플리케이션 및 확장 프로그램 개발 » 함수와 프로시저로 Snowflake 확장하기 » 함수와 프로시저의 설계 지침 및 제약 조건

Snowflake Scripting

이동 위치: Snowflake Scripting 개발자 가이드

Snowflake에 연결하기

커넥터 & 드라이버

Kafka용 Snowflake 커넥터

이동 위치: 애플리케이션 및 확장 프로그램 개발 » Kafka 및 Spark와 함께 Snowflake 사용하기

Spark용 Snowflake 커넥터

이동 위치: 애플리케이션 및 확장 프로그램 개발 » Kafka 및 Spark와 함께 Snowflake 사용하기

Python용 Snowflake 커넥터

이동 위치: 애플리케이션 및 확장 프로그램 개발 » 드라이버

Node.js 드라이버

이동 위치: 애플리케이션 및 확장 프로그램 개발 » 드라이버

Go Snowflake 드라이버

이동 위치: 애플리케이션 및 확장 프로그램 개발 » 드라이버

.NET 드라이버

이동 위치: 애플리케이션 및 확장 프로그램 개발 » 드라이버

JDBC 드라이버

이동 위치: 애플리케이션 및 확장 프로그램 개발 » 드라이버

ODBC 드라이버

이동 위치: 애플리케이션 및 확장 프로그램 개발 » 드라이버

Snowflake용 PHP PDO 드라이버

이동 위치: 애플리케이션 및 확장 프로그램 개발 » 드라이버

Snowflake SQL API

이동 위치: Snowflake SQL REST API