في العصر الرقمي الذي نعيشه اليوم، أصبحت البيانات هي جوهر نجاح كل مؤسسة. أحد التنسيقات الأكثر استخدامًا لتبادل البيانات هو XML. يعد تحليل ملفات XML أمرًا بالغ الأهمية لعدة أسباب. أولاً، يتم استخدام ملفات XML في العديد من الصناعات، بما في ذلك التمويل والرعاية الصحية والحكومة. يمكن أن يساعد تحليل ملفات XML المؤسسات في الحصول على رؤى حول بياناتها، مما يسمح لها باتخاذ قرارات أفضل وتحسين عملياتها. يمكن أن يساعد تحليل ملفات XML أيضًا في تكامل البيانات، لأن العديد من التطبيقات والأنظمة تستخدم XML كتنسيق قياسي للبيانات. من خلال تحليل ملفات XML، يمكن للمؤسسات دمج البيانات من مصادر مختلفة بسهولة وضمان الاتساق عبر أنظمتها، ومع ذلك، تحتوي ملفات XML على بيانات شبه منظمة ومتداخلة للغاية، مما يجعل من الصعب الوصول إلى المعلومات وتحليلها، خاصة إذا كان الملف كبيرًا ويحتوي على مخطط معقد ومتداخل للغاية.
تعتبر ملفات XML مناسبة تمامًا للتطبيقات، ولكنها قد لا تكون مثالية لمحركات التحليلات. من أجل تحسين أداء الاستعلام وتمكين الوصول السهل إلى محركات التحليلات النهائية مثل أمازون أثينا، من الضروري معالجة ملفات XML مسبقًا وتحويلها إلى تنسيق عمودي مثل Parquet. يسمح هذا التحول بتحسين الكفاءة وسهولة الاستخدام في سير عمل التحليلات. في هذا المنشور، نعرض كيفية معالجة بيانات XML باستخدام غراء AWS وأثينا.
حل نظرة عامة
نحن نستكشف تقنيتين متميزتين يمكنهما تبسيط سير عمل معالجة ملف XML الخاص بك:
- الأسلوب 1: استخدم زاحف AWS Glue والمحرر المرئي AWS Glue – يمكنك استخدام واجهة مستخدم AWS Glue جنبًا إلى جنب مع الزاحف لتحديد بنية الجدول لملفات XML الخاصة بك. يوفر هذا الأسلوب واجهة سهلة الاستخدام وهو مناسب بشكل خاص للأفراد الذين يفضلون الأسلوب الرسومي لإدارة بياناتهم.
- التقنية 2: استخدم AWS Glue DynamicFrames مع المخططات المستنتجة والثابتة - لدى الزاحف قيود عندما يتعلق الأمر بمعالجة صف واحد في ملفات XML أكبر من 1 MB. للتغلب على هذا القيد، نستخدم دفتر ملاحظات AWS Glue لإنشاء AWS Glue
DynamicFrames
باستخدام كل من المخططات المستنتجة والثابتة. تضمن هذه الطريقة معالجة فعالة لملفات XML ذات الصفوف التي يتجاوز حجمها 1 ميغابايت.
في كلا الطريقتين، هدفنا النهائي هو تحويل ملفات XML إلى تنسيق Apache Parquet، مما يجعلها متاحة بسهولة للاستعلام باستخدام Athena. باستخدام هذه التقنيات، يمكنك تحسين سرعة المعالجة وإمكانية الوصول إلى بيانات XML الخاصة بك، مما يتيح لك استخلاص معلومات قيمة بسهولة.
المتطلبات الأساسية المسبقة
قبل أن تبدأ هذا البرنامج التعليمي، أكمل المتطلبات الأساسية التالية (تنطبق هذه على كلا التقنيتين):
- قم بتنزيل ملفات XML technic1.xml و technic2.xml.
- قم بتحميل الملفات إلى خدمة تخزين أمازون البسيطة دلو (أمازون S3). يمكنك تحميلها إلى نفس حاوية S3 في مجلدات مختلفة أو إلى مجموعات S3 مختلفة.
- خلق إدارة الهوية والوصول AWS (IAM) لوظيفة ETL أو دفتر الملاحظات الخاص بك وفقًا للتعليمات الواردة في قم بإعداد أذونات IAM لـ AWS Glue Studio.
- أضف سياسة مضمنة إلى دورك باستخدام بالفعل: PassRole عمل:
- أضف سياسة أذونات إلى الدور مع إمكانية الوصول إلى مجموعة S3 الخاصة بك.
الآن بعد أن انتهينا من المتطلبات الأساسية، دعنا ننتقل إلى تنفيذ التقنية الأولى.
الأسلوب 1: استخدم زاحف AWS Glue والمحرر المرئي
يوضح الرسم التخطيطي التالي البنية البسيطة التي يمكنك استخدامها لتنفيذ الحل.
لتحليل ملفات XML المخزنة في Amazon S3 باستخدام AWS Glue وAthena، نكمل الخطوات عالية المستوى التالية:
- قم بإنشاء زاحف AWS Glue لاستخراج بيانات تعريف XML وإنشاء جدول في كتالوج بيانات AWS Glue.
- قم بمعالجة بيانات XML وتحويلها إلى تنسيق (مثل Parquet) مناسب لـ Athena باستخدام مهمة AWS Glue لاستخراج وتحويل وتحميل (ETL).
- قم بإعداد وتشغيل مهمة AWS Glue عبر وحدة تحكم AWS Glue أو واجهة سطر الأوامر AWS (AWS CLI).
- استخدم البيانات المعالجة (بتنسيق Parquet) مع جداول Athena، مما يتيح استعلامات SQL.
- استخدم الواجهة سهلة الاستخدام في Athena لتحليل بيانات XML باستخدام استعلامات SQL على بياناتك المخزنة في Amazon S3.
تعد هذه البنية حلاً قابلاً للتطوير وفعالاً من حيث التكلفة لتحليل بيانات XML على Amazon S3 باستخدام AWS Glue وAthena. يمكنك تحليل مجموعات البيانات الكبيرة دون إدارة البنية التحتية المعقدة.
نحن نستخدم زاحف AWS Glue لاستخراج البيانات التعريفية لملف XML. يمكنك اختيار مصنف AWS Glue الافتراضي لتصنيف XML للأغراض العامة. فهو يكتشف تلقائيًا بنية بيانات XML ومخططها، وهو أمر مفيد للتنسيقات الشائعة.
نستخدم أيضًا مصنف XML مخصصًا في هذا الحل. لقد تم تصميمه لمخططات أو تنسيقات XML محددة، مما يسمح باستخراج بيانات التعريف بدقة. يعد هذا مثاليًا لتنسيقات XML غير القياسية أو عندما تحتاج إلى تحكم تفصيلي في التصنيف. يضمن المصنف المخصص استخراج بيانات التعريف الضرورية فقط، مما يبسط مهام المعالجة والتحليل النهائية. يعمل هذا الأسلوب على تحسين استخدام ملفات XML الخاصة بك.
تعرض لقطة الشاشة التالية مثالاً لملف XML مع العلامات.
إنشاء مصنف مخصص
في هذه الخطوة، يمكنك إنشاء مصنف AWS Glue مخصص لاستخراج البيانات التعريفية من ملف XML. أكمل الخطوات التالية:
- في وحدة تحكم AWS Glue ، تحت الزواحف في جزء التنقل ، اختر المصنفات.
- اختار أضف المصنف.
- أختار XML كنوع المصنف.
- أدخل اسمًا للمصنف، مثل
blog-glue-xml-contact
. - في حالة علامة الصف، أدخل اسم علامة الجذر التي تحتوي على بيانات التعريف (على سبيل المثال،
metadata
). - اختار إنشاء.
قم بإنشاء AWS Glue Crawler للزحف إلى ملف xml
في هذا القسم، نقوم بإنشاء Glue Crawler لاستخراج البيانات التعريفية من ملف XML باستخدام مصنف العميل الذي تم إنشاؤه في الخطوة السابقة.
أنشئ قاعدة بيانات
- انتقل إلى وحدة تحكم AWS Glue، اختر قواعد بيانات في جزء التنقل.
- انقر على إضافة قاعدة بيانات.
- تقديم اسم مثل
blog_glue_xml
- اختار إنشاء قاعدة البيانات
إنشاء الزاحف
أكمل الخطوات التالية لإنشاء الزاحف الأول:
- في وحدة تحكم AWS Glue ، اختر الزواحف في جزء التنقل.
- اختار إنشاء الزاحف.
- على تعيين خصائص الزاحف الصفحة، قم بتوفير اسم للزاحف الجديد (مثل
blog-glue-parquet
) ، ثم اختر التالى. - على اختيار مصادر البيانات والمصنفات الصفحة ، حدد ليس بعد مع تكوين مصدر البيانات.
- اختار أضف مخزن بيانات.
- في حالة مسار S3، اذهب الى
s3://${BUCKET_NAME}/input/geologicalsurvey/
.
تأكد من اختيار مجلد XML بدلاً من الملف الموجود داخل المجلد.
- اترك باقي الخيارات افتراضيا واختر أضف مصدر بيانات S3.
- وسع المصنفات المخصصة – اختيارية، اختر blog-glue-xml-contact، ثم اختر التالى واحتفظ ببقية الخيارات كإعداد افتراضي.
- اختر دور IAM الخاص بك أو اختر إنشاء دور IAM جديد، أضف اللاحقة
glue-xml-contact
(فمثلا،AWSGlueServiceNotebookRoleBlog
)، و اختار التالى. - على تعيين الإخراج والجدولة الصفحة تحت تكوين الإخراج، اختر
blog_glue_xml
For قاعدة البيانات الهدف. - أدخل
console_
كبادئة تضاف إلى الجداول (اختياري) وتحت جدول الزاحف، احتفظ بالتردد مضبوطًا على على الطلب. - اختار التالى.
- قم بمراجعة كافة المعلمات ثم اختر إنشاء الزاحف.
قم بتشغيل الزاحف
بعد إنشاء الزاحف، أكمل الخطوات التالية لتشغيله:
- في وحدة تحكم AWS Glue ، اختر الزواحف في جزء التنقل.
- افتح الزاحف الذي قمت بإنشائه واختر يجري.
سيستغرق الزاحف من 1 إلى 2 دقيقة حتى يكتمل.
- عند اكتمال الزاحف ، اختر قواعد بيانات في جزء التنقل.
- اختر قاعدة البيانات التي قمت بتصنيفها واختر اسم الجدول لرؤية المخطط المستخرج بواسطة الزاحف.
قم بإنشاء مهمة AWS Glue لتحويل XML إلى تنسيق Parquet
في هذه الخطوة، يمكنك إنشاء مهمة AWS Glue Studio لتحويل ملف XML إلى ملف Parquet. أكمل الخطوات التالية:
- في وحدة تحكم AWS Glue ، اختر المشــاريــع في جزء التنقل.
- تحت خلق وظيفة، حدد مرئي مع قماش فارغ.
- اختار إنشاء.
- إعادة تسمية المهمة إلى
blog_glue_xml_job
.
الآن لديك محرر مهام مرئي فارغ في AWS Glue Studio. توجد في الجزء العلوي من المحرر علامات تبويب لطرق عرض مختلفة.
- اختيار سيناريو علامة التبويب لرؤية غلاف فارغ للبرنامج النصي AWS Glue ETL.
عندما نضيف خطوات جديدة في المحرر المرئي، سيتم تحديث البرنامج النصي تلقائيًا.
- اختيار تفاصيل الوظيفة علامة التبويب لرؤية جميع تكوينات الوظيفة.
- في حالة دور IAM، اختر
AWSGlueServiceNotebookRoleBlog
. - في حالة نسخة الغراء، اختر الغراء 4.0 - دعم سبارك 3.3، سكالا 2، بايثون 3.
- المجموعات عدد العمال المطلوب ل2.
- المجموعات عدد المحاولات ل0.
- اختيار مرئي التبويب للعودة إلى المحرر المرئي.
- على مصدر القائمة المنسدلة ، اختر كتالوج بيانات AWS Glue.
- على خصائص مصدر البيانات - كتالوج البيانات علامة التبويب، قم بتوفير المعلومات التالية:
- في حالة قاعدة البيانات، اختر
blog_glue_xml
. - في حالة طاولات ومكاتب ، اختر الجدول الذي يبدأ بالاسم console_ الذي أنشأه الزاحف (على سبيل المثال،
console_geologicalsurvey
).
- في حالة قاعدة البيانات، اختر
- على خصائص العقدة علامة التبويب، قم بتوفير المعلومات التالية:
- التغيير الاسم إلى
geologicalsurvey
مجموعة البيانات. - اختار اكشن والتحول تغيير المخطط (تطبيق التعيين).
- اختار خصائص العقدة وقم بتغيير اسم التحويل من تغيير المخطط (تطبيق التعيين) إلى
ApplyMapping
. - على الهدف القائمة، اختر S3.
- التغيير الاسم إلى
- على خصائص مصدر البيانات - S3 علامة التبويب، قم بتوفير المعلومات التالية:
- في حالة شكل، حدد الباركيه.
- في حالة نوع الضغط، حدد غير مضغوط.
- في حالة نوع مصدر S3، حدد موقع S3.
- في حالة عنوان URL الخاص بـ S3، أدخل
s3://${BUCKET_NAME}/output/parquet/
. - اختار خصائص العقدة وتغيير الاسم إلى
Output
.
- اختار حفظ لحفظ الوظيفة.
- اختار يجري لتشغيل الوظيفة.
توضح لقطة الشاشة التالية المهمة في المحرر المرئي.
قم بإنشاء AWS Gue Crawler للزحف إلى ملف Parquet
في هذه الخطوة، يمكنك إنشاء زاحف AWS Glue لاستخراج البيانات التعريفية من ملف Parquet الذي قمت بإنشائه باستخدام مهمة AWS Glue Studio. هذه المرة، يمكنك استخدام المصنف الافتراضي. أكمل الخطوات التالية:
- في وحدة تحكم AWS Glue ، اختر الزواحف في جزء التنقل.
- اختار إنشاء الزاحف.
- على تعيين خصائص الزاحف الصفحة، أدخل اسمًا للزاحف الجديد، مثل blog-glue-parquet-contact، ثم اختر التالى.
- على اختيار مصادر البيانات والمصنفات الصفحة ، حدد ليس بعد For تكوين مصدر البيانات.
- اختار أضف مخزن بيانات.
- في حالة مسار S3، اذهب الى
s3://${BUCKET_NAME}/output/parquet/
.
تأكد من اختيار parquet
المجلد بدلاً من الملف الموجود داخل المجلد.
- اختر دور IAM الذي تم إنشاؤه أثناء قسم المتطلبات الأساسية أو اختر إنشاء دور IAM جديد (فمثلا،
AWSGlueServiceNotebookRoleBlog
)، و اختار التالى. - على تعيين الإخراج والجدولة الصفحة تحت تكوين الإخراج، اختر
blog_glue_xml
For قاعدة البيانات. - أدخل
parquet_
كبادئة تضاف إلى الجداول (اختياري) وتحت جدول الزاحف، احتفظ بالتردد مضبوطًا على على الطلب. - اختار التالى.
- قم بمراجعة كافة المعلمات ثم اختر إنشاء الزاحف.
يمكنك الآن تشغيل الزاحف، والذي يستغرق إكماله من دقيقة إلى دقيقتين.
يمكنك معاينة المخطط الذي تم إنشاؤه حديثًا لملف Parquet في AWS Glue Data Catalog، والذي يشبه مخطط ملف XML.
نحن نمتلك الآن بيانات مناسبة للاستخدام مع أثينا. في القسم التالي، سنقوم بإجراء استعلامات البيانات باستخدام Athena.
الاستعلام عن ملف الباركيه باستخدام Athena
أثينا لا تدعم الاستعلام عن تنسيق ملف XMLولهذا السبب قمت بتحويل ملف XML إلى Parquet للاستعلام عن البيانات واستخدامها بشكل أكثر كفاءة تدوين النقطة للاستعلام عن الأنواع المعقدة والهياكل المتداخلة.
يستخدم رمز المثال التالي تدوينًا نقطيًا للاستعلام عن البيانات المتداخلة:
الآن بعد أن أكملنا التقنية 1، دعنا ننتقل للتعرف على التقنية 2.
التقنية 2: استخدم AWS Glue DynamicFrames مع المخططات المستنتجة والثابتة
في القسم السابق، تناولنا عملية التعامل مع ملف XML صغير باستخدام زاحف AWS Glue لإنشاء جدول، ومهمة AWS Glue لتحويل الملف إلى تنسيق Parquet، وAthena للوصول إلى بيانات Parquet. ومع ذلك، يواجه الزاحف قيودًا عندما يتعلق الأمر بمعالجة ملفات XML التي تتجاوز 1 ميغابايت في الحجم. في هذا القسم، سنتعمق في موضوع المعالجة المجمعة لملفات XML الأكبر حجمًا، مما يستلزم تحليلًا إضافيًا لاستخراج الأحداث الفردية وإجراء التحليل باستخدام Athena.
يتضمن أسلوبنا قراءة ملفات XML من خلال AWS Glue إطارات ديناميكية، باستخدام كل من المخططات المستنتجة والثابتة. ثم نقوم باستخراج الأحداث الفردية بصيغة الباركيه باستخدام ملف ربط العلاقات التحويل، مما يمكننا من الاستعلام عنها وتحليلها بسلاسة باستخدام Athena.
لتنفيذ هذا الحل ، عليك إكمال الخطوات عالية المستوى التالية:
- قم بإنشاء دفتر ملاحظات AWS Glue لقراءة ملف XML وتحليله.
- استعمل
DynamicFrames
معInferSchema
لقراءة ملف XML. - استخدم الدالة الارتباطية لإلغاء تداخل أي صفائف.
- تحويل البيانات إلى تنسيق الباركيه.
- الاستعلام عن بيانات الباركيه باستخدام أثينا.
- كرر الخطوات السابقة، ولكن هذه المرة قم بتمرير المخطط إلى
DynamicFrames
بدلاً من استخدامهاInferSchema
.
يحتوي ملف XML لبيانات تعداد المركبات الكهربائية على response
العلامة على مستوى الجذر. تحتوي هذه العلامة على مجموعة من row
العلامات المتداخلة داخلها. علامة الصف عبارة عن مصفوفة تحتوي على مجموعة من علامات الصف الأخرى، والتي توفر معلومات حول السيارة، بما في ذلك طرازها وطرازها والتفاصيل الأخرى ذات الصلة. تظهر لقطة الشاشة التالية مثالا.
قم بإنشاء دفتر ملاحظات AWS Glue
لإنشاء دفتر ملاحظات AWS Glue، أكمل الخطوات التالية:
- فتح AWS الغراء ستوديو وحدة ، اختر المشــاريــع في جزء التنقل.
- أختار مفكرة Jupyter واختر إنشاء.
- أدخل اسمًا لمهمة AWS Glue، مثل
blog_glue_xml_job_Jupyter
. - اختر الدور الذي قمت بإنشائه في المتطلبات الأساسية (
AWSGlueServiceNotebookRoleBlog
).
يأتي دفتر ملاحظات AWS Glue مزودًا بمثال موجود مسبقًا يوضح كيفية الاستعلام عن قاعدة بيانات وكتابة المخرجات إلى Amazon S3.
- اضبط المهلة (بالدقائق) كما هو موضح في لقطة الشاشة التالية وقم بتشغيل الخلية لإنشاء جلسة AWS Glue التفاعلية.
إنشاء المتغيرات الأساسية
بعد إنشاء الجلسة التفاعلية، في نهاية دفتر الملاحظات، قم بإنشاء خلية جديدة تحتوي على المتغيرات التالية (قم بتوفير اسم المجموعة الخاصة بك):
اقرأ ملف XML لاستنتاج المخطط
إذا لم تقم بتمرير المخطط إلى DynamicFrame
، سوف يستنتج مخطط الملفات. لقراءة البيانات باستخدام إطار ديناميكي، يمكنك استخدام الأمر التالي:
طباعة مخطط DynamicFrame
اطبع المخطط بالكود التالي:
يُظهر المخطط بنية متداخلة ذات row
مصفوفة تحتوي على عناصر متعددة. لفك هذه البنية في خطوط، يمكنك استخدام AWS Glue ربط العلاقات تحويل:
نحن مهتمون فقط بالمعلومات الموجودة داخل مصفوفة الصفوف، ويمكننا عرض المخطط باستخدام الأمر التالي:
تحتوي أسماء الأعمدة على row.row
، والتي تتوافق مع بنية الصفيف وعمود الصفيف في مجموعة البيانات. لا نقوم بإعادة تسمية الأعمدة الموجودة في هذا المنشور؛ للحصول على تعليمات للقيام بذلك، راجع أتمتة التعيين الديناميكي وإعادة تسمية أسماء الأعمدة في ملفات البيانات باستخدام AWS Glue: الجزء 1. بعد ذلك يمكنك تحويل البيانات إلى تنسيق Parquet وإنشاء جدول AWS Glue باستخدام الأمر التالي:
غراء AWS DynamicFrame
يوفر ميزات يمكنك استخدامها في برنامج ETL النصي الخاص بك لإنشاء مخطط وتحديثه في كتالوج البيانات. نحن نستخدم ال updateBehavior
المعلمة لإنشاء الجدول مباشرة في كتالوج البيانات. باستخدام هذا الأسلوب، لا نحتاج إلى تشغيل زاحف AWS Glue بعد اكتمال مهمة AWS Glue.
اقرأ ملف XML عن طريق وضع مخطط
هناك طريقة بديلة لقراءة الملف وهي التحديد المسبق للمخطط. للقيام بذلك، أكمل الخطوات التالية:
- استيراد أنواع بيانات AWS Glue:
- قم بإنشاء مخطط لملف XML:
- قم بتمرير المخطط عند قراءة ملف XML:
- قم بإلغاء تداخل مجموعة البيانات كما كان من قبل:
- قم بتحويل مجموعة البيانات إلى Parquet وقم بإنشاء جدول AWS Glue:
الاستعلام عن الجداول باستخدام Athena
الآن بعد أن أنشأنا كلا الجدولين، يمكننا الاستعلام عن الجدولين باستخدام Athena. على سبيل المثال يمكننا استخدام الاستعلام التالي:
تنظيف
في هذا المنشور، أنشأنا دور IAM، ودفتر ملاحظات AWS Glue Jupyter، وجدولين في كتالوج بيانات AWS Glue. قمنا أيضًا بتحميل بعض الملفات إلى مجموعة S3. لتنظيف هذه الكائنات، أكمل الخطوات التالية:
- في وحدة تحكم IAM، احذف الدور الذي قمت بإنشائه.
- في وحدة تحكم AWS Glue Studio، احذف المصنف المخصص والزاحف ومهام ETL ودفتر Jupyter.
- انتقل إلى AWS Glue Data Catalog واحذف الجداول التي أنشأتها.
- في وحدة تحكم Amazon S3، انتقل إلى الحاوية التي قمت بإنشائها واحذف المجلدات المسماة
temp
,infer_schema
وno_infer_schema
.
الوجبات السريعة الرئيسية
في AWS Glue، هناك ميزة تسمى InferSchema
في الغراء AWS DynamicFrames
. يقوم تلقائيًا باكتشاف بنية إطار البيانات بناءً على البيانات التي يحتوي عليها. في المقابل، تعريف المخطط يعني توضيح الشكل الذي يجب أن تكون عليه بنية إطار البيانات قبل تحميل البيانات.
XML، كونه تنسيقًا نصيًا، لا يقيد أنواع البيانات الخاصة بأعمدته. قد يتسبب هذا في حدوث مشكلات في وظيفة InferSchema. على سبيل المثال، في التشغيل الأول، يؤدي الملف الذي يحتوي على العمود A بقيمة 2 إلى ملف Parquet مع العمود A كعدد صحيح. في التشغيل الثاني، يحتوي الملف الجديد على العمود A بالقيمة C، مما يؤدي إلى ملف Parquet بالعمود A كسلسلة. يوجد الآن ملفان على S3، يحتوي كل منهما على عمود A من أنواع البيانات المختلفة، مما قد يؤدي إلى حدوث مشكلات في اتجاه مجرى النهر.
يحدث الشيء نفسه مع أنواع البيانات المعقدة مثل الهياكل أو المصفوفات المتداخلة. على سبيل المثال، إذا كان الملف يحتوي على إدخال علامة واحد يسمى transaction
، يتم استنتاجه كبنية. ولكن إذا كان هناك ملف آخر له نفس العلامة، فسيتم استنتاجه كمصفوفة
على الرغم من هذه المشكلات المتعلقة بنوع البيانات، InferSchema
يكون مفيدًا عندما لا تعرف المخطط أو يكون تحديده يدويًا غير عملي. ومع ذلك، فهي ليست مثالية لمجموعات البيانات الكبيرة أو المتغيرة باستمرار. يعد تحديد المخطط أكثر دقة، خاصة مع أنواع البيانات المعقدة، ولكن له مشكلاته الخاصة، مثل الحاجة إلى جهد يدوي وعدم المرونة في تغيير البيانات.
InferSchema
له قيود، مثل الاستدلال غير الصحيح لنوع البيانات ومشكلات في التعامل مع القيم الخالية. تعريف المخطط له أيضًا قيود، مثل الجهد اليدوي والأخطاء المحتملة.
يعتمد الاختيار بين استنتاج المخطط وتعريفه على احتياجات المشروع. يعد InferSchema رائعًا للاستكشاف السريع لمجموعات البيانات الصغيرة، في حين أن تعريف المخطط أفضل لمجموعات البيانات الأكبر حجمًا والمعقدة التي تتطلب الدقة والاتساق. ضع في اعتبارك المقايضات والقيود الخاصة بكل طريقة لاختيار ما يناسب مشروعك بشكل أفضل.
وفي الختام
في هذا المنشور، استكشفنا طريقتين لإدارة بيانات XML باستخدام AWS Glue، تم تصميم كل منهما لتلبية الاحتياجات والتحديات المحددة التي قد تواجهها.
توفر التقنية 1 مسارًا سهل الاستخدام لأولئك الذين يفضلون الواجهة الرسومية. يمكنك استخدام زاحف AWS Glue والمحرر المرئي لتحديد بنية الجدول لملفات XML الخاصة بك بسهولة. يعمل هذا النهج على تبسيط عملية إدارة البيانات وهو جذاب بشكل خاص لأولئك الذين يبحثون عن طريقة مباشرة للتعامل مع بياناتهم.
ومع ذلك، فإننا ندرك أن الزاحف له حدوده، خاصة عند التعامل مع ملفات XML التي تحتوي على صفوف أكبر من 1 ميغابايت. هذا هو المكان الذي تأتي فيه التقنية 2 للإنقاذ. من خلال تسخير AWS Glue DynamicFrames
باستخدام كل من المخططات المستنتجة والثابتة، واستخدام دفتر ملاحظات AWS Glue، يمكنك التعامل بكفاءة مع ملفات XML من أي حجم. توفر هذه الطريقة حلاً قويًا يضمن المعالجة السلسة حتى لملفات XML التي تحتوي على صفوف تتجاوز قيد 1 ميغابايت.
أثناء تنقلك في عالم إدارة البيانات، فإن وجود هذه التقنيات في مجموعة الأدوات الخاصة بك يمكّنك من اتخاذ قرارات مستنيرة بناءً على المتطلبات المحددة لمشروعك. سواء كنت تفضل بساطة التقنية 1 أو قابلية التوسع في التقنية 2، فإن AWS Glue يوفر المرونة التي تحتاجها للتعامل مع بيانات XML بفعالية.
حول المؤلف
نافنيت شوكلايعمل كمهندس حلول متخصص في AWS مع التركيز على التحليلات. يتمتع بحماس قوي لمساعدة العملاء في اكتشاف رؤى قيمة من بياناتهم. ومن خلال خبرته، يقوم ببناء حلول مبتكرة تمكن الشركات من الوصول إلى خيارات مستنيرة تعتمد على البيانات. والجدير بالذكر أن نافنيت شوكلا هي المؤلفة البارعة للكتاب الذي يحمل عنوان "صراع البيانات على AWS".
باتريك مولر يعمل كمهندس أول لمختبر البيانات في AWS. وتتمثل مسؤوليته الرئيسية في مساعدة العملاء في تحويل أفكارهم إلى منتج بيانات جاهز للإنتاج. في أوقات فراغه، يستمتع باتريك بلعب كرة القدم ومشاهدة الأفلام والسفر.
أموج جايكواد هو أحد كبار مطوري الحلول في Amazon Web Services. إنه يساعد العملاء العالميين على بناء ونشر حلول الذكاء الاصطناعي/التعلم الآلي على AWS. يركز عمله بشكل أساسي على رؤية الكمبيوتر ومعالجة اللغة الطبيعية ومساعدة العملاء على تحسين أعباء عمل الذكاء الاصطناعي/التعلم الآلي الخاصة بهم من أجل الاستدامة. حصل أموغ على درجة الماجستير في علوم الكمبيوتر متخصصًا في التعلم الآلي.
شيلا سونوني هو مهندس معماري مقيم أول في AWS. إنها تساعد عملاء AWS على اتخاذ اختيارات ومقايضات مستنيرة حول تسريع بياناتهم، وتحليلاتهم، وأعباء عمل الذكاء الاصطناعي/تعلم الآلة وعمليات التنفيذ. وفي أوقات فراغها، تستمتع بقضاء الوقت مع عائلتها - عادة في ملاعب التنس.
- محتوى مدعوم من تحسين محركات البحث وتوزيع العلاقات العامة. تضخيم اليوم.
- PlatoData.Network Vertical Generative Ai. تمكين نفسك. الوصول هنا.
- أفلاطونايستريم. ذكاء Web3. تضخيم المعرفة. الوصول هنا.
- أفلاطون كربون، كلينتك ، الطاقة، بيئة، شمسي، إدارة المخلفات. الوصول هنا.
- أفلاطون هيلث. التكنولوجيا الحيوية وذكاء التجارب السريرية. الوصول هنا.
- المصدر https://aws.amazon.com/blogs/big-data/process-and-analyze-highly-nested-and-large-xml-files-using-aws-glue-and-amazon-athena/
- :لديها
- :يكون
- :ليس
- :أين
- $ UP
- 1
- 10
- 100
- 12
- 121
- 13
- 14
- 1994
- 250
- 26
- 53
- 7
- 8
- 9
- a
- من نحن
- الملخص
- تسريع
- الوصول
- إمكانية الوصول
- إنجاز
- دقة
- في
- اكشن
- تضيف
- وأضاف
- إضافي
- العنوان
- بعد
- السن
- AI / ML
- الكل
- السماح
- السماح
- يسمح
- أيضا
- البديل
- أمازون
- أمازون أثينا
- أمازون ويب سيرفيسز
- an
- تحليل
- تحليلات
- تحليل
- تحليل
- و
- آخر
- أي وقت
- أباتشي
- جذاب
- التطبيقات
- التقديم
- نهج
- اقتراب
- هندسة معمارية
- هي
- مجموعة
- AS
- مساعدة
- مساعدة
- At
- المؤلفة
- تلقائيا
- متاح
- AWS
- غراء AWS
- الى الخلف
- على أساس
- الأساسية
- BE
- لان
- قبل
- بدأ
- يجري
- أفضل
- أفضل
- ما بين
- فارغة
- كتاب
- على حد سواء
- نساعدك في بناء
- الأعمال
- لكن
- by
- تسمى
- CAN
- الأقسام
- سبب
- الخلية
- التحديات
- تغيير
- التغييرات
- متغير
- الخيارات
- اختار
- المدينة
- تصنيف
- عميل
- الكود
- عمود
- الأعمدة
- COM
- يأتي
- مشترك
- عادة
- إكمال
- الطلب مكتمل
- مجمع
- الكمبيوتر
- علوم الكمبيوتر
- رؤية الكمبيوتر
- حالة
- إدارة
- بالتزامن
- نظر
- كنسولات
- باستمرار
- القيود
- بناء
- تحتوي على
- الواردة
- يحتوي
- تباين
- مراقبة
- تحول
- تحويلها
- فعاله من حيث التكلفه
- حلا فعالا من حيث التكلفة
- مقاطعة
- المحاكم
- مغطى
- الزاحف
- خلق
- خلق
- خلق
- حاسم
- على
- زبون
- العملاء
- البيانات
- تكامل البيانات
- إدارة البيانات
- تعتمد على البيانات
- قاعدة البيانات
- قواعد البيانات
- تعامل
- القرارات
- الترتيب
- حدد
- تحديد
- الخوض
- يوضح
- يعتمد
- نشر
- تصميم
- مفصلة
- تفاصيل
- المطور
- مختلف
- صعبة
- رقمي
- العصر الرقمي
- مباشرة
- اكتشاف
- خامد
- do
- لا
- فعل
- لا
- DOT
- أثناء
- ديناميكي
- كل
- سهولة
- بسهولة
- سهل
- رئيس التحرير
- تأثير
- على نحو فعال
- كفاءة
- فعال
- بكفاءة
- جهد
- جهد
- كهربائي
- السيارة الكهربائية
- عناصر
- توظيف
- تمكين
- إمباورز
- فارغ
- تمكين
- تمكين
- لقاء
- النهاية
- محركات
- تعزيز
- ضمان
- يضمن
- أدخل
- حماسة
- دخول
- أخطاء
- خاصة
- الأثير (ETH)
- حتى
- أحداث
- كل
- مثال
- تجاوز
- التبادل
- خبرة
- استكشاف
- اكتشف
- استكشاف
- استخراج
- استخلاص
- للعائلات
- الميزات
- المميزات
- الأرقام
- قم بتقديم
- ملفات
- تمويل
- الاسم الأول
- ثابت
- مرونة
- تركز
- ركز
- متابعيك
- في حالة
- شكل
- FRAME
- مجانًا
- تردد
- تبدأ من
- وظيفة
- ربح
- هدف عام
- توليد
- العالمية
- Go
- هدف
- حكومة
- عظيم
- مقبض
- معالجة
- يحدث
- تسخير
- يملك
- وجود
- he
- الرعاية الصحية
- قلب
- مساعدة
- مساعدة
- يساعد
- لها
- رفيع المستوى
- جدا
- له
- كيفية
- كيفية
- لكن
- HTML
- HTTP
- HTTPS
- IAM
- المثالي
- الأفكار
- هوية
- if
- يوضح
- تنفيذ
- تطبيقات
- تحقيق
- استيراد
- تحسن
- تحسن
- in
- بما فيه
- فرد
- الأفراد
- الصناعات
- معلومات
- وأبلغ
- البنية التحتية
- مبتكرة
- في الداخل
- رؤى
- بدلًا من ذلك
- تعليمات
- دمج
- التكامل
- التفاعلية
- يستفد
- السطح البيني
- إلى
- ينطوي
- مسائل
- IT
- انها
- وظيفة
- المشــاريــع
- JPG
- جسون
- مفكرة Jupyter
- احتفظ
- علم
- مختبر
- لغة
- كبير
- أكبر
- قيادة
- تعلم
- تعلم
- مستوى
- مثل
- مما سيحدث
- تحديد
- القيود
- خط
- خطوط
- تحميل
- جار التحميل
- منطق
- أبحث
- آلة
- آلة التعلم
- الرئيسية
- في الأساس
- جعل
- القيام ب
- إدارة
- إدارة
- كتيب
- يدويا
- كثير
- رسم الخرائط
- سادة
- مايو..
- يعني
- القائمة
- البيانات الوصفية
- طريقة
- دقائق
- نموذج
- الأكثر من ذلك
- أكثر فعالية
- أكثر
- خطوة
- أفلام
- متعدد
- الاسم
- عين
- أسماء
- طبيعي
- اللغة الطبيعية
- معالجة اللغات الطبيعية
- التنقل
- قائمة الإختيارات
- ضروري
- حاجة
- إحتياجات
- جديد
- حديثا
- التالي
- لا سيما
- مفكرة
- الآن
- عدد
- الأجسام
- of
- عروض
- on
- ONE
- فقط
- عمليات
- الأمثل
- الأمثل
- المثلى
- مزيد من الخيارات
- or
- طلب
- المنظمات
- المنشأ
- أخرى
- لنا
- خارج
- الناتج
- على مدى
- تغلب
- الخاصة
- صفحة
- خبز
- المعلمة
- المعلمات
- جزء
- خاصة
- pass
- مسار
- باتريك
- نفذ
- أداء
- أذونات
- اختيار
- أفلاطون
- الذكاء افلاطون البيانات
- أفلاطون داتا
- لعب
- سياسة
- سكان
- تملك
- منشور
- محتمل
- حاجة
- تفضل
- الشروط
- أرسال
- سابق
- مشاكل
- عملية المعالجة
- معالجة
- معالجة
- المنتج
- تنفيذ المشاريع
- مشروع ناجح
- HAS
- تزود
- ويوفر
- نشر
- غرض
- بايثون
- الاستفسارات
- سريع
- بدلا
- عرض
- بسهولة
- نادي القراءة
- الأسباب
- تلقى
- الاعتراف
- الرجوع
- ذات الصلة
- المتطلبات الأساسية
- إنقاذ
- مورد
- استجابة
- مسؤولية
- REST
- بتقييد
- تقييد
- النتائج
- قوي
- النوع
- جذر
- صف
- يجري
- نفسه
- حفظ
- سكالا
- التدرجية
- تحجيم
- علوم
- سيناريو
- سلس
- بسلاسة
- الثاني
- القسم
- انظر تعريف
- كبير
- خدماتنا
- الجلسة
- طقم
- ضبط
- عدة
- هي
- قذيفة
- ينبغي
- إظهار
- أظهرت
- يظهر
- مماثل
- الاشارات
- بساطة
- تبسيط
- عزباء
- المقاس
- صغير
- So
- كرة القدم
- حل
- الحلول
- بعض
- مصدر
- مصادر
- شرارة
- متخصص
- متخصصة
- محدد
- على وجه التحديد
- سرعة
- الإنفاق
- SQL
- معيار
- يبدأ
- الولايه او المحافظه
- ملخص الحساب
- تفيد
- خطوة
- خطوات
- تخزين
- تخزين
- صريح
- تبسيط
- خيط
- قوي
- بناء
- الهياكل
- ستوديو
- تحقيق النجاح
- هذه
- مناسب
- الدعم
- بالتأكيد
- الاستدامة
- أنظمة
- جدول
- TAG
- تناسب
- أخذ
- يأخذ
- المهام
- تقنيات
- كرة المضرب
- من
- أن
- •
- المعلومات
- العالم
- من مشاركة
- منهم
- then
- هناك.
- تشبه
- هم
- هؤلاء
- عبر
- الوقت
- عنوان
- بعنوان
- إلى
- اليوم
- أدوات
- تيشرت
- موضوع
- تحول
- تحول
- السفر
- تحول
- البرنامج التعليمي
- اثنان
- نوع
- أنواع
- نهائي
- مع
- تحديث
- تحديث
- تم التحميل
- us
- قابليتها للاستخدام
- تستخدم
- مستعمل
- مستخدم
- واجهة المستخدم
- سهل الاستعمال
- يستخدم
- استخدام
- عادة
- استخدام
- القيمة
- قيمنا
- القيم
- المثالية
- الإصدار
- بواسطة
- المزيد
- الرؤى
- رؤيتنا
- مراقبة
- طريق..
- we
- الويب
- خدمات ويب
- ابحث عن
- متى
- في حين
- سواء
- التي
- من الذى
- لماذا
- سوف
- مع
- في غضون
- بدون
- للعمل
- سير العمل
- سير العمل
- أعمال
- العالم
- اكتب
- XML
- لصحتك!
- حل متجر العقارات الشامل الخاص بك في جورجيا
- زفيرنت