iX Developer Big Data 06/15

Elasticsearch erfolgreich skalieren

Autor:

Der Suchserver Elasticsearch gilt als eine der Big-Data-Suchtechniken schlechthin und lockt mit Skalierung „out of the box“. Auf dem Weg zu einer optimalen Suchperformance verbergen sich jedoch einige Fallstricke und Möglichkeiten zur Optimierung. Welche Fähigkeiten zur Skalierung bietet Elasticsearch und wie lässt sich damit eine performante verteilte Suchlösung realisieren?
Elasticsearch verfolgt den Ansatz der horizontalen Skalierbarkeit, bei dem höhere Kapazität durch das Einbinden
weiterer, relativ preisgünstiger Server erreicht wird. Sie setzt voraus, dass man die Datenbank – in diesem Fall der Suchindex – in disjunkte Partitionen aufteilt, die auf die verschiedenen Server verteilt werden. Elasticsearch verwendet zur Partitionierung den Sharding-Ansatz, bei dem der Index in sogenannte Shards aufgeteilt wird. Für die zu indizierenden Dokumente bestimmt ein Attribut, der Shard Key, in welchem Shard das jeweilige Dokument zu speichern ist.

Vollständiger Artikel