Développer des opérateurs U-SQL définis par l’utilisateur

Cet article explique comment développer des opérateurs définis par l’utilisateur pour traiter les données d’un travail U-SQL.

Définir et utiliser un opérateur défini par l’utilisateur dans U-SQL

Pour créer et soumettre un travail U-SQL

  1. Dans le menu Visual Studio, sélectionnez Fichier > Nouveau > projet > U-SQL Project.

  2. Sélectionnez OK. Visual Studio crée une solution avec un fichier Script.usql.

  3. À partir de l’Explorateur de solutions, développez Script.usql, puis double-cliquez sur Script.usql.cs.

  4. Collez le code suivant dans le fichier :

    using Microsoft.Analytics.Interfaces;
    using System.Collections.Generic;
    namespace USQL_UDO
    {
        public class CountryName : IProcessor
        {
            private static IDictionary<string, string> CountryTranslation = new Dictionary<string, string>
            {
                {
                    "Deutschland", "Germany"
                },
                {
                    "Suisse", "Switzerland"
                },
                {
                    "UK", "United Kingdom"
                },
                {
                    "USA", "United States of America"
                },
                {
                    "中国", "PR China"
                }
            };
            public override IRow Process(IRow input, IUpdatableRow output)
            {
                string UserID = input.Get<string>("UserID");
                string Name = input.Get<string>("Name");
                string Address = input.Get<string>("Address");
                string City = input.Get<string>("City");
                string State = input.Get<string>("State");
                string PostalCode = input.Get<string>("PostalCode");
                string Country = input.Get<string>("Country");
                string Phone = input.Get<string>("Phone");
                if (CountryTranslation.Keys.Contains(Country))
                {
                    Country = CountryTranslation[Country];
                }
                output.Set<string>(0, UserID);
                output.Set<string>(1, Name);
                output.Set<string>(2, Address);
                output.Set<string>(3, City);
                output.Set<string>(4, State);
                output.Set<string>(5, PostalCode);
                output.Set<string>(6, Country);
                output.Set<string>(7, Phone);
                return output.AsReadOnly();
            }
        }
    }
    
  5. Ouvrez Script.usql et collez le script U-SQL suivant :

    @drivers =
        EXTRACT UserID      string,
                Name        string,
                Address     string,
                City        string,
                State       string,
                PostalCode  string,
                Country     string,
                Phone       string
        FROM "/Samples/Data/AmbulanceData/Drivers.txt"
        USING Extractors.Tsv(Encoding.Unicode);
    
    @drivers_CountryName =
        PROCESS @drivers
        PRODUCE UserID string,
                Name string,
                Address string,
                City string,
                State string,
                PostalCode string,
                Country string,
                Phone string
        USING new USQL_UDO.CountryName();
    
    OUTPUT @drivers_CountryName
        TO "/Samples/Outputs/Drivers.csv"
        USING Outputters.Csv(Encoding.Unicode);
    
  6. Spécifiez le compte Data Lake Analytics, la base de données et le schéma.

  7. Dans Explorateur de solutions, cliquez avec le bouton droit sur Script.usql, puis sélectionnez Générer un script.

  8. Dans Explorateur de solutions, cliquez avec le bouton droit sur Script.usql, puis sélectionnez Envoyer un script.

  9. Si vous ne vous êtes pas connecté à votre abonnement Azure, vous êtes invité à entrer les informations d’identification de votre compte Azure.

  10. Sélectionnez Envoyer. Les résultats de l’envoi et le lien vers le travail sont disponibles dans la fenêtre Résultats quand l’envoi est terminé.

  11. Sélectionnez le bouton Actualiser pour afficher la dernière status de travail et actualisez l’écran.

Pour afficher la sortie

  1. Dans Server Explorer, développez Azure, développez Data Lake Analytics, développez votre compte Data Lake Analytics, développez Comptes de stockage, cliquez avec le bouton droit sur stockage par défaut, puis sélectionnez Explorer.

  2. Développez des exemples, des sorties, puis double-cliquez sur Drivers.csv.

Étapes suivantes