الاتصال إلى Google Cloud Storage

توضح هذه المقالة كيفية تكوين اتصال من Azure Databricks لقراءة وكتابة الجداول والبيانات المخزنة على Google Cloud Storage (GCS).

للقراءة أو الكتابة من مستودع GCS، يجب إنشاء حساب خدمة مرفق ويجب إقران المستودع بحساب الخدمة. يمكنك الاتصال بالمستودع مباشرة باستخدام مفتاح تنشئه لحساب الخدمة.

الوصول إلى مستودع GCS مباشرة باستخدام مفتاح حساب خدمة Google Cloud

للقراءة والكتابة مباشرة إلى مستودع، يمكنك تكوين مفتاح معرف في تكوين Spark.

الخطوة 1: إعداد حساب خدمة Google Cloud باستخدام Google Cloud Console

يجب إنشاء حساب خدمة لنظام مجموعة Azure Databricks. توصي Databricks بإعطاء حساب الخدمة هذا أقل الامتيازات اللازمة لأداء مهامه.

  1. انقر فوق IAM مسؤول في جزء التنقل الأيمن.

  2. انقر فوق حسابات الخدمة.

  3. انقر فوق + CREATE SERVICE ACCOUNT.

  4. أدخل اسم حساب الخدمة ووصفه.

    حساب خدمة Google Create ل GCS

  5. انقر فوق Create.

  6. انقر فوق Continue.

  7. انقر فوق تم.

الخطوة 2: إنشاء مفتاح للوصول إلى مستودع GCS مباشرة

تحذير

مفتاح JSON الذي تقوم بإنشائه لحساب الخدمة هو مفتاح خاص يجب مشاركته فقط مع المستخدمين المعتمدين لأنه يتحكم في الوصول إلى مجموعات البيانات والموارد في حساب Google Cloud الخاص بك.

  1. في وحدة تحكم Google Cloud، في قائمة حسابات الخدمة، انقر فوق الحساب الذي تم إنشاؤه حديثا.

  2. في قسم Keys ، انقر فوق ADD KEY > Create new key.

    Google Create Key

  3. اقبل نوع مفتاح JSON.

  4. انقر فوق Create. يتم تنزيل الملف الرئيسي إلى الكمبيوتر.

الخطوة 3: تكوين مستودع GCS

إنشاء مستودع

إذا لم يكن لديك مستودع بالفعل، فقم بإنشاء مستودع:

  1. انقر فوق Storage في جزء التنقل الأيمن.

  2. انقر فوق CREATE BUCKET.

    Google Create Bucket

  3. انقر فوق Create.

تكوين المستودع

  1. تكوين تفاصيل المستودع.

  2. انقر فوق علامة التبويب أذونات.

  3. إلى جانب تسمية الأذونات، انقر فوق إضافة.

    تفاصيل مستودع Google

  4. قم بتوفير إذن مسؤول التخزين لحساب الخدمة على المستودع من أدوار التخزين السحابي.

    أذونات مستودع Google

  5. انقر فوق "SAVE".

الخطوة 4: وضع مفتاح حساب الخدمة في أسرار Databricks

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

الخطوة 5: تكوين مجموعة Azure Databricks

  1. في علامة التبويب Spark Config ، استخدم القصاصة البرمجية التالية لتعيين المفاتيح المخزنة في النطاقات السرية:

    spark.hadoop.google.cloud.auth.service.account.enable true
    spark.hadoop.fs.gs.auth.service.account.email <client-email>
    spark.hadoop.fs.gs.project.id <project-id>
    spark.hadoop.fs.gs.auth.service.account.private.key {{secrets/scope/gsa_private_key}}
    spark.hadoop.fs.gs.auth.service.account.private.key.id {{secrets/scope/gsa_private_key_id}}
    

    استبدل <client-email>، <project-id> بقيم أسماء الحقول الدقيقة هذه من ملف JSON الرئيسي.

استخدم كل من التحكم في الوصول إلى نظام المجموعة والتحكم في الوصول إلى دفتر الملاحظات معا لحماية الوصول إلى حساب الخدمة والبيانات في مستودع GCS. راجع حساب الأذونات والتعاون باستخدام دفاتر ملاحظات Databricks.

الخطوة 6: القراءة من GCS

للقراءة من مستودع GCS، استخدم أمر قراءة Spark بأي تنسيق مدعوم، على سبيل المثال:

df = spark.read.format("parquet").load("gs://<bucket-name>/<path>")

للكتابة إلى مستودع GCS، استخدم أمر كتابة Spark بأي تنسيق مدعوم، على سبيل المثال:

df.write.mode("<mode>").save("gs://<bucket-name>/<path>")

استبدل <bucket-name> باسم المستودع الذي أنشأته في الخطوة 3: تكوين مستودع GCS.

مثال دفاتر الملاحظات

القراءة من دفتر ملاحظات Google Cloud Storage

الحصول على دفتر الملاحظات

الكتابة إلى دفتر ملاحظات Google Cloud Storage

الحصول على دفتر الملاحظات