Implementing a Search Feature in AWS CodePipeline for a Book Reading Application

Adding a Search Feature for the Book Reading Application

Prev Question Next Question

Question

A company has developed a book reading application deployed in AWS.

As the number of users grows, there is an increasing need to add a search feature for the application.

The team needs to create this feature as soon as possible under an independent pipeline in AWS CodePipeline.

In the new pipeline, the source stage is a CodeCommit repository which contains the JSON format data used for the search service.

The build stage has used AWS CodeBuild to configure the data.

What is the best way to implement the search feature in AWS?

Answers

Explanations

Click on the arrows to vote for the correct answer

A. B. C. D.

Correct Answer - C.

In this question, it mentions that a solution needs to be implemented as soon as possible.

AWS CloudSearch should be considered first as it is a fully managed AWS service and users can easily set up and manage a search solution for a website or application.

Check.

https://docs.aws.amazon.com/cloudsearch/latest/developerguide/what-is-cloudsearch.html

for details.

Option A is incorrect: Because AWS CloudFormation does not support CloudSearch.

To configure CloudSearch search domain, AWS CLI or ADK should be used.

Option B is incorrect: Because this solution is time-consuming and complicated.

The team needs to have Solr knowledge in order to maintain such a system.

Option C is CORRECT: Because AWS CloudSearch is an appropriate tool to implement this feature.

The AWS CLI aws cloudsearchdomain upload-documents can be used to upload JSON format data.

Check the reference in.

https://docs.aws.amazon.com/cloudsearch/latest/developerguide/uploading-data.html.

Option D is incorrect: Because it still needs an EC2 to implement Elasticsearch.

In this case, options including CloudSearch should be considered.

The best way to implement the search feature in AWS, given the requirements stated in the question, would be to use AWS CloudSearch.

Option A is the correct answer.

Option A suggests using AWS CloudSearch to implement the search function. AWS CloudSearch is a fully managed search service in AWS that simplifies the setup and scaling of search capability. The build stage builds a CloudFormation template, which is a declarative way to define the infrastructure and services needed in AWS. The CloudFormation stack for the CloudSearch search domain can then be deployed through another deploy stage in the pipeline. This would automate the creation and configuration of the CloudSearch search domain, ensuring the search feature is implemented quickly and efficiently.

Option B suggests using AWS EC2 to provision and manage a cluster of servers running SOLR applications for the search feature. This option involves more manual setup and management, and may not be as scalable and efficient as using a fully managed service like CloudSearch.

Option C suggests using AWS CloudSearch to implement the feature, but using AWS CLI to configure the data in the search domain. While this is possible, using CloudFormation templates would be a more efficient and streamlined approach.

Option D suggests using AWS Lambda to manage an EC2 Elasticsearch application for the search feature. This option is more complex and may not be as efficient or scalable as using a fully managed search service like CloudSearch.

Overall, option A is the most efficient and scalable option for implementing the search feature in AWS, given the requirements stated in the question.