Managed Server und Agenturpakete jetzt mit MongoDB und ElasticSearch

Managed Server und Agenturpakete jetzt mit MongoDB und ElasticSearch

MongoDB, vom US-Startup 10gen nach zweijähriger Entwicklung im Jahr 2009 der Öffentlichkeit präsentiert, erfreut sich seitdem zunehmender Beliebtheit. Der ungewöhnliche Name leitet sich aus dem englischen Begriff "humongous" ab, was so viel wie "gigantisch" bedeutet. Im Gegensatz zum "Platzhirschen" MySQL handelt es sich bei MongoDB um eine nicht-relationale Datenbank. Wobei das Stichwort "NoSQL" nicht selten falsch interpretiert wird. Denn bei "NoSQL"-Datenbanken geht es nicht um die generelle Abkehr von klassischen Datenbanken, sondern vielmehr darum, im Sinne des Endkunden die beste Lösung zu wählen (not only SQL). Der entscheidende Unterschied zu MySQL besteht in der dokumentorientierten Arbeitsweise und einer schemafreien Struktur. Es sind keine zwingenden Relationstabellen und Joins nötig, die bei der Weiterentwicklung und dem Ausbau der Datenbank sonst immer komplexer würden. Dadurch erweist sich die Datenstruktur als wesentlich flexibler und lässt sich einfach horizontal skalieren (Sharding). Zu weiteren Merkmalen zählen unter anderem die umfangreichen Ad-hoc-Abfragen (benutzerdefinierte JavaScript-Funktionen; gesamtes Dokument, spezifische Dokumentenfelder; Abfragen reichen in eingebettete Objekte und Anordnungen hinein).


Für die konsequente Volltextsuche in großen Datenmengen steht seit 2010 neben dem bereits weitverbreiteten Apache Solr auch ElasticSearch zur Verfügung – ein ebenfalls auf Lucene aufbauendes Open-Source-Projekt. Die Volltextsuchmaschine (REST und Java-API) arbeitet schemalos, orientiert sich an NoSQL Systemen und legt Dokumente in Indizes ab. Ein Index steht dabei für einen logischen Namensraum, in dem beliebig viel Dokumente unterschiedlichen Typs abgelegt werden. Die physische Speicherung erfolgt in mehreren Lucene Instanzen (Primary Shards). Komplexe Suchanfragen lassen sich durch mehrere Instanzen parallel bearbeiten. ElasticSearch stellt für Suchanfragen eine Query-DSL zur Verfügung, die sowohl einfache Termanfragen, wie auch komplexe, mit boolschen Operatoren verbundene Anfragen durchführt. Das "Scripting" bezeichnet das Ausführen eigener Scripte, um z. B. zusätzliche Felder zu berechnen oder Ergebnisse zu beeinflussen. Die Lebensdauer von Dokumenten kann im ElasticSearch-Cluster durch den Time-to-Live-Wert begrenzt werden, externe Systeme lassen sich als Datenquellen integrieren. Die Plug-in-Schnittstelle steht für die Integration zusätzlicher Features zur Verfügung.

Mit MongoDB und dem auf Apache Lucene basierenden ElasticSearch hat Timme Hosting zwei Werkzeuge im Gepäck, die ab sofort auf Managed Servern und Agenturpaketen verfügbar sind. Ziel ist stets, dem Kunden ein umfassendes Setup mit allen Tools zur Verfügung zu stellen, die er für seine Websites benötigt.

Nach oben