Utilisation de Cortex Code CLI avec Snowflake Postgres¶
La capacité Cortex Code CLI Postgres vous permet de poser des questions en langage naturel sur une base de données Postgres et de faire en sorte que Cortex Code génère et exécute du code SQL pour vous. Elle est conçue pour le débogage, l’exploration de schémas et les analyses simplifiées, sans besoin d’écrire à la main chaque requête.
Pour plus d’informations sur l’installation, la configuration de la connexion et l’utilisation générale de Cortex Code CLI, consultez CLI de Cortex Code.
Cette capacité spécifique à Postgres :
Aide à créer et gérer les instances Snowflake Postgres.
Traduit les questions en langage naturel en SQL Postgres.
Exécute le code SQL généré sur une instance Postgres configurée.
Renvoie un bref résumé lisible, ainsi que des résultats bruts facultatifs.
Peut configurer
pg_lakepour le stockage d’objets et le déplacement de données entre Postgres et Snowflake via des zones de préparation Snowflake ou des compartiments S3.
Gestion des connexions¶
La compétence stocke les connexions à l’aide des fichiers ~/.pg_service.conf et ~/.pgpass natifs de PostgreSQL, les rendant compatibles avec tous les clients PostgreSQL standards (psql, pgAdmin, DBeaver, etc.). Lorsque vous demandez à Cortex Code de créer une instance ou de réinitialiser des identifiants, la connexion est enregistrée automatiquement via pg_connect.py.
Avertissement
N’affichez jamais de contenu .pgpass dans le chat ou les journaux. Utilisez pg_connect.py pour toutes les opérations liées aux identifiants.
Exécution des requêtes¶
Une fois qu’une connexion est enregistrée, Cortex Code peut exécuter des commandes psql sur vos instances directement depuis le chat. Les mots de passe sont résolus automatiquement à partir de ~/.pgpass. Vous pouvez utiliser des invites en langage naturel :
« Affiche-moi toutes les tables sur my_instance »
« Exécute SELECT sur la table des commandes pour obtenir les 10 dernières lignes »
« Quels index existent sur la table des utilisateurs ? »
Cortex Code traduit ces invites en commandes psql, vérifie que l’instance est prête (reprise automatique si suspendue), exécute la requête et présente les résultats.
Cortex Code n’exécute pas d’opérations d’écriture (INSERT, UPDATE, DELETE, DROP, TRUNCATE), sauf si vous le lui demandez explicitement. Les opérations d’écriture nécessitent une confirmation avant d’être autorisées.
Contrôles de santé Postgres¶
pg_doctor est un outil de diagnostic en lecture seule qui exécute des contrôles de santé sur une instance Postgres avec un délai d’instruction de 30 secondes.
Contrôle |
Description |
Seuils |
|---|---|---|
|
Taux de réussite du cache des tables et des index |
Réussite : > = 99 %/Avertissement : 95-99 %/Échec : < 95 % |
|
Estimation du chargement des tables et des index |
Réussite : < 30% / Warn: 30-50% / Fail: > 50 % |
|
Lignes inactives et état du vidage automatique |
Avertissement si les tables ont besoin d’être vidées |
|
Nombre de connexions par rôle |
À titre informatif |
|
Verrous exclusifs présents |
Avertissement si des verrous sont présents |
|
Requêtes bloquées |
Échec si des requêtes sont bloquées |
|
Requêtes s’exécutant plus de 5 minutes |
Avertissement s’il y en a |
|
Requêtes les plus lentes (nécessite |
À titre informatif |
|
Index jamais analysés |
Avertissement s’il y en a |
|
Répartition de la taille des tables (total, index, TOAST) |
À titre informatif |
Après avoir présenté les résultats, Cortex Code explique les contrôles signalés et propose une enquête plus approfondie. Toute action de remédiation (VACUUM, REINDEX, etc.) nécessite une confirmation explicite avant exécution.
Configuration de pg_lake¶
pg_lake est une extension PostgreSQL qui permet le stockage d’objets et le déplacement de données S3 sur des instances Snowflake Postgres. Pour plus de détails sur l’extension elle-même, consultez Configuration du stockage S3 pour pg_lake.
La compétence Cortex Code aide à la configuration multi-systèmes (SQL Snowflake, AWS IAM, SQL Postgres) pour les zones de préparation Snowflake et les compartiments S3 gérés en dehors de Snowflake. Vous pouvez demander à Cortex Code de vous guider à travers la configuration de manière interactive :
« Configure pg_lake sur my_instance avec s3://my-bucket/data/ »
« Configure pg_lake avec une zone de préparation gérée par Snowflake sur my_instance »
Étapes d’approbation¶
Cortex Code nécessite une confirmation avant d’exécuter des opérations qui sont facturables, irréversibles ou sensibles sur le plan de la sécurité.
Fonctionnement |
Raison |
|---|---|
Création/suspension d’une instance |
Ressource facturable ou perte de connexions actives |
Modifications d’une politique réseau |
Modification du contrôle d’accès |
Création/modification d’une intégration de stockage |
Ressources Cloud, nécessite |
Mise à jour d’une politique de confiance AWS |
Modification des autorisations IAM |
Opérations de suppression/de destruction |
Perte permanente de données |
Écriture d’opérations à partir de diagnostics |
|
Les opérations en lecture seule (SHOW, DESCRIBE, contrôles de santé, requêtes SELECT) ne nécessitent pas d’approbation.