Introduction
editIntroduction
editThis is the documentation page for Elasticsearch.Net
and NEST
, the two
official .NET clients for Elasticsearch.
Why two clients?
editElasticsearch.Net
is a low level, dependency free client that has no opinions
about how you build and represent your requests and responses. It has abstracted
enough so that all the Elasticsearch API endpoints are represented as methods but not
too much to get in the way of how you want to build your json/request/response
objects. It also comes with built in, configurable/overridable cluster failover
retry mechanisms. Elasticsearch is elastic so why not your client?
NEST
is a high level client that maps all requests and responses as types, and
comes with a strongly typed query DSL that maps 1 to 1 with the Elasticsearch query DSL.
It takes advantage of specific .NET features to provide higher level
abstractions such as auto mapping of CLR types. Internally, NEST
uses and still exposes the low level Elasticsearch.Net
client, providing
access to the power of NEST and allowing users to drop down to the low level
client when wishing to.
Please read the getting started guide for both Elasticsearch.Net and NEST.
Elasticsearch Version Compatibility
editLanguage clients are forward compatible; meaning that clients support communicating with greater or equal minor versions of Elasticsearch. Elasticsearch language clients are only backwards compatible with default distributions and without guarantees made.
Questions, bugs, comments, feature requests
editBug reports and feature requests are more than welcome on the github issues pages! We try to at least reply within the same day.
For more general questions and comments, we monitor questions tagged with
nest
and
elasticsearch-net
on
Stackoverflow, as well as discussions opened on our Discourse site,
discuss.elastic.co. By mentioning
NEST
or Elasticsearch.Net
in the title helps folks quickly identify what
the question is about.