Query depuis l'éditeur SQL dans le Workspace
Cette page décrit comment query des bases de données dans votre projet Lakebase depuis l'éditeur SQL dans le Workspace d'analytique et d'IA en utilisant deux méthodes de connexion différentes.
L’éditeur SQL dans le Workspace est un espace de travail SQL collaboratif dans lequel vous pouvez créer des query, trouver des data catalog, créer des visualisations et partager les résultats avec vos collègues. Il possède des fonctionnalités avancées pour l'analytique, la collaboration et l'automatisation.
Pour les fonctionnalités natives de Postgres, comme EXPLAIN/ANALYZE et les méta-commandes (\dt, \d, \l), utilisez l'éditeur SQL Lakebase. Voir query depuis l'éditeur SQL Lakebase.
Pour des informations complètes sur les fonctionnalités de l'éditeur SQL, consultez Écrire des requêtes et explorer des données dans l'éditeur SQL.
Méthodes de connexion
Vous pouvez vous connecter à votre base de données Lakebase depuis l'éditeur SQL en utilisant deux méthodes :
- Connexion directe au compute : connectez-vous directement à votre compute Lakebase pour un accès immédiat aux requêtes sur un projet et une Branch spécifiques.
- Enregistrement Unity Catalog : Enregistrez votre base de données dans Unity Catalog pour activer les requêtes fédérées, la gouvernance unifiée et l’analytique intersources.
Choisissez votre méthode de connexion
Fonctionnalité | Connexion directe au compute | Enregistrement dans Unity Catalog |
|---|---|---|
Accès aux données | Accès complet en lecture-écriture à votre base de données Lakebase | Accès en lecture seule via Unity Catalog |
Idéal pour | Travailler principalement avec les données Lakebase sans les combiner avec d'autres sources de données. | Combinaison des données Lakebase avec d'autres tables Unity Catalog dans des queries fédérées |
Complexité de la configuration | Accès immédiat pour query une base de données spécifique sans enregistrement | Nécessite l'enregistrement du catalogue et les privilèges Unity Catalog. |
Gouvernance | Aucune fonctionnalité de gouvernance Unity Catalog | Contrôles de gouvernance unifiés (autorisations, traçabilité, logs d'audit) |
Contrôle d'accès | Autorisations basées sur les rôles Postgres uniquement | Découverte centralisée et contrôle d'accès sur plusieurs sources de données |
Cas d’utilisation | Opérations et modifications directes de la base de données | Tableaux de bord et applications qui intègrent des données transactionnelles et analytiques |
Méthode 1 : Se connecter directement au compute Lakebase
Utilisez cette méthode pour vous connecter directement à votre compute Lakebase pour un accès immédiat à la query.
Avant de commencer
Si vous n’êtes pas le propriétaire du projet, vérifiez que vous disposez des éléments suivants :
- Rôle Postgres : un rôle Postgres correspondant pour accéder à la base de données. Consultez Gérer les rôles Postgres.
- Autorisations de la base de données : les autorisations nécessaires pour accéder à la base de données, au schéma ou à la table. Consultez Gérer les autorisations.
Si vous n'avez pas le rôle ou les autorisations nécessaires, contactez le propriétaire du projet pour demander l'accès.
Le compute Lakebase doit être à l'état actif pour s'y joindre. Si le compute est inactif, vous ne pouvez pas vous y attacher. Les computes deviennent généralement inactifs lorsque la mise à l'échelle à zéro est activée et qu'il n'y a aucune activité de base de données.
Pour activer un compute inactif, exécutez une query dans l'éditeur SQL de Lakebase ou désactivez le dimensionnement à zéro pour vous assurer que votre compute reste actif. Voir Mise à l'échelle à zéro.
Pour vous connecter directement à votre compute Lakebase :
- Utilisez le sélecteur d'applications pour accéder à Analytique et IA .
- Ouvrez l’éditeur SQL en cliquant sur
**SQL Editor** dans la barre latérale.
- Dans le menu déroulant compute, sélectionnez Plus...

- Dans la boîte de dialogue Attacher à une ressource de compute existante , sélectionnez Lakebase Postgres , choisissez l'option Mise à l'échelle automatique , puis sélectionnez votre Projet et votre Branch .

- Cliquez sur Attacher pour vous connecter.
Exemples de requêtes avec connexion directe
Après la connexion, vous pouvez exécuter des queries SQL Postgres standard sur votre base de données Lakebase.
Créez une table, insérez des données et interrogez-la :
CREATE TABLE IF NOT EXISTS playing_with_lakebase(id SERIAL PRIMARY KEY, name TEXT NOT NULL, value REAL);
INSERT INTO playing_with_lakebase(name, value)
SELECT LEFT(md5(i::TEXT), 10), random() FROM generate_series(1, 10) s(i);
SELECT * FROM playing_with_lakebase;
Interroger une table spécifique :
SELECT * FROM public.playing_with_lakebase;
Limitations avec une connexion directe :
- Requêtes fédérées non prises en charge : Vous ne pouvez interroger que le projet et la branch Lakebase connectés. Vous ne pouvez pas combiner les données Lakebase avec d'autres tables Unity Catalog dans une seule query.
- Méta-commandes Postgres non prises en charge : Les méta-commandes Postgres (comme
\dt,\d,\l) qui fonctionnent dans l' éditeur SQL Lakebase ne fonctionnent pas dans l'éditeur SQL (Lakehouse).
Méthode 2 : Enregistrer la base de données dans Unity Catalog
Utilisez cette méthode pour enregistrer votre base de données Lakebase dans Unity Catalog, ce qui permet d'effectuer des queries fédérées et une gouvernance unifiée sur l'ensemble de vos sources de données.
Avant de commencer
Vérifiez que vous disposez de :
- Rôle Postgres : un rôle Postgres correspondant pour accéder à la base de données. Consultez Gérer les rôles Postgres.
- Autorisations de la base de données : les autorisations nécessaires pour accéder à la base de données, au schéma ou à la table. Consultez Gérer les autorisations.
- Privilèges Unity Catalog :
CREATE CATALOGprivilèges sur le métastore Unity Catalog pour enregistrer la base de données - SQL warehouse : Un SQL Warehouse Serverless . Les SQL Warehouses Pro et Classic ne sont pas pris en charge et renvoient une erreur
PERMISSION_DENIED.
Si vous n'avez pas le rôle ou les autorisations nécessaires, contactez le propriétaire du projet pour demander l'accès.
Les catalogues Lakebase nécessitent un SQL Warehouse Serverless . Si une erreur PERMISSION_DENIED s'affiche lors de l'interrogation, vérifiez que le warehouse sélectionné dans l'éditeur SQL est Serverless. Ouvrez la liste déroulante warehouse et passez à un warehouse Serverless.
Enregistrer votre base de données
Pour enregistrer une base de données Lakebase dans Unity Catalog :
- Utilisez le sélecteur d'applications pour accéder à Analytique et IA .
- Dans Catalog Explorer, cliquez sur le bouton plus et Créer un catalogue .
- Saisissez un nom de catalogue (par exemple,
lakebase_catalog). - Sélectionnez Lakebase Postgres comme type de catalogue, puis choisissez l'option Autoscaling .
- Sélectionnez votre projet, votre Branch et votre base de données Postgres.
- Cliquez sur Créer .
Le catalogue apparaît dans Catalog Explorer, où vous pouvez trouver des schémas, des tables et des vues.
query via Unity Catalog
Après l'enregistrement, interrogez votre base de données Lakebase à l'aide de SQL Warehouse ou de tout outil qui se connecte à Unity Catalog.
Interroger une base de données enregistrée :
-- Query a registered Lakebase database
SELECT * FROM chatbot_catalog.public.conversations
WHERE created_at >= current_date - INTERVAL 7 DAYS;
Combiner les données Lakebase et lakehouse :
-- Join Lakebase and Unity Catalog data
SELECT
c.conversation_id,
c.user_id,
c.agent_response,
u.user_name,
u.subscription_tier
FROM chatbot_catalog.public.conversations c
JOIN main.user_analytics.users u
ON c.user_id = u.user_id;
Pour plus d'informations sur les autorisations de Unity Catalog et l'octroi d'accès à d'autres utilisateurs, consultez Autorisations et contrôle d'accès.
Limitations relatives à l'enregistrement Unity Catalog :
- Accès en lecture seule : les catalogues enregistrés à partir de bases de données Lakebase sont en lecture seule via Unity Catalog. Pour modifier les données, utilisez l'éditeur SQL Lakebase ou connectez-vous directement à votre base de données.
- Une seule base de données par catalogue : Chaque catalogue Unity Catalog représente une base de données Lakebase. Pour exposer plusieurs bases de données, enregistrez chacune séparément.
- **Synchronisation des métadonnées** : Unity Catalog met en cache les métadonnées afin de réduire les requêtes Postgres. Les nouveaux objets peuvent ne pas apparaître immédiatement. Cliquez sur
pour Trigger un refresh complet.
- **Enregistrement de bases de données branchées** : L'enregistrement d'une base de données ramifiée en tant que catalogue distinct n'est pas encore pris en charge. Les Branches héritent des métadonnées d'enregistrement Unity Catalog de leur parent, ce qui entraîne l'échec de l'enregistrement du nouveau catalogue.
Pour des information complètes sur l'enregistrement des bases de données dans Unity Catalog, consultez Enregistrer une base de données Lakebase dans Unity Catalog.