استخدام Azure Data Lake Storage Gen2 مع أنظمة مجموعات HDInsight Azure

Azure Data Lake Storage Gen2 هي خدمة التخزين على السحابة المخصصة لتحليلات البيانات الضخمة، التي تم إنشاؤها على مخزن الكائنات الثنائية كبيرة الحجم لـ Azure. تتلاقى قدرات Data Lake Storage Gen2 مع قدرات Azure Data Lake Storage Gen1 ومخزن الكائنات الثنائية كبيرة الحجم لـ Azure. توفر الخدمة الناتجة ميزات من Azure Data Lake Storage Gen1 بما في ذلك: دلالات نظام الملفات، والأمان على مستوى الدليل ومستوى الملف، والقدرة على التكيف. بالإضافة إلى إمكانيات التخزين المنخفضة التكلفة والمتدرج والتوفر العالي والإصلاح بعد كارثة من تخزين الكائنات الثنائية كبيرة الحجم لـ Azure.

لمقارنة كاملة بين خيارات إنشاء نظام المجموعة باستخدام Data Lake Storage Gen2، راجع مقارنة خيارات التخزين للاستخدام مع أنظمة مجموعات Azure HDInsight.

التحذير

يتم تحديد فوترة مجموعات HDInsight في الدقيقة، سواء كنت تستخدمها أم لا. تأكد من حذف نظام المجموعة بعد انتهائك من استخدامه. تعرف على كيفية حذف مجموعة HDInsight.

توفر Data Lake Storage Gen2

تتوفر Data Lake Storage Gen2 كخيار تخزين لجميع أنواع أنظمة مجموعات Azure HDInsight تقريباً كحساب افتراضي وحساب تخزين إضافي. HBase، ومع ذلك، يمكن أن يكون له حساب واحد فقط مع Data Lake Storage Gen2.

إشعار

بعد تحديد Data Lake Storage Gen2 كنوع التخزين الأساسيالخاص بك، لا يمكنك تحديد Data Lake Storage Gen1 كتخزين إضافي.

إنشاء أنظمة مجموعات HDInsight باستخدام Data Lake Storage Gen2

استخدم الارتباطات التالية للحصول على إرشادات مُفصلة حول كيفية إنشاء أنظمة مجموعات HDInsight مع الوصول إلى Data Lake Storage Gen2.

التحكم بالوصول إلى Data Lake Storage Gen2 في HDInsight

ما هي أنواع الأذونات التي يدعمها Data Lake Storage Gen2؟

يستخدم Data Lake Storage Gen2 نموذج تحكم بالوصول يدعم كلاً من التحكم بالوصول المستند إلى الأدوار من Azure (Azure RBAC) وقوائم التحكم بالوصول التي على غرار POSIX (ACLs). Data Lake Storage Gen1 يدعم قوائم التحكم بالوصول فقط للتحكم بالوصول إلى البيانات.

يستخدم التحكم في الوصول استناداً إلى الدور من Azure تعيينات الأدوار لتطبيق مجموعات الأذونات على المستخدمين والمجموعات وكيانات الخدمات لموارد Azure بشكل فعال. عادة، تكون موارد Azure هذه مقيدة إلى موارد المستوى الأعلى (على سبيل المثال، حسابات تخزين الكائنات الثنائية كبيرة الحجم لـ Azure). لتخزين الكائنات الثنائية كبيرة الحجم لـ Azure وكذلك Data Lake Storage Gen2، تم توسيع هذه الآلية إلى مورد نظام الملفات.

لمزيد من المعلومات حول أذونات الملفات باستخدام التحكم في الوصول استناداً إلى الدور من Azure، راجع التحكم في الوصول استناداً إلى الدور من Azure (Azure RBAC).

لمزيد من المعلومات حول أذونات الملفات باستخدام ACLs، راجع قوائم التحكم بالوصول على الملفات والدلائل.

كيف يمكنني التحكم في الوصول إلى البيانات الخاصة بي في Data Lake Storage Gen2؟

يتم التحكم في قدرة نظام مجموعة HDInsight الخاص بك على الوصول إلى الملفات في Data Lake Storage Gen2 من خلال الهويات المدارة. الهوية المدارة هي هوية مسجلة في Microsoft Entra التي تتم إدارة بيانات اعتمادها بواسطة Azure. مع الهويات المدارة، لا تحتاج إلى تسجيل كيانات الخدمة في معرف Microsoft Entra. أو الاحتفاظ ببيانات الاعتماد مثل الشهادات.

تحتوي خدمات Azure على نوعين من الهويات المدارة: معينة من قبل النظام ومعينة من قبل المستخدم. يستخدم HDInsight الهويات المدارة المعينة من قبل المستخدم للوصول إلى Data Lake Storage Gen2. تم إنشاء user-assigned managed identity كمورد Azure مستقل. من خلال عملية الإنشاء، ينشئ Azure هوية في مستأجر Microsoft Entra موثوق بها من قبل الاشتراك قيد الاستخدام. بعد إنشاء الهوية، يمكن تعيين الهوية لمثيل خدمة Azure واحد أو أكثر.

تتم إدارة دورة حياة الهوية التي يُعينها المستخدم بشكل منفصل عن دورة حياة مثيلات خدمة Azure التي تم تعيينها إليه. لمزيد من المعلومات حول الهويات المدارة، راجع ما هي الهويات المدارة لموارد Azure؟.

كيف أعمل تعيين أذونات لمستخدمي Microsoft Entra للاستعلام عن البيانات في Data Lake Storage Gen2 باستخدام Hive أو خدمات أخرى؟

لتعيين أذونات للمستخدمين للاستعلام عن البيانات، استخدم مجموعات أمان Microsoft Entra ككيان معين في قوائم التحكم في الوصول. لا تقم بتعيين أذونات الوصول إلى الملفات للمستخدمين الفرديين أو كيانات الخدمات مباشرة. باستخدام مجموعات أمان Microsoft Entra للتحكم في تدفق الأذونات، يمكنك إضافة مستخدمين أو أساسيات خدمة وإزالتها دون إعادة تطبيق قوائم التحكم بالوصول إلى بنية دليل بأكملها. يجب عليك فقط إضافة المستخدمين أو إزالتهم من مجموعة أمان Microsoft Entra المناسبة. قوائم التحكم بالوصول غير موروثة، لذا يتطلب إعادة تطبيق هذه القوائم تحديث قائمة التحكم بالوصول على كل ملف ودليل فرعي.

الوصول إلى الملفات من المجموعة

هناك عدة طرق يمكنك من خلالها الوصول إلى الملفات في Data Lake Storage Gen2 من نظام مجموعة HDInsight.

  • استخدام الاسم المؤهل بالكامل. باستخدام هذا النهج، يمكنك توفير مسار كامل إلى الملف الذي تريد الوصول إليه.

    abfs://<containername>@<accountname>.dfs.core.windows.net/<file.path>/
    
  • استخدام تنسيق مسار مختصر. باستخدام هذا النهج، يمكنك استبدال المسار حتى جذر نظام المجموعة باستخدام:

    abfs:///<file.path>/
    
  • استخدام المسار النسبي. باستخدام هذا النهج، يمكنك توفير مسار نسبي فقط إلى الملف الذي تريد الوصول إليه.

    /<file.path>/
    

أمثلة على الوصول إلى البيانات

تستند الأمثلة على اتصال ssh إلى العقدة الرئيسية لنظام المجموعة. تستخدم الأمثلة جميع أنظمة URI الثلاثة. استبدل CONTAINERNAME وSTORAGEACCOUNT بالقيم ذات الصلة

بعض أوامر hdfs

  1. إنشاء ملف على التخزين المحلي.

    touch testFile.txt
    
  2. إنشاء دلائل على تخزين نظام المجموعة.

    hdfs dfs -mkdir abfs://CONTAINERNAME@STORAGEACCOUNT.dfs.core.windows.net/sampledata1/
    hdfs dfs -mkdir abfs:///sampledata2/
    hdfs dfs -mkdir /sampledata3/
    
  3. نسخ البيانات من التخزين المحلي إلى تخزين نظام المجموعة.

    hdfs dfs -copyFromLocal testFile.txt  abfs://CONTAINERNAME@STORAGEACCOUNT.dfs.core.windows.net/sampledata1/
    hdfs dfs -copyFromLocal testFile.txt  abfs:///sampledata2/
    hdfs dfs -copyFromLocal testFile.txt  /sampledata3/
    
  4. سرد محتويات الدليل على تخزين نظام المجموعة.

    hdfs dfs -ls abfs://CONTAINERNAME@STORAGEACCOUNT.dfs.core.windows.net/sampledata1/
    hdfs dfs -ls abfs:///sampledata2/
    hdfs dfs -ls /sampledata3/
    

إنشاء جدول الخلية

تُعرض ثلاثة مواقع ملفات لأغراض توضيحية. للتنفيذ الفعلي، استخدم أحد إدخالات LOCATION فقط.

DROP TABLE myTable;
CREATE EXTERNAL TABLE myTable (
    t1 string,
    t2 string,
    t3 string,
    t4 string,
    t5 string,
    t6 string,
    t7 string)
ROW FORMAT DELIMITED FIELDS TERMINATED BY ' '
STORED AS TEXTFILE
LOCATION 'abfs://CONTAINERNAME@STORAGEACCOUNT.dfs.core.windows.net/example/data/';
LOCATION 'abfs:///example/data/';
LOCATION '/example/data/';

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