SlideShare ist ein Scribd-Unternehmen logo
Building the perfect HolidaySearch for
HolidayCheck with Elasticsearch
Andreas Neumann : Techlead Search
Über HolidayCheck
short introduction
Holidaycheck In Einem Satz
▪Die HolidayCheck AG betreibt das größte deutschsprachige
Meinungsportal für Reise und Urlaub im Internet.
3
Company
Warschau(
360(MITARBEITER(
Stand(September(2015(
Bo?ghofen( München( Posen(
9(17(57(277(
(Geschä(sführer,-Angestellte,-Prak6kanten,-Werkstudenten,-Auszubildende,-Aushilfen)-
Elasticsearch bei HC
Elasticsearch
Elasticsearch Bei Holidaycheck
▪Suche
▪Datenanalyse : ES, Kibana
▪Data store: Microservices
▪Zentralisiertes Logging mit ES, Kibana und Logstash (ELK)
6
kurz
▪Schweizer Taschenmesser
▪gutes Werkzeug für viele Entwickler-Probleme
▪breite Kenntnis im Unternehmen
▪verschiedene Versionen nebeneinander zu betreiben ist
problematisch
▪möglichst früh und kontinuierlich updaten
7
Learnings
Setup, ES Cluster
Kurz erwähnt
Unser Setup - Search Cluster
▪ CPU: 4 cores
▪ RAM: 16 gigs
▪ 8 gigs of heap
▪ 5 nodes
▪ 3 indices
▪ 2 400 000 documents
▪ 66 GB of data
9
Suche und datengetriebene
Entwicklung
Domäne
Domäne: Travel
Domäne
Destinations
▪Destinations: Reiseziele
▪Länder
▪Reiseregionen
▪Städte
12
Hotels
▪Hotels
13
POIs - Points of Interest
▪Lokale
▪Feste
▪Sehenswürdigkeiten
14
Software / Search - Service
Search-Api
Search-API
▪ Endpoints für Produkte
▪ Mobile
▪iOS App
▪Android App
▪Web-Site
▪ API um Suchanfragen an Elasticsearch zu senden
▪ Query Preprocessing
16
Frontend: Embedded Search - Mobile Web App
Vorgeschichte: Stand Januar 2015
▪ Team/ Entwickler haben Unternehmen verlassen
▪ lückenhafte Tests
▪ veraltete Dokumentation
▪ alte Elasticsearch Version (0.90)
▪ hardcoded solutions (hurghada)
▪ Deployment-Alptraum
▪ Performance-Probleme (Ø 200 - 400 ms)
▪ gewagte Architektur
18
Entscheidung: Neuimplementierung
▪ Aufgabe: Neuentwicklung und Austausch der Suchapplikation
▪ Anforderung:
▪Testbarkeit/Nachvollziehbarkeit: Softwarequalität
▪Testbarkeit/Nachvollziehbarkeit: Suchqualität <= selbst gesetzt
▪generelle Lösungsansätze (z.B. Approximative Suche)
▪Geschwindigkeit
19
Search API: Juni 2015
▪ Testsuite mit UnitTests / Integration Tests
▪ qualitative (Feature Tests) und Quantitative Tests (Accuracy
Tests),Blackbox Tests / Regression Tests:
▪170 Feature-Tests
▪4000+ Accuracy-Tests
▪ Deployment:
▪~ 5 min
▪~ 1 -3 Releases pro Woche
20
Production Request times: (3 queries per request)
21
Features: Querschnitt
Feature-Entwicklung
Featureentwicklung : Regeln Search HC
▪ stets auf harten Daten
▪Query Logs
▪User Tracking
▪…
▪ ständige Analysen
▪qualitativ
▪quantitativ
23
1.) Paris - textuelle Gleichheit
▪ Query: Paris
▪ Erwartung:
▪Paris in Frankreich
▪Stadt der Liebe
▪ Aber:
▪Paris in USA, Texas
▪???
24
Ein Typisches Problem : “Textuelle Gleichheit”
▪ Erklärung: textuelle Gleichheit =>
gleicher Score
▪ Lösungsansatz: rescoring
▪Idee: Destinationen mit vielen Hotels sind
potentiell gute Reiseziele
▪Besonderheit: Rankingveränderungen
im vorgegebenen Window
25
naiv:
max_score: 9.351926
hits:
_id: “3dd…”
_score: 9.351926
fields:
name: “Paris”
hotels: 10
place:”Texas”, "USA"
_id: “1f0…”
_score: 9.351926
fields:
name: ”Paris"
hotels:2344
place:"Großraum Paris”,
"Frankreich"
Building the perfect HolidaySearch for HolidayCheck with Elasticsearch
2.) “San “- Prefix-Suche mit Mehrwortlexemen
▪ Query: “San “
▪ Feature: Query Suggest Prefix Search
▪ Problem: Whitespace als erlaubtes
Zeichen für Mehrwortlexeme
▪ Lösungsansatz: Phrasensuche + Term
Suche
27
3.) Optimum: Suchstringlänge / Token-Count
▪ Anforderung: Betriebssicherheit
ohne Sucherlebnis einzuschränken
(Website copy)
▪ Lösung:
▪typische Termlängen /
Tokenverteilungen aus Daten
bestimmen
28
zu lange Suchanfrage wird zurückgewiesen
http "http://m.holidaycheck.de/svc/search-api/buckets/x x
x x x x x x x x x x x x x x x x x x"
HTTP/1.1 400 Bad Request
Connection: keep-alive
Content-Length: 62
Content-Type: application/json; charset=UTF-8
Date: Thu, 22 Oct 2015 12:26:58 GMT
X-Trace-Token: fe71180598d3-15723
{
"error": "ValidationRejection(search term is too
long,None)."
}
4.) Hotelketten + Ort
▪ Query: ibis münchen
▪ Anforderung: “<Hotellkette>
<Ort>” führt zu einem Suchergebnis
nur mit Hotels einer bestimmten Kette
▪ Lösung: Query Preprocessing
(Keyword Spotting)
30
Learnings
▪ Features in der Suche beeinflussen sich gegenseitig
▪ Gleiches Verhalten in Feature A kann nach Release von Feature B nicht
automatisch angenommen werden
▪ Wie kann man den Funktionalitätsverlust eines Features automatisiert
bemerken ?
▪ Wie kann man die Funktionalität eines Features “schützen” ?
31
Fragen
“Accuracy Tests”
Sicherheitsnetz
Was bringen Accuracy Tests ?
▪ Zusätzliche Sicherheit:
▪Deploy nothing that will decrease Quality
▪ Änderungen auf verschiedenen Ebenen fallen frühzeitig auf
▪ Querbeziehung/ Einflüsse von Features auf andere Features
frühzeitig erkennen
33
Was sind Accuracy Tests ?
▪ ähnlich zu Regressionstests
▪ nicht binär, prozentual
▪ quantitative Tests: Testen einer große Datenmenge vs. ein Beispiel
▪ funktionale / inhaltliche Tests
▪ selbst gesetzte SLAs für die Suchergebnisse
34
Voraussetzungen, Grundlagen
▪ die wichtigsten Daten abdecken
▪ “wichtig” definiert durch harte Kriterien (User Interactions)
▪ Quellen: Suche (innen), Google Analytics (außen)
▪ (ständiger Feedbackloop)
35
Beispiel: User Interaction: Ergebnis Auswählen
{term} => {id/type} : {count}
münchen => 5…5b/dest : 4500
Daten - Beispiel
72632 mallorca/destination 07f5f656-4acc-3230-b7dd-aec3c13af37c
5136 mallorca/destination bc3304c5-a7f0-3cc1-8f3b-7782081d6bf8
691 mallorca/destination 6024bf89-e3bb-374c-8e80-5f527ecc958f
Definition Eines Accuracy Tests
▪ Für alle Suchen nach Destination
sollen bei den am häufigsten
gewählten Ergebnissen
mindestens 90% einen Hit im View-
Window 1-3 erscheinen
▪ X = Queries mit höchster Frequenz
▪ Y = Destination wurden gesucht
▪ Z = View Window 3
▪ Goal 90%
38
Debug-Tooling
Einige Mögliche Testszenarien
▪ Auftrittshäufigkeit
▪ Umsatz (€€€)
▪ Frequenz / €€€
▪ Stabilität beim Tippen
▪ Beobachtete Usecases
▪ Gruppiert nach Typ (Hotel, Ort …)
▪ Kombinationen aus oben genanntem
40
Visualisierung mehrere Testläufe
▪ Testergebnisse werden nach ES
geschrieben
▪ Visualisierung mit Kibana
▪ Trends und Veränderungen
sichtbar machen
▪ für Stakeholder/ PO
41
Integration in den
Development Prozess
Accuracy Tests
Trigger / Anwendung
▪ lokale Entwicklung: Dev Done nur wenn alle Tests “grün” sind
▪Zielzustand im Accuracy Test definieren
▪run and code until green
▪ Update der ES-Indices: Deckt Änderungen in den Daten /
Umbenennungen auf (CI)
▪ Teil des Release-Prozesses: Release => test container on CI
with Production Data => deployment nur wenn Accuracy Tests erfüllt
(CI)
43
Learnings
▪ Daten aktualisieren
▪ Datenerstellung hat initiale Kosten
▪ Integration in den Development Prozess notwendig
▪ Tests haben meistens Recht : unerwartete Fehler werden aufgedeckt
▪ Tooling / Unterstützung der Entwickler notwendig um Akzeptanz zu erreichen
▪ Visualisierung hilfreich
▪ Gutes Medium um Requirements mit Stakeholdern abzustimmen
▪ => Speedup (PO kommt manchmal mit Stories nicht nach :)
44
Fazit
Takeaways
Fazit
▪ Elasticsearch ist das perfekte Tool um eine Suchanwendung zu bauen
▪ Elasticsearch ist auch das perfekte Tool um Tools zu bauen, die bei der
Entwicklung und Optimierung einer Suchanwendung helfen.
▪ πάντα ῥεῖ
▪ Accuracy Tests and Feature Test:
▪wer nicht checkt, sucht dumm
46
get in contact
Mail : andreas.neumann@holidaycheck.com
Twitter handle: @andreas_neumann
Danke für die Aufmerksamkeit :) - Schon einen Urlaub gebucht ?

Weitere ähnliche Inhalte

PPTX
Trabajo de paginas web
PPSX
Invalidez en el Siglo XXI
DOC
Practica de analisis financiero
PPTX
Curso de amor
PDF
Input Migros Clubschulen Wampfler
PPTX
Situacion didactica
PDF
Material de repaso 3° grado (enero febrero)
PDF
Fabelo, josé r. los valores y sus desafíos actuales educap, lima, 2007
Trabajo de paginas web
Invalidez en el Siglo XXI
Practica de analisis financiero
Curso de amor
Input Migros Clubschulen Wampfler
Situacion didactica
Material de repaso 3° grado (enero febrero)
Fabelo, josé r. los valores y sus desafíos actuales educap, lima, 2007

Andere mochten auch (19)

PPTX
Aprende+ act 2. la voz méxico
PDF
Guia sexta reunion cte primaria
PPT
Unidad IV
PDF
Presentación Corporativa Bravent
DOCX
Trabajo autonomo.
PPSX
Conductas reflejas primitivas
PDF
Antrag Markus Suter Vom 3.4.09
PDF
13 persönliche Prinzipien zum gymnasialen Unterricht
DOCX
Combinar correspondencia :3
DOCX
PDF
Campixx 2015
PPTX
Weltbrand App der Stabi Hamburg
ODP
LOS ALIMENTOS
PPT
El horreo
PPTX
Creative commons monica 11 a
PPTX
Teia Moner
PPTX
Fascismo y nacional socialismo
DOCX
Taller
KEY
Unterfranken
Aprende+ act 2. la voz méxico
Guia sexta reunion cte primaria
Unidad IV
Presentación Corporativa Bravent
Trabajo autonomo.
Conductas reflejas primitivas
Antrag Markus Suter Vom 3.4.09
13 persönliche Prinzipien zum gymnasialen Unterricht
Combinar correspondencia :3
Campixx 2015
Weltbrand App der Stabi Hamburg
LOS ALIMENTOS
El horreo
Creative commons monica 11 a
Teia Moner
Fascismo y nacional socialismo
Taller
Unterfranken
Anzeige

Ähnlich wie Building the perfect HolidaySearch for HolidayCheck with Elasticsearch (20)

PDF
Quarterly Technology Briefing - Big Data - Germany
PPTX
Daten natuerlich modellieren und verarbeiten mit Neo4j
PDF
Einführung in Elasticsearch
PDF
MongoDB: Entwurfsmuster für das NoSQL-Schema-Design
PPTX
SMX München 2017: Bastian Grimm & Christian Paavo Spieker
PDF
Echtzeitvisualisierung von Twitter & Co
PPTX
Echtzeitvisualisierung von Twitter und Co.
PDF
Yes zu NoSQL mit MongoDB für .NET-Entwickler
PPTX
Back to Basics-Webinar 5: Einführung in das Aggregation-Framework
PDF
Clickstream Analysis with Spark—Understanding Visitors in Realtime by Josef A...
PDF
Webinar: Erfahrungsbericht - Nachfrageoptimierung mit SAP Predictive Analytics
PDF
Realtime SEO
PDF
Dev Day 2019: Stephan Birnbaum – Die Glaskugel hat ausgedient, wir machen Sof...
PDF
Der Status Quo des Chaos Engineerings
PPTX
Performance-Analyse mit Bordmitteln
PDF
Clickstream Analysis with Spark - Understanding Visitors in Real Time
PDF
Clickstream Analysis with Spark
PDF
C4 Lotusday2008 Distance Leading
PDF
Den Usern mehr bieten: Business Objects Tools als Teil der Business Analytics...
PDF
MongoDB-Skalierung auf echter Hardware vs. Amazon EC2
Quarterly Technology Briefing - Big Data - Germany
Daten natuerlich modellieren und verarbeiten mit Neo4j
Einführung in Elasticsearch
MongoDB: Entwurfsmuster für das NoSQL-Schema-Design
SMX München 2017: Bastian Grimm & Christian Paavo Spieker
Echtzeitvisualisierung von Twitter & Co
Echtzeitvisualisierung von Twitter und Co.
Yes zu NoSQL mit MongoDB für .NET-Entwickler
Back to Basics-Webinar 5: Einführung in das Aggregation-Framework
Clickstream Analysis with Spark—Understanding Visitors in Realtime by Josef A...
Webinar: Erfahrungsbericht - Nachfrageoptimierung mit SAP Predictive Analytics
Realtime SEO
Dev Day 2019: Stephan Birnbaum – Die Glaskugel hat ausgedient, wir machen Sof...
Der Status Quo des Chaos Engineerings
Performance-Analyse mit Bordmitteln
Clickstream Analysis with Spark - Understanding Visitors in Real Time
Clickstream Analysis with Spark
C4 Lotusday2008 Distance Leading
Den Usern mehr bieten: Business Objects Tools als Teil der Business Analytics...
MongoDB-Skalierung auf echter Hardware vs. Amazon EC2
Anzeige

Mehr von Andreas Neumann (11)

PDF
Testing with Style @ Holidaycheck
PDF
Introduction to Scala : Clueda
PDF
Scala : Monads for the Pragmatic Programmer , Composition with Stackable Traits
PDF
Scala Workshop
PDF
Soziale Netzwerke in Bibliotheken
PPT
Mobiler opac verbundkonferenz
PDF
Mobilfunk
PDF
Soziale netzwerke 2010
PPT
Soziale Netzwerke 2009
PPT
Soziale Netzwerke 2008
PPT
Bayerische Staatsbibliothek: mobiler OPACplus
Testing with Style @ Holidaycheck
Introduction to Scala : Clueda
Scala : Monads for the Pragmatic Programmer , Composition with Stackable Traits
Scala Workshop
Soziale Netzwerke in Bibliotheken
Mobiler opac verbundkonferenz
Mobilfunk
Soziale netzwerke 2010
Soziale Netzwerke 2009
Soziale Netzwerke 2008
Bayerische Staatsbibliothek: mobiler OPACplus

Building the perfect HolidaySearch for HolidayCheck with Elasticsearch

  • 1. Building the perfect HolidaySearch for HolidayCheck with Elasticsearch Andreas Neumann : Techlead Search
  • 3. Holidaycheck In Einem Satz ▪Die HolidayCheck AG betreibt das größte deutschsprachige Meinungsportal für Reise und Urlaub im Internet. 3
  • 6. Elasticsearch Bei Holidaycheck ▪Suche ▪Datenanalyse : ES, Kibana ▪Data store: Microservices ▪Zentralisiertes Logging mit ES, Kibana und Logstash (ELK) 6
  • 7. kurz ▪Schweizer Taschenmesser ▪gutes Werkzeug für viele Entwickler-Probleme ▪breite Kenntnis im Unternehmen ▪verschiedene Versionen nebeneinander zu betreiben ist problematisch ▪möglichst früh und kontinuierlich updaten 7 Learnings
  • 9. Unser Setup - Search Cluster ▪ CPU: 4 cores ▪ RAM: 16 gigs ▪ 8 gigs of heap ▪ 5 nodes ▪ 3 indices ▪ 2 400 000 documents ▪ 66 GB of data 9
  • 14. POIs - Points of Interest ▪Lokale ▪Feste ▪Sehenswürdigkeiten 14
  • 15. Software / Search - Service Search-Api
  • 16. Search-API ▪ Endpoints für Produkte ▪ Mobile ▪iOS App ▪Android App ▪Web-Site ▪ API um Suchanfragen an Elasticsearch zu senden ▪ Query Preprocessing 16
  • 17. Frontend: Embedded Search - Mobile Web App
  • 18. Vorgeschichte: Stand Januar 2015 ▪ Team/ Entwickler haben Unternehmen verlassen ▪ lückenhafte Tests ▪ veraltete Dokumentation ▪ alte Elasticsearch Version (0.90) ▪ hardcoded solutions (hurghada) ▪ Deployment-Alptraum ▪ Performance-Probleme (Ø 200 - 400 ms) ▪ gewagte Architektur 18
  • 19. Entscheidung: Neuimplementierung ▪ Aufgabe: Neuentwicklung und Austausch der Suchapplikation ▪ Anforderung: ▪Testbarkeit/Nachvollziehbarkeit: Softwarequalität ▪Testbarkeit/Nachvollziehbarkeit: Suchqualität <= selbst gesetzt ▪generelle Lösungsansätze (z.B. Approximative Suche) ▪Geschwindigkeit 19
  • 20. Search API: Juni 2015 ▪ Testsuite mit UnitTests / Integration Tests ▪ qualitative (Feature Tests) und Quantitative Tests (Accuracy Tests),Blackbox Tests / Regression Tests: ▪170 Feature-Tests ▪4000+ Accuracy-Tests ▪ Deployment: ▪~ 5 min ▪~ 1 -3 Releases pro Woche 20
  • 21. Production Request times: (3 queries per request) 21
  • 23. Featureentwicklung : Regeln Search HC ▪ stets auf harten Daten ▪Query Logs ▪User Tracking ▪… ▪ ständige Analysen ▪qualitativ ▪quantitativ 23
  • 24. 1.) Paris - textuelle Gleichheit ▪ Query: Paris ▪ Erwartung: ▪Paris in Frankreich ▪Stadt der Liebe ▪ Aber: ▪Paris in USA, Texas ▪??? 24
  • 25. Ein Typisches Problem : “Textuelle Gleichheit” ▪ Erklärung: textuelle Gleichheit => gleicher Score ▪ Lösungsansatz: rescoring ▪Idee: Destinationen mit vielen Hotels sind potentiell gute Reiseziele ▪Besonderheit: Rankingveränderungen im vorgegebenen Window 25 naiv: max_score: 9.351926 hits: _id: “3dd…” _score: 9.351926 fields: name: “Paris” hotels: 10 place:”Texas”, "USA" _id: “1f0…” _score: 9.351926 fields: name: ”Paris" hotels:2344 place:"Großraum Paris”, "Frankreich"
  • 27. 2.) “San “- Prefix-Suche mit Mehrwortlexemen ▪ Query: “San “ ▪ Feature: Query Suggest Prefix Search ▪ Problem: Whitespace als erlaubtes Zeichen für Mehrwortlexeme ▪ Lösungsansatz: Phrasensuche + Term Suche 27
  • 28. 3.) Optimum: Suchstringlänge / Token-Count ▪ Anforderung: Betriebssicherheit ohne Sucherlebnis einzuschränken (Website copy) ▪ Lösung: ▪typische Termlängen / Tokenverteilungen aus Daten bestimmen 28
  • 29. zu lange Suchanfrage wird zurückgewiesen http "http://m.holidaycheck.de/svc/search-api/buckets/x x x x x x x x x x x x x x x x x x x x" HTTP/1.1 400 Bad Request Connection: keep-alive Content-Length: 62 Content-Type: application/json; charset=UTF-8 Date: Thu, 22 Oct 2015 12:26:58 GMT X-Trace-Token: fe71180598d3-15723 { "error": "ValidationRejection(search term is too long,None)." }
  • 30. 4.) Hotelketten + Ort ▪ Query: ibis münchen ▪ Anforderung: “<Hotellkette> <Ort>” führt zu einem Suchergebnis nur mit Hotels einer bestimmten Kette ▪ Lösung: Query Preprocessing (Keyword Spotting) 30
  • 31. Learnings ▪ Features in der Suche beeinflussen sich gegenseitig ▪ Gleiches Verhalten in Feature A kann nach Release von Feature B nicht automatisch angenommen werden ▪ Wie kann man den Funktionalitätsverlust eines Features automatisiert bemerken ? ▪ Wie kann man die Funktionalität eines Features “schützen” ? 31 Fragen
  • 33. Was bringen Accuracy Tests ? ▪ Zusätzliche Sicherheit: ▪Deploy nothing that will decrease Quality ▪ Änderungen auf verschiedenen Ebenen fallen frühzeitig auf ▪ Querbeziehung/ Einflüsse von Features auf andere Features frühzeitig erkennen 33
  • 34. Was sind Accuracy Tests ? ▪ ähnlich zu Regressionstests ▪ nicht binär, prozentual ▪ quantitative Tests: Testen einer große Datenmenge vs. ein Beispiel ▪ funktionale / inhaltliche Tests ▪ selbst gesetzte SLAs für die Suchergebnisse 34
  • 35. Voraussetzungen, Grundlagen ▪ die wichtigsten Daten abdecken ▪ “wichtig” definiert durch harte Kriterien (User Interactions) ▪ Quellen: Suche (innen), Google Analytics (außen) ▪ (ständiger Feedbackloop) 35
  • 36. Beispiel: User Interaction: Ergebnis Auswählen {term} => {id/type} : {count} münchen => 5…5b/dest : 4500
  • 37. Daten - Beispiel 72632 mallorca/destination 07f5f656-4acc-3230-b7dd-aec3c13af37c 5136 mallorca/destination bc3304c5-a7f0-3cc1-8f3b-7782081d6bf8 691 mallorca/destination 6024bf89-e3bb-374c-8e80-5f527ecc958f
  • 38. Definition Eines Accuracy Tests ▪ Für alle Suchen nach Destination sollen bei den am häufigsten gewählten Ergebnissen mindestens 90% einen Hit im View- Window 1-3 erscheinen ▪ X = Queries mit höchster Frequenz ▪ Y = Destination wurden gesucht ▪ Z = View Window 3 ▪ Goal 90% 38
  • 40. Einige Mögliche Testszenarien ▪ Auftrittshäufigkeit ▪ Umsatz (€€€) ▪ Frequenz / €€€ ▪ Stabilität beim Tippen ▪ Beobachtete Usecases ▪ Gruppiert nach Typ (Hotel, Ort …) ▪ Kombinationen aus oben genanntem 40
  • 41. Visualisierung mehrere Testläufe ▪ Testergebnisse werden nach ES geschrieben ▪ Visualisierung mit Kibana ▪ Trends und Veränderungen sichtbar machen ▪ für Stakeholder/ PO 41
  • 42. Integration in den Development Prozess Accuracy Tests
  • 43. Trigger / Anwendung ▪ lokale Entwicklung: Dev Done nur wenn alle Tests “grün” sind ▪Zielzustand im Accuracy Test definieren ▪run and code until green ▪ Update der ES-Indices: Deckt Änderungen in den Daten / Umbenennungen auf (CI) ▪ Teil des Release-Prozesses: Release => test container on CI with Production Data => deployment nur wenn Accuracy Tests erfüllt (CI) 43
  • 44. Learnings ▪ Daten aktualisieren ▪ Datenerstellung hat initiale Kosten ▪ Integration in den Development Prozess notwendig ▪ Tests haben meistens Recht : unerwartete Fehler werden aufgedeckt ▪ Tooling / Unterstützung der Entwickler notwendig um Akzeptanz zu erreichen ▪ Visualisierung hilfreich ▪ Gutes Medium um Requirements mit Stakeholdern abzustimmen ▪ => Speedup (PO kommt manchmal mit Stories nicht nach :) 44
  • 46. Fazit ▪ Elasticsearch ist das perfekte Tool um eine Suchanwendung zu bauen ▪ Elasticsearch ist auch das perfekte Tool um Tools zu bauen, die bei der Entwicklung und Optimierung einer Suchanwendung helfen. ▪ πάντα ῥεῖ ▪ Accuracy Tests and Feature Test: ▪wer nicht checkt, sucht dumm 46
  • 47. get in contact Mail : andreas.neumann@holidaycheck.com Twitter handle: @andreas_neumann
  • 48. Danke für die Aufmerksamkeit :) - Schon einen Urlaub gebucht ?