قم ببناء مسارات البث من البداية إلى النهاية باستخدام مخططات خدمة Amazon المُدارة لـ Apache Flink بنقرة واحدة. تعرّف على المزيد.
عام
يساعدك التحليل التفاعلي على استكشاف البيانات في الوقت الفعلي. باستخدام الاستعلامات أو البرامج المخصصة، يمكنك فحص التدفقات من Amazon MSK أو تدفقات بيانات Amazon Kinesis وتصور كيف تبدو البيانات داخل تلك التدفقات. على سبيل المثال، يمكنك عرض كيفية تصرف مقياس الوقت الفعلي الذي يحسب المتوسط عبر نافذة زمنية وإرسال البيانات المجمعة إلى وجهة من اختيارك. يساعد التحليل التفاعلي أيضًا في التطوير التكراري لتطبيقات معالجة التدفق. يتم تحديث الاستعلامات التي تقوم بإنشائها باستمرار عند وصول البيانات الجديدة. باستخدام Studio خدمة Amazon المُدارة لـ Apache Flink، يمكنك نشر هذه الاستعلامات للتشغيل باستمرار مع تمكين التحجيم التلقائي والنسخ الاحتياطية الدائمة للحالة.
بدء الاستخدام
تعمل خدمة Amazon المُدارة لـ Apache Flink على توسيع نطاق تطبيقك بشكل مرن لاستيعاب معدل نقل البيانات لتدفق المصدر وتعقيد الاستعلام الخاص بك لمعظم السيناريوهات. للحصول على معلومات تفصيلية حول حدود الخدمة لتطبيقات Apache Flink، تفضل بزيارة قسم الحدود في دليل مطوري خدمة Amazon المُدارة لـ Apache Flink.
نعم، باستخدام موصلات Apache Flink DataStream، يمكن لخدمة Amazon المُدارة لـ Apache Flink استخدام سجل مخطط AWS Glue، وهي ميزة بلا خادم في AWS Glue. يمكنك دمج تدفقات بيانات Apache Kafka وAmazon MSK وتدفق بيانات Amazon Kinesis، باعتبارها مخزن أو مصدر، مع عبء العمل لخدمة Amazon المُدارة لـ Apache Flink. تفضل بزيارة دليل مطور سجل مخطط AWS Glue للبدء ومعرفة المزيد.
المفاهيم الأساسية
- الإدخال: الإدخال هو مصدر التدفق لتطبيقك. في تكوين الإدخال، يمكنك تعيين مصادر التدفق إلى تدفقات البيانات. تتدفق البيانات من مصادر البيانات الخاصة بك إلى تدفقات البيانات الخاصة بك. يمكنك معالجة البيانات من تدفقات البيانات هذه باستخدام رمز التطبيق الخاص بك، وإرسال البيانات المعالجة إلى تدفقات البيانات أو الوجهات اللاحقة. يمكنك إضافة مدخلات داخل كود التطبيق لتطبيقات Apache Flink ودفاتر Studio ومن خلال واجهة برمجة التطبيقات لخدمة Amazon المُدارة لـ Apache Flink.
- كود التطبيق: كود التطبيق عبارة عن سلسلة من مشغلي Apache Flink التي تعالج المدخلات وتنتج المخرجات. يمكن أن يكون كود التطبيق، في أبسط أشكاله، عبارة عن مشغل Apache Flink واحد يقرأ من تدفق البيانات المرتبط بمصدر البث ويكتب إلى تدفق بيانات آخر مرتبط بالمخرجات. أما دفتر ملاحظات Studio، فيمكن أن يكون هذا استعلامًا بسيطًا لتحديد Flink SQL، مع عرض النتائج في السياق داخل دفتر الملاحظات. يمكنك كتابة كود Apache Flink بلغاته المدعومة لخدمة Amazon المُدارة لـ Apache Flink أو دفاتر ملاحظات Studio.
- الإخراج : يمكنك بعد ذلك تكوين مخرجات التطبيق اختياريًا للاحتفاظ بالبيانات في وجهة خارجية. يمكنك إضافة هذه المخرجات داخل كود التطبيق لخدمة Amazon المُدارة لـ Apache Flink ودفاتر ملاحظات Studio.
س: ما رمز التطبيق المدعوم؟
إدارة التطبيقات
- مراقبة خدمة Amazon المُدارة لـ Apache Flink في دليل مطوري خدمة Amazon المُدارة لـ Apache Flink.
- مراقبة خدمة Amazon المُدارة لـ Apache Flink في لدليل مطوري خدمة Amazon المُدارة لـ Apache Flink.
س: كيف يمكنني إدارة الوصول والتحكم فيه إلى تطبيقات خدمة Amazon المُدارة لـ Apache Flink؟
- منح الأذونات في دليل مطوري خدمة Amazon المُدارة لـ Apache Flink.
- منح الأذونات في دليل مطوري Studio بخدمة Amazon المُدارة لـ Apache Flink.
س: كيف تقوم خدمة Amazon المُدارة لـ Apache Flink بتحجيم نطاق تطبيقي؟
تعمل خدمة Amazon المُدارة لـ Apache Flink على توسيع نطاق تطبيقك بشكل مرن لاستيعاب معدل نقل البيانات لتدفق المصدر وتعقيد الاستعلام الخاص بك لمعظم السيناريوهات. توفر خدمة Amazon المُدارة لـ Apache Flink السعة في شكل وحدات KPU من Amazon. توفر لك وحدة KPU الواحدة وحدة vCPU وذاكرة 4 جيجابايت.
التسعير والفوترة
تُحصل منك رسوم بالساعة بناءً على عدد وحدات Amazon KPUs المستخدمة لتشغيل تطبيق البث الخاص بك. وحدة KPU الواحدة عبارة عن وحدة لسعة معالجة التدفق تتكون من وحدة vCPU واحدة للحوسبة و4 جيجابايت من الذاكرة. تقوم خدمة Amazon المُدارة لـ Apache Flink بتحجيم عدد وحدات KPU اللازمة من خلال تطبيق معالجة التدفق لديك حيث إن متطلبات الذاكرة والحوسبة تختلف استجابةً لتعقيد المعالجة ومخرجات بيانات البث التي تتم معالجتها.
بناء تطبيقات Apache Flink
تأليف كود التطبيق للتطبيقات التي تستخدم Apache Flink في IDE الخاص بك
DataStream <GameEvent> rawEvents = env.addSource(
New KinesisStreamSource(“input_events”));
DataStream <UserPerLevel> gameStream =
rawEvents.map(event - > new UserPerLevel(event.gameMetadata.gameId,
event.gameMetadata.levelId,event.userId));
gameStream.keyBy(event -> event.gameId)
.keyBy(1)
.window(TumblingProcessingTimeWindows.of(Time.minutes(1)))
.apply(...) - > {...};
gameStream.addSink(new KinesisStreamSink("myGameStateStream"));
يمكنك إنشاء عوامل تشغيل مخصصة إذا كانت هذه المشغلات لا تلبي احتياجاتك. ابحث عن المزيد من الأمثلة في قسم المشغلين في دليل مطوري خدمة Amazon المُدارة لـ Apache Flink. يمكنك العثور على قائمة كاملة لمشغلي Apache Flink في وثائق Apache Flink.
- مصادر بيانات البث: Amazon Managed Streaming for Apache Kafka (Amazon MSK) أو وجهات تدفق بيانات Amazon Kinesis أو المخازن: تدفقات بيانات Amazon Kinesis
- Amazon Kinesis Data Firehose وAmazon DynamoDB وخدمة Amazon Elasticsearch وAmazon S3 (من خلال عمليات دمج مخزن الملفات)
س: هل يمكن لتطبيقات خدمة Amazon المُدارة لـ Apache Flink نسخ البيانات عبر التدفقات والموضوعات؟
إنشاء تطبيقات Studio لخدمة Amazon المُدارة لـ Apache Flink Studio في دفتر ملاحظات مُدار
س: كيف يمكنني تطوير تطبيق Studio؟
يمكنك البدء من خدمة Amazon المُدارة لـ Apache Flink Studio أو تدفق بيانات Amazon Kinesis أو وحدات تحكم Amazon MSK في بضع خطوات لإطلاق دفتر ملاحظات بلا خادم للاستعلام الفوري عن تدفقات البيانات وإجراء تحليلات البيانات التفاعلية.
تحليلات البيانات التفاعلية: يمكنك كتابة التعليمات البرمجية في دفتر الملاحظات بلغات SQL أو Python أو Scala للتفاعل مع بيانات البث الخاصة بك، مع انخفاض أوقات الرد على الاستفسارات إلى ثوانٍ. يمكنك استخدام تصورات مدمجة لاستكشاف البيانات وعرض الرؤى في الوقت الفعلي حول بيانات البث الخاصة بك من داخل دفتر ملاحظاتك وتطوير تطبيقات معالجة البث المدعومة من Apache Flink.
بمجرد أن تصبح التعليمات البرمجية جاهزة للتشغيل في شكل تطبيق إنتاج، يمكنك الانتقال بخطوة واحدة إلى تطبيق معالجة البث الذي يعالج بيانات بالجيجابايت في الثانية، بدون خوادم.
تطبيق معالجة البث: بمجرد أن تصبح جاهزًا لترقية تعليماتك البرمجية إلى الإنتاج، يمكنك إنشاء تعليماتك البرمجية عن طريق النقر فوق «النشر كتطبيق لمعالجة البث» في واجهة دفتر الملاحظات أو إصدار أمر واحد في CLI. يعتني Studio بجميع جوانب إدارة البنية التحتية اللازمة لتشغيل تطبيق معالجة البث الخاص بك على نطاق واسع، مع تمكين التحجيم التلقائي والحالة الدائمة، تمامًا كما هو الحال في خدمة Amazon المُدارة لـ Apache Flink.
س: كيف يبدو رمز التطبيق الخاص بي؟
يمكنك كتابة التعليمات البرمجية في دفتر الملاحظات بلغتك المفضلة مثل SQL أو Python أو Scala باستخدام واجهة برمجة تطبيقات جدول Apache Flink. واجهة برمجة تطبيقات الجدول هي واجهة برمجة تطبيقات تجريدية وارتباطية عالية المستوى تدعم مجموعة فائقة من إمكانيات SQL. وهي تقدم عمليات مألوفة، مثل التحديد والتصفية والانضمام والتجميع وما إلى ذلك، إلى جانب المفاهيم الخاصة بالتدفق، مثل إنشاء النوافذ. يمكنك استخدام % لتحديد اللغة التي سيتم استخدامها في مقطع من دفتر الملاحظات ويمكنك التبديل بين اللغات. خدمة المترجم الفوري هي من ملحقات Apache Zeppelin، بحيث يمكنك تحديد لغة أو محرك معالجة بيانات لكل قسم من دفتر الملاحظات. يمكنك أيضًا إنشاء وظائف محددة من قبل المستخدم والإشارة إليها لتحسين وظائف التعليمات البرمجية.
س: ما هي عمليات SQL المدعومة؟
يمكنك تنفيذ عمليات SQL التالية:
- المسح والتصفية (SELECT, WHERE)
- التجميعات (GROUP BY, GROUP BY WINDOW, HAVING)
- المجموعة (UNION, UNIONALL, INTERSECT, IN, EXISTS)
- الترتيب (ORDER BY, LIMIT)
- الصلات (INNER, OUTER، الإطار الزمني - BETWEEN, AND، الانضمام بالجداول الزمنية - الجداول التي تتعقب التغييرات بمرور الوقت)
- Top-N
- إلغاء تكرار البيانات
- التعرف على الأنماط
بعض هذه الاستعلامات، مثل GROUP BY و OUTER JOIN و Top-N، هي نتائج يتم تحديثها لبيانات البث، مما يعني أن النتائج تُحدث باستمرار أثناء معالجة بيانات البث. يتم أيضًا دعم عبارات DDL الأخرى، مثل CREATE و ALTER و DROP. للحصول على قائمة كاملة بالاستعلامات والنماذج، راجع وثائق Apache Flink Queries.
س: كيف يتم دعم Python وScala؟
تدعم واجهة برمجة تطبيقات جدول Apache Flink Python و Scala من خلال تكامل اللغة باستخدام سلاسل Python وتعبيرات Scala. تتشابه العمليات المدعومة إلى حد كبير مع عمليات SQL المدعومة، بما في ذلك التحديد والترتيب والتجميع والانضمام والتصفية ووضع النوافذ. يتم تضمين قائمة كاملة بالعمليات والعينات في دليل المطور الخاص بنا.
س: ما هي إصدارات Apache Flink وApache Zeppelin المدعومة؟
لمعرفة المزيد حول إصدارات Apache Flink المدعومة، تفضل بزيارة صفحة ملاحظات إصدار خدمة Amazon المُدارة لـ Apache Flink. تتضمن هذه الصفحة أيضًا إصدارات حزم تطوير البرامج الخاصة بـ Apache Zeppelin وApache Beam وJava وScala وPython وAWS التي تدعمها خدمة Amazon المُدارة لـ Apache Flink.
س: ما هي عمليات الدمج المدعومة افتراضيًا في تطبيق Studio خدمة Amazon المُدارة لـ Apache Flink؟
- مصادر البيانات: Amazon Managed Streaming for Apache Kafka (Amazon MSK)، تدفقات بيانات Amazon Kinesis، Amazon S3
- الوجهات أو المخازن: Amazon MSK، تدفق بيانات Amazon Kinesis، وAmazon S3
س: هل عمليات الدمج المخصصة مدعومة؟
يمكنك تهيئة إعدادات عمليات تكامل إضافية ببضع خطوات وخطوط أخرى من كود Apache Flink (Python أو Scala أو Java) لتحديد الاتصالات مع جميع عمليات الدمج المدعومة من Apache Flink. ويشمل ذلك وجهات مثل Amazon OpenSearch Service، وAmazon ElastiCache for Redis، وAmazon Aurora، وAmazon Redshift، وAmazon DynamoDB، وAmazon Keyspaces، وغيرها المزيد. يمكنك إرفاق الملفات التنفيذية لهذه الموصلات المخصصة عند إنشاء أو تهيئة إعدادات تطبيق Studio خدمة Amazon المُدارة لـ Apache Flink.
اتفاقية مستوى الخدمة
س: ما الذي تضمنه اتفاقية مستوى الخدمة (SLA) لخدمة Amazon المُدارة لـ Apache Flink؟
تضمن اتفاقية مستوى الخدمة (SLA) الخاصة بنا نسبة تشغيل شهرية لا تقل عن 99.9٪ لخدمة Amazon المُدارة لـ Apache Flink.
س: كيف أعرف ما إذا كنت مؤهلًا للحصول على رصيد خدمة في اتفاقية مستوى الخدمة (SLA)؟
أنت مؤهل للحصول على رصيد خدمة SLA لخدمة Amazon المُدارة لـ Apache Flink ضمن اتفاقية مستوى الخدمة لخدمة Amazon المُدارة لـ Apache Flink SLA إذا كانت نسبة وقت التشغيل الشهري في أكثر من منطقة توافر واحدة تقوم بتشغيل مهمة فيها، داخل نفس منطقة AWS، أقل من 99.9% خلال أي دورة فواتير شهرية. للحصول على تفاصيل كاملة حول جميع شروط وأحكام اتفاقية مستوى الخدمة بالإضافة إلى تفاصيل حول كيفية تقديم مطالبة، تفضل بزيارة صفحة تفاصيل خدمة Amazon المُدارة لـ Apache Flink SLA.
بدء استخدام تحليلات بيانات Amazon Kinesis
انتقل إلى صفحة تسعير تحليلات بيانات Amazon Kinesis.
تعرَّف على كيفية استخدام تحليلات بيانات Amazon Kinesis في دليل الاستخدام الذي يشمل خطوات مفصّلة لأي من SQL أو Apache Flink.
طوِّر تطبيق التدفق الخاص بك من وحدة تحكم تحليلات بيانات Amazon Kinesis.