Elasticsearch vs. Google
Hi, I am looking at Elasticsearch currently. Looks like a great search engine tool. I was wondering - what are its performance metrics relative to established players like Google? Like it uses Okapi BM25 algorithm, how does that measure up against Google's PageRank? Is the quality and relevance of search results it offers at par with what Google offers? And secondly, what about the performance? Google handles 5 billion queries per day, with natural peak load scenarios like sports events, or other bid incidents like elections. is Elasticsearch capable of scaling to this level, with the right combination of sharding, distribution and indexing?
7 comments
[ 4.8 ms ] story [ 26.3 ms ] threadES is a toolbox not something you can just use off the shelf. I think Elastic likes to make people think it is a off the shelf solution, but the defaults aren't great for many use cases. However ES can include pagerank, ML, BM25, etc in the ranking calculation but it requires search relevance expertise to make it all work together for any particular use case. And different use cases will need different ranking equations.
Elasticsearch is a sharded search index.
It's a little like you're trying to compare a bicycle (or for this analogy, even a fire extinguisher--these things are just that different) and a firetruck. Sure, there are some similarities and some overlap, but a firetruck is massive and very purpose-built.
BM25 scores documents based on their contents.
PageRank scores documents based on their sources.
Very different.
If you are starting now, you start with Elasticsearch, because you can't start with PageRank and all the thousands of other things that make up what you think of as Google Search.
If you have years, people and billions of dollars, you can start building towards google-like capabilities. Elasticsearch allows you to add capabilities like google provides, but you still have to build them.
Build your first round of search on Elasticsearch, and you'll likely learn enough to start understanding the difference between the two.