تخطي إلى المحتوى الرئيسي

مرجع واجهة برمجة التطبيقات

تشكل واجهة برمجة تطبيقات Ilum العمود الفقري لوظائف Ilum ، حيث توفر واجهة برمجية تسمح للمستخدمين بالتفاعل مع مجموعات ووظائف Apache Spark الخاصة بهم. تم تصميم واجهة برمجة تطبيقات RESTful هذه لتكون قوية ومرنة وبديهية ، مما يتيح للمطورين دمج إمكانات Ilum بسلاسة في تطبيقاتهم الحالية ومهام سير العمل.

يمكن العثور على مواصفات OpenAPI الخاصة ب Ilum هنا

اهميه

  • التفاعل في الوقت الحقيقي ربما تكون إحدى أقوى ميزات واجهة برمجة تطبيقات Ilum هي قدرتها على التعامل مع وظائف Spark التفاعلية في الوقت الفعلي.: تسمح هذه الميزة للتطبيقات بإرسال البيانات لتتم معالجتها على الفور، دون انتظار تهيئة سياق Spark. يمكن أن يكون هذا النوع من التفاعل في الوقت الفعلي لا يقدر بثمن للتطبيقات التي تحتاج إلى رؤى فورية من بياناتها.

  • سهولة التكامل تسمح واجهة برمجة تطبيقات Ilum للمطورين بالوصول إلى مجموعات Spark والتحكم فيها من داخل تطبيقاتهم الخاصة ، مما يلغي الحاجة إلى التدخل اليدوي أو الأدوات المستقلة.: هذا يعني أنه يمكن الاستفادة من قدرات Ilum أينما دعت الحاجة إليها ، سواء كان ذلك في تطبيق تحليل بيانات مخصص أو خط أنابيب التعلم الآلي أو نظام إدارة بيانات المؤسسة.

  • الأتمتة والتحكم تمكن واجهة برمجة تطبيقات Ilum المستخدمين من أتمتة المهام مثل إرسال الوظائف والمراقبة وإدارة نظام المجموعة.: وهذا يسمح بعمليات مبسطة ومساحة أقل للخطأ، مما يعزز الكفاءة والموثوقية. يمكن للمستخدمين أيضا التحكم في العديد من مجموعات Spark من مكان واحد، بغض النظر عما إذا كانت منشورة في السحابة أو محليا، وما إذا كانوا يستخدمون Yarn أو Kubernetes كمدير نظام المجموعة الخاص بهم.

  • قابلية التوسع والمرونة تم تصميم واجهة برمجة تطبيقات Ilum مع وضع قابلية التوسع في الاعتبار، مما يسمح لها بالتعامل مع إدارة مجموعات Spark التي تتراوح من عقدة واحدة إلى مئات العقد.: علاوة على ذلك ، فإن تصميم RESTful الخاص به يعني أنه يعتمد على طرق HTTP القياسية ، مما يجعله متاحا من أي نظام أساسي أو لغة يمكنها تقديم طلبات HTTP.

باختصار ، تعد واجهة برمجة تطبيقات Ilum جزءا مهما من عرض Ilum ، حيث تتيح مستويات عالية من الأتمتة والتكامل والتفاعل في الوقت الفعلي لإدارة ومراقبة مجموعات Apache Spark. إنها أداة قوية لأي مؤسسة ترغب في الاستفادة من قوة Spark بطريقة مرنة وقابلة للتطوير وفعالة.

التفاعل مع واجهة برمجة تطبيقات Ilum

يقدم هذا الدليل أمثلة على كيفية التفاعل مع واجهة برمجة تطبيقات Ilum. ستستخدم الأمثلة حليقه أداة سطر الأوامر ، ولكن تنطبق نفس المبادئ بغض النظر عن عميل HTTP الذي اخترته.

فضح Ilum-Core

أولا ، فضح إيلوم كور الخدمة على المنفذ 9888 باستخدام الأمر التالي:

المنفذ إلى الأمام SVC / ILUM الأساسي 9888: 9888 

وهذا يسمح بالتفاعل المحلي مع خدمة إيلوم.

الحصول على المجموعات المتاحة

لاسترداد قائمة بالمجموعات المتاحة، قم بتنفيذ ما يلي حصل طلب:

curl "http://localhost:9888/api/v1/cluster"

يتم إنشاء نظام المجموعة الأول أثناء النشر الأولي ويتم تكوينه مسبقا للعمل مع مثيل Kubernetes المستخدم بواسطة Ilum.

إنشاء مجموعة وظائف Spark

لبدء التفاعل مع Ilum، تحتاج إلى إنشاء مجموعة وظائف Spark قابلة للتطوير عن طريق تحميل ملف JAR يحتوي على تطبيق Spark الخاص بك. استخدم ما يلي منصب طلب إنشاء مجموعة:

curl -X POST 'http://localhost:9888/api/v1/group' \
--form 'jars=@"/path/to/local/file/ilum-job-example.jar"' \
--نموذج 'مقياس = "1" \
--form 'clusterName="default"' \
--form 'name="example-group"'

عند النجاح، سيعيد هذا الطلب معرف المجموعة. يمكنك استرداد هذا المعرف لاحقا عن طريق تشغيل:

curl http://localhost:9888/api/v1/group

قم بتشغيل وظيفة واحصل على نتيجة

لتنفيذ مهمة داخل المجموعة واسترداد النتيجة، استخدم ما يلي منصب طلب. تأكد من استبدال GROUP_ID باستخدام المعرف الفعلي لمجموعتك:

curl -X POST 'http://localhost:9888/api/v1/group/GROUP_ID/job/execute' \
--header "نوع المحتوى: التطبيق / json" \
--data-raw '{
"النوع": "interactive_job_execute",
"jobClass": "cloud.ilum.job.example.ExampleJob",
"jobConfig": {
"parameter": "مرحبا بك في ILUM"
}
}'

سيبدأ هذا الطلب الوظيفة في المجموعة المحددة ويرجع نتيجة الوظيفة.

OpenAPI 3.0

OpenAPI 3.0 هو معيار معتمد على نطاق واسع لتصميم واجهات برمجة تطبيقات RESTful وإنشائها وتوثيقها. يجلب استخدام OpenAPI 3.0 لواجهة برمجة تطبيقات Ilum العديد من الفوائد المهمة:

  • توحيد يوفر OpenAPI 3.0 بنية واضحة وموحدة لتصميم واجهات برمجة التطبيقات وتوثيقها.: هذا يعزز قابلية التشغيل البيني ويقلل من منحنى التعلم للمطورين الذين هم بالفعل على دراية بمعيار OpenAPI.

  • التوثيق التفاعلي يدعم OpenAPI 3.0 إنشاء وثائق واجهة برمجة التطبيقات التفاعلية.: لا يساعد هذا المطورين على فهم كيفية استخدام واجهة برمجة التطبيقات فحسب ، بل يمكنهم أيضا من تجربة استدعاءات واجهة برمجة التطبيقات مباشرة من الوثائق ، مما يحسن قابلية الاستخدام ويساعد في الاختبار.

  • إنشاء التعليمات البرمجية هناك العديد من الأدوات المتاحة التي يمكنها إنشاء حزم SDK للعميل بلغات مختلفة من مواصفات OpenAPI.: يمكن أن يؤدي ذلك إلى تسريع التطوير بشكل كبير والتأكد من أن الكود الذي تم إنشاؤه يتماشى مع تصميم واجهة برمجة التطبيقات.

  • التحقق من الصحة والاختبار يمكن استخدام مواصفات OpenAPI 3.0 للتحقق تلقائيا من صحة طلبات واجهة برمجة التطبيقات والاستجابات ، مما يساعد على اكتشاف الأخطاء والتناقضات في وقت مبكر من عملية التطوير.: يمكن استخدامها أيضا لإنشاء حالات اختبار ، مما يساعد بشكل أكبر في ضمان الجودة.

باستخدام OpenAPI 3.0 ، لا تكتسب واجهة برمجة تطبيقات Ilum هذه الفوائد فحسب ، بل تتماشى أيضا مع نظام بيئي واسع من الأدوات وأفضل الممارسات ، وبالتالي تعزيز قابليتها للاستخدام والموثوقية وقابلية الصيانة.