Configuration de Snowflake pour Spark dans Qubole

Pour configurer Snowflake pour Spark dans Qubole, il vous suffit d’ajouter Snowflake en tant qu’entrepôt de données Qubole. Ce chapitre fournit des instructions étape par étape pour effectuer cette tâche à l’aide d” l’UI Qubole Data Service (QDS).

Note

Vous pouvez également utiliser l’API QDS REST pour ajouter Snowflake comme entrepôt de données. Pour des instructions étape par étape, voir Ajouter un entrepôt de données Snowflake comme entrepôt de données (dans la documentation Qubole).

Dans ce chapitre :

Conditions préalables

  • Vous devez être un administrateur système QDS pour ajouter un entrepôt de données.

  • Vous devez avoir un compte Qubole Enterprise.

  • Le rôle utilisé dans la connexion nécessite les privilèges USAGE et CREATE STAGE sur le schéma qui contient la table que vous allez lire ou dans laquelle vous allez écrire via Qubole.

Préparation d’un emplacement externe pour les requêtes de longue durée

Si certaines de vos opérations durent plus de 36 heures, songez à préparer un emplacement externe à utiliser pour l’échange de données entre Snowflake et Spark. Pour plus d’informations, voir Préparation d’un emplacement externe pour les fichiers.

Ajout de Snowflake en tant qu’entrepôt de données dans l” UI QDS

  1. Dans le menu Home , cliquez sur Explore.

  2. Dans la liste déroulante de la page Explore, sélectionnez + Add Data Store.

  3. Saisissez les informations requises dans les champs suivants :

    • Data Store Name : saisissez le nom de l’entrepôt de données à créer.

    • Database Type : sélectionnez « Snowflake ».

    • Catalog Name : saisissez le nom du catalogue Snowflake.

    • Database Name : saisissez le nom de la base de données dans Snowflake dans laquelle les données sont stockées.

    • Warehouse Name : saisissez le nom de l’entrepôt virtuel Snowflake à utiliser pour les requêtes.

    • Host Address : saisissez l” URL de base de votre compte Snowflake (p. ex. myorganization-myaccount.snowflakecomputing.com). Voir Identificateurs de compte pour plus de détails sur la spécification de votre identificateur de compte dans cette URL.

    • Username : saisissez le nom de connexion de votre utilisateur Snowflake (utilisé pour se connecter à l’hôte).

    • Password : saisissez le mot de passe de votre utilisateur Snowflake (utilisé pour vous connecter à l’hôte).

    Notez que toutes les valeurs sont sensibles à la casse, sauf pour Host Address.

  4. Cliquez sur Save pour créer l’entrepôt de données.

Répétez ces étapes pour chaque base de données Snowflake que vous voulez ajouter en tant qu’entrepôt de données. Vous pouvez également modifier l’entrepôt de données pour modifier la base de données Snowflake ou toute autre propriété de l’entrepôt de données (par exemple, modifier l’entrepôt virtuel utilisé pour les requêtes).

Note

Après avoir ajouté un entrepôt de données Snowflake, redémarrez le cluster Spark (si vous utilisez un cluster Spark déjà exécuté). Redémarrer le cluster Spark installe les fichiers .jar pour le connecteur Snowflake pour Spark et le pilote JDBC Snowflake.

Vérification de l’entrepôt de données Snowflake dans Qubole

Pour vérifier que l’entrepôt de données Snowflake a été créé et a été activé, cliquez sur la liste déroulante dans le coin supérieur gauche de la page Explore. Un point vert indique que l’entrepôt de données a été activé.

Vous devez également vérifier que le widget de l’explorateur de table dans le volet gauche de la page Explore affiche toutes les tables de la base de données Snowflake spécifiée dans l’entrepôt de données.

Pushdown de requêtes dans Qubole

Les requêtes Spark bénéficient de l’optimisation du pushdown automatique des requêtes de Snowflake, ce qui permet d’améliorer les performances. Par défaut, le pushdown de requêtes Snowflake est activé dans Qubole.

Pour plus de détails sur le pushdown de requêtes, voir Déplacer le traitement de requêtes Spark vers Snowflake (blog Snowflake).