نسخ البيانات من نقاط تخزين Azure إلى Azure Data Lake Storage Gen1
يوفر Data Lake Storage Gen1 أداة سطر الأوامر، AdlCopy، لنسخ البيانات من المصادر التالية:
- من نقاط تخزين Azure إلى Data Lake Storage Gen1. لا يمكنك استخدام AdlCopy لنسخ البيانات من Data Lake Storage Gen1 إلى نقاط تخزين Azure.
- بين حسابين Data Lake Storage Gen1.
أيضا ، يمكنك استخدام أداة AdlCopy في وضعين مختلفين:
- مستقل، حيث تستخدم الأداة موارد Data Lake Storage Gen1 لتنفيذ المهمة.
- استخدام حساب Data Lake Analytics، حيث يتم استخدام الوحدات المعينة لحساب Data Lake Analytics لإجراء عملية النسخ. قد ترغب في استخدام هذا الخيار عندما تتطلع إلى تنفيذ مهام النسخ بطريقة يمكن التنبؤ بها.
المتطلبات الأساسية
قبل أن تبدأ هذه المقالة، يجب أن يكون لديك ما يلي:
- اشتراك Azure. راجع الحصول على الإصدار التجريبي المجاني من Azure .
- Azure Storage blobs container with some data.
- حساب Data Lake Storage Gen1. للحصول على إرشادات حول كيفية إنشاء واحدة، راجع بدء استخدام Azure Data Lake Storage Gen1
- حساب Data Lake Analytics (اختياري) - راجع بدء استخدام Azure Data Lake Analytics للحصول على إرشادات حول كيفية إنشاء حساب Data Lake Analytics.
- أداة AdlCopy. قم بتثبيت أداة AdlCopy.
بناء جملة أداة AdlCopy
استخدم بناء الجملة التالي للعمل مع أداة AdlCopy
AdlCopy /Source <Blob or Data Lake Storage Gen1 source> /Dest <Data Lake Storage Gen1 destination> /SourceKey <Key for Blob account> /Account <Data Lake Analytics account> /Units <Number of Analytics units> /Pattern
يتم وصف المعلمات في بناء الجملة أدناه:
| الخيار | الوصف |
|---|---|
| المصدر | يحدد موقع البيانات المصدر في نقطة تخزين Azure. يمكن أن يكون المصدر حاوية blob أو blob أو حساب Data Lake Storage Gen1 آخر. |
| ديست | يحدد الوجهة Data Lake Storage Gen1 المراد النسخ إليها. |
| المصدرمفتاح | يحدد مفتاح الوصول إلى التخزين لمصدر نقطة تخزين Azure. هذا مطلوب فقط إذا كان المصدر عبارة عن حاوية فقاعة أو فقاعة. |
| الحساب | اختياري. استخدم هذا الخيار إذا كنت تريد استخدام حساب Azure Data Lake Analytics لتشغيل مهمة النسخ. إذا كنت تستخدم الخيار /Account في بناء الجملة ولكنك لم تحدد حساب Data Lake Analytics، فسيستخدم AdlCopy حسابا افتراضيا لتشغيل المهمة. أيضا، إذا كنت تستخدم هذا الخيار، فيجب عليك إضافة المصدر (Azure Storage Blob) والوجهة (Azure Data Lake Storage Gen1) كمصادر بيانات لحساب Data Lake Analytics الخاص بك. |
| الوحدات | يحدد عدد وحدات Data Lake Analytics التي سيتم استخدامها لمهمة النسخ. يكون هذا الخيار إلزاميا إذا كنت تستخدم الخيار /Account لتحديد حساب Data Lake Analytics. |
| نمط | يحدد نمط regex الذي يشير إلى النقط أو الملفات المراد نسخها. يستخدم AdlCopy مطابقة حساسة لحالة الأحرف. النمط الافتراضي عند عدم تحديد نمط هو نسخ كافة العناصر. تحديد أنماط ملفات متعددة غير مدعوم. |
استخدام AdlCopy (كمستقل) لنسخ البيانات من نقطة تخزين Azure
«Open » موجه أوامر وانتقل إلى الدليل حيث يتم تثبيت AdlCopy، بشكل نموذجي
%HOMEPATH%\Documents\adlcopy.قم بتشغيل الأمر التالي لنسخ نقطة معينة من الحاوية المصدر إلى مجلد Data Lake Storage Gen1:
AdlCopy /source https://<source_account>.blob.core.windows.net/<source_container>/<blob name> /dest swebhdfs://<dest_adlsg1_account>.azuredatalakestore.net/<dest_folder>/ /sourcekey <storage_account_key_for_storage_container>على سبيل المثال:
AdlCopy /source https://mystorage.blob.core.windows.net/mycluster/HdiSamples/HdiSamples/WebsiteLogSampleData/SampleLog/909f2b.log /dest swebhdfs://mydatalakestorage.azuredatalakestore.net/mynewfolder/ /sourcekey uJUfvD6cEvhfLoBae2yyQf8t9/BpbWZ4XoYj4kAS5Jf40pZaMNf0q6a8yqTxktwVgRED4vPHeh/50iS9atS5LQ==ملاحظة
يحدد بناء الجملة أعلاه الملف المراد نسخه إلى مجلد في حساب Data Lake Storage Gen1. تقوم أداة AdlCopy بإنشاء مجلد في حالة عدم وجود اسم المجلد المحدد.
ستتم مطالبتك بإدخال بيانات الاعتماد الخاصة باشتراك Azure الذي لديك بموجبه حساب Data Lake Storage Gen1 الخاص بك. سترى مخرجا مشابها لما يلي:
Initializing Copy. Copy Started. 100% data copied. Finishing Copy. Copy Completed. 1 file copied.يمكنك أيضا نسخ جميع النقاط من حاوية واحدة إلى حساب Data Lake Storage Gen1 باستخدام الأمر التالي:
AdlCopy /source https://<source_account>.blob.core.windows.net/<source_container>/ /dest swebhdfs://<dest_adlsg1_account>.azuredatalakestore.net/<dest_folder>/ /sourcekey <storage_account_key_for_storage_container>على سبيل المثال:
AdlCopy /Source https://mystorage.blob.core.windows.net/mycluster/example/data/gutenberg/ /dest adl://mydatalakestorage.azuredatalakestore.net/mynewfolder/ /sourcekey uJUfvD6cEvhfLoBae2yyQf8t9/BpbWZ4XoYj4kAS5Jf40pZaMNf0q6a8yqTxktwVgRED4vPHeh/50iS9atS5LQ==
اعتبارات الأداء
إذا كنت تقوم بالنسخ من حساب Azure Blob Storage، فقد يتم خنقك أثناء النسخ على جانب تخزين blob. سيؤدي ذلك إلى تدهور أداء مهمة النسخ الخاصة بك. لمعرفة المزيد حول حدود تخزين Azure Blob، راجع حدود تخزين Azure عند حدود اشتراك Azure وحدود الخدمة.
استخدم AdlCopy (كمستقل) لنسخ البيانات من حساب Data Lake Storage Gen1 آخر
يمكنك أيضا استخدام AdlCopy لنسخ البيانات بين حسابين Data Lake Storage Gen1.
«Open » موجه أوامر وانتقل إلى الدليل حيث يتم تثبيت AdlCopy، بشكل نموذجي
%HOMEPATH%\Documents\adlcopy.قم بتشغيل الأمر التالي لنسخ ملف معين من حساب Data Lake Storage Gen1 إلى آخر.
AdlCopy /Source adl://<source_adlsg1_account>.azuredatalakestore.net/<path_to_file> /dest adl://<dest_adlsg1_account>.azuredatalakestore.net/<path>/على سبيل المثال:
AdlCopy /Source adl://mydatastorage.azuredatalakestore.net/mynewfolder/909f2b.log /dest adl://mynewdatalakestorage.azuredatalakestore.net/mynewfolder/ملاحظة
يحدد بناء الجملة أعلاه الملف المراد نسخه إلى مجلد في الوجهة Data Lake Storage Gen1 الحساب. تقوم أداة AdlCopy بإنشاء مجلد في حالة عدم وجود اسم المجلد المحدد.
ستتم مطالبتك بإدخال بيانات الاعتماد الخاصة باشتراك Azure الذي لديك بموجبه حساب Data Lake Storage Gen1 الخاص بك. سترى مخرجا مشابها لما يلي:
Initializing Copy. Copy Started.| 100% data copied. Finishing Copy. Copy Completed. 1 file copied.يقوم الأمر التالي بنسخ كافة الملفات من مجلد معين في حساب Data Lake Storage Gen1 المصدر إلى مجلد في حساب Data Lake Storage Gen1 الوجهة.
AdlCopy /Source adl://mydatastorage.azuredatalakestore.net/mynewfolder/ /dest adl://mynewdatalakestorage.azuredatalakestore.net/mynewfolder/
اعتبارات الأداء
عند استخدام AdlCopy كأداة مستقلة، يتم تشغيل النسخة على موارد مشتركة تديرها Azure. يعتمد الأداء الذي قد تحصل عليه في هذه البيئة على تحميل النظام والموارد المتاحة. من الأفضل استخدام هذا الوضع للتحويلات الصغيرة على أساس مخصص. لا تحتاج إلى ضبط المعلمات عند استخدام AdlCopy كأداة مستقلة.
استخدم AdlCopy (مع حساب Data Lake Analytics) لنسخ البيانات
يمكنك أيضا استخدام حساب Data Lake Analytics لتشغيل مهمة AdlCopy لنسخ البيانات من نقاط تخزين Azure إلى Data Lake Storage Gen1. عادة ما تستخدم هذا الخيار عندما تكون البيانات المراد نقلها في نطاق غيغابايت وتيرابايت، وتريد إنتاجية أداء أفضل ويمكن التنبؤ بها.
لاستخدام حسابك في Data Lake Analytics مع AdlCopy للنسخ من نقطة تخزين Azure، يجب إضافة المصدر (Azure Storage Blob) كمصدر بيانات لحسابك في Data Lake Analytics. للحصول على إرشادات حول إضافة مصادر بيانات إضافية إلى حسابك في Data Lake Analytics، راجع إدارة مصادر بيانات حساب Data Lake Analytics.
ملاحظة
إذا كنت تقوم بالنسخ من حساب Gen1 Azure Data Lake Storage كمصدر باستخدام حساب Data Lake Analytics، فلن تحتاج إلى إقران حساب Data Lake Storage Gen1 بحساب Data Lake Analytics. لا يكون متطلب إقران المخزن المصدر بحساب Data Lake Analytics إلا عندما يكون المصدر حساب Azure Storage.
قم بتشغيل الأمر التالي للنسخ من نقطة تخزين Azure إلى حساب Data Lake Storage Gen1 باستخدام حساب Data Lake Analytics:
AdlCopy /source https://<source_account>.blob.core.windows.net/<source_container>/<blob name> /dest swebhdfs://<dest_adlsg1_account>.azuredatalakestore.net/<dest_folder>/ /sourcekey <storage_account_key_for_storage_container> /Account <data_lake_analytics_account> /Units <number_of_data_lake_analytics_units_to_be_used>
على سبيل المثال:
AdlCopy /Source https://mystorage.blob.core.windows.net/mycluster/example/data/gutenberg/ /dest swebhdfs://mydatalakestorage.azuredatalakestore.net/mynewfolder/ /sourcekey uJUfvD6cEvhfLoBae2yyQf8t9/BpbWZ4XoYj4kAS5Jf40pZaMNf0q6a8yqTxktwVgRED4vPHeh/50iS9atS5LQ== /Account mydatalakeanalyticaccount /Units 2
وبالمثل، قم بتشغيل الأمر التالي لنسخ كافة الملفات من مجلد معين في حساب Data Lake Storage Gen1 المصدر إلى مجلد في حساب Data Lake Storage Gen1 الوجهة باستخدام حساب Data Lake Analytics:
AdlCopy /Source adl://mysourcedatalakestorage.azuredatalakestore.net/mynewfolder/ /dest adl://mydestdatastorage.azuredatalakestore.net/mynewfolder/ /Account mydatalakeanalyticaccount /Units 2
اعتبارات الأداء
عند نسخ البيانات في نطاق تيرابايت، يوفر استخدام AdlCopy مع حساب Azure Data Lake Analytics الخاص بك أداء أفضل وأكثر قابلية للتنبؤ. المعلمة التي يجب ضبطها هي عدد وحدات Azure Data Lake Analytics لاستخدامها في مهمة النسخ. ستؤدي زيادة عدد الوحدات إلى زيادة أداء مهمة النسخ الخاصة بك. يمكن لكل ملف يتم نسخه استخدام وحدة واحدة كحد أقصى. لن يؤدي تحديد وحدات أكثر من عدد الملفات التي يتم نسخها إلى زيادة الأداء.
استخدام AdlCopy لنسخ البيانات باستخدام مطابقة الأنماط
في هذا القسم، ستتعرف على كيفية استخدام AdlCopy لنسخ البيانات من مصدر (في مثالنا أدناه نستخدم Azure Storage Blob) إلى وجهة Data Lake Storage Gen1 الحساب باستخدام مطابقة الأنماط. على سبيل المثال، يمكنك استخدام الخطوات أدناه لنسخ جميع الملفات ذات الامتداد .csv من النقطة المصدر إلى الوجهة.
«Open » موجه أوامر وانتقل إلى الدليل حيث يتم تثبيت AdlCopy، بشكل نموذجي
%HOMEPATH%\Documents\adlcopy.قم بتشغيل الأمر التالي لنسخ كافة الملفات ذات الامتداد *.csv من نقطة معينة من الحاوية المصدر إلى مجلد Data Lake Storage Gen1:
AdlCopy /source https://<source_account>.blob.core.windows.net/<source_container>/<blob name> /dest swebhdfs://<dest_adlsg1_account>.azuredatalakestore.net/<dest_folder>/ /sourcekey <storage_account_key_for_storage_container> /Pattern *.csvعلى سبيل المثال:
AdlCopy /source https://mystorage.blob.core.windows.net/mycluster/HdiSamples/HdiSamples/FoodInspectionData/ /dest adl://mydatalakestorage.azuredatalakestore.net/mynewfolder/ /sourcekey uJUfvD6cEvhfLoBae2yyQf8t9/BpbWZ4XoYj4kAS5Jf40pZaMNf0q6a8yqTxktwVgRED4vPHeh/50iS9atS5LQ== /Pattern *.csv
الفوترة
- إذا كنت تستخدم أداة AdlCopy كأداة مستقلة، فستتم محاسبتك على تكاليف الخروج لنقل البيانات، إذا لم يكن حساب Azure Storage المصدر في نفس المنطقة مثل حساب Data Lake Storage Gen1.
- إذا كنت تستخدم أداة AdlCopy مع حسابك في Data Lake Analytics، تطبيق أسعار الفوترة القياسية ل Data Lake Analytics .
اعتبارات استخدام AdlCopy
- AdlCopy (للإصدار 1.0.5) ، يدعم نسخ البيانات من المصادر التي تحتوي مجتمعة على أكثر من آلاف الملفات والمجلدات. ومع ذلك، إذا واجهت مشكلات في نسخ مجموعة بيانات كبيرة، فيمكنك توزيع الملفات/المجلدات في مجلدات فرعية مختلفة واستخدام المسار إلى تلك المجلدات الفرعية كمصدر بدلا من ذلك.
اعتبارات الأداء لاستخدام AdlCopy
يدعم AdlCopy نسخ البيانات التي تحتوي على آلاف الملفات والمجلدات. ومع ذلك، إذا واجهت مشكلات في نسخ مجموعة بيانات كبيرة، فيمكنك توزيع الملفات/المجلدات إلى مجلدات فرعية أصغر. تم تصميم AdlCopy للنسخ المخصصة. إذا كنت تحاول نسخ البيانات على أساس متكرر، فيجب عليك التفكير في استخدام Azure Data Factory الذي يوفر إدارة كاملة حول عمليات النسخ.
ملاحظات الإصدار
- 1.0.13 - إذا كنت تقوم بنسخ البيانات إلى نفس حساب Gen1 Azure Data Lake Storage عبر أوامر adlcopy متعددة ، فلن تحتاج إلى إعادة إدخال بيانات الاعتماد الخاصة بك لكل تشغيل بعد الآن. سيقوم Adlcopy الآن بتخزين هذه المعلومات مؤقتا عبر عمليات تشغيل متعددة.