Do you need something beyond "highly scalable search solution"? A lot of enterprises (and I'd guess startups too!) need good search solutions and your two players in the Java space (that I know of) are Solr and Elasticsearch. We are using Solr in our product, but the more I hear about Elasticsearch the more I want to give it a serious try.
My reason for not using it originally was that we had prototyped our solution using Compass (which was the project before Elasticsearch) only to have it abandoned to work on Elasticsearch. So I was concerned about the "one dev" model and losing something that was a key component of what we needed.
Since then I've not been impressed with SolrCloud (would love to hear good experiences, but it seems their distributed model isn't right) and have been giving Elasticsearch serious thought again.
"In the Java space" meaning deployed in a Java servlet container. Both are stand-alone search servers, exposing their API for search and indexing through HTTP using XML and/or JSON.
> "In the Java space" meaning deployed in a Java servlet container.
I didn't say nor mean to imply that. Technically, Solr is based on servlet technology whether stand-alone or not, you can choose to deploy it in a web container of your choice or use the Jetty instance it comes with for the "stand-alone" experience. I don't know much about Elasticsearch's architecture personally.
We have actually been using elasticsearch as our main data storage at backstitch for almost a year now. How I usually explain its awesome power is (1) take the schemaless nature of MongoDB, (2) add the indexing power of Lucene, (3) and give it the flexible scaling of Riak.
The documentation is also fantastic and the plugin availability pretty good.
More specifically, it is what Solr would look like if you designed it today but also did not care about dealing with all the use cases Solr deals with TODAY.
The best proof is that Elastic Search is slowly hitting the same problem Solr hit at some point in the past and has to deal with them (scripting is now disabled by default, analysis/query language is slowly getting more complex, etc).
I am just starting to learn elasticsearch so am not a good source. But I didn't want something that was technically revolutionary. I wanted a tool that would be easy to get started with and provide something that is completely trivial as far as the end user is concerned (search).
It's an "it just works" technology that also goes very deep and solves a number of problems where the competing solutions are an order of magnitude more complex and/or expensive.
Something like Google Alerts could be designed easily with elasticsearch. There's probably no other technology (off the shelf) that could be used for an use case like that.