Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Este artigo descreve como desenvolver operadores definidos pelo usuário para processar dados em um trabalho U-SQL.
Definir e usar um operador definido pelo usuário em U-SQL
Para criar e enviar um trabalho U-SQL
No menu Visual Studio, selecione Arquivo > Novo Projeto >> Projeto U-SQL.
Selecione OK. O Visual Studio cria uma solução com um arquivo Script.usql.
No Gerenciador de Soluções , expanda Script.usql e clique duas vezes em Script.usql.cs.
Cole o seguinte código no arquivo:
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(); } } }Abra Script.usql e cole o seguinte script U-SQL:
@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);Especifique a conta do Data Lake Analytics, a base de dados e o esquema.
No Gerenciador de Soluções , clique com o botão direito do mouse em Script.usql e selecione Compilar Script.
No Explorador de Soluções, clique com o botão direito em Script.usqle, em seguida, selecione Enviar Script.
Se você não se conectou à sua assinatura do Azure, você será solicitado a inserir suas credenciais de conta do Azure.
Selecione Enviar. Os resultados do envio e o link do trabalho estão disponíveis na janela Resultados quando o envio é concluído.
Selecione o botão Atualizar para ver o estado mais recente do trabalho e atualizar a tela.
Para visualizar o resultado
No Explorador do Servidor, expanda Azure, expanda Data Lake Analytics, expanda a sua conta de Data Lake Analytics, expanda Contas de Armazenamento, clique com o botão direito no Armazenamento por Defeito e selecione Explorer.
Expanda amostras, expanda saídas e clique duas vezes em Drivers.csv.