Amazon Search Services Christoph Schmitter csc@amazon.de
What we'll cover Overview of Amazon Search Services Understand the difference between Cloudsearch and Amazon ElasticSearch Service Q&A
Amazon Search Services Amazon CloudSearch Amazon Elasticsearch Service
Scenario: Full-text search Traditional search Your application or website provides search capabilities over diverse documents You are tasked with making this knowledge base searchable and accessible You need key search features including text matching, faceting, filtering, fuzzy search, auto complete, and highlighting
Scenario: Log data analytics Application monitoring and event diagnosis You need to monitor the performance of your application, web servers, and hardware You need easy to use, yet powerful data visualization tools to detect issues in near real-time You want the ability to dig into your logs in an intuitive, fine-grained way
Scenario: Batch data analytics Usage Monitoring You are a mobile app developer You have to monitor/manage users across multiple app versions You want to analyze and report on usage and migration between app versions
Search is like a database Search Value Field Document Index Cluster Database Value Column Row Table Database Queries SQL
Search is not like a database Search No relational information No transactions Eventual consistency Queries bring the best matches Sorting based on relevance Read-heavy, highly distributed Database Relational information Transactions Strong consistency model Queries bring all matches Sorting based on field values
Amazon CloudSearch is a fully managed search service in the cloud for your website or application
Rich search feature set Faceting Highlighting Autocomplete suggestions Geospatial search Source: IDC, Nielsen, Twitter blog
Ease of operation Autoscaling Self-healing clusters High availability Data durability
Easy administration Security built-in integration with AWS IAM Monitoring built-in integration with Amazon CloudWatch Auditing built-in integration with AWS CloudTrail
Flexible options to build, automate, and experiment AWS SDK Build on your preferred language: Java, Ruby, Python, and many more AWS CLI Automate admin tasks by scripting via the command-line interface AWS Console Experiment with easy-to-use, interactive console gui
Pay only for the resources you use Instance hours Batch uploads Index builds
Amazon CloudSearch is great if ü Your application is high-read / low-write, requires fast query performance, but moderate document updates - Example use cases: website search, e-commerce search ü You are looking for a hands-free search platform that takes care of scaling, high availability, data durability, and other administrative tasks ü You want to focus on your business as opposed to building search expertise
Amazon Elasticsearch Service
The ELK stack for visualization Combined with Logstash and Kibana, the ELK stack provides a tool for real-time analytics and data visualization
Scenario: Full-text search Traditional search Your application or website provides search capabilities over diverse documents You are tasked with making this knowledge base searchable and accessible You need key search features including text matching, faceting, filtering, fuzzy search, auto complete, and highlighting
Ease of operation Easy cluster creation and configuration management Self-healing clusters High availability Data durability
Easy administration Security built-in integration with AWS IAM Monitoring built-in integration with Amazon CloudWatch Auditing built-in integration with AWS CloudTrail
Amazon Kinesis Amazon RDS Amazon DynamoDB Amazon SQS Queue Integration with the AWS ecosystem Logstash Logstash Cluster REST CWL Agent EC2 Instances Amazon CloudWatch AWS Lambda Amazon Elasticsearch Service AWS CloudTrail Access Logs Amazon VPC Flow Logs Amazon S3 bucket AWS IoT Amazon Kinesis Firehose
Pay for compute and storage you use With Amazon Elasticsearch Service, you pay only for the compute and storage resources you use. AWS Free Tier for qualifying customers.
Two Search Technologies? Strengths of each Amazon Elasticsearch Service Elk +Kibana High volume updates More storage at lower cost Multi-tenant workloads Nested documents Aggregations Amazon CloudSearch Hands-off operation Simple API for search Simple schema changes Relevance tuning
Q&A Christoph Schmitter: csc@amazon.de Solutions Architect https://run.qwiklab.com/searches/elasticsearch Building Search into your Applications with Amazon CloudSearch
Demo Optional Kibana