تطوير عوامل التشغيل المعرفة من قبل المستخدم U-SQL (UDOs)

توضح هذه المقالة كيفية تطوير عوامل تشغيل معرفة من قبل المستخدم لمعالجة البيانات في وظيفة U-SQL.

تعريف واستخدام عامل تشغيل معرف من قبل المستخدم في U-SQL

لإنشاء وظيفة U-SQL وإرسالها

  1. من قائمة Visual Studio، حدد File > New > Project > U-SQL Project.

  2. حدد "OK". ينشئ Visual Studio حلا بملف Script.usql.

  3. من مستكشف الحلول، قم بتوسيع Script.usql، ثم انقر نقرا مزدوجا فوق Script.usql.cs.

  4. الصق التعليمات البرمجية التالية في الملف:

    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. افتح 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);
    
  6. حدد حساب Data Lake Analytics وقاعدة البيانات والمخطط.

  7. من مستكشف الحلول، انقر بزر الماوس الأيمن فوق Script.usql، ثم حدد Build Script.

  8. من مستكشف الحلول، انقر بزر الماوس الأيمن فوق Script.usql، ثم حدد Submit Script.

  9. إذا لم تكن قد اتصلت باشتراك Azure الخاص بك، فستتم مطالبتك بإدخال بيانات اعتماد حساب Azure.

  10. حدد "Submit". تتوفر نتائج الإرسال ورابط الوظيفة في نافذة النتائج عند اكتمال الإرسال.

  11. حدد الزر Refresh لمشاهدة أحدث حالة مهمة وتحديث الشاشة.

لمشاهدة الإخراج

  1. من Server Explorer، قم بتوسيع Azure، وتوسيع Data Lake Analytics، وتوسيع حساب Data Lake Analytics، وتوسيع حسابات التخزين، وانقر بزر الماوس الأيمن فوق التخزين الافتراضي، ثم حدد Explorer.

  2. قم بتوسيع Samples، وقم بتوسيع Outputs، ثم انقر نقرا مزدوجا فوق Drivers.csv.

الخطوات التالية