Quiz 1 10/26/20 6:15pm-8:00pm
Quiz 1 10/26/20 6:15pm-8:00pm
10/26/20 6:15pm-8:00pm
This is an open book quiz. Once you complete the answer, you need to upload your answer file. You may scan or take pictures
and/or type your answer and upload the file. The upload should be completed by 8:00pm EST.
1. You have a payment API that calls a third party API service to make payments. The API receives
millions of requests per hour. At some point, the payment service starts failing intermittently due to the
high volume of transactions.
> How would you re-architect the system to ensure that all payments are processed without an
impact to the customer experience?
2. When you call the API from your frontend application hosted at http://www.yourdomain.com, you get
the following error in the developer console:
> What is the reason for this error? How do you resolve it? (describe every step)
3. You create a new Lambda function that returns the text "Hello world". You test it and it completes the
execution in a few milliseconds. You then decide to use it to store a message in a DynamoDB table. You
add code to do just that, on top of the original code. Upon testing the new version of the function, it times
out after 3 seconds, over and over again.
>What might be the issue and how can you resolve it?
4. You create a new intent called HotelBookingIntent in Lex. You add a few utterances and build it. When
you start testing it in the Lex test console, everything works as expected. You then write code to call your
Lex bot from the Lambda function, but when you make calls to your API, the Lambda function times out.
> What is the most likely reason for the Lambda function timing out when connected with the Lex bot,
while everything is working correctly through the Lex test console?
5. For the following questions, imagine you have the following resources on AWS: an API Gateway
deployment, a Lambda function connected to one of the API Gateway methods that responds to each
request, and a Lex bot called "Concierge". You create a new intent called HotelBookingIntent in Lex. You
add a few utterances and build it. When you start testing it in the Lex test console, everything works
as expected. You then write code to call your Lex bot from a Lambda function, but all the incoming
messages are not understood by the Lex bot.
>What is the most likely reason for Lex failing to understood messages sent through the Lambda function,
yet everything working correctly through the Lex test console?
B. Design Question [25]
myCollab App
You are going to design myCollab - an app similar to Facebook Collab using AWS platform that will allow
users to create, upload their vidoes and allow users to search, watch, collaborate with the permission of
the creator. I want you to draw the architecture for such an app with appropriate AWS services to support
the following functionalities:
1. User/Creator can create and upload short videos. While uploading, the user provides a metadata
file that has uploaders name, a short description about the video.
2. User/Any can search videos by uploaders name and/or video descriptions. The app should show
the list of matching videos. Once clicked, it should stream the video to the user’s mobile app.
3. User/Any if desires could edit with permission from the original creator(s) and edit the content to
enhance the video. After the approval of the creator(s), the new created content is made
available.
4. Application also keeps history of the videos a user has watched in his/her profile. The app should
recommend a list of videos when the user logs in.
1. You need to draw the supporting architecture – focused on video creation, search, collaboration,
recommendations. The design should be event driven and asynchronous. Your design should
make use of appropriate storage services.
2. List of APIs to support the functionalities
3. List of Lambda functions with input triggers and output
4. Appropriate data stores to facilitate these
5. Describe the end-to-end path with the involved APIs, lambda functions, and database
components for an user searching and editing the content to co-create the file with the permission
of the creator(s) of the content.
Your design should account for scalability, event driven system design. You may make
assumptions about external APIs such as recommendation API for list of videos.
Ref: https://techcrunch.com/2020/05/27/facebook-launches-collab-a-mix-and-match-app-for-making-
collaborative-music-videos/
C. Questions from Papers [25]
C.2: [GFS]Illustrate through examples what happens if a chunk server goes down in
GFS, i.e., how the self-healing process takes place.
C.3 [BigTable] Explain Big Table structure through row key, column key with examples.
C.5 [MR] Describe what happens if a task tracker fails while executing a map task –
how job tracker detects it and what action it takes.
D.1 What is live VM migration? Describe the process through “iterative copy” with an
illustration? Why shared storage between source and destination VM is required for live
migration?
D.2 What is the benefit of a private cloud? Provide three reasons why Enterprises are adopting
this even though they need to invest in the infrastructure. How does Hybrid cloud help?
D.3 What is the key difference between Full and Para virtualization?
D5. What is the role of a message queue system like Kafka/Kinesis/SQS in the overall design of a
system?