استخدام .NET SDK لبدء تحويل البيانات
نظرة عامة
توضح هذه المقالة كيفية استخدام ميزة تحويل البيانات داخل خدمة إدارة بيانات StorSimple لتحويل بيانات جهاز StorSimple. ثم يتم استهلاك البيانات المحولة بواسطة خدمات Azure الأخرى في السحابة.
يمكنك تشغيل مهمة تحويل البيانات بطريقتين:
استخدم .NET SDK
Use Azure Automation runbook
توضح هذه المقالة كيفية إنشاء نموذج تطبيق وحدة تحكم .NET لبدء مهمة تحويل بيانات ثم تعقبها لإكمالها. لمعرفة المزيد حول كيفية بدء تحويل البيانات عبر التشغيل التلقائي، انتقل إلى استخدام دفتر تشغيل أتمتة Azure لتشغيل مهام تحويل البيانات.
المتطلبات الأساسية
قبل البدء، تأكد من أن لديك:
جهاز كمبيوتر قيد التشغيل:
Visual Studio 2012 أو 2013 أو 2015 أو 2017.
Azure PowerShell. تنزيل Azure PowerShell.
تعريف مهمة تم تكوينه بشكل صحيح في StorSimple Data Manager داخل مجموعة موارد.
جميع DLLS المطلوبة. قم بتنزيل ملفات dlls هذه من مستودع GitHub.
Get-ConfigurationParams.ps1البرنامج النصي من مستودع GitHub.
إجراء خطوة بخطوة
قم بتنفيذ الخطوات التالية لاستخدام .NET لبدء تشغيل مهمة تحويل بيانات.
لاسترداد معلمات التكوين، قم بالخطوات التالية:
قم بتنزيل
Get-ConfigurationParams.ps1البرنامج النصي من مستودع GitHub فيC:\DataTransformationالموقع.قم بتشغيل البرنامج
Get-ConfigurationParams.ps1النصي من مستودع GitHub. استخدمْ الأمر التالي:C:\DataTransformation\Get-ConfigurationParams.ps1 -SubscriptionName "AzureSubscriptionName" -ActiveDirectoryKey "AnyRandomPassword" -AppName "ApplicationName"يمكنك تمرير أي قيم ل ActiveDirectoryKey واسم التطبيق.
ينتج هذا البرنامج النصي القيم التالية:
معرف العميل
معرف المستأجر
مفتاح Active Directory (نفس المفتاح الذي تم إدخاله أعلاه)
Subscription ID

باستخدام Visual Studio 2012 أو 2013 أو 2015، قم بإنشاء تطبيق وحدة تحكم C# .NET.
Visual Studio الإطلاق 2012/2013/2015.
حدد ملف > جديد > Project.

حدد القوالب المثبتة >> تطبيق وحدة التحكم Visual C#>.
أدخل DataTransformationAppللاسم.
حدد C:\DataTransformationللموقع.
انقر فوق "OK" لإنشاء المشروع.

الآن ، أضف كافة dlls الموجودة في مجلد dllsكمراجع في المشروع الذي قمت بإنشائه. لإضافة ملفات dll، قم بما يلي:
في Visual Studio، انتقل إلى عرض > مستكشف الحلول.
انقر فوق السهم الموجود على يمين مشروع تطبيق تحويل البيانات. انقر فوق مراجع ثم انقر بزر الماوس الأيمن لإضافة مرجع.

استعرض للوصول إلى موقع مجلد الحزم، وحدد كافة dlls وانقر فوق إضافة، ثم انقر فوق موافق.

أضف عبارات الاستخدام التالية إلى الملف المصدر (Program.cs) في المشروع.
using System; using System.Collections.Generic; using System.Threading; using Microsoft.Azure.Management.HybridData.Models; using Microsoft.Internal.Dms.DmsWebJob; using Microsoft.Internal.Dms.DmsWebJob.Contracts;تقوم التعليمة البرمجية التالية بتهيئة مثيل مهمة تحويل البيانات. أضف هذا في الطريقة الرئيسية. استبدال قيم معلمات التكوين كما تم الحصول عليها سابقا. قم بتوصيل قيم اسم مجموعة الموارد واسمالمورد. ResourceGroupName هو المقترن بإدارة بيانات StorSimple التي تم تكوين تعريف المهمة عليها. اسم المورد هو اسم خدمة إدارة بيانات StorSimple الخاصة بك.
// Setup the configuration parameters. var configParams = new ConfigurationParams { ClientId = "client-id", TenantId = "tenant-id", ActiveDirectoryKey = "active-directory-key", SubscriptionId = "subscription-id", ResourceGroupName = "resource-group-name", ResourceName = "resource-name" }; // Initialize the Data Transformation Job instance. DataTransformationJob dataTransformationJob = new DataTransformationJob(configParams);تحديد المعلمات التي يجب تشغيل تعريف المهمة بها
string jobDefinitionName = "job-definition-name"; DataTransformationInput dataTransformationInput = dataTransformationJob.GetJobDefinitionParameters(jobDefinitionName);(أو)
إذا كنت ترغب في تغيير معلمات تعريف المهمة أثناء وقت التشغيل، فقم بإضافة التعليمة البرمجية التالية:
string jobDefinitionName = "job-definition-name"; // Must start with a '\' var rootDirectories = new List<string> {@"\root"}; // Name of the volume on the StorSimple device. var volumeNames = new List<string> {"volume-name"}; var dataTransformationInput = new DataTransformationInput { // If you require the latest existing backup to be picked else use TakeNow to trigger a new backup. BackupChoice = BackupChoice.UseExistingLatest.ToString(), // Name of the StorSimple device. DeviceName = "device-name", // Name of the container in Azure storage where the files will be placed after execution. ContainerName = "container-name", // File name filter (search pattern) to be applied on files under the root directory. * - Match all files. FileNameFilter = "*", // List of root directories. RootDirectories = rootDirectories, // Name of the volume on StorSimple device on which the relevant data is present. VolumeNames = volumeNames };بعد التهيئة، أضف التعليمة البرمجية التالية لتشغيل مهمة تحويل بيانات على تعريف المهمة. قم بتوصيل اسم تعريف الوظيفة المناسب.
// Trigger a job, retrieve the jobId and the retry interval for polling. int retryAfter; string jobId = dataTransformationJob.RunJobAsync(jobDefinitionName, dataTransformationInput, out retryAfter); Console.WriteLine("jobid: ", jobId); Console.ReadLine();بمجرد لصق التعليمة البرمجية ، قم بإنشاء الحل. فيما يلي لقطة شاشة لمقتطف التعليمات البرمجية لتهيئة مثيل مهمة تحويل البيانات.

تقوم هذه المهمة بتحويل البيانات التي تطابق الدليل الجذر وعوامل تصفية الملفات داخل وحدة تخزين StorSimple وتضعها في مشاركة الحاوية / الملف المحددة. عند تحويل ملف، تتم إضافة رسالة إلى قائمة انتظار تخزين (في نفس حساب التخزين مثل مشاركة الحاوية/الملف) بنفس اسم تعريف المهمة. يمكن استخدام هذه الرسالة كمشغل لبدء أي معالجة أخرى للملف.
بمجرد تشغيل المهمة، يمكنك استخدام التعليمة البرمجية التالية لتعقب المهمة لإكمالها. ليس من الضروري إضافة هذا الرمز لتشغيل المهمة.
Job jobDetails = null; // Poll the job. do { jobDetails = dataTransformationJob.GetJob(jobDefinitionName, jobId); // Wait before polling for the status again. Thread.Sleep(TimeSpan.FromSeconds(retryAfter)); } while (jobDetails.Status == JobStatus.InProgress); // Completion status of the job. Console.WriteLine("JobStatus: {0}", jobDetails.Status); // To hold the console before exiting. Console.Read();فيما يلي لقطة شاشة لعينة التعليمات البرمجية بأكملها المستخدمة لتشغيل المهمة باستخدام .NET.
