حدث
٢ شوال، ١١ م - ٤ شوال، ١١ م
أكبر حدث تعلم Fabric وPower BI وSQL. 31 مارس – 2 أبريل. استخدم التعليمات البرمجية FABINSIDER لتوفير 400 دولار.
تسجيل اليوملم يعد هذا المتصفح مدعومًا.
بادر بالترقية إلى Microsoft Edge للاستفادة من أحدث الميزات والتحديثات الأمنية والدعم الفني.
توضح هذه المقالة كيفية إنشاء جداول خارجية أو استيعاب البيانات من حسابات Azure Data Lake Storage (ADLS) Gen2 باستخدام هوية مدارة.
الموارد التالية مطلوبة لإكمال هذا البرنامج التعليمي:
تنشئ كل مساحة عمل Azure Synapse Analytics تلقائيا هوية مدارة تساعدك على تكوين الوصول الآمن إلى البيانات الخارجية من مساحة العمل الخاصة بك. لمعرفة المزيد حول الهويات المدارة ل Azure Synapse Analytics، تفضل بزيارة هوية الخدمة المدارة ل Azure Synapse Analytics.
لتمكين هويتك المدارة من الوصول إلى البيانات على حسابات ADLS Gen2، تحتاج إلى منح هويتك حق الوصول إلى حساب المصدر. لمنح الأذونات المناسبة، اتبع الخطوات التالية:
هوية مساحة العمل الخاصة بك الآن عضو في دور Storage Blob Data Contributor ولديه حق الوصول إلى المجلد المصدر.
ملاحظة
تنطبق هذه الخطوات أيضا على تأمين حسابات ADLS Gen2 التي تم تكوينها لتقييد الوصول العام. إذا كان حساب التخزين الخاص بك مقترنا بحساب ADLS Gen2 آمن أو مقترنا بشبكة ظاهرية، فيجب عليك المصادقة باستخدام هوية مدارة. لمعرفة المزيد حول تأمين حساب ADLS Gen2 الخاص بك، راجع تكوين جدران حماية Azure Storage والشبكات الظاهرية.
توفر عبارة T-SQL COPY INTO
استيعابا مرنا وعالي الإنتاجية للبيانات في جداولك، وهي الاستراتيجية الأساسية لاستيعاب البيانات في جداول تجمع SQL المخصصة.
COPY INTO
يسمح للمستخدمين ب استيعاب البيانات من مواقع خارجية دون الحاجة إلى إنشاء أي من كائنات قاعدة البيانات الإضافية المطلوبة للجداول الخارجية.
لتشغيل العبارة COPY INTO
باستخدام هوية مدارة لمساحة العمل للمصادقة، استخدم الأمر T-SQL التالي:
COPY INTO <TableName>
FROM 'https://<AccountName>.dfs.core.windows.net/<Container>/<Folder>/ '
WITH
(
CREDENTIAL = (IDENTITY = 'Managed Identity'),
[<CopyIntoOptions>]
);
المكان:
<TableName>
هو اسم الجدول لاستيعاب البيانات فيه<AccountName>
هو اسم حساب ADLS Gen2 الخاص بك<Container>
هو اسم الحاوية داخل حساب التخزين الخاص بك حيث يتم تخزين بيانات المصدر<Folder>
هو المجلد (أو المسار مع المجلدات الفرعية) حيث يتم تخزين البيانات المصدر داخل الحاوية الخاصة بك. يمكنك أيضا توفير اسم ملف إذا كان يشير مباشرة إلى ملف واحد.<CopyIntoOptions>
هي قائمة بأي خيارات أخرى ترغب في توفيرها إلى عبارة COPY INTO.لمعرفة المزيد واستكشاف بناء الجملة الكامل ل COPY INTO، راجع COPY INTO (Transact-SQL).
تسمح الجداول الخارجية للمستخدمين بالاستعلام عن البيانات من حسابات Azure Data Lake Storage (ADLS) Gen2 دون الحاجة إلى استيعاب البيانات أولا. يمكن للمستخدمين إنشاء جدول خارجي يشير إلى ملفات على حاوية ADLS Gen2، والاستعلام عنه تماما مثل جدول مستخدم عادي.
تصف الخطوات التالية عملية إنشاء جدول خارجي جديد يشير إلى البيانات على ADLS Gen2، باستخدام هوية مدارة للمصادقة.
تتطلب الجداول الخارجية إنشاء العناصر التالية:
لاتباع هذه الخطوات، استخدم محرر SQL في مساحة عمل Azure Synapse، أو عميل SQL المفضل لديك المتصل بتجمع SQL المخصص. لنلق نظرة على هذه الخطوات بالتفصيل.
المفتاح الرئيسي لقاعدة البيانات هو مفتاح متماثل يستخدم لحماية المفاتيح الخاصة للشهادات والمفاتيح غير المتماثلة الموجودة في قاعدة البيانات والأسرار في بيانات اعتماد نطاق قاعدة البيانات. إذا كان هناك بالفعل مفتاح رئيسي في قاعدة البيانات، فلن تحتاج إلى إنشاء مفتاح رئيسي جديد. استبدل <Secure Password>
بكلمة مرور آمنة. يتم استخدام كلمة المرور هذه لتشفير المفتاح الرئيسي في قاعدة البيانات.
لإنشاء مفتاح رئيسي، استخدم الأمر T-SQL التالي:
-- Replace <Secure Password> with a secure password
CREATE MASTER KEY ENCRYPTION BY PASSWORD = '<Secure Password>';
لمعرفة المزيد حول المفتاح الرئيسي لقاعدة البيانات، راجع إنشاء المفتاح الرئيسي (Transact-SQL) .
تستخدم بيانات اعتماد نطاق قاعدة البيانات هوية مساحة العمل الخاصة بك وهي مطلوبة للوصول إلى الموقع الخارجي في أي وقت يتطلب الجدول الخارجي الوصول إلى البيانات المصدر.
لإنشاء بيانات اعتماد محددة النطاق لقاعدة البيانات، استخدم الأمر التالي. استبدل <CredentialName>
بالاسم الذي ترغب في استخدامه لبيانات الاعتماد الخاصة بقاعدة البيانات الخاصة بك.
CREATE DATABASE SCOPED CREDENTIAL <CredentialName> WITH IDENTITY = 'Managed Service Identity';
لمعرفة المزيد حول بيانات الاعتماد المحددة في نطاق قاعدة البيانات، راجع إنشاء بيانات اعتماد نطاق قاعدة البيانات (Transact-SQL) .
الخطوة التالية هي إنشاء مصدر بيانات خارجي يحدد مكان وجود البيانات المصدر المستخدمة من قبل الجدول الخارجي.
لإنشاء مصدر البيانات الخارجي، استخدم الأمر T-SQL التالي:
CREATE EXTERNAL DATA SOURCE <ExternalDataSourceName>
WITH (
TYPE = HADOOP,
LOCATION = 'abfss://<Container>@<AccountName>.dfs.core.windows.net/<Folder>/',
CREDENTIAL = <CredentialName>
);
المكان:
<ExternalDataSourceName>
هو الاسم الذي تريد استخدامه لمصدر البيانات الخارجي.<AccountName>
هو اسم حساب ADLS Gen2 الخاص بك.<Container>
هو اسم الحاوية داخل حساب التخزين الخاص بك حيث يتم تخزين البيانات المصدر.<Folder>
هو المجلد (أو المسار مع المجلدات الفرعية) حيث يتم تخزين البيانات المصدر داخل الحاوية الخاصة بك. يمكنك أيضا توفير اسم ملف إذا كان يشير مباشرة إلى ملف واحد.<Credential>
هو اسم بيانات الاعتماد التي تم تحديد نطاقها لقاعدة البيانات التي قمت بإنشائها سابقا.لمعرفة المزيد حول مصادر البيانات الخارجية، راجع إنشاء مصدر بيانات خارجي (Transact-SQL) .
الخطوة التالية هي إنشاء تنسيق الملف الخارجي. يحدد التخطيط الفعلي للبيانات المشار إليها بواسطة الجدول الخارجي.
لإنشاء تنسيق الملف الخارجي، استخدم الأمر T-SQL التالي. استبدل <FileFormatName>
بالاسم الذي تريد استخدامه لتنسيق الملف الخارجي.
CREATE EXTERNAL FILE FORMAT <FileFormatName>
WITH (
FORMAT_TYPE = DELIMITEDTEXT,
FORMAT_OPTIONS (
FIELD_TERMINATOR = ',',
STRING_DELIMITER = '"',
FIRST_ROW = 2,
USE_TYPE_DEFAULT = True
)
);
في هذا المثال، اضبط معلمات مثل FIELD_TERMINATOR
و STRING_DELIMITER
FIRST_ROW
و وغيرها حسب الحاجة وفقا لبيانات المصدر. لمزيد من خيارات التنسيق ولمعرفة المزيد حول EXTERNAL FILE FORMAT
، راجع إنشاء تنسيق ملف خارجي.
الآن بعد إنشاء جميع الكائنات الضرورية التي تحتوي على بيانات التعريف للوصول إلى البيانات الخارجية بشكل آمن، حان الوقت لإنشاء الجدول الخارجي. لإنشاء الجدول الخارجي، استخدم الأمر T-SQL التالي:
-- Adjust the table name and columns to your desired name and external table schema
CREATE EXTERNAL TABLE <ExternalTableName> (
Col1 INT,
Col2 NVARCHAR(100),
Col4 INT
)
WITH
(
LOCATION = '<Path>',
DATA_SOURCE = <ExternalDataSourceName>,
FILE_FORMAT = <FileFormatName>
);
المكان:
<ExternalTableName>
هو الاسم الذي تريد استخدامه للجدول الخارجي.<Path>
هو مسار بيانات المصدر، بالنسبة إلى الموقع المحدد في مصدر البيانات الخارجي.<ExternalDataSourceName>
هو اسم مصدر البيانات الخارجي الذي قمت بإنشائه مسبقا.<FileFormatName>
هو اسم تنسيق الملف الخارجي الذي قمت بإنشائه مسبقا.تأكد من ضبط اسم الجدول والمخطط إلى الاسم المطلوب ومخطط البيانات في الملفات المصدر.
عند هذه النقطة، يتم إنشاء جميع بيانات التعريف المطلوبة للوصول إلى الجدول الخارجي. لاختبار الجدول الخارجي، استخدم استعلاما مثل نموذج T-SQL التالي للتحقق من صحة عملك:
SELECT TOP 10 Col1, Col2 FROM <ExternalTableName>;
إذا تم تكوين كل شيء بشكل صحيح، يجب أن تشاهد البيانات من البيانات المصدر كنتيجة لهذا الاستعلام.
لمعرفة المزيد واستكشاف بناء الجملة الكامل ل CREATE EXTERNAL TABLE
، راجع إنشاء جدول خارجي (Transact-SQL) .
حدث
٢ شوال، ١١ م - ٤ شوال، ١١ م
أكبر حدث تعلم Fabric وPower BI وSQL. 31 مارس – 2 أبريل. استخدم التعليمات البرمجية FABINSIDER لتوفير 400 دولار.
تسجيل اليومالتدريب
الوحدة النمطية
استخدام تجمع SQL بلا خادم في Azure Synapse للاستعلام عن الملفات في مستودع بيانات - Training
استخدام تجمع SQL بلا خادم في Azure Synapse للاستعلام عن الملفات في مستودع بيانات
الشهادة
معتمد من Microsoft: شريك مهندس بيانات في Azure - Certifications
إظهار فهم مهام هندسة البيانات الشائعة لتنفيذ وإدارة أحمال عمل هندسة البيانات على Microsoft Azure، باستخدام عدد من خدمات Azure.
الوثائق
استخدام الجداول الخارجية مع Synapse SQL - Azure Synapse Analytics
قراءة ملفات البيانات أو كتابتها باستخدام جداول خارجية في Synapse SQL.
الوصول إلى قواعد بيانات المستودع باستخدام تجمع SQL بلا خادم - Azure Synapse Analytics
تعرف على كيفية توفير Azure Synapse Analytics نموذج بيانات تعريف مشتركة حيث يجعل إنشاء قاعدة بيانات مستودع في تجمع Apache Spark الوصول إليها من محرك تجمع SQL بلا خادم.
إنشاء واستخدام الجداول الخارجية في تجمع Synapse SQL - Azure Synapse Analytics
في هذا القسم، ستتعلم كيفية إنشاء واستخدام الجداول الخارجية في تجمع Synapse SQL.