Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Important
Azure Data Lake Analytics a pris sa retraite le 29 février 2024. En savoir plus avec cette annonce.
Pour l’analytique des données, votre organisation peut utiliser Azure Synapse Analytics ou Microsoft Fabric.
Si vous souhaitez utiliser Azure Databricks ou Azure HDInsight Spark, nous vous recommandons de migrer vos données d’Azure Data Lake Storage Gen1 vers Azure Data Lake Storage Gen2.
Outre le déplacement de vos fichiers, vous souhaiterez également rendre vos données stockées dans des tables U-SQL accessibles à Spark.
Déplacer des données stockées dans des fichiers Azure Data Lake Storage Gen1
Les données stockées dans des fichiers peuvent être déplacées de différentes façons :
- Écrivez un pipeline Azure Data Factory pour copier les données du compte Azure Data Lake Storage Gen1 vers le compte Azure Data Lake Storage Gen2 .
- Écrivez un travail Spark qui lit les données du compte Azure Data Lake Storage Gen1 et les écrit dans le compte Azure Data Lake Storage Gen2 . En fonction de votre cas d’usage, vous pouvez l’écrire dans un autre format tel que Parquet si vous n’avez pas besoin de conserver le format de fichier d’origine.
Nous vous recommandons de consulter l’article Mettre à niveau vos solutions d’analytique Big Data d’Azure Data Lake Storage Gen1 vers Azure Data Lake Storage Gen2
Déplacer des données stockées dans des tables U-SQL
Les tables U-SQL ne sont pas comprises par Spark. Si vous avez des données stockées dans des tables U-SQL, vous allez exécuter un travail U-SQL qui extrait les données de la table et l’enregistre dans un format que Spark comprend. Le format le plus approprié consiste à créer un ensemble de fichiers Parquet en suivant la disposition du dossier du metastore Hive.
La sortie peut être obtenue dans U-SQL avec le générateur de sortie Parquet intégré et à l’aide du partitionnement de sortie dynamique avec des jeux de fichiers pour créer les dossiers de partition. Traitez plus de fichiers que jamais et utilisez Parquet fournit un exemple de création de telles données consommables par Spark.
Après cette transformation, vous copiez les données comme indiqué dans le chapitre Déplacer les données stockées dans les fichiers Azure Data Lake Storage Gen1.
Mises en garde
La copie de fichiers se fait au niveau de l'octet, respectant la sémantique des données. Les mêmes données doivent donc apparaître dans le compte Azure Data Lake Storage Gen2 . Notez toutefois que Spark peut interpréter certains caractères différemment. Par exemple, il peut utiliser une valeur par défaut différente pour un délimiteur de lignes dans un fichier CSV. En outre, si vous copiez des données typées (à partir de tables), Parquet et Spark peuvent avoir une précision et une échelle différentes pour certaines des valeurs typées (par exemple, un float) et peuvent traiter les valeurs Null différemment. Par exemple, U-SQL a la sémantique C# pour les valeurs Null, tandis que Spark a une logique à trois valeurs pour les valeurs Null.
Les tables U-SQL de l’organisation de données (partitionnement) fournissent deux partitionnements de niveau. Le niveau externe (
PARTITIONED BY) est défini par valeur et correspond principalement au schéma de partitionnement Hive/Spark à l’aide de hiérarchies de dossiers. Assurez-vous que les valeurs nulles sont attribuées au dossier approprié. Le niveau interne (DISTRIBUTED BY) dans U-SQL offre quatre schémas de distribution : répartition circulaire, répartition par plage, répartition par hachage et répartition par hachage direct. Les tables Hive/Spark prennent uniquement en charge le partitionnement de valeurs ou le partitionnement de hachage, à l’aide d’une fonction de hachage différente de U-SQL. Lorsque vous extrayez vos données de table U-SQL, vous ne pourrez probablement mapper que dans le partitionnement de valeurs pour Spark et vous devrez peut-être effectuer un réglage supplémentaire de votre disposition de données en fonction de vos requêtes Spark finales.
Étapes suivantes
- Comprendre les concepts de code Spark pour les développeurs U-SQL
- Mettre à niveau vos solutions d’analytique Big Data d’Azure Data Lake Storage Gen1 vers Azure Data Lake Storage Gen2
- .NET pour Apache Spark
- Transformer des données à l’aide de l’activité Spark dans Azure Data Factory
- Transformer des données à l’aide de l’activité Hadoop Hive dans Azure Data Factory
- Présentation d’Apache Spark dans Azure HDInsight