AWS : Search using Kendra

About Kendra

  • Build for Enterprise search
  • Natural language search capability
  • Data Sources : S3 , Sharepoint , RDS , Salesforce , ServiceNow, OneDrive

More Use cases and Benefits are discussed here

Simple Steps to setup Kendra

1. Specify the index details

2. Data Source available in Kendra

3. Select S3 as Data Source

4. Attach policies to IAM role.

For Production , never put “Power Access” - always specify specific role.

5. Configure settings of S3 and set frequency of data refresh

6. Review the details

7. Press “Sync Now” document indexing (On-demand)

8. Tune the fields

9. Search interface in Kendra

Note : The steps mentioned above is for POC. In Production or any organization , CloudFormation template would be utilized.

Pros and Cons

Pros :

  • Search platform / API can be created within 30 min
  • No prior knowledge on search or relevance tuning is required
  • Logs are automatically created / maintained in CloudWatch – centralized place for all AWS services

Cons:

  • For developers , seems lack of flexibility for custom functionality as compared to Solr or ElasticSearch
  • Indexing of data took comparatively more time than regular Solr indexing
  • As compared to Solr/ElasticSearch , less public forums
  • Platform dependency - Native to only AWS unlike Solr or ElasticSearch