Amazon Web Services have added CloudSearch to their increasingly comprehensive portfolio of everything a developer would ever want.
Amazon CloudSearch is a fully-managed search service in the cloud that allows customers to easily integrate fast and highly scalable search functionality into their applications. With a few clicks in the AWS Management Console, developers simply create a search domain, upload the data they want to make searchable to Amazon CloudSearch, and the service then automatically provisions the technology resources required and deploys a highly tuned search index.
In their press release they say CloudSearch is based on technology that has been rattling around on their network for a while – A9.
Amazon CloudSearch leverages the same A9 technology that powers search for Amazon.com and provides businesses with high throughput and low latency so they can deliver a fast search experience to their customers. The service provides a rich query language that enables businesses to search within particular fields, perform complex Boolean searches, retrieve facet information, and specify the data included in the search results.
A9 uses OpenSearch technology which I remember banging on about back in 2005. OpenSearch was/is a simple but very effective way of sending queries and returning results using already established techniques and standards – add your query arguments to your URL and get the results back in a slightly enhanced RSS format. This was part of the early initiatives from Amazon to open up their technology for the benefit of others trying to build services without necessarily having the infrastructure to do it.
The evolution of these services in to the AWS brand and web service platform has been impressive. It is hard to have a discussion with anyone in the technology field today without the phrase “is it built/prototyped/run/hosted/developed on Amazon?” entering the conversation. In the Cloud Computing revolution that we are in the middle of, there are other players such as Google, Microsoft, Rackspace, to mention a few of many, but nobody has cornered the developer community with a collection of integrated offerings quite like Amazon has. Whether you want to build a simple website, backup your files, build a Hadoop cluster, put up a triple store, or run a significant global business, most of the tools for your developers are to be found as pay-as-you-go in AWS – without the need to worry about hardware or IT Services people.
CloudSearch fills a gap in the AWS portfolio. Anyone that has built a public facing search interface will know that the configuring, building, maintaining, and scaling of search is a bit of an art. Adding functionality such as API access, free-text indexing, faceted results, and filtered results sets, turns it into a black-art. From what I read from their documentation, AWS has taken the approach of making as easy as possible.
Upload your text files and/or your structured data files in a simple Structured Data Format (SDF), define the indexing, then start searching and embed that search on to your user interface. Like other AWS services they take care of scaling etc.
It is apparently a low cost service. Amazon provide an example of 100Mb of data, 100,000 simple keyword searches, and 50 batch uploads of a 1,000 1Kb documents, per day, at a cost of $86.94 per month which seems good value for a smallish instance. How this will play out with in relation to Google and Bing remains to be seen, but I get the impression that even in the enterprise they are going after slightly different markets.
Richard Wallis is Founder of Data Liberate.
Image from Amazon on YouTube.