Tous les produits
Search
Centre de documentation

AnalyticDB:Importer des données à l'aide de la découverte de métadonnées

Dernière mise à jour :Aug 10, 2026

Lorsque les services d'entreprise téléversent des fichiers de données, tels que des journaux et des formulaires standard, vers Object Storage Service (OSS), ces fichiers ne disposent généralement pas de gestion des métadonnées, ce qui rend leur analyse complexe. La découverte de métadonnées résout ce problème en analysant automatiquement les chemins OSS, en déduisant les schémas de table à partir de la structure et du contenu des fichiers, et en créant des tables interrogeables dans AnalyticDB for MySQL sans nécessiter de DDL manuel. Vous pouvez planifier des tâches récurrentes pour maintenir la synchronisation des métadonnées à mesure que vos fichiers évoluent.

Prérequis

Avant de commencer, assurez-vous de disposer des éléments suivants :

Exigences relatives au chemin OSS

Votre chemin OSS doit respecter l'un des formats suivants :

  • <BucketName>/directory/.../directory/table/file

  • <BucketName>/directory/.../directory/table/partition/.../partition/file

Toutes les conditions suivantes doivent également être remplies :

  • Le compartiment OSS comporte au moins un niveau de sous-répertoires

  • Les fichiers appartenant à la même table ou partition sont au même format

  • Les fichiers appartenant à la même table ou partition possèdent les mêmes types de champs et le même nombre de champs

  • Le chemin de l'emplacement du répertoire OSS se termine par une barre oblique (/)

Limitations

Limitation Détails
Tâches par cluster et par chemin Une seule tâche de découverte de métadonnées par cluster et par chemin OSS
Mode d'entrepôt de données Mode standard uniquement. Le mode gratuit n'est pas pris en charge.
Format de table Iceberg En aperçu public. Ouvrez un ticket pour l'activer.
Suppression de colonnes des tables mappées Si vous supprimez une colonne d'une table mappée dans AnalyticDB for MySQL, la colonne est rajoutée lors de la prochaine exécution de la tâche.
Suppression d'objets Seule l'option Ignore Deletion Updates est prise en charge : si un fichier OSS est supprimé, la table mappée existe toujours après la prochaine exécution de la tâche.

Mappage des chemins OSS vers les tables

Le résultat du mappage dépend de la structure de vos fichiers OSS et de l'emplacement OSS Directory Location que vous définissez. Le système mappe le premier niveau de répertoire sous OSS Directory Location à un nom de table, et tous les niveaux de répertoire plus profonds à des champs de partition.

Nommage des champs de partition :

  • Si les noms de répertoire utilisent le format key=value (par exemple, year=2022), les clés deviennent les noms des champs de partition (year, month, day).

  • Si les noms de répertoire sont de simples chaînes de caractères (par exemple, year, month, day), les champs de partition sont nommés partition_0, partition_1, etc.

Règles de mappage :

  • L'emplacement OSS Directory Location doit comporter au moins un niveau de répertoire supplémentaire en dessous. Si le niveau suivant ne contient que des fichiers sans sous-répertoires, le mappage échoue.

  • Les fichiers appartenant à la même table ou partition doivent partager le même format et la même structure de colonnes. Des formats ou des types de champs incompatibles entraînent l'échec du mappage.

  • Les noms des répertoires de partition doivent respecter les conventions de nommage des tables dans AnalyticDB for MySQL.

Exemples :

Chemin OSS Emplacement du répertoire OSS Résultat du mappage

oss://adb/Table1/file1.csv

oss://adb/Table1/file2.json

oss://adb/ Impossible de mapper. Les fichiers dans Table1 ont des formats différents (CSV et JSON).

oss://adb/Table2/year/month/day/file3.json

oss://adb/Table2/year/month/day/file4.json

oss://adb/ Table partitionnée Table2 avec les champs de partition partition_0, partition_1, partition_2.
Mêmes fichiers que ci-dessus oss://adb/Table2/ Table partitionnée year avec les champs de partition partition_0, partition_1.
Mêmes fichiers que ci-dessus oss://adb/Table2/year/month/ Table non partitionnée day.
Mêmes fichiers que ci-dessus oss://adb/Table2/year/month/day/ Impossible de mapper. Aucun niveau de répertoire n'existe après l'emplacement OSS Directory Location spécifié.

oss://adb/Table3/year=2022/month=03/day=01/file5.csv

oss://adb/Table3/year=2022/month=03/day=01/file6.csv

oss://adb/ Table partitionnée Table3 avec les champs de partition year, month, day.
Mêmes fichiers que ci-dessus oss://adb/Table3/ ou oss://adb/Table3/year=2022/ Impossible de mapper. year=2022 et month=03 ne respectent pas les conventions de nommage des tables.

oss://adb/Table4/2020/03/30/file7.csv

oss://adb/Table3/2020/03/30/file8.csv

oss://adb/ Table partitionnée Table4 avec les champs de partition partition_0, partition_1, partition_2.
Mêmes fichiers que ci-dessus oss://adb/Table3/ ou oss://adb/Table3/2020/ Impossible de mapper. 2020 et 03 ne respectent pas les conventions de nommage des tables.

Créer une tâche de découverte de métadonnées

  1. Connectez-vous à la console AnalyticDB for MySQL. Dans le coin supérieur gauche, sélectionnez une région. Dans le volet de navigation de gauche, cliquez sur Clusters, puis cliquez sur l'ID du cluster que vous souhaitez gérer.

  2. Dans le volet de navigation de gauche, choisissez Data Ingestion > Metadata Discovery.

  3. Sur la page Metadata Discovery, dans la zone OSS Data Source, cliquez sur Start Wizard.

    Si Start Wizard est estompé, créez un compte privilégié au préalable.
  4. Dans l'onglet OSS Data Source, configurez les paramètres suivants.

    Datasource Config

    Paramètre Description
    Data Warehouse Mode Définissez-le sur le mode standard. Le mode gratuit n'est pas pris en charge.
    OSS Directory Location Chemin OSS à analyser. Le chemin doit se terminer par /. Le système mappe le premier niveau de répertoire sous ce chemin à un nom de table, et tous les répertoires plus profonds à des champs de partition. Pour les tables de lac de données (Iceberg), définissez cet emplacement sur le répertoire parent du répertoire de la table — par exemple, si votre table Iceberg se trouve à l'emplacement oss://adb/testdb/iceberg_table/, définissez l'emplacement sur oss://adb/testdb/.
    Path Filter Rule (facultatif) Restreint les fichiers à mapper : sélectionnez Include pour mapper uniquement les fichiers d'un chemin spécifié, ou Exclude pour ignorer les fichiers d'un chemin spécifié. Les fichiers situés sous un chemin inclus doivent partager le même format et la même structure de colonnes.
    Format Resolver Sélectionnez le résolveur correspondant au format de votre fichier. Pour les formats courants, sélectionnez automatic pour essayer chaque résolveur séquentiellement. Formats pris en charge pour les fichiers courants : csv, json, parquet, avro, orc et automatic. Format pris en charge pour les tables de lac de données : iceberg. Si le type de résolveur ne correspond pas au format du fichier, le mappage échoue.
    Configuration Item (facultatif) Paramètres CSV avancés : délimiteur de colonne, identifiant de référence, mode d'en-tête de table et autorisation ou non des lignes à colonne unique (true ou false). Pour configurer l'utilisation ou non de la première ligne d'un fichier CSV comme noms de colonnes, contactez le support technique.

    Scheduling Configuration

    Paramètre Description
    Scheduling Frequency Fréquence d'exécution de la tâche pour détecter les modifications de schéma et les nouvelles données. Lorsque les fichiers OSS changent, les tables mappées dans AnalyticDB for MySQL sont mises à jour selon les règles de la section Destination Metadata Configuration.

    Destination Metadata Configuration

    Paramètre Description
    Schema Name Nom du schéma, mappé à un nom de base de données dans AnalyticDB for MySQL. Doit être unique — il ne peut pas correspondre à une base de données existante ni au nom de schéma d'une autre tâche de découverte.
    File Field Change Rule (facultatif) Contrôle la manière dont la table mappée change lorsque les colonnes du fichier OSS sont modifiées : Add Only Columns ajoute de nouvelles colonnes à la table mappée lorsqu'une colonne est ajoutée à un fichier OSS ; Ignore Table Updates synchronise uniquement les modifications de partition, sans ajouter ni supprimer de colonnes.
    Object Deletion Change Rule (facultatif) Seule l'option Ignore Deletion Updates est prise en charge. Si un fichier OSS est supprimé, la table mappée existe toujours après la prochaine exécution de la tâche.
    Important

    Vous pouvez exécuter des opérations DML directement sur les tables mappées. Si vous ajoutez une colonne à une table mappée dans AnalyticDB for MySQL, la colonne est conservée après la prochaine exécution de la tâche. Si vous supprimez une colonne d'une table mappée, la colonne est rajoutée après la prochaine exécution de la tâche.

  5. Cliquez sur Create.

    Une fois la tâche créée, elle s'exécute automatiquement à l'intervalle planifié. Pour l'exécuter immédiatement, localisez la tâche dans la liste Job List et cliquez sur Execute dans la colonne Actions.

Vérifier la tâche

Une fois la tâche exécutée, accédez à la page Job List pour vérifier son statut et modifier sa configuration.

Lorsque la tâche se termine avec succès, accédez à Job Development > SQL Development pour afficher les bases de données, les tables et les partitions mappées vers AnalyticDB for MySQL.