از پارسکدرز بیشترین بهره را ببرید و رویای کاری خود را زندگی کنید.
شش ماه پیش منتشر شده
تعداد بازدید: 73
کد پروژه: 494603
شرح پروژه
In this assessment, you will implement the orchestration of an application using the Apollo runtime system developed. The project is divided into 3 tasks with an increasing level of difficulty. Try to find sophisticated and performance efficient solutions. Simple solutions achieve lower grades in the evaluation.
The following paragraphs provide details about the application and the steps required as part of the individual project tasks. Before starting with the project, it is recommended to familiarize yourself with the Apollo runtime system, e.g., by completing its tutorial project.
Application Description
In this project, your goal is the implementation of an application to search through a given text string and count the occurrences of a given string pattern in that text. The input and output of the application, thus, look as follows:
• Input:
– A (potentially large) text string s
– A pattern string p
– An integer w defining the number of words per text batch
– (only for Task 2) an integer m defining the occurrence threshold
• Output:
– The number r of occurrences of the pattern string in the text string
– The text string s’ (t is potentially modified in Task 2)
The application performs following steps:
1.The text string s is divided into a number of batches, each (but one) containing w words
2. Each text batch is processed by counting the occurrences of the pattern string p therein
3. The occurrences of the pattern in the individual batches are summed up to the overall
occurrence number r
4. (only in Task 2): If the overall number of occurrences exceeds the occurrence threshold (r
> m), all but the first m occurrences of p are deleted from s, creating the (potentially
modified) text string s’
NOTE: Your program should be generic. Do not hardcode your solution for a specific input.
Example:
• Input:
– s: ”one one one two one"
– p: ”one"
– w: 2
– m: 2
• Output:
– r: 4
– s’:
* ”one one one two one" (Task 1)
* ”one one two" (Task 2)
Task 1
Implement the workflow describing the application above (you can ignore the parts annotated with "Task 2").
Implement the workflow functions and deploy them, either on AWS Lambda, IBM Cloud Functions or as Docker
images. The solution to this task should feature an executable project, where the application can be orchestrated
using the Apollo runtime system (you will need to provide us either the AWS Lambda urls, IBM Cloud Function
urls, or the Docker image).
Task 2
Same as Task 1, but now for the complete application, in particular the potential modification of the input string. For
the implementation of the modification operation, you should prioritize minimizing the latency by exploiting
possibilities for parallelization.
Note: In case you want to use the AFCL IF Compound for this task, please be aware of a current inconsistencies
between the AFCL Editor and the AFCL Syntax expected by Apollo:
• Apollo expects you to provide the type of the data used in the if condition. You have to add a type entry to
the condition generated by the editor. Please refer to the AFCL website for examples of the correct IF syntax.
Task 3
For the last task, you should deploy the functions on AWS/IBM AND as Docker images. Implement a
performance oriented scheduler (execution should be as fast as possible) which will, depending on the number of
the text batches, schedule all operations on the Docker resources (in cases where there are less than 10 batches) or on
AWS/IBM functions (in cases where there are at least 10 batches) and integrate this scheduler into the application
project.
Note: This task goes beyond the content of the tutorial and is intentionally more challenging. For details about the
implementation of task scheduling in Apollo, please refer to the corresponding part of its source code .
Task Submission
Ideally, you should submit your solution by providing us with access to a PRIVATE GitHub repository (give the
GitHub user dps-uibk access to your private repository) containing an executable orchestration of the application
described above (containing the necessary input files, the function code you deployed, the Apollo configuration (and,ideally, launch) files, as well as a brief instruction on how to start the execution). You could, for example, use the same project and folder structure as Apollo’s demo repository .
Useful Links Please find below a list of useful links (they are already linked in the text above, but some PDF viewers
may not display them):
Content Link
Apollo Tutorial https://github.com/Apollo-Core/Tutorial
AFCL Website https://apollowf.github.io/learn.html
Apollo Scheduler Repository https://github.com/Apollo-Core/SC-Core
Apollo Demo Project https://github.com/Apollo-Core/EE-Demo
این پروژه شامل 1 فایل مهم است، لطفا قبل از ارسال پیشنهاد حتما نسبت به بررسی این فایل اقدام فرمایید.
مهارت ها و تخصص های مورد نیاز
بودجه
300,000 تومان تا 750,000 تومان
مهلت برای انجام
3روز
وضعیت مناقصه
بسته
درباره کارفرما
عضویت سه سال پیش
قادر به انجام این پروژه هستید؟
مهلت ارسال پیشنهاد قیمت برای این پروژه تمام شده است
به رایگان یک حساب کاربری بسازید
مهارتها و تخصصهای خود را ثبت کنید، رزومه و نمونهکارهای خود را نشان دهید و سوابق کاری خود را شرح دهید.
به شیوهای که دوست دارید کار کنید
برای پروژههای دلخواه در زمان دلخواه پیشنهاد قیمت خود را ثبت کنید و به فرصتهای شغلی منحصر به فرد دسترسی پیدا کنید.
با اطمینان دستمزد دریافت کنید
از زمان شروع کار تا انتهای کار به امنیت مالی شما کمک خواهیم کرد. وجه پروژه را از ابتدای کار به امانت در سایت نگه خواهیم داشت تا تضمین شودکه بعد از تحویل کار دستمزد شما پرداخت خواهد شد.
میخواهید شروع به کار کنید؟
یک حساب کاربری بسازید
بهترین مشاغل فریلنسری را پیدا کنید
رشد شغلی شما به راحتی ایجاد یک حساب کاربری رایگان و یافتن کار (پروژه) متناسب با مهارتهای شما
است.
پیدا کردن کار (پروژه)
تماشای دمو روش کار