شعار زيفيرنت

قم ببناء بنية بيانات حديثة متعددة المناطق وذات مرونة عالية باستخدام AWS Glue و AWS Lake Formation

التاريخ:

تكوين بحيرة AWS يساعد في إدارة بيانات المؤسسة وهو مهم لـ شبكة البيانات بنيان. إنه يعمل مع غراء AWS كتالوج البيانات لفرض الوصول إلى البيانات والحوكمة. توفر كلتا الخدمتين تخزينًا موثوقًا للبيانات ، ولكن بعض العملاء يرغبون في نسخ التخزين والكتالوج والأذونات لأغراض الامتثال.

يشرح هذا المنشور كيفية إنشاء تصميم يتم نسخه احتياطيًا تلقائيًا خدمة تخزين أمازون البسيطة (Amazon S3) و AWS Glue Data Catalog وأذونات Lake Formation في مناطق مختلفة وتوفر خيارات النسخ الاحتياطي والاستعادة للتعافي من الكوارث. يمكن تخصيص هذه الآليات لعمليات مؤسستك. فائدة الاستنساخ والتجريب متاحة في المصادر المفتوحة GitHub جيثب: مستودع.

يقوم هذا الحل فقط بتكرار البيانات الوصفية في كتالوج البيانات ، وليس البيانات الأساسية الفعلية. للحصول على بحيرة بيانات متكررة باستخدام Lake Formation و AWS Glue في منطقة إضافية ، نوصي بتكرار التخزين المستند إلى Amazon S3 باستخدام تكرار S3، مزامنة S3 ، aws-s3- نسخ-مزامنة-استخدام دفعة or S3 Batch النسخ المتماثل عملية. يضمن ذلك استمرار عمل بحيرة البيانات في منطقة أخرى إذا كان لدى تكوين البحيرة مشكلة توفر. يجب أيضًا نسخ إعداد كتالوج البيانات (الجداول وقواعد البيانات وارتباطات الموارد) وإعداد تكوين البحيرة (الأذونات والإعدادات) في منطقة النسخ الاحتياطي.

حل نظرة عامة

يوضح هذا المنشور كيفية إنشاء نسخة احتياطية من أذونات Lake Formation وكتالوج بيانات AWS Glue من منطقة إلى أخرى في نفس الحساب. الحل لا يخلق أو يعدل إدارة الهوية والوصول AWS (IAM) ، المتوفرة في جميع المناطق. هناك ثلاث خطوات لإنشاء بحيرة بيانات متعددة المناطق:

  1. ترحيل أذونات بيانات Lake Formation.
  2. قم بترحيل قواعد بيانات وجداول AWS Glue.
  3. ترحيل بيانات Amazon S3.

في الأقسام التالية ، نلقي نظرة على كل خطوة من خطوات الترحيل بمزيد من التفصيل.

أذونات تشكيل البحيرة

في Lake Formation ، هناك نوعان من الأذونات: الوصول إلى بيانات التعريف والوصول إلى البيانات.

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

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

عند ترحيل البيانات من منطقة إلى أخرى ، يتم نسخ أذونات الوصول إلى البيانات الوصفية فقط. هذا يعني أنه إذا تم نقل البيانات من حاوية في المنطقة المصدر إلى حاوية أخرى في المنطقة المستهدفة ، فيجب إعادة تطبيق أذونات الوصول إلى البيانات في المنطقة المستهدفة.

كتالوج بيانات AWS Glue

يعد AWS Glue Data Catalog مستودعًا مركزيًا للبيانات الوصفية حول البيانات المخزنة في بحيرة البيانات الخاصة بك. يحتوي على مراجع للبيانات المستخدمة كمصادر وأهداف في وظائف AWS Glue ETL (استخراج وتحويل وتحميل) ، ويخزن معلومات حول الموقع والمخطط ومقاييس وقت التشغيل لبياناتك. ينظم كتالوج البيانات هذه المعلومات في شكل جداول بيانات التعريف وقواعد البيانات. الجدول في كتالوج البيانات هو تعريف بيانات التعريف الذي يمثل البيانات في بحيرة البيانات ، ويتم استخدام قواعد البيانات لتنظيم جداول البيانات الوصفية.

يمكن تطبيق أذونات Lake Formation فقط على الكائنات الموجودة بالفعل في كتالوج البيانات في المنطقة الهدف. لذلك ، من أجل تطبيق هذه الأذونات ، يجب أن تكون قواعد البيانات والجداول الأساسية في "كتالوج البيانات" موجودة بالفعل في المنطقة الهدف. لتلبية هذا المطلب ، تقوم هذه الأداة بترحيل كل من قواعد بيانات وجداول AWS Glue من منطقة المصدر إلى المنطقة المستهدفة.

بيانات Amazon S3

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

لا تتضمن هذه الأداة ترحيل البيانات من منطقة المصدر إلى المنطقة المستهدفة. يجب إجراء ترحيل البيانات بشكل منفصل باستخدام طرق مثل S3 تكرار، مزامنة S3 ، aws-s3- نسخ-مزامنة-استخدام دفعة or S3 Batch النسخ المتماثل.

تحتوي هذه الأداة المساعدة على وضعين لنسخ بيانات تعريف تكوين البحيرة وكتالوج البيانات: عند الطلب وفي الوقت الفعلي. الوضع عند الطلب هو نسخ متماثل للدُفعات يأخذ لقطة من البيانات الوصفية في نقطة زمنية محددة ويستخدمها لمزامنة البيانات الوصفية. ينسخ وضع الوقت الحقيقي التغييرات التي تم إجراؤها على أذونات Lake Formation أو Data Catalog في الوقت الفعلي تقريبًا.

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

يتوفر رمز الوضعين عند الطلب والوقت الفعلي في ملف GitHub جيثب: مخزن. دعونا نلقي نظرة على كل وضع بمزيد من التفصيل.

وضع عند الطلب

يُستخدم الوضع عند الطلب لنسخ أذونات Lake Formation وكتالوج البيانات في نقطة زمنية محددة. يتم نشر الكود باستخدام ملف مجموعة تطوير سحابة AWS (AWS CDK). يوضح الرسم البياني التالي بنية الحل لهذا الوضع.

تنشر AWS CDK مهمة AWS Glue لإجراء النسخ المتماثل. تسترد المهمة معلومات التكوين من ملف مخزن في حاوية S3. يتضمن هذا الملف تفاصيل مثل المصدر والمنطقة المستهدفة ، وقائمة اختيارية بقواعد البيانات المراد نسخها ، وخيارات لنقل البيانات إلى حاوية S3 مختلفة. يتوفر المزيد من المعلومات حول هذه الخيارات وإرشادات النشر في GitHub جيثب: مستودع.

تسترد مهمة AWS Glue أذونات Lake Formation وبيانات تعريف كائن Data Catalog من المنطقة المصدر وتخزنها في ملف JSON في حاوية S3. ثم تستخدم الوظيفة نفسها هذا الملف لإنشاء أذونات "تكوين البحيرة" وقواعد بيانات وجداول "كتالوج البيانات" في المنطقة الهدف.

يمكن تشغيل هذه الأداة عند الطلب من خلال تشغيل وظيفة AWS Glue. يقوم بنسخ أذونات Lake Formation وبيانات تعريف كائن كتالوج البيانات من المنطقة المصدر إلى المنطقة الهدف. إذا قمت بتشغيل الأداة مرة أخرى بعد إجراء تغييرات على المنطقة المستهدفة ، فسيتم استبدال التغييرات بأذونات Lake Formation الأخيرة وكتالوج البيانات من المنطقة المصدر.

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

يتم نسخ أذونات Lake Formation من المصدر إلى المنطقة الهدف ، لذلك يتم نسخ أي أذونات جديدة في المنطقة الهدف. إذا تمت إزالة إذن من المنطقة المصدر ، فلن تتم إزالته من المنطقة المستهدفة.

وضع الوقت الحقيقي

ينسخ وضع الوقت الحقيقي أذونات Lake Formation وكتالوج البيانات بفاصل زمني منتظم. الفاصل الزمني الافتراضي هو دقيقة واحدة ، ولكن يمكن تعديله أثناء النشر. يتم نشر الكود باستخدام AWS CDK. يوضح الرسم البياني التالي بنية الحل لهذا الوضع.

تنشر AWS CDK اثنين AWS لامدا وظائف ويخلق الأمازون DynamoDB طاولة للتخزين أوس كلاود تريل الأحداث و أمازون إيفينت بريدج القاعدة لتشغيل النسخ المتماثل في فاصل زمني منتظم. تسترد وظائف Lambda معلومات التكوين من ملف مخزن في حاوية S3. يتضمن هذا الملف تفاصيل مثل المصدر والمنطقة المستهدفة ، وخيارات لنقل البيانات إلى حاوية S3 مختلفة ، وفترة مراجعة CloudTrail بالساعات. يتوفر المزيد من المعلومات حول هذه الخيارات وإرشادات النشر في GitHub جيثب: مستودع.

تقوم قاعدة EventBridge بتشغيل وظيفة Lambda في فترة زمنية محددة. تقوم هذه المهمة باسترداد معلومات التكوين والاستعلام عن أحداث CloudTrail المتعلقة بكتالوج البيانات وتكوين البحيرة التي حدثت في الساعة الماضية (المدة قابلة للتكوين). يتم بعد ذلك تخزين جميع الأحداث ذات الصلة في جدول DynamoDB.

بعد إدخال معلومات الحدث في جدول DynamoDB ، يتم تشغيل وظيفة Lambda أخرى. تقوم هذه الوظيفة باسترداد معلومات التكوين والاستعلام عن جدول DynamoDB. ثم يتم تطبيق جميع التغييرات على المنطقة المستهدفة. إذا تم تشغيل الأداة مرة أخرى بعد إجراء تغييرات على المنطقة المستهدفة ، فسيتم استبدال التغييرات بأذونات Lake Formation الأخيرة وكتالوج البيانات من المنطقة المصدر. بخلاف الوضع عند الطلب ، تقوم هذه الأداة أيضًا بإزالة أي أذونات تكوين بحيرة تمت إزالتها من المنطقة المصدر من المنطقة المستهدفة.

القيود

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

وفي الختام

في هذا المنشور ، أوضحنا كيف يمكنك استخدام هذه الأداة لترحيل كتالوج بيانات AWS Glue وأذونات Lake Formation من منطقة إلى أخرى. يمكنه أيضًا الاحتفاظ بالمصدر والمناطق المستهدفة متزامنة إذا تم إجراء أية تغييرات على كتالوج البيانات أو أذونات Lake Formation. يعد تنفيذه عبر المناطق (مناطق متعددة) خيارًا جيدًا إذا كنت تبحث عن أقصى درجات الفصل والاستقلالية الكاملة لأحمال عمل البيانات المتنوعة عالميًا. ضع في اعتبارك أيضًا المفاضلات. يمكن أن يكون تنفيذ وتشغيل هذه الإستراتيجية ، خاصة باستخدام مناطق متعددة ، أكثر تعقيدًا وتكلفة من استراتيجيات DR الأخرى.

للبدء ، تحقق من جيثب ريبو. لمزيد من الموارد ، راجع ما يلي:


عن المؤلفين

فيفيك شريفاستافا هو مهندس بيانات رئيسي ، Data Lake في AWS Professional Services. إنه متحمس لـ Bigdata ويحمل 13 شهادة AWS. إنه متحمس لمساعدة العملاء على بناء حلول تحليل بيانات عالية الأداء وقابلة للتطوير في السحابة. في أوقات فراغه ، يحب القراءة ويجد مناطق لأتمتة المنزل

رضا حفيظ هو مهندس بيانات أقدم ضمن ممارسات التسليم المشتركة لخدمات AWS الاحترافية. لديه أكثر من 12 عامًا من الخبرة المهنية في بناء مستودعات بيانات المؤسسة وتحسينها وهو متحمس لتمكين العملاء من إدراك قوة بياناتهم. وهو متخصص في ترحيل مستودعات بيانات المؤسسة إلى AWS Modern Data Architecture.

نيفاس شنكار  هو مدير المنتج الرئيسي لـ AWS Lake Formation. إنه يعمل مع العملاء في جميع أنحاء العالم لترجمة الأعمال والمتطلبات الفنية إلى منتجات تمكن العملاء من تحسين كيفية إدارتهم وتأمين والوصول إلى بحيرة البيانات. يقود أيضًا العديد من مبادرات البيانات والتحليلات داخل AWS بما في ذلك دعم Data Mesh.

بقعة_صورة

أحدث المعلومات الاستخباراتية

بقعة_صورة