À propos de Native Apps Framework

Cette rubrique fournit des informations générales sur le Native Apps Framework.

Introduction au Native Apps Framework

Le Native Apps Framework vous permet de créer des applications de données qui exploitent les fonctionnalités de base de Snowflake. Le Native Apps Framework vous permet :

  • D’étendre les capacités d’autres fonctions de Snowflake en partageant des données et la logique métier associée avec d’autres comptes Snowflake. La logique métier d’une application peut inclure une application Streamlit, des procédures stockées et des fonctions écrites à l’aide de l’APISnowpark, Javascript et SQL.

  • De partager une application avec les consommateurs par le biais d’annonces. Une annonce peut être gratuite ou payante. Vous pouvez distribuer et monétiser vos applications sur la Snowflake Marketplace ou les distribuer à des consommateurs spécifiques à l’aide d’annonces privées.

  • D’inclure des visualisations riches dans votre application à l’aide de Streamlit.

Le Native Apps Framework prend également en charge une expérience de développement améliorée qui offre :

  • Un environnement de test rationalisé dans lequel vous pouvez tester vos applications à partir d’un compte unique.

  • Un workflow robuste pour les développeurs. Alors que vos données et les objets de base de données associés restent dans Snowflake, vous pouvez gérer les fichiers de code et les ressources dans le contrôle de source en utilisant vos outils de développement préférés.

  • La possibilité de publier des versions et des correctifs pour votre application qui vous permet, en tant que fournisseur, de modifier et de faire évoluer la logique de vos applications et de les versionner de manière incrémentale pour les consommateurs.

  • Prise en charge de l’enregistrement des événements structurés et non structurés afin que vous puissiez dépanner et surveiller vos applications.

Limitations connues dans l’avant-première

La version en avant-première du Native Apps Framework présente les limitations suivantes :

  • Les comptes Snowflake sur Microsoft Azure et Google Cloud Platform ne sont pas pris en charge.

  • Les comptes Snowflake dans les régions gouvernementales ne sont pas pris en charge.

  • Virtual Private Snowflake (VPS) n’est pris en charge qu’au sein d’une seule organisation.

  • Les tables créées à l’aide de AUTOINCREMENT ne sont pas prises en charge. Snowflake recommande d’utiliser plutôt les séquences.

  • Les tables ou les zones de préparation temporaires ne sont pas prises en charge.

  • Certaines fonctions de Streamlit ne sont pas prises en charge. Reportez-vous à Fonctions Streamlit non prises en charge et Limites de l’utilisation de Streamlit dans le Native Apps Framework pour plus de détails.

  • Les références ne fonctionnent pas actuellement dans une application installée en mode développement et utilisant des fichiers sur une zone de préparation nommée. Les références ne fonctionnent que dans une application qui a une version, ou dans une application installée dans un compte différent à partir d’une annonce.

Composants du Native Apps Framework

Le diagramme suivant présente une vue de haut niveau du Native Apps Framework.

../../_images/native-apps-overview.png

Le Native Apps Framework s’articule autour du concept de fournisseur et de consommateur utilisé par d’autres fonctions de Snowflake, notamment la collaboration Snowflake et Secure Data Sharing

  • Fournisseur

    Utilisateur de Snowflake qui souhaite partager du contenu de données et la logique de l’application avec d’autres utilisateurs de Snowflake.

  • Consommateur

    Utilisateur de Snowflake qui souhaite accéder au contenu des données et à la logique d’application partagés par les fournisseurs.

Développer et tester un paquet d’application

Pour partager un contenu de données et la logique d’application avec un consommateur, les fournisseurs créent un paquet d’application.

  • Paquet d’application

    Un paquet d’application encapsule le contenu des données, la logique d’application, les métadonnées et le script d’installation requis par une application. Un paquet d’application contient également des informations sur les versions et les niveaux de correctifs définis pour l’application. Reportez-vous à Création d’un paquet d’application pour plus de détails.

Un paquet d’application peut inclure des références à des fichiers de contenu de données et à des fichiers de code externes qu’un fournisseur souhaite inclure dans l’application. Un paquet d’application nécessite un fichier manifeste et un script d’installation.

  • Fichier manifeste

    Définit les propriétés de configuration et d’installation requises par l’application, y compris l’emplacement du script d’installation, les versions, etc. Reportez-vous à Création du fichier manifeste pour plus de détails.

  • Script d’installation

    Contient des instructions SQL qui sont exécutées lorsque le consommateur installe ou met à niveau une application ou lorsqu’un fournisseur installe ou met à niveau une application à des fins de test. L’emplacement du script d’installation est spécifié dans le fichier manifest.yml. Reportez-vous à Création du script d’installation pour plus de détails.

Publier un paquet d’application

Après avoir développé et testé un paquet d’application, un fournisseur peut partager une application avec des consommateurs en publiant une annonce contenant le paquet d’application en tant que produit de données d’une annonce. L’annonce peut être une annonce Snowflake Marketplace ou une annonce privée.

  • Annonce Snowflake Marketplace

    Permet à des fournisseurs de commercialiser des applications dans le Cloud de données Snowflake. Offrir une annonce sur Snowflake Marketplace permet à des fournisseurs de partager des applications avec de nombreux consommateurs simultanément, plutôt que de maintenir des relations de partage avec chaque consommateur individuel.

  • Annonce privée

    Permet à des fournisseurs de profiter des capacités des annonces pour partager des applications directement avec un autre compte Snowflake dans n’importe quelle région Snowflake.

Reportez-vous à À propos des annonces pour plus de détails.

Installer et gérer une application

Après qu’un fournisseur a publié une annonce contenant un paquet d’application, les consommateurs peuvent découvrir l’annonce et installer l’application.

  • Application

    Une application est l’objet de base de données installé dans le compte consommateur. Lorsqu’un consommateur installe l’application, Snowflake crée l’application et exécute le script d’installation pour créer les objets requis dans l’application. Reportez-vous à Création et test d’une application pour plus de détails.

Après avoir installé l’application, les consommateurs peuvent effectuer des tâches supplémentaires, notamment :

Reportez-vous à Utilisation des applications en tant que consommateur pour plus de détails sur l’installation et la gestion d’une application par les consommateurs.