2014-11-29 8 views
9

Hallo ich bin neu in Elastic Search und ich möchte es mit scala verwenden, so fand ich einige Codes Beispiele auf Github, aber es gab sehr komplexe Beispiele wurden wie für einen Anfänger I gegeben verbringen meine ganzen Tag bei dem Versuch, this tutorial aber am Ende ich bin verwirrt, wie zu Beginn dieses ist, es ist sehr komplex zu verstehen, wie bei anderen Scala Client BeispieleWie man mit Elastic Search mit scala client

  1. https://github.com/scalastuff/esclient
  2. https://github.com/bsadeh/scalastic
  3. https://github.com/gphat/wabisabi auch zu verstehen, Ich habe es versucht, aber es enthält Fehler und ich habe es ihr geschrieben e sowie https://stackoverflow.com/questions/27145015/scalagetstatuscode-getresponsebody-is-not-a-member-of-dispatch-future

Alle sind diese Beispiele für eine neue Lernende wie mich sehr komplex, wie ich durch first chapter of Elastic Search from its guide gehen dann mit Scala.Please schlagen mir einige Ausgangspunkt die gleichen Dinge pro-grammatisch ich tun möchte, von wo Ich fange an zu lernen und auch gibt es eine Anfrage nicht markieren diese Frage als nicht konstruktiv zuerst Ich versuchte mich nach dann ich diese Frage posten, bitte ich brauche Hilfe Ich möchte elastische Suche mit Hilfe von Skala

+1

Was genau haben Sie versucht und warum hat es nicht funktioniert? – Ryan

+0

elastic4s Beispiel auf github ist sehr komplex für Anfänger, um zuerst zu erkennen, dass ich einen Index zu beenden, dann habe ich in seinen Code für die Erstellung von Index lokalisierte es gibt Tausende von Code-Zeile ich habe verwirrt, wo es zu starten, und während der Suche andere Beispiele im Internet Ich konnte kein nützliches Tutorial für Scala mit elastischer Suche finden – swaheed

+0

Ich denke, das elastic4s readme richtet sich an Leute, die elasticsearch kennen (oder von elasticsearch.org lernen können) und konzentriert sich stattdessen auf den scala-Treiber unterscheidet sich von dem Java-Treiber. – monkjack

Antwort

12

Das Elastic4s Projekt enthält, in der Nähe Der Anfang der Readme, ein einfaches Beispiel für die Verwendung des Treibers. Dieses Beispiel ist ein komplettes Scala-Programm, das Sie ausführen können.

import com.sksamuel.elastic4s.ElasticClient 
import com.sksamuel.elastic4s.ElasticDsl._ 

object Test extends App { 

    val client = ElasticClient.local 

    // await is a helper method to make this operation sync instead of async 
    // You would normally avoid doing this in a real program as it will block 
    client.execute { index into "bands/artists" fields "name"->"coldplay" }.await 

    val resp = client.execute { search in "bands/artists" query "coldplay" }.await 
    println(resp) 

} 

Wenn dies zu kompliziert ist, dann ist das nicht, weil das Scala-Client zu kompliziert ist, sondern weil Sie noch nicht genug verstehen, über Elasticsearch oder Scala. Der Scala-Client, den Sie sich ansehen, ist ein typisches DSL, daher verwendet er einige Scala-Tricks, die es angenehm machen, ihn als Client zu verwenden, aber unter den Covern nicht unbedingt einfach zu verstehen.

Hier sind einige gute Verbindungen zu verstehen Elasticsearch:

Bevor Sie eine der Scala-Treiber verwenden, sollten Sie bei am wenigsten verstehe die grundlegenden Konzepte von ein Index/Typ, die Abfrage DSL und was ein Knoten in Elasticsearch ist. Es kann auch hilfreich sein, den JSON zu betrachten, den Sie mit der HTTP-Schnittstelle senden können, da das etwas leichter zu sehen ist, da die Elasticsearch-Dokumente anfangs schwerfällig sein können.

Verwandte Themen