Snowflake Native App Framework 워크플로¶
이 항목에서는 Snowflake Native App 을 개발, 게시, 설치하기 위한 워크플로에 대해 설명합니다.
개발 워크플로¶
다음 워크플로에서는 Snowflake Native App 을 개발하고 테스트하기 위한 일반적인 작업을 간략하게 설명합니다.
참고
앱 개발은 반복적인 프로세스입니다. 앱과 환경의 요구 사항에 따라 이러한 작업 중 다수를 여러 번 수행하거나 다른 순서로 수행할 수 있습니다.
개발 환경을 설정합니다.
Snowflake Native App 을 개발하려면 개발 환경을 설정해야 합니다. 여기에는 다음이 포함됩니다.
Snowflake CLI 을 설치합니다. Snowflake CLI 를 설정하여 앱 개발하기 섹션을 참조하십시오.
애플리케이션 파일을 업로드할 스테이지를 만듭니다.
참고
Snowflake CLI 를 사용하는 경우 Snowflake CLI 는 개발 중에 애플리케이션 파일을 업로드하기 위한 임시 스테이지를 자동으로 생성하므로 스테이지를 수동으로 생성할 필요가 없습니다.
SQL을 사용하여 스테이지를 만드는 방법에 대한 자세한 내용은 CREATE STAGE 섹션을 참조하세요. Snowsight 를 사용하여 스테이지를 만드는 방법에 대한 자세한 내용은 Snowsight를 사용하여 파일 스테이징하기 섹션을 참조하세요.
-
애플리케이션 패키지는 앱에서 필요한 데이터 콘텐츠, 애플리케이션 논리, 메타데이터, 설정 스크립트를 캡슐화하는 컨테이너입니다.
앱에 대한 :doc:`설정 스크립트를 생성</developer-guide/native-apps/creating-setup-script>`합니다.
설정 스크립트에는 컨슈머가 앱을 설치할 때 생성되는 구성 요소를 정의하는 SQL 문이 포함됩니다.
앱에 대한 :doc:`매니페스트 파일</developer-guide/native-apps/manifest-overview>`을 만듭니다.
매니페스트 파일은 설정 스크립트의 위치와 버전을 포함하여 앱에서 필요한 구성 및 설정 속성을 정의합니다.
애플리케이션 파일을 스테이지에 업로드합니다.
설정 스크립트, 매니페스트 파일 및 앱에 필요한 기타 리소스는 앱 개발 시 이러한 파일을 사용할 수 있도록 명명된 스테이지에 업로드해야 합니다.
앱의 버전과 패치를 추가합니다.
자세한 내용은 릴리스 채널, 버전 및 패치 정보 섹션을 참조하십시오.
앱에 공유 데이터 콘텐츠를 추가합니다.
앱의 일부로 데이터 콘텐츠를 컨슈머와 안전하게 공유할 수 있습니다. 자세한 내용은 Snowflake Native App 에서 데이터 내용 공유 섹션을 참조하세요.
앱에 기능을 추가합니다.
앱에 다양한 기능을 추가하여 다음 기능을 포함한 추가 기능을 제공할 수 있습니다.
Set up logging and event handling to troubleshoot your app.
앱 문제를 해결하기 위해 로깅 및 이벤트 처리를 설정할 수 있습니다. 컨슈머는 자신의 계정에서 로깅 및 이벤트 처리를 설정하고 공급자와 공유할 수 있습니다.
앱의 릴리스 지시문을 설정합니다.
릴리스 지시문에 따라 컨슈머가 사용할 수 있는 버전과 패치 수준이 결정됩니다. 애플리케이션 패키지의 각 릴리스 채널에 대해 릴리스 지시문을 설정할 수 있습니다. 자세한 내용은 릴리스 채널을 사용하여 릴리스 지시문 설정하기 섹션을 참조하십시오.
앱을 테스트합니다.
자신의 계정에서 앱을 테스트한 후 컨슈머에게 게시할 수 있습니다. 자세한 내용은 로컬에서 앱 설치 및 테스트하기 섹션을 참조하십시오.
Snowflake는 앱의 다양한 측면을 테스트하기 위해 개발 모드 및 :ref:`디버그 모드<label-native_apps_testing_debug_mode>`를 제공합니다.
-
조직 외부의 컨슈머와 앱을 공유하려면 먼저 앱이 안전하고 안정적으로 작동하는지 확인하기 위한 자동 보안 검사를 통과해야 합니다.
게시 워크플로¶
앱을 개발하고 테스트한 후 공급자는 앱을 게시하여 컨슈머와 공유할 수 있습니다.
-
공급자가 되면 목록을 만들고 관리하여 애플리케이션을 컨슈머와 공유할 수 있습니다.
목록 만들기.
비공개 목록 또는 Snowflake Marketplace 목록을 생성하여 앱을 컨슈머와 공유할 수 있습니다. 자세한 내용은 앱 목록 만들기 섹션을 참조하세요.
승인을 위해 목록을 제출합니다.
Snowflake에 목록을 제출해 승인을 받아야 Snowflake Marketplace 에 목록을 게시할 수 있습니다. 자세한 내용은 승인을 위해 목록 제출하기 섹션을 참조하세요.
목록을 게시합니다.
목록이 승인되면 컨슈머가 사용할 수 있도록 목록을 게시할 수 있습니다. 자세한 내용은 앱 목록 게시하기 섹션을 참조하세요.
컨슈머 워크플로¶
컨슈머는 목록에서 앱을 검색하고 설치할 수 있습니다. 앱을 설치한 후 컨슈머는 앱을 구성, 사용, 모니터링할 수 있습니다. `컨슈머로서 앱 작업하기<https://other-docs.snowflake.com/en/native-apps/consumer-about>`_를 참조하세요.
-
Snowflake 컨슈머가 되면 비공개로 공유되거나 Snowflake Marketplace 에 있는 목록에 액세스할 수 있습니다. 더 많은 제한적 데이터 공유 기능을 제공하는 직접 공유 또는 데이터 교환의 일부로서 공유된 데이터에 액세스할 수도 있습니다.
`앱을 설치<https://other-docs.snowflake.com/en/native-apps/consumer-installing>`_합니다.
컨슈머는 목록에서 앱을 설치할 수 있습니다.
`앱에 필요한 권한을 부여<https://other-docs.snowflake.com/en/native-apps/consumer-granting-privs>`_합니다.
일부 앱에서는 컨슈머가 앱에 전역 권한과 오브젝트 수준 권한을 부여하도록 요청할 수 있습니다.
`로깅 및 이벤트 공유를 활성화하여 앱 문제를 해결<https://other-docs.snowflake.com/en/native-apps/consumer-enable-logging>`_합니다.
공급자는 로깅 및 이벤트 데이터를 내보내도록 앱을 설정할 수 있습니다. 컨슈머는 이 데이터를 공급자와 공유하도록 이벤트 테이블을 설정할 수 있습니다. 로그 및 이벤트 데이터는 앱 문제를 해결할 때 유용합니다.
`앱을 관리<https://other-docs.snowflake.com/en/native-apps/consumer-managing-applications>`_합니다.
앱을 설치하고 구성한 후 컨슈머는 앱을 사용하고 모니터링하기 위한 추가 작업을 수행할 수 있습니다.