Elasticsearch - ilya-khadykin/notes-outdated GitHub Wiki

Elasticsearch is based on Apache Lucene - an open-source search engine. Elasticsearch is dependent on Java

Elasticsearch divides data into shards and replicates those shards across the cluster of multiple servers

Production setup:

  • at least 3 master nodes;
  • as many data nodes as needed;
  • if cluster becomes big (more than 6 or 8 nodes) you could add load balancing nodes (usually 2 for high availability);

Common tasks

Starting Elasticsearch

# starting using shell script
/bin/elasticsearch

Configuration

# JVM
ES_HEAP_SIZE=256m; # usually half of the size of the host

/opt/elasticsearch/config/elasticsearch.yml:

# data serving node 
node.master: false
node.data: true
# master node
node.master: true
node.data: false
# load balancing node
node.master: false
node.data: false

Elasticsearch as a Time Series Data Store

Source: https://www.elastic.co/blog/elasticsearch-as-a-time-series-data-store

Moving Averages

https://www.elastic.co/blog/staying-in-control-with-moving-averages-part-1

https://www.elastic.co/blog/staying-in-control-with-moving-averages-part-2

Resources