Tous les produits
Search
Centre de documentation

AnalyticDB:Data import methods

Dernière mise à jour :Aug 10, 2026

AnalyticDB for MySQL prend en charge cinq méthodes d'importation de données : les tables externes, DataWorks, Data Transmission Service (DTS), les programmes basés sur Java Database Connectivity (JDBC) et la synchronisation des données. Le choix approprié dépend de l'emplacement de vos données, de leur volume et de la fréquence à laquelle vous devez les transférer.

Choisir une méthode d'importation

Source de données Volume / fréquence Méthode recommandée
OSS, HDFS, MaxCompute, RDS, PolarDB Lot volumineux (Go–To), ponctuel ou quotidien Tables externes
RDS for MySQL, Oracle, OSS, MaxCompute, HDFS Petit lot, toutes les minutes ou heures DataWorks
RDS for MySQL, PolarDB for MySQL, HBase Temps réel, en quelques secondes DTS
Fichiers journaux, données locales, pipelines personnalisés Tout volume, nécessite un prétraitement Programme basé sur JDBC
SLS, ApsaraMQ for Kafka, Hive, OSS Flux continu ou piloté par les métadonnées Synchronisation des données

Utiliser des tables externes pour importer des données

Les tables externes mappent les données stockées dans des systèmes externes (OSS, HDFS, MaxCompute et plusieurs sources RDS et PolarDB). AnalyticDB for MySQL lit les données simultanément sur tous les nœuds du cluster et génère automatiquement les index à la fin du job, ce qui en fait l'option offrant le débit le plus élevé pour les importations volumineuses.

Comportements clés :

  • Les données importées ne sont pas visibles pendant l'exécution du job et ne deviennent interrogeables qu'une fois celui-ci terminé.

  • Si la partition cible existe déjà, ses données sont écrasées.

  • La génération d'index s'exécute automatiquement à la fin du job afin d'optimiser les performances des requêtes.

  • Planifiez les jobs volumineux pendant les heures creuses pour éviter toute contention des ressources.

Importation standard vs importation élastique

Par défaut, AnalyticDB for MySQL utilise l'importation standard, qui lit les données source sur des groupes de ressources interactifs (nœuds de calcul résidents) et écrit les index sur les nœuds de stockage. Cela peut entraîner une utilisation élevée du CPU et des E/S sur les nœuds de stockage pendant le job.

L'importation élastique (disponible à partir de la version V3.1.10.0) décharge à la fois la lecture et la génération d'index vers des groupes de ressources de job (nœuds de calcul mis à l'échelle dynamiquement), laissant les nœuds de stockage pratiquement indemnes. Utilisez l'importation élastique lorsque vous avez besoin d'une concurrence plus élevée ou souhaitez protéger les charges de travail interactives lors du chargement des données.

Importation standard Importation élastique
Version minimale Aucune limite V3.1.10.0 et versions ultérieures
Jobs concurrents Jusqu'à 2 Jusqu'à 32
Ressources consommées Groupes de ressources interactifs + nœuds de stockage Groupes de ressources de job uniquement ; impact minimal sur les nœuds de stockage
Activé par défaut Oui Oui, à partir de la version V3.1.10
Sources de données prises en charge MaxCompute, OSS, HDFS, ApsaraDB RDS for MySQL, ApsaraDB RDS for SQL Server, PolarDB-X, PolarDB for MySQL MaxCompute, OSS
Durée minimale du job Variable ~2–3 minutes
Scénarios d'utilisation recommandés Vous souhaitez importer une petite quantité de données ; aucune exigence en matière de vitesse ou de concurrence Vous souhaitez consommer moins de ressources sur les nœuds de stockage pour accélérer l'importation des données ; un job d'importation implique plusieurs tables ; vous souhaitez importer une grande quantité de données vers des tables partitionnées

Limites de l'importation élastique :

  • Prise en charge uniquement sur AnalyticDB for MySQL Data Lakehouse Edition (V3.0) basée sur des tables externes utilisant INSERT OVERWRITE INTO.

  • Importe les données d'une seule table uniquement — les jointures de tables ne sont pas prises en charge.

  • Prend en charge uniquement les clauses WHERE et LIMIT ; ORDER BY n'est pas pris en charge. Dans l'instruction SELECT, vous pouvez utiliser des astérisques (*), des noms de colonnes, des valeurs par défaut ou des constantes pour les champs de colonne et de valeur — les fonctions SQL ne sont pas prises en charge.

  • Cible uniquement les tables de faits.

  • Types de données pris en charge : BOOLEAN, TINYINT, SMALLINT, INT, BIGINT, FLOAT, DOUBLE, DECIMAL, VARCHAR, DATE, TIME, DATETIME, TIMESTAMP.

L'importation élastique nécessite au moins 2 à 3 minutes pour se terminer. Pour les jobs qui doivent se terminer en moins de 3 minutes, utilisez plutôt l'importation standard.

Ajuster la concurrence de l'importation élastique

Pour augmenter la concurrence au-delà de la valeur par défaut, définissez le paramètre adb.load.job.max.acu. Sa valeur par défaut est (nombre de shards) + 1. Définissez-le sur K × valeur par défaut où K ≥ 1. Maintenez K inférieur ou égal au nombre de partitions dans la table partitionnée cible.

Interrogez le nombre de shards dans votre cluster :

SELECT count(1) FROM information_schema.kepler_meta_shards;

Pour connaître le nombre de partitions, consultez Analyse du stockage.

Cas d'utilisation

  • Initialisation de l'entrepôt de données : Chargez des téraoctets de données historiques depuis OSS ou HDFS vers AnalyticDB for MySQL pour la première fois. Planifiez cette opération pendant les heures creuses pour éviter toute contention des ressources.

  • Ingestion quotidienne par lots : Importez chaque jour des gigaoctets à téraoctets de données traitées depuis MaxCompute vers AnalyticDB for MySQL pour une analyse accélérée.

Optimisation des performances

Pour les stratégies d'optimisation spécifiques aux importations via des tables externes, consultez Optimiser les performances d'importation des données — tables externes.

Utiliser DataWorks pour importer des données

DataWorks fournit une interface visuelle sans code pour configurer des jobs de synchronisation de données entre un large éventail de sources et AnalyticDB for MySQL. Cette solution convient aux importations fréquentes de petits lots et aux scénarios où les données proviennent de plusieurs sources hétérogènes.

Pour les importations de plusieurs centaines de gigaoctets ou plus, utilisez plutôt des tables externes. DataWorks est optimisé pour des transferts plus petits et plus fréquents.

Cas d'utilisation

  • Importations fréquentes de petits lots : Chargez de petites quantités de données toutes les minutes ou toutes les heures pour une analyse en quasi temps réel.

  • Consolidation multi-sources : Extrayez des données provenant de sources telles que Tablestore, Redis et PostgreSQL vers un seul cluster AnalyticDB for MySQL.

Premiers pas

  1. Configurez la source de données. Sources prises en charge :

  2. Ajouter une source de données AnalyticDB for MySQL V3.0.

  3. Configurer les connexions source et destination pour le job de synchronisation.

Optimisation des performances

Pour les stratégies d'optimisation spécifiques aux importations via DataWorks, consultez Optimiser les performances d'importation des données — DataWorks.

Utiliser DTS pour importer des données

Data Transmission Service (DTS) est un service de streaming de données en temps réel qui prend en charge les systèmes de gestion de bases de données relationnelles (SGBDR), les bases de données NoSQL et les bases de données de traitement analytique en ligne (OLAP) comme sources. DTS capture continuellement les données modifiées et les réplique vers AnalyticDB for MySQL en quelques secondes, ce qui en fait le choix idéal lorsque votre analyse doit refléter l'état le plus récent d'une base de données opérationnelle.

Cas d'utilisation

  • Synchronisation en temps réel : Transférez les modifications depuis ApsaraDB RDS for MySQL ou PolarDB for MySQL vers AnalyticDB for MySQL en quelques secondes.

  • Agrégation multi-sources : Consolidez les données provenant de plusieurs instances RDS for MySQL ou clusters PolarDB for MySQL dans un seul cluster AnalyticDB for MySQL. Utilisez la fonctionnalité de fusion multi-table de DTS pour unifier plusieurs tables sources ayant le même schéma en une seule table de destination.

Premiers pas

Utiliser un programme basé sur JDBC pour importer des données

Un programme basé sur JDBC vous offre un contrôle total sur le pipeline d'importation. Utilisez cette méthode lorsque les données nécessitent un prétraitement — analyse de fichiers journaux, application de transformations ou gestion de formats que les tables externes ne peuvent pas lire — ou lorsqu'il n'est pas possible de mettre les données en attente sur OSS, HDFS ou MaxCompute au préalable.

Cas d'utilisation

  • Importation après prétraitement des données : Analysez les fichiers journaux ou appliquez des transformations personnalisées avant de charger les données dans AnalyticDB for MySQL en temps réel.

  • Importation de données locales : Chargez des données locales qui ne peuvent pas être mises en attente sur OSS, HDFS ou MaxCompute au préalable.

Remarques sur l'utilisation

Optimisation des performances

Pour les stratégies d'optimisation spécifiques aux importations basées sur JDBC, consultez Optimiser les performances d'importation des données — JDBC.

Utiliser la synchronisation des données pour importer des données

AnalyticDB for MySQL inclut des fonctionnalités intégrées de synchronisation des données pour l'ingestion en flux continu, la gestion des métadonnées et la migration des données : AnalyticDB Pipeline Service (APS), découverte de métadonnées et migration de données Hive.

Cas d'utilisation

  • Ingestion économique de journaux et de messages : Utilisez APS pour diffuser continuellement des données depuis Simple Log Service (SLS) et ApsaraMQ for Kafka vers AnalyticDB for MySQL pour un stockage et une analyse rentables.

  • Découverte de métadonnées OSS : Lorsque les données OSS manquent de métadonnées structurées, la fonctionnalité de découverte de métadonnées analyse OSS et crée des métadonnées de base de données, de table et de partition — y compris les formats de données et les définitions de champs — rendant les données accessibles à AnalyticDB for MySQL et à d'autres moteurs d'analyse.

  • Migration de données Hive : Migrez les données Hive vers OSS à l'aide de la fonctionnalité de migration de données Hive. AnalyticDB for MySQL organise ensuite automatiquement les métadonnées pour l'analyse ultérieure.

Premiers pas