> ## Documentation Index
> Fetch the complete documentation index at: https://private-7c7dfe99-mintlify-fbfa8bee.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

> Le moteur de base de données DataLakeCatalog vous permet de connecter ClickHouse à des catalogues de données externes et d’interroger des données dans un format de table ouvert

# DataLakeCatalog

Le moteur de base de données `DataLakeCatalog` vous permet de connecter ClickHouse à des
catalogues de données externes et d’interroger des données dans un format de table ouvert, sans avoir à dupliquer les données.
Cela transforme ClickHouse en un puissant moteur de requête qui s’intègre parfaitement à
votre infrastructure de lac de données existante.

<div id="supported-catalogs">
  ## Catalogues pris en charge
</div>

Le moteur `DataLakeCatalog` prend en charge les catalogues de données suivants :

* **AWS Glue Catalog** - Pour les tables Iceberg dans des environnements AWS
* **Databricks Unity Catalog** - Pour les tables Delta Lake et Iceberg
* **Hive Metastore** - Catalogue traditionnel de l’écosystème Hadoop
* **Catalogues REST** - Tout catalogue compatible avec la spécification REST d’Iceberg

<div id="creating-a-database">
  ## Création d’une base de données
</div>

Vous devrez activer les paramètres appropriés ci-dessous pour utiliser le moteur `DataLakeCatalog` :

```sql theme={null}
SET allow_experimental_database_iceberg = 1;
SET allow_experimental_database_unity_catalog = 1;
SET allow_experimental_database_glue_catalog = 1;
SET allow_experimental_database_hms_catalog = 1;
SET allow_experimental_database_paimon_rest_catalog = 1;
```

Les bases de données utilisant le moteur `DataLakeCatalog` peuvent être créées selon la syntaxe suivante :

```sql theme={null}
CREATE DATABASE database_name
ENGINE = DataLakeCatalog(catalog_endpoint[, user, password])
SETTINGS
catalog_type,
[...]
```

Les paramètres suivants sont pris en charge :

| Setting                 | Description                                                                                                                |
| ----------------------- | -------------------------------------------------------------------------------------------------------------------------- |
| `catalog_type`          | Type de catalogue : `glue`, `unity` (Delta), `rest` (Iceberg), `hive`, `onelake` (Iceberg)                                 |
| `warehouse`             | Nom du warehouse/de la base de données à utiliser dans le catalogue.                                                       |
| `catalog_credential`    | Identifiants d’authentification pour le catalogue (par ex. clé API ou jeton)                                               |
| `auth_header`           | En-tête HTTP personnalisé pour l’authentification auprès du service de catalogue                                           |
| `auth_scope`            | Scope OAuth2 pour l’authentification (si vous utilisez OAuth)                                                              |
| `storage_endpoint`      | URL du point de terminaison du stockage sous-jacent                                                                        |
| `oauth_server_uri`      | URI du serveur d’autorisation OAuth2 pour l’authentification                                                               |
| `vended_credentials`    | Booléen indiquant s’il faut utiliser les identifiants fournis par le catalogue (compatible avec AWS S3 et Azure ADLS Gen2) |
| `aws_access_key_id`     | ID de clé d’accès AWS pour l’accès à S3/Glue (si vous n’utilisez pas les identifiants fournis)                             |
| `aws_secret_access_key` | Clé d’accès secrète AWS pour l’accès à S3/Glue (si vous n’utilisez pas les identifiants fournis)                           |
| `region`                | Région AWS du service (par ex. `us-east-1`)                                                                                |
| `dlf_access_key_id`     | ID de clé d’accès pour l’accès à DLF                                                                                       |
| `dlf_access_key_secret` | Clé d’accès secrète pour l’accès à DLF                                                                                     |

<div id="examples">
  ## Exemples
</div>

Consultez les sections ci-dessous pour voir des exemples d'utilisation du moteur `DataLakeCatalog` :

* [Unity Catalog](/fr/guides/use-cases/data-warehousing/unity-catalog)
* [Glue Catalog](/fr/guides/use-cases/data-warehousing/glue-catalog)
* Catalog OneLake
  Peut être utilisé en activant `allow_experimental_database_iceberg` ou `allow_database_iceberg`.

```sql theme={null}
CREATE DATABASE database_name
ENGINE = DataLakeCatalog(catalog_endpoint)
SETTINGS
    catalog_type = 'onelake',
    warehouse = warehouse,
    onelake_tenant_id = tenant_id,
    oauth_server_uri = server_uri,
    auth_scope = auth_scope,
    onelake_client_id = client_id,
    onelake_client_secret = client_secret;
SHOW TABLES IN database_name;
SELECT count() from database_name.table_name;
```
