La création d'un espace de noms dans un catalogue (tel qu'un catalogue REST Apache Iceberg ou un catalogue Apache Hive) vous aide à organiser vos tables dans le catalogue d'exécution Lakehouse.
Avant de commencer
- Consultez À propos du catalogue d'environnements d'exécution Lakehouse pour comprendre le fonctionnement du catalogue d'environnements d'exécution Lakehouse et les limites du service.
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles. - Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
Verify that billing is enabled for your Google Cloud project.
Enable the BigLake API.
Roles required to enable APIs
To enable APIs, you need the serviceusage.services.enable permission. If you
created the project, then you likely already have this permission through the
Owner role (roles/owner). Otherwise, you can get this permission through the
Service Usage Admin role (roles/serviceusage.serviceUsageAdmin).
Learn how to grant roles.
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
Verify that billing is enabled for your Google Cloud project.
Enable the BigLake API.
Roles required to enable APIs
To enable APIs, you need the serviceusage.services.enable permission. If you
created the project, then you likely already have this permission through the
Owner role (roles/owner). Otherwise, you can get this permission through the
Service Usage Admin role (roles/serviceusage.serviceUsageAdmin).
Learn how to grant roles.
Rôles requis
Pour obtenir les autorisations nécessaires pour créer un espace de noms, demandez à votre administrateur de vous accorder les rôles IAM suivants sur votre projet :
-
Tous :
- Administrateur BigLake (
roles/biglake.admin) - Administrateur de l'espace de stockage (
roles/storage.admin)
- Administrateur BigLake (
Pour en savoir plus sur l'attribution de rôles, consultez Gérer l'accès aux projets, aux dossiers et aux organisations.
Vous pouvez également obtenir les autorisations requises avec des rôles personnalisés ou d'autres rôles prédéfinis.
Créer un espace de noms
Créez un espace de noms dans un catalogue.
Remarques
Lorsque vous créez un espace de noms, vous pouvez éventuellement spécifier un bucket Cloud Storage ou un chemin d'accès à associer à l'espace de noms :
- Catalogue multibuckets (
bl://) (recommandé) : vous pouvez définir n'importe quel emplacement personnalisé, à condition qu'il se trouve dans un emplacement autorisé par le catalogue (default_locationourestricted_locations). Si vous ne spécifiez pas d'emplacement, l'espace de noms est créé dans l'emplacement par défaut du catalogue (par exemple,gs://{default_location}/{namespace_name}). Catalogue à bucket unique (
gs://) : l'emplacement de l'espace de noms est automatiquement hérité du bucket unique du catalogue.
Console
Dans la console Google Cloud , ouvrez la page Lakehouse.
Sélectionnez un catalogue existant ou créez-en un si vous n'en avez pas.
Dans la barre de menus, cliquez sur + Créer un espace de noms.
Dans le champ Nom de l'espace de noms, saisissez un nom unique pour votre espace de noms.
Pour Emplacement, vous pouvez spécifier un bucket Cloud Storage ou un chemin d'accès à associer à votre espace de noms. L'emplacement correspond au bucket d'entrepôt.
Cliquez sur Créer.
Votre espace de noms est créé et apparaît dans la liste des détails de votre catalogue.
gcloud
Créer un espace de noms dans un catalogue à plusieurs buckets (bl://) (recommandé)
Pour créer un espace de noms dans un catalogue à plusieurs buckets (où vous pouvez éventuellement spécifier un emplacement personnalisé), exécutez la commande gcloud biglake iceberg namespaces create avec l'indicateur --properties :
gcloud biglake iceberg namespaces create NAMESPACE_NAME \ --project="PROJECT_ID" \ --catalog="CATALOG_ID" \ [--properties="location=LOCATION"]
Remplacez les éléments suivants :
NAMESPACE_NAME: nom de votre espace de noms.PROJECT_ID: ID de votre projet Google Cloud .CATALOG_ID: ID de votre catalogue.LOCATION: (facultatif) bucket ou chemin d'accès Cloud Storage personnalisé à associer à l'espace de noms (par exemple,gs://my-bucket/my-path).
Créer un espace de noms dans un catalogue à bucket unique (gs://)
Pour créer un espace de noms dans un catalogue à un seul bucket, omettez l'option --properties.
L'emplacement de l'espace de noms est automatiquement hérité du bucket unique du catalogue.
gcloud biglake iceberg namespaces create NAMESPACE_NAME \ --project="PROJECT_ID" \ --catalog="CATALOG_ID"
REST
Pour créer un espace de noms à l'aide de l'API REST, envoyez une requête POST au point de terminaison CreateIcebergNamespace :
POST /iceberg/v1/restcatalog/v1/projects/PROJECT_ID/catalogs/CATALOG_ID/namespaces
Le corps de la requête doit contenir une charge utile JSON CreateNamespaceRequest Iceberg valide définissant l'identifiant et les propriétés de l'espace de noms :
{
"namespace": [
"NAMESPACE_NAME"
],
"properties": {
"location": "LOCATION"
}
}
Remplacez les éléments suivants :
PROJECT_ID: ID de votre projet Google Cloud .CATALOG_ID: ID de votre catalogue.NAMESPACE_NAME: nom de votre espace de noms.LOCATION: (facultatif) bucket ou chemin d'accès Cloud Storage personnalisé à associer à l'espace de noms (par exemple,gs://my-bucket/my-path).
Étapes suivantes
- Découvrez comment gérer les LCA d'espace de noms.