Snowpark 프로젝트 정의 만들기¶
snowflake.yml
파일에는 Snowpark 프로젝트에 대한 함수와 프로시저 선언이 포함되어 있습니다.
참고
현재 Snowpark 프로젝트 정의 파일의 이름은 snowflake.yml
로 명명되어야 합니다.
다음 스니펫은 두 개의 함수와 두 개의 프로시저를 포함하는 Snowpark 프로젝트 정의 파일의 샘플을 보여줍니다. hello_function
함수는 Snowpark의 외부 함수를 사용합니다.
definition_version: '2'
mixins:
snowpark_shared:
artifacts:
- dest: my_snowpark_project
src: app/
stage: dev_deployment
entities:
hello_function:
type: function
identifier:
name: hello_function
handler: functions.hello_function
signature:
- name: name
type: string
returns: string
external_access_integrations:
- my_external_access
secrets:
cred: my_cred_name
meta:
use_mixins:
- snowpark_shared
hello_procedure:
type: procedure
identifier:
name: hello_procedure
handler: procedures.hello_procedure
signature:
- name: name
type: string
returns: string
meta:
use_mixins:
- snowpark_shared
test_procedure:
type: procedure
identifier:
name: test_procedure
handler: procedures.test_procedure
signature: ''
returns: string
meta:
use_mixins:
- snowpark_shared
조심
프로젝트 디렉터리 내의 파일은 Snowflake CLI 에 의해 처리되며 다른 snow snowpark
명령을 실행할 때 Snowflake에 업로드될 수 있습니다. 프로젝트 디렉터리의 파일에 민감한 정보를 포함하는 경우에는 주의해야 합니다.
함수 및 프로시저 오브젝트 속성¶
다음 테이블에서는 함수와 프로시저에서 사용하는 속성을 설명합니다.
속성 |
정의 |
---|---|
식별자 선택 사항, 문자열 |
엔터티에 대한 선택적 Snowflake 식별자입니다. 값은 다음 형식일 수 있습니다.
|
유형 선택 사항, 문자열 |
반드시 |
아티팩트 필수, 문자열 시퀀스 |
필수 리소스 목록입니다. |
핸들러 필수, 문자열 |
|
반환 필수, 문자열 |
결과의 SQL 유형입니다. 사용 가능한 유형 의 목록 확인합니다. |
서명 필수, 시퀀스 |
signature:
- name: "first_argument"
type: int
- name: "second_argument"
default: "default value"
type: string
함수나 프로시저에 인자를 받지 않는 경우 이 값을 빈 문자열( 사용 가능한 유형 열의 SQL 유형 을 확인합니다. 명명된 인자와 선택적 인자의 구문에 대해 자세히 알아보려면 선택적 인자가 있는 UDF 호출하기 섹션을 참조하십시오. |
런타임 선택 사항, 문자열 |
프로시저나 함수를 실행할 때 사용할 Python 버전입니다. 기본값: “3.8”. |
external_access_integrations 선택 사항, 문자열 시퀀스 |
이 절차의 핸들러 코드가 외부 네트워크에 액세스하는 데 필요한 외부 액세스 통합 의 이름입니다. 자세한 내용은 CREATE PROCEDURE 섹션을 참조하십시오. |
시크릿 선택 사항, 사전 |
처리기 코드의 시크릿에서 정보를 검색할 때 변수를 사용하여 시크릿을 참조할 수 있도록 시크릿 이름을 변수에 할당합니다. 자세한 내용은 CREATE PROCEDURE 섹션을 참조하십시오. |
가져오기 선택 사항, 문자열 시퀀스 |
가져올 이전에 업로드한 파일의 스테이지와 경로를 입력합니다. 자세한 내용은 CREATE PROCEDURE 섹션을 참조하십시오. |
execute_as_caller 선택 사항, 부울 |
프로시저에만 사용 가능 프로시저가 소유자(사용자)의 권한으로 실행되는지, 아니면 호출자의 권한으로 실행되는지 확인합니다. 기본값: False(소유자 권한). |