이 문서에서는 U-SQL 작업에서 데이터를 처리하는 사용자 정의 연산자를 개발하는 방법을 설명합니다.
U-SQL에서 사용자 정의 연산자 정의 및 사용
U-SQL 작업을 만들고 제출하려면
Visual Studio 메뉴에서 파일 > 새 > 프로젝트 > U-SQL 프로젝트선택합니다.
확인을 선택합니다. Visual Studio는 Script.usql 파일을 사용하여 솔루션을 만듭니다.
솔루션 탐색기Script.usql을 확장한 다음 Script.usql.cs두 번 클릭합니다.
다음 코드를 파일에 붙여넣습니다.
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(); } } }Script.usql열고 다음 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);Data Lake Analytics 계정, 데이터베이스 및 스키마를 지정합니다.
솔루션 탐색기에서 Script.usql을 마우스 오른쪽 버튼으로 클릭한 다음 스크립트 빌드를 선택합니다.
솔루션 탐색기에서 Script.usql을 오른쪽 클릭 후 스크립트 제출을 선택합니다.
Azure 구독에 연결하지 않은 경우 Azure 계정 자격 증명을 입력하라는 메시지가 표시됩니다.
제출을 선택합니다. 제출이 완료되면 결과 창에서 제출 결과 및 작업 링크를 사용할 수 있습니다.
새로 고침 단추를 선택하여 최신 작업 상태를 확인하고 화면을 새로 고칩니다.
출력을 보려면
서버 탐색기에서 Azure 를 확장하고, Data Lake Analytics 를 확장하고, Data Lake Analytics 계정을 확장한 다음, Storage 계정을 확장하고, 기본 스토리지를 마우스 오른쪽 버튼으로 클릭하고 탐색기를 선택합니다.
샘플을 확장하고 출력을 확장한 다음 Drivers.csv두 번 클릭합니다.
다음 단계
- 사용자 코드 사용하여 U-SQL 식 확장
- Visual Studio용 Data Lake Tools를 사용하여 U-SQL 애플리케이션 개발