بيانات اعتماد التخزين
ينطبق على: Databricks SQL Databricks Runtime Unity Catalog فقط
يستخدم كتالوج Unity ومخزن بيانات Azure Databricks Hive المضمن المواقع الافتراضية للجداول المدارة. يقدم كتالوج Unity العديد من الكائنات القابلة للتأمين الجديدة لمنح امتيازات للبيانات في تخزين الكائنات السحابية.
-
عنصر كتالوج Unity يستخدم لتجريد بيانات الاعتماد طويلة الأجل من موفري التخزين السحابي.
-
كائن كتالوج Unity يستخدم لربط عنوان URI لتخزين كائن سحابي ببيانات اعتماد تخزين.
-
تم إنشاء جدول كتالوج Unity في موقع خارجي مدار بواسطة كتالوج Unity.
بيانات اعتماد التخزين
بيانات اعتماد التخزين هي كائن قابل للتأمين يمثل هوية مدارة من Azure أو أساس خدمة معرف Microsoft Entra.
بمجرد إنشاء بيانات اعتماد التخزين، يمكن منح حق الوصول إليها إلى الأساسيات (المستخدمون والمجموعات).
تستخدم بيانات اعتماد التخزين بشكل أساسي لإنشاء مواقع خارجية، والتي تحدد نطاق الوصول إلى مسار تخزين معين.
أسماء بيانات اعتماد التخزين غير مؤهلة ويجب أن تكون فريدة داخل metastore.
تمثيل رسومي للعلاقات
يصف الرسم التخطيطي التالي العلاقة بين:
- بيانات اعتماد التخزين
- المواقع الخارجية
- جداول خارجية
- مسارات التخزين
- كيانات IAM
- حسابات خدمة Azure
الأمثلة
يؤدي استخدام CLI إلى إنشاء بيانات اعتماد my_azure_storage_cred
تخزين لمدير خدمة معرف Microsoft Entra.
databricks storage-credentials create --json '{"name": "my_azure_storage_cred", "azure_service_principal": {"directory_id": "12345678-9abc-def0-1234-56789abcdef0", "application_id": "23456789-9abc-def0-1234-56789abcdef0", "client_secret": "Cli3nt5ecr3t"}}'
يمكن تشغيل بقية الأوامر داخل SQL.
-- Grant access to the storage credential
> GRANT READ FILES ON STORAGE CREDENTIAL my_azure_storage_cred TO ceo;
-- ceo can directly read from any storage path using myazure_storage_cred
> SELECT count(1) FROM `delta`.`abfss://container@storageaccount.dfs.core.windows.net/depts/finance/forecast/somefile` WITH (CREDENTIAL my_azure_storage_cred);
100
> SELECT count(1) FROM `delta`.`abfss://container@storageaccount.dfs.core.windows.net/depts/hr/employees` WITH (CREDENTIAL my_azure_storage_cred);
2017
-- Create an external location on specific path to which `my_azure_storage_cred` has access
> CREATE EXTERNAL LOCATION finance_loc URL 'abfss://container@storageaccount.dfs.core.windows.net/depts/finance'
WITH (CREDENTIAL my_azure_storage_cred)
COMMENT 'finance';