Snowflake Native App Framework 工作流程¶
本主题介绍使用 Native Apps Framework 创建的应用程序的开发、发布与安装工作流程。
开发工作流程¶
以下工作流程概述了使用 Native Apps Framework 开发和测试应用程序所涉及到的常规任务:
备注
应用程序开发是一个迭代过程。根据应用程序和环境的需要,您可能要多次执行这些任务,或者按照不同的顺序执行这些任务。
为应用程序 :doc:` 创建安装脚本 </developer-guide/native-apps/creating-setup-script>`。
安装脚本包含一些 SQL 语句,定义了使用者安装应用程序时要创建的组件。
为应用程序 :doc:` 创建清单文件 </developer-guide/native-apps/creating-manifest>`。
清单文件定义了应用程序所需的配置和设置属性,包括安装脚本的位置及版本。
将应用程序文件上传至命名暂存区。
应用程序所需的安装脚本、清单文件和其他资源必须上传到命名暂存区,确保在开发应用程序时可以使用这些文件。
:doc:` 创建应用程序包 </developer-guide/native-apps/creating-app-package>`。
应用程序包是封装应用程序所需的数据内容、应用程序逻辑、元数据和设置脚本的容器。
:doc:` 向应用程序添加版本和补丁级别 </developer-guide/native-apps/versioning>`。
通过向应用程序添加版本和补丁,您就可以为应用程序添加功能或修复问题。
:doc:` 向应用程序添加共享数据内容 </developer-guide/native-apps/preparing-data-content>`。
Native Apps Framework 允许安全地与使用者共享数据内容。
:doc:` 添加应用程序逻辑 </developer-guide/native-apps/adding-application-logic>`。
您可以在应用程序中包含业务逻辑。应用程序可以包含以下内容:
:doc:` 用户定义的函数 (UDFs) 和存储过程 </developer-guide/extensibility>`。
:doc:` 使用 Python、Java 和 Scala 编写的 Snowpark 函数和过程 </developer-guide/snowpark/index>`。
:doc:` 外部函数 </sql-reference/external-functions-introduction>`。
:doc:` 设置日志记录和事件处理以便排查应用程序故障。</developer-guide/native-apps/setting-up-logging-and-events>`
为了排查应用程序故障,Native Apps Framework 提供了日志记录和事件处理。使用者可以在自己的账户中设置日志记录和事件处理,并与提供商共享。
:ref:` 为应用程序设置发布指令 <label-native_apps_release_dir>`。
发布指令决定了哪个版本和补丁级别可供使用者使用。
:doc:` 测试应用程序 <installing-testing-application>`。
您可以在自己的账户中测试应用程序,然后再将其发布给使用者。Native Apps Framework 提供了 :ref:` 开发模式 <label-native_apps_dev_mode>` 和 :ref:` 调试模式 <label-native_apps_testing_debug_mode>`,用于测试应用程序的不同方面。
:doc:` 运行自动安全扫描 <running-security-scan>`。
在与组织外部的使用者共享应用程序之前,应用程序必须通过自动安全扫描,以确保其安全性和稳定性。
发布工作流程¶
在完成应用程序的开发和测试之后,提供商可以发布该应用程序以与使用者共享。详细信息请参阅 ` 与使用者共享应用程序 <https://other-docs.snowflake.cn/en/native-apps/provider-publishing-app-package>`_。
` 成为提供商 <https://other-docs.snowflake.cn/en/collaboration/provider-becoming>`_。
成为提供商后,您可以创建和管理列表,以便与使用者共享应用程序。
-
您可以创建私密列表或 Snowflake Marketplace 列表,以便与使用者共享应用程序。
` 将列表提交审批 <https://other-docs.snowflake.cn/en/native-apps/provider-publishing-app-package#label-nativeapps-provider-listings-submit-approval>`_。
将列表发布到 Snowflake Marketplace 之前,您必须将列表提交给 Snowflake 进行审批。
-
在列表获得批准后,即可发布该列表以供使用者使用。
使用者工作流程¶
使用者可以通过列表发现和安装应用程序。安装应用程序后,使用者可以配置、使用和监控该应用程序。请参阅 ` 作为使用者使用应用程序 <https://other-docs.snowflake.cn/en/native-apps/consumer-about>`_。
` 成为 Snowflake 的使用者 <https://other-docs.snowflake.cn/en/collaboration/consumer-becoming>`_。
成为 Snowflake 使用者后,您就可以访问私密共享的列表,或者在 Snowflake Marketplace 上共享的列表。您还可以访问作为直接共享或数据交换的一部分共享的数据,这提供较为有限的数据共享功能。
` 安装应用程序 <https://other-docs.snowflake.cn/en/native-apps/consumer-installing>`_。
使用者可以从列表安装应用程序。
` 授予应用程序所需的权限 <https://other-docs.snowflake.cn/en/native-apps/consumer-granting-privs>`_。
某些应用程序可能会要求使用者授予应用程序的全局和对象级别权限。
` 启用日志记录和事件共享以排查应用程序故障 <https://other-docs.snowflake.cn/en/native-apps/consumer-enable-logging>`_。
提供商可以设置应用程序,以发出日志和事件数据。使用者可以上设置事件表,以便与提供商共享这些数据。在排查应用程序故障时,日志和事件数据非常有用。
` 管理应用程序 <https://other-docs.snowflake.cn/en/native-apps/consumer-managing-applications>`_。
安装和配置应用程序后,使用者可以执行额外的任务来使用和监控该应用程序。