La fonctionnalité d'ingestion de données de DLF n'étant plus mise à jour, cette rubrique explique comment utiliser l'intégration de données de DataWorks pour ingérer des données depuis une instance ApsaraDB RDS for MySQL. Vous apprendrez également à créer un projet externe dans MaxCompute afin d'interroger les données de table gérées par DLF.
Limites
La solution data lakehouse est prise en charge uniquement dans les régions suivantes : Chine (Hangzhou), Chine (Shanghai), Chine (Pékin), Chine (Zhangjiakou), Chine (Shenzhen), Chine (Hong Kong), Singapour et Allemagne (Francfort).
MaxCompute, OSS, ApsaraDB RDS et DLF doivent être déployés dans la même région.
Ingérer des données MySQL dans un data lake
Pour plus de détails sur l'ingestion de données dans DLF, consultez la section Démarrage rapide.
Étape 1 : Créer une base de données de métadonnées de data lake
Connectez-vous à la console DLF. Dans la barre de navigation supérieure, sélectionnez une région. Dans le volet de navigation de gauche, choisissez et créez une base de données de métadonnées. Pour plus d'informations, consultez la section Bases de données, tables et fonctions.
Étape 2 : Importer des données vers OSS avec DataWorks
-
Préparez les données source.
Connectez-vous à la console ApsaraDB RDS, sélectionnez une région, puis cliquez sur Instances dans le volet de navigation de gauche.
Sélectionnez l'instance ApsaraDB RDS cible et connectez-vous à la base de données.
-
Créez une table dans la base de données ApsaraDB RDS et insérez des données de test. Pour plus d'informations, consultez la section Utiliser DMS pour se connecter à une instance ApsaraDB RDS for MySQL. Par exemple, vous pouvez créer une table nommée rds_mc à l'aide des instructions SQL suivantes :
CREATE TABLE `rds_mc` ( `id` varchar(32) , `name` varchar(32) , PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; INSERT INTO `rds_mc`(`id` ,`name` ) VALUES(1,"Alice"); INSERT INTO `rds_mc`(`id` ,`name` ) VALUES(2,"zhangsan"); INSERT INTO `rds_mc`(`id` ,`name` ) VALUES(3,"zhaosi"); INSERT INTO `rds_mc`(`id` ,`name` ) VALUES(4,"wangwu"); INSERT INTO `rds_mc`(`id` ,`name` ) VALUES(5,"55555"); INSERT INTO `rds_mc`(`id` ,`name` ) VALUES(8,"6666"); SELECT * FROM `rds_mc`;
-
Préparez une source de données ApsaraDB RDS for MySQL.
Configurez une source de données MySQL dans DataWorks. Pour plus d'informations, consultez la section Configurer une source de données MySQL.
-
Préparez une source de données OSS.
Configurez une source de données OSS dans DataWorks. Pour plus d'informations, consultez la section Configurer une source de données OSS.
-
Créez et exécutez une tâche de synchronisation de données.
Créez une tâche de synchronisation par lots dans le module DataStudio de DataWorks. Pour plus d'informations, consultez la section Configurer une tâche de synchronisation par lots à l'aide de l'assistant. Les principaux paramètres sont décrits ci-dessous :
-
Configurez les paramètres réseau et de ressources.
Paramètre
Description
Source
Type de source de données
MySQL
Source de données
Sélectionnez la source de données MySQL créée.
Groupe de ressources
My Resource Group
Sélectionnez le groupe de ressources exclusif créé pour Data Integration.
Destination
Type de source de données
OSS
Source de données
Sélectionnez la source de données OSS créée.
-
Configurez la tâche.
Dans l'onglet Configure tasks, spécifiez le nom de la table et du fichier.
Paramètre
Description
Table
Nom de la table que vous avez créée dans la base de données ApsaraDB RDS.
Nom du fichier (incluant le chemin)
Format : <Nom du répertoire de fichiers créé dans OSS>/<Fichier de données à exporter vers OSS>.
Exemple :
doc-test-01/datalake/anti.csv. -
Cliquez sur l'icône
située dans le coin supérieur gauche de la page de configuration de la tâche de synchronisation par lots pour enregistrer les paramètres. Ensuite, cliquez sur l'icône
pour exécuter la tâche. -
Une fois la tâche exécutée avec succès dans DataWorks, vérifiez si les données ont été importées vers le chemin configuré pour la source de données OSS.
-
Étape 3 : Découvrir les métadonnées avec DLF
Dans la console DLF, utilisez la découverte de métadonnées pour ingérer les données. Pour plus d'informations, consultez la section Découverte de métadonnées.
Étape 4 : Afficher les métadonnées du data lake
Dans la console DLF, cliquez sur MetaData > Metadata Management, accédez à la base de données cible et affichez les informations de la table dans l'onglet Table List.
Si la méthode de sérialisation de la table après la découverte de métadonnées est org.apache.hadoop.hive.serde2.OpenCSVSerde, MaxCompute peut interpréter incorrectement les types de champs comme un type de chaîne spécifique à opencsv au lieu d'un type de chaîne standard. Cela peut entraîner des échecs de requête. Pour résoudre ce problème, vous devez modifier manuellement le type de données de tous les champs concernés en string dans DLF.
Autorisation
La construction d'un data lakehouse avec MaxCompute, DLF et OSS nécessite une autorisation, car le compte utilisé pour créer le projet MaxCompute ne dispose pas d'un accès par défaut à DLF et OSS. Accordez les autorisations en utilisant l'une des méthodes suivantes :
Autorisation en un clic : recommandée si vous utilisez le même compte pour le projet MaxCompute, DLF et OSS. Cliquez sur Autoriser DLF et OSS pour accorder les autorisations requises.
Autorisation personnalisée : cette méthode peut être utilisée avec le même compte ou des comptes différents pour le projet MaxCompute, DLF ou OSS. Pour plus d'informations, consultez la section Autorisation personnalisée.
Créer un projet externe dans MaxCompute
Créez un projet externe dans la console DataWorks.
Connectez-vous à la console DataWorks. Dans la barre de navigation supérieure, sélectionnez la région Chine (Shanghai).
Dans le volet de navigation de gauche, choisissez .
Sur la page Lake and Warehouse Integration (Data Lakehouse), cliquez sur Start.
-
Sur la page Create Data Lakehouse, suivez les instructions à l'écran pour configurer les paramètres.
Tableau 1. Créer un entrepôt de données
Paramètre
Description
External Project Name
ext_dlf_delta
MaxCompute Project
ms_proj1
Tableau 2. Créer une connexion de data lake externe
Paramètre
Description
Heterogeneous Data Platform Type
Sélectionnez Alibaba Cloud DLF + OSS Data Lake Connection
Aucun
Alibaba Cloud DLF + OSS Data Lake Connection
External Project Description
Aucun
Région de DLF
cn-shanghai
Endpoint DLF
dlf-share.cn-shanghai.aliyuncs.com
Nom de la base de données DLF
datalake
DLF RoleARN
Aucun
-
Cliquez sur Create puis sur Preview.
Si vous pouvez prévisualiser les informations de la table dans la base de données DLF, l'opération a réussi.
Interroger les données du projet externe avec MaxCompute
Dans la page de requête ad hoc de DataWorks, interrogez les données de la table du projet externe.
Pour plus d'informations sur les requêtes ad hoc dans DataWorks, consultez la section Utiliser des requêtes ad hoc pour exécuter des instructions SQL.
-
Commande d'exemple :
select * from ext_dlf_delta.rds_mc; Résultat : la commande renvoie les enregistrements de données des colonnes
idetnamede la tablerds_mc. Cela confirme que les métadonnées du data lake ont été synchronisées avec succès.