Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
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 no U-SQL
Para criar e enviar um trabalho de U-SQL
No menu do 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 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, o banco de dados e o esquema do Data Lake Analytics.
No Gerenciador de Soluções, clique com o botão direito do mouse em Script.usql e selecione Criar Script.
No Gerenciador de Soluções, clique com o botão direito do mouse em Script.usql e selecione Enviar Script.
Se você não tiver se conectado à sua assinatura do Azure, será solicitado que você insira 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 status do trabalho mais recente e atualize a tela.
Para ver a saída
No Gerenciador de Servidores, expanda o Azure, expanda o Data Lake Analytics, expanda sua conta do Data Lake Analytics, expanda Contas de Armazenamento, clique com o botão direito do mouse no Armazenamento Padrão e selecione Explorer.
Expanda Amostras, expanda Saídas e, em seguida, clique duas vezes em Drivers.csv.