기능 스토어 스키마에 대한 CREATE DYNAMIC TABLE, CREATE TAG 및 CREATE VIEW.
참고
증분 새로 고침이 있는 Snowflake 관리 기능 뷰(동적 테이블로 지원됨)의 경우, 기능 뷰가 생성될 때 자동으로 변경 추적을 활성화 하려면 소스 테이블에 변경 추적이 활성화되어 있거나 사용자가 이러한 테이블에 대한 OWNERSHIP 권한이 있어야 합니다.
훈련을 위한 데이터 세트 생성 시 기능 스토어 스키마 및/또는 대상 스키마에 대한 CREATE TABLE 및 CREATE DATASET.
기능 보기 새로 고침 설정을 관리하기 위한 기능 스토어 스키마에서 동적 테이블 및 작업에 대한 OPERATE.
기능 스토어 이니셜라이저에 전달된 웨어하우스에 대한 USAGE.
기능 스토어 스키마가 이미 존재하고 제작자에게 사용 권한이 있는 경우 CREATE SCHEMA는 선택 사항입니다.
아래에 나열된 모든 컨슈머 권한.
컨슈머에게는 최소한 다음과 같은 권한이 필요합니다.
기능 스토어 데이터베이스 및 스키마에 대한 USAGE.
기능 스토어 스키마에서 DYNAMIC TABLES에 대한 SELECT 및 MONITOR.
기능 스토어 스키마의 뷰에 대한 SELECT 및 REFERENCE.
기능 스토어 이니셜라이저에 전달된 웨어하우스에 대한 USAGE.
컨슈머는 또한 기능 스토어 데이터를 사용할 수 있는 다음과 같은 권한을 가질 수 있습니다.
훈련을 위한 데이터 세트를 생성하기 위한 기능 스토어 스키마 및/또는 대상 스키마에 대한 CREATE TABLE 및 CREATE DATASET.
기능 스토어의 테이블 또는 생성된 데이터 세트가 포함된 스키마에 대한 SELECT 및 REFERENCE.
기능 스토어 스키마 또는 생성된 데이터 세트를 포함하는 모든 스키마의 DATASETs에 대한 USAGE.
여러 기능 스토어를 사용하는 경우 각 개별 기능 스토어 또는 기능 스토어의 논리적인 그룹에 대해 이러한 두 가지 유형의 역할이 있을 가능성이 높습니다.
참고
필요한 Feature Store 역할 및 권한을 구성하려면 MANAGEGRANTS, CREATEROLE 및 CREATESCHEMAONDATABASE<DB> 권한이 있는 역할이 필요합니다. ACCOUNTADMIN 기본 제공 역할을 사용하거나 이러한 권한이 있는 사용자 지정 역할을 사용할 수 있습니다.
snowflake-ml-python 패키지 버전 1.6.3 이상에는 생산자 및 컨슈머 역할과 권한으로 새 기능 스토어를 구성할 수 있는 setup_feature_store 유틸리티 API가 포함되어 있습니다. 다음 예에서 데이터베이스, 스키마, 웨어하우스, 작성자 및 컨슈머 역할의 이름을 표시된 곳에 입력합니다.
다음 SQL 명령을 사용하여 기능 스토어 역할 및 권한을 수동으로 구성할 수 있습니다. 첫 번째 블록에는 프로듀서 및 컨슈머 역할에 사용할 이름과 기능 뷰가 저장될 데이터베이스 및 스키마의 이름을 스크립트에 알려주는 SET 명령이 여러 개 있습니다. 이러한 모든 오브젝트는 존재하지 않으면 생성됩니다.
-- Initialize variables for usage in SQL scripts belowSETFS_ROLE_PRODUCER='<FS_PRODUCER_ROLE>';SETFS_ROLE_CONSUMER='<FS_CONSUMER_ROLE>';SETFS_DATABASE='<FS_DATABASE_NAME>';SETFS_SCHEMA='<FS_SCHEMA_NAME>';SETFS_WAREHOUSE='<FS_WAREHOUSE>';-- Create schemaSETSCHEMA_FQN=CONCAT($FS_DATABASE,'.',$FS_SCHEMA);CREATESCHEMAIFNOTEXISTSIDENTIFIER($SCHEMA_FQN);-- Create rolesCREATEROLEIFNOTEXISTSIDENTIFIER($FS_ROLE_PRODUCER);CREATEROLEIFNOTEXISTSIDENTIFIER($FS_ROLE_CONSUMER);-- Build role hierarchyGRANTROLEIDENTIFIER($FS_ROLE_PRODUCER)TOROLESYSADMIN;GRANTROLEIDENTIFIER($FS_ROLE_CONSUMER)TOROLEIDENTIFIER($FS_ROLE_PRODUCER);-- Grant PRODUCER role privilegesGRANTCREATEDYNAMIC TABLEONSCHEMAIDENTIFIER($SCHEMA_FQN)TOROLEIDENTIFIER($FS_ROLE_PRODUCER);GRANTCREATEVIEWONSCHEMAIDENTIFIER($SCHEMA_FQN)TOROLEIDENTIFIER($FS_ROLE_PRODUCER);GRANTCREATETAGONSCHEMAIDENTIFIER($SCHEMA_FQN)TOROLEIDENTIFIER($FS_ROLE_PRODUCER);GRANTCREATEDATASETONSCHEMAIDENTIFIER($SCHEMA_FQN)TOROLEIDENTIFIER($FS_ROLE_PRODUCER);GRANTCREATETABLEONSCHEMAIDENTIFIER($SCHEMA_FQN)TOROLEIDENTIFIER($FS_ROLE_PRODUCER);-- Grant CONSUMER role privilegesGRANTUSAGEONDATABASEIDENTIFIER($FS_DATABASE)TOROLEIDENTIFIER($FS_ROLE_CONSUMER);GRANTUSAGEONSCHEMAIDENTIFIER($SCHEMA_FQN)TOROLEIDENTIFIER($FS_ROLE_CONSUMER);GRANTSELECT,MONITORONFUTUREDYNAMIC TABLESINSCHEMAIDENTIFIER($SCHEMA_FQN)TOROLEIDENTIFIER($FS_ROLE_CONSUMER);GRANTSELECT,MONITORONALLDYNAMIC TABLESINSCHEMAIDENTIFIER($SCHEMA_FQN)TOROLEIDENTIFIER($FS_ROLE_CONSUMER);GRANTSELECT,REFERENCESONFUTUREVIEWSINSCHEMAIDENTIFIER($SCHEMA_FQN)TOROLEIDENTIFIER($FS_ROLE_CONSUMER);GRANTSELECT,REFERENCESONALLVIEWSINSCHEMAIDENTIFIER($SCHEMA_FQN)TOROLEIDENTIFIER($FS_ROLE_CONSUMER);GRANTUSAGEONFUTUREDATASETSINSCHEMAIDENTIFIER($SCHEMA_FQN)TOROLEIDENTIFIER($FS_ROLE_CONSUMER);GRANTUSAGEONALLDATASETSINSCHEMAIDENTIFIER($SCHEMA_FQN)TOROLEIDENTIFIER($FS_ROLE_CONSUMER);-- Grant USAGE ON WAREHOUSE to CONSUMERGRANTUSAGEONWAREHOUSEIDENTIFIER($FS_WAREHOUSE)TOROLEIDENTIFIER($FS_ROLE_CONSUMER);