Hacker News new | past | comments | ask | show | jobs | submit login
Elasticsearch: The Definitive Guide (elastic.co)
135 points by singold on July 4, 2015 | hide | past | favorite | 20 comments



What I really miss from the official docs is a reference. Something that lists all endpoint sand gives a pseudo-BNF schema overview. With the current docs, seeing all the possible permutations possible within the JSON structure is left as an exercise for the reader; it really requires reading the descriptions of the APIs very closely.


I wish they did this and had a better search interface. Their current "all in one bar + suggest" functionality works somewhat poorly for me.

Also I feel like they could reduce the needs for super great API docs if they had something like a query optimizer so that I don't have to care about the exact way that ES translates my queries into Lucene queries. My favorite bit is how if you permute your filters and queries in the wrong order you end up completely killing your performance (filter then query or query then filter).


I believe filters and queries are in the process of being merged. Quite possibly they are moving towards having some kind of planner.



This guide is pretty good and gives you a comprehensive view of Elasticsearch, but to me it was a bit confusing when I first read it. If you are looking for a more "tutorial" style book, with some examples and use-cases, I would recommend "Elasticsearch in action"[0].

I might be biased towards Manning books, but I find their style and ELI5 wording to be very helpful as an introduction to a subject.

[0] http://www.manning.com/hinman/


I was about the hit the purchase button!, thanks :D


How is this different from the usual API docs? I'm not saying that it isn't, I'm just curious as to how it is.


It's written as more of a comprehensive guide, walking you through concepts and talking about them in a bit more depth than the docs. I also found the code examples to be much more helpful than what was in the docs. I believe it also goes more in depth (guide-wise) on many topics than the docs do.


In my experience as you are learning to use ElasticSearch during an implementation, or even going back to reference there is a high-ish probability you will need the manual and the definitive guide. Really, I think they ought to be combined in some way because there are huge gaps in the docs.


I bought the book and I'll say I was disappointed with the book. A couple of points, though. 1. The topic is huge, it's hard to cover everything because the way you can query and setup your mappings is really very open-ended. 2. The book is a good way to get started, but it lacks as a reference. See point 1., a reference may not be possible.

The best way to learn ES is to set yourself up with a scripting language (python, ruby, etc.) and prototype everything, then apply what you learned to your language of chocie (i.e. Java if the scripting language isn't your language of choice).


If you want to get ready fast - It is seriously much more easier to read the book (print or ebook) compared to this link. Saved me a lot of time.


Reads like a book, rather than a manual.


TBH, I'd prefer a manual. In fact, I'd prefer frequent use case examples, documentation and flow charts for more in depth understanding. English takes too much time for me to scroll through : /

But I can understand the appeal. If you're looking to feel more intimate with the technology from another persons perspective or do not want terrible documentation, this kind of style makes sense I suppose


When I was looking for a full-text search solution a few months ago, this guide sold me on Elastic.


How is this different from Apache Lucene?


ElasticSearch is a complete, distributed search engine. It runs as a daemon, does sharing and clustering, provides APIs etc. Lucene is just a library. ElasticSearch uses Lucene internally.


And I'll say it again: Elasticsearch is one of the few things that lives up to its hype. It really is that good. Indexing, clustering, It Just Works. I'm very impressed with them and it's a refreshing change from other very hyped tech.


I actually have quite a few gripes with Elasticsearch. It's a pain to manage - there seems to be no way of killing long-running queries other than restarting it (so if you have users using kibana etc at some point someone will submit a impossibly hard query and kill the server), the quality of the search results just isn't that good and it takes a lot of customization to improve it - I've never been impressed with the results from any of the large deployments (e.g. github). Ideally it would come with good tokenization and synonyms etc out of the box rather than every deployment having to tinker with settings until it seems to work.

That said ELK is great overall and I would still use it for user-facing search, but I think there is still a lot to improve.


jordan, agree fully with your assessment. i have experienced significant challenges in keeping elasticsearch in green since it just loves to failover at times without prior notice, while seeming to work smoothly otherwise!


Elasticsearch is built on top of Apache Lucene and is very similar to technologies like Solr but with a nicer interface (really more like SolrCloud these days).

It is different in that it provides higher level APIs and distributed functionality on top of Lucene. For example, one Elasticsearch index might contain multiple Lucene indices spread across multiple machines, but your application treats it as a single "index".




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: