قم بتنفيذ RStudio على بيئة AWS الخاصة بك والوصول إلى بحيرة البيانات الخاصة بك باستخدام أذونات AWS Lake Formation PlatoBlockchain Data Intelligence. البحث العمودي. عاي.

قم بتنفيذ RStudio على بيئة AWS الخاصة بك والوصول إلى بحيرة البيانات الخاصة بك باستخدام أذونات AWS Lake Formation

R هي لغة برمجة تحليلية شائعة يستخدمها علماء البيانات والمحللون لإجراء معالجة البيانات وإجراء التحليلات الإحصائية وإنشاء تصورات البيانات وبناء نماذج التعلم الآلي (ML). توفر RStudio ، بيئة التطوير المتكاملة لـ R ، أدوات مفتوحة المصدر وبرامج احترافية جاهزة للمؤسسات للفرق لتطوير عملهم ومشاركته عبر مؤسستهم.

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

يقدم هذا المنشور طريقتين لنشر RStudio وتشغيله بسهولة على AWS للوصول إلى البيانات المخزنة في بحيرة البيانات:

  • تدار بشكل كامل الأمازون SageMaker
  • الاستضافة الذاتية على الأمازون الحوسبة المرنة السحابية (أمازون EC2)
    • يمكنك اختيار نشر إصدار مفتوح المصدر من RStudio باستخدام نهج مستضاف EC2 الذي سنصفه أيضًا في هذا المنشور. يتطلب خيار الاستضافة الذاتية من المسؤول إنشاء مثيل EC2 وتثبيت RStudio يدويًا أو باستخدام ملف تكوين سحابة AWS هناك أيضًا مرونة أقل في تنفيذ عناصر التحكم في وصول المستخدم في هذا الخيار نظرًا لأن جميع المستخدمين لديهم نفس مستوى الوصول في هذا النوع من التنفيذ.

RStudio على Amazon SageMaker

يمكنك تشغيل RStudio Workbench بنقرة بسيطة من SageMaker. مع SageMaker ، لا يتعين على عملاء SageMaker تحمل النفقات التشغيلية لبناء RStudio وتثبيته وتأمينه وتوسيع نطاقه وصيانته ، فلن يضطروا إلى الدفع مقابل خادم RStudio الذي يعمل باستمرار (إذا كانوا يستخدمون t3.medium) وهم يدفعون فقط لحساب RSession عند استخدامه. سيتمتع مستخدمو RStudio بالمرونة لتوسيع نطاق الحوسبة ديناميكيًا عن طريق تبديل المثيلات أثناء التنقل. يتطلب تشغيل RStudio على SageMaker أن يقوم المسؤول بتأسيس مجال SageMaker وملفات تعريف المستخدمين المرتبطة. تحتاج أيضًا إلى ترخيص RStudio مناسب

داخل SageMaker ، يمكنك منح الوصول إلى مسؤول RStudio ومستوى مستخدم RStudio ، بأذونات مختلفة. يمكن فقط لملفات تعريف المستخدمين الممنوحة لأحد هذين الدورين الوصول إلى RStudio في SageMaker. لمزيد من المعلومات حول مهام المسؤول لإعداد RStudio على SageMaker ، راجع ابدأ مع RStudio على Amazon SageMaker. يُظهر هذا المنشور أيضًا عملية تحديد مثيلات EC2 لكل جلسة ، وكيف يمكن للمسؤول تقييد خيارات مثيل EC2 لمستخدمي RStudio.

الشكل 1: مخطط معماري يوضح تفاعل خدمات AWS المختلفة

استخدم وصول الأمان على مستوى الصفوف ومستوى العمود في Lake Formation

بالإضافة إلى السماح لفريقك بتشغيل جلسات RStudio على SageMaker ، يمكنك أيضًا تأمين بحيرة البيانات باستخدام عناصر التحكم في الوصول على مستوى الصفوف والأعمدة من Lake Formation. لمزيد من المعلومات ، يرجى الرجوع إلى بحيرات البيانات الفعالة باستخدام AWS Lake Formation ، الجزء 4: تنفيذ الأمان على مستوى الخلية وعلى مستوى الصف.

من خلال عناصر التحكم في أمان Lake Formation ، يمكنك التأكد من أن كل شخص لديه حق الوصول الصحيح إلى البيانات الموجودة في بحيرة البيانات. ضع في اعتبارك ملفي تعريف المستخدمين التاليين في مجال SageMaker ، ولكل منهما دور تنفيذ مختلف:

ملف تعريفي للمستخدم دور التنفيذ
rstudiouser-fullaccess AmazonSageMaker-ExecutionRole-FullAccess
rstudiouser-limitedaccess AmazonSageMaker-ExecutionRole-LimitedAccess

تظهر لقطة الشاشة التالية rstudiouser-limitedaccess تفاصيل الملف الشخصي.

الشكل 2: تفاصيل الملف الشخصي لدور الوصول المحدود

الشكل 2: تفاصيل الملف الشخصي لدور الوصول المحدود

تظهر لقطة الشاشة التالية rstudiouser-fullaccess تفاصيل الملف الشخصي.

الشكل 3: تفاصيل الملف الشخصي لدور الوصول الكامل

الشكل 3: تفاصيل الملف الشخصي لدور الوصول الكامل

مجموعة البيانات المستخدمة لهذا المنشور هي مجموعة بيانات COVID-19 العامة. تُظهر لقطة الشاشة التالية مثالاً على البيانات:

الشكل 4: مجموعة بيانات COVID-19 العامة

الشكل 4: مجموعة بيانات COVID-19 العامة

بعد إنشاء ملف تعريف المستخدم وتعيينه للدور المناسب ، يمكنك الوصول إلى Lake Formation لتتبع ارتباطات البيانات باستخدام غراء AWS، وإنشاء البيانات الوصفية والجدول ، ومنح حق الوصول إلى بيانات الجدول. بالنسبة إلى AmazonSageMaker-ExecutionRole-FullAccess دور ، فأنت تمنح حق الوصول إلى جميع الأعمدة في الجدول ول AmazonSageMaker-ExecutionRole-LimitedAccess، أنت تمنح حق الوصول باستخدام عامل تصفية البيانات USA_Filter. نستخدم هذا المرشح لتوفير أذونات العمود على مستوى الصفوف ومستوى الخلية (انظر ملف مورد العمود في لقطة الشاشة التالية).

الشكل 5: أذونات AWS Lake Formation لـ AmazonSageMaker-ExecutionRole - أدوار وصول كاملة / محدودة

الشكل 5: أذونات AWS Lake Formation لـ AmazonSageMaker-ExecutionRole - أدوار وصول كاملة / محدودة

كما هو موضح في لقطة الشاشة التالية ، الدور الثاني له وصول محدود. يمكن للمستخدمين المرتبطين بهذا الدور فقط الوصول إلى continent, date, total_cases, total_deaths, new_cases, new_deathsو iso_codecolumns.

الشكل 6: أذونات على مستوى العمود في AWS Lake Formation لدور وصول AmazonSageMaker-ExecutionRole-Limited

الشكل 6: أذونات على مستوى العمود في AWS Lake Formation لدور وصول AmazonSageMaker-ExecutionRole-Limited

من خلال أذونات الدور المرفقة بكل ملف تعريف مستخدم ، يمكننا أن نرى كيف يفرض Lake Formation الأذونات المناسبة على مستوى الصف وعلى مستوى العمود. يمكنك فتح RStudio Workbench من ملف إطلاق التطبيق القائمة المنسدلة في قائمة المستخدمين التي تم إنشاؤها ، واختر RStudio.

في لقطة الشاشة التالية ، نطلق التطبيق باسم rstudiouser-limitedaccess user.

الشكل 7: إطلاق جلسة RStudio لمستخدم الوصول المحدود من Amazon SageMaker Console

الشكل 7: إطلاق جلسة RStudio لمستخدم الوصول المحدود من Amazon SageMaker Console

يمكنك مشاهدة الصفحة الرئيسية RStudio Workbench وقائمة بالجلسات والمشروعات والمحتوى المنشور.

الشكل 8: جلسة R Studio Workbench لمستخدم الوصول المحدود

الشكل 8: جلسة R Studio Workbench لمستخدم الوصول المحدود

اختر اسم جلسة لبدء الجلسة في SageMaker. قم بتثبيت Paws (انظر الإرشادات المذكورة سابقًا في هذا المنشور) حتى تتمكن من الوصول إلى خدمات AWS المناسبة. يمكنك الآن تشغيل استعلام لسحب جميع الحقول من مجموعة البيانات عبر أمازون أثيناباستخدام الأمر “SELECT * FROM "databasename.tablename"، وتخزين ناتج الاستعلام في ملف خدمة تخزين أمازون البسيطة دلو (أمازون S3).

الشكل 9: تنفيذ Athena Query في جلسة R Studio

الشكل 9: تنفيذ Athena Query في جلسة R Studio

تُظهر لقطة الشاشة التالية ملفات الإخراج في حاوية S3.

الشكل 10: نتائج تنفيذ استعلام أثينا في حاوية Amazon S3

الشكل 10: نتائج تنفيذ استعلام أثينا في حاوية Amazon S3

تُظهر لقطة الشاشة التالية البيانات الموجودة في ملفات الإخراج هذه باستخدام اختر Amazon S3.

الشكل 11: مراجعة بيانات المخرجات باستخدام Amazon S3 Select

الشكل 11: مراجعة بيانات المخرجات باستخدام Amazon S3 Select

فقط بيانات الولايات المتحدة الأمريكية وأعمدة القارة ، والتاريخ ، total_cases, total_deaths, new_cases, new_deathsو iso_code تظهر في نتيجة rstudiouser-limitedaccess المستخدم.

دعنا نكرر نفس الخطوات لملف rstudiouser-fullaccess المستخدم.

الشكل 12: بدء جلسة RStudio لمستخدم الوصول الكامل من Amazon SageMaker Console

الشكل 12: بدء جلسة RStudio لمستخدم الوصول الكامل من Amazon SageMaker Console

يمكنك مشاهدة الصفحة الرئيسية RStudio Workbench وقائمة بالجلسات والمشروعات والمحتوى المنشور.

الشكل 13: جلسة R Studio Workbench لمستخدم الوصول الكامل

الشكل 13: جلسة R Studio Workbench لمستخدم الوصول الكامل

لنقم بتشغيل نفس الاستعلام “SELECT * FROM "databasename.tablename" باستخدام أثينا.

الشكل 14: تنفيذ Athena Query في جلسة R Studio

الشكل 14: تنفيذ Athena Query في جلسة R Studio

تُظهر لقطة الشاشة التالية ملفات الإخراج في حاوية S3.

الشكل 15: نتائج تنفيذ استعلام أثينا في حاوية Amazon S3

الشكل 15: نتائج تنفيذ استعلام أثينا في حاوية Amazon S3

تُظهر لقطة الشاشة التالية البيانات الموجودة في ملفات الإخراج هذه باستخدام اختر Amazon S3.

الشكل 16: مراجعة بيانات المخرجات باستخدام Amazon S3 Select

الشكل 16: مراجعة بيانات المخرجات باستخدام Amazon S3 Select

كما هو موضح في هذا المثال ، فإن ملف rstudiouser-fullaccess يمكن للمستخدم الوصول إلى جميع الأعمدة والصفوف في مجموعة البيانات.

الاستضافة الذاتية على Amazon EC2

إذا كنت ترغب في بدء تجربة إصدار RStudio مفتوح المصدر على AWS ، فيمكنك تثبيت Rstudio على مثيل EC2. يوفر قالب CloudFormation المتوفر في هذا المنشور مثيل EC2 ويقوم بتثبيت RStudio باستخدام البرنامج النصي لبيانات المستخدم. يمكنك تشغيل القالب عدة مرات لتوفير مثيلات RStudio متعددة حسب الحاجة ، ويمكنك استخدامه في أي منطقة AWS. بعد نشر نموذج CloudFormation ، فإنه يوفر لك عنوان URL للوصول إلى RStudio من مستعرض ويب. يمكّنك Amazon EC2 من الارتقاء أو التصغير للتعامل مع التغييرات في حجم البيانات والقدرة الحاسوبية اللازمة لتشغيل تحليلاتك.

أنشئ زوجًا من المفاتيح والقيمة للوصول الآمن

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

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

قم بتشغيل قالب CloudFormation قم بتسجيل الدخول إلى وحدة تحكم CloudFormation في ملف us-east-1 المنطقة واختر Launch Stack.

زر إطلاق المكدس

يجب عليك إدخال العديد من المعلمات في قالب CloudFormation:

  • InitialUser و InitialPassword - اسم المستخدم وكلمة المرور اللذين تستخدمهما لتسجيل الدخول إلى جلسة RStudio. القيم الافتراضية هي rstudio و Rstudio@123، على التوالي.
  • نوع الطلب - نوع مثيل EC2 الذي سيتم نشر خادم RStudio عليه. يقبل القالب حاليًا جميع الطبعات في عائلات مثيلات t2 و m4 و c4 و r4 و g2 و p2 و g3 ، ويمكنه دمج عائلات مثيلات أخرى بسهولة. القيمة الافتراضية هي t2.micro.
  • زوج المفتاح - زوج المفاتيح الذي تستخدمه لتسجيل الدخول إلى مثيل EC2.
  • VpcId و SubnetId - و سحابة أمازون الافتراضية الخاصة (Amazon VPC) والشبكة الفرعية لبدء تشغيل المثيل.

بعد إدخال هذه المعلمات ، انشر قالب CloudFormation. عند اكتمالها ، تتوفر الموارد التالية:

  • مثيل EC2 مثبت عليه RStudio.
  • دور IAM مع الأذونات اللازمة للاتصال بخدمات AWS الأخرى.
  • مجموعة أمان مع قواعد لفتح المنفذ 8787 لخادم RStudio.

سجّل الدخول إلى RStudio

أنت الآن جاهز لاستخدام RStudio! اذهب إلى النواتج علامة التبويب لـ CloudFormation stack وانسخ قيمة عنوان URL لـ RStudio (في التنسيق http://ec2-XX-XX-XXX-XX.compute-1.amazonaws.com:8787/). أدخل عنوان URL هذا في متصفح الويب. هذا يفتح جلسة RStudio الخاصة بك ، والتي يمكنك تسجيل الدخول إليها باستخدام نفس اسم المستخدم وكلمة المرور اللذين قدمتهما أثناء تشغيل قالب CloudFormation.

الوصول إلى خدمات AWS من RStudio

بعد الوصول إلى جلسة RStudio ، يجب عليك تثبيت حزمة R لـ AWS (Paws). يتيح لك ذلك الاتصال بالعديد من خدمات AWS ، بما في ذلك الخدمات والموارد الموجودة في بحيرة البيانات الخاصة بك. لتثبيت Paws ، أدخل وتشغيل رمز R التالي:

install.packages("paws")

لاستخدام خدمة AWS ، أنشئ عميلًا وقم بالوصول إلى عمليات الخدمة من ذلك العميل. عند الوصول إلى AWS APIs ، يجب عليك تقديم بيانات الاعتماد والمنطقة الخاصة بك. تبحث Paws عن بيانات الاعتماد والمنطقة باستخدام سلسلة مصادقة AWS:

  • تم توفير مفتاح الوصول أو المفتاح السري أو الرمز المميز للجلسة أو الملف الشخصي أو المنطقة المقدمة صراحةً
  • متغيرات البيئة ص
  • متغيرات بيئة نظام التشغيل
  • تقوم AWS بمشاركة بيانات الاعتماد وملفات التكوين بتنسيق .aws/credentials و .aws/config
  • دور IAM للحاويات
  • دور IAM المثيل

نظرًا لأنك تعمل على مثيل EC2 مع دور IAM مرفق ، تستخدم Paws تلقائيًا بيانات اعتماد دور IAM لمصادقة طلبات AWS API.

# To interact with an Amazon S3 service, first create an S3 client then list the objects within your bucket by invoking: rstudio-XXXXXXXXXX
s3 <- paws::s3(config = list(region = 'us-east-1'))s3$list_objects(Bucket = "rstudio-XXXXXXXXXX")
# Let’s see how we can interactively query data from your data lake using Amazon Athena.
athena <- paws::athena(config = list(region = 'us-east-1'))
athena$start_query_execution(QueryString = "SELECT * FROM "databasename.tablename" limit 10;",QueryExecutionContext = list(Database = "databasename", Catalog = "catalogname"),ResultConfiguration = list(OutputLocation = "S3 Bucket",EncryptionConfiguration = list(EncryptionOption = "SSE_S3")), WorkGroup = "workgroup name")
$QueryExecutionId[1] 
"17ccec8a-d196-4b4c-b31c-314fab8939f3"

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

وفي الختام

لقد تعلمت كيفية نشر بيئة RStudio الخاصة بك في AWS. أظهرنا مزايا استخدام RStudio على Amazon SageMaker وكيف يمكنك البدء. لقد تعلمت أيضًا كيفية البدء بسرعة في تجربة الإصدار مفتوح المصدر من RStudio باستخدام تثبيت مستضاف ذاتيًا باستخدام Amazon EC2. لقد أوضحنا أيضًا كيفية دمج RStudio في بنيات بحيرة البيانات الخاصة بك وتنفيذ التحكم الدقيق في الوصول على جدول بحيرة البيانات باستخدام ميزة الأمان على مستوى الصف وعلى مستوى الخلية في Lake Formation.

في مقالتنا التالية ، سنشرح كيفية وضع نصوص R في حاويات وتشغيلها باستخدام AWS لامدا.


عن المؤلفين

قم بتنفيذ RStudio على بيئة AWS الخاصة بك والوصول إلى بحيرة البيانات الخاصة بك باستخدام أذونات AWS Lake Formation PlatoBlockchain Data Intelligence. البحث العمودي. عاي.فينكاتا كامبانا هو مهندس حلول أقدم في فريق الخدمات الصحية والإنسانية في AWS ومقره في ساكرامنتو ، كاليفورنيا. في هذا الدور ، يساعد عملاء القطاع العام على تحقيق أهداف مهمتهم من خلال حلول مصممة جيدًا على AWS.

قم بتنفيذ RStudio على بيئة AWS الخاصة بك والوصول إلى بحيرة البيانات الخاصة بك باستخدام أذونات AWS Lake Formation PlatoBlockchain Data Intelligence. البحث العمودي. عاي.دكتور دون هيسي جروف هو قائد تحليلات الصحة العامة لفريق الحكومة الحكومية والمحلية في Amazon Web Services. في هذا الدور ، فهي مسؤولة عن مساعدة وكالات الصحة العامة الحكومية والمحلية على التفكير بشكل خلاق حول كيفية تحقيق تحديات التحليلات والأهداف طويلة المدى. لقد أمضت حياتها المهنية في إيجاد طرق جديدة لاستخدام البيانات الحالية أو الجديدة لدعم مراقبة الصحة العامة والبحث.

الطابع الزمني:

اكثر من التعلم الآلي من AWS