App Search

App Suche

Ein gelungenes Benutzererlebnis steht und fällt mit der Suche. Relevante und schnelle Ergebnisse sind wichtig. Elasticsearch ist derzeit die beliebteste Open-Source-Suchmaschine. Und das aus gutem Grund.

Entdecken Sie App-Search mit Elastic. Probieren Sie es aus.

Neu Elastic stellt die Swiftype App Search mit öffentlich erhältlichem Beta vor. Probieren Sie es aus.

Sind hatten in den letzten 24 Stunden Kontakt mit Elastic

Wir alle suchen ständig nach bestimmten Informationen: Ob Kreditkartenabrechnungen oder Termine, die nächste Mahlzeit, das beste Shampoo oder die Fahrt nach Hause – tausende Anwendungen und Websites nutzen Elasticsearch für ihr Sucherlebnis, darunter Wikipedia, XING, SoundCloud, AutoScout24, Tinder und Dell.com.

Dabei spielt es keine Rolle, ob es um Dokumentensuche, E-Commerce-Suche, Geo-Suche oder Graph-Suche geht, die Möglichkeiten sind endlos. Erste Schritte – so geht es los.

Fokus auf Geschwindigkeit und Skalierbarkeit

Queries, die in anderen Systemen Stunden oder Minuten dauern, erledigt Elasticsearch in Millisekunden. Dadurch können Sie einfach auf Petabytes an Daten zugreifen. Sie verarbeiten im Handumdrehen sämtliche Texte, Zahlen, Daten, IPs und Geodaten, die Sie speichern möchten.

Ein weiterer Vorteil: Sie können erst einmal klein anfangen. Die Skalierung erfolgt dann horizontal, wobei Queries und Indizes im Cluster automatisch verteilt werden.

Sie können alles selbst steuern

Bei Elasticsearch haben Sie die volle Kontrolle über die Suchergebnisse Ihrer App. Es ist Ihre Open-Source-Suchmaschine, keine Blackbox.

Sie haben alles selbst in der Hand: Die Präzisierung der Relevanz, die Konfiguration der Textanalyse, die Verbesserung von Queries und die Optimierung von Suchergebnissen, immer in Echtzeit darauf abgestimmt, was Benutzer suchen, wann sie suchen und wonach sie als Nächstes suchen – und sogar darüber hinaus.

Elasticsearch ist entwicklerfreundlich

Elasticsearch arbeitet mit einer einfachen, einheitlichen Abfrage-Sprache und nutzt standardgemäße RESTful-APIs und JSON. Auch Sprach-Clients werden unterstützt, darunter Python, Ruby, .NET, Java, Groovy (und viele weitere), die ganz natürlich zum Einsatz kommen und mit denen Sie Elasticsearch so verwenden können, wie Sie möchten – unabhängig von Ihren Programmierkenntnissen.

(Wir haben außerdem eine globale Community mit über 100.000 Mitgliedern, worauf wir ganz besonders stolz sind.)

									curl -H "Content-Type: application/json" -XGET
'http://localhost:9200/social-*/_search' -d '{
  "query": {
    "match": {
      "message": "myProduct"
    }
  },
  "aggregations": {
    "top_10_states": {
      "terms": {
        "field": "state",
        "size": 10
      }
    }
  }
}'
								
									RestHighLevelClient client = new RestHighLevelClient(RestClient.builder(
                    new HttpHost("localhost", 9200, "http")).build());

SearchSourceBuilder searchSourceBuilder = new SearchSourceBuilder();
searchSourceBuilder.query(QueryBuilders.matchAllQuery());            
searchSourceBuilder.aggregation(AggregationBuilders.terms("top_10_states").field("state").size(10));

SearchRequest searchRequest = new SearchRequest();
searchRequest.indices("social-*");
searchRequest.source(searchSourceBuilder);
SearchResponse searchResponse = client.search(searchRequest);
								
									var client = new ElasticClient();

var searchResponse = client.Search<Tweet>(s => s
    .Index("social-*")
    .Query(q => q
        .Match(m => m
            .Field(f => f.Message)
            .Query("myProduct")
        )
    )
    .Aggregations(a => a
        .Terms("top_10_states", t => t
            .Field(f => f.State)
            .Size(10)
        )
    )
);
								
									from elasticsearch import Elasticsearch

esclient = Elasticsearch(['localhost:9200'])
response = esclient.search(
index='social-*',
body={
    "query": {
        "match": {
            "message": "myProduct"
        }
    },
    "aggs": {
        "top_10_states": {
            "terms": {
                "field": "state",
                "size": 10
            }
        }
    }
}
)
								
									var elasticsearch = require('elasticsearch');
var esclient = new elasticsearch.Client({
  host: 'localhost:9200'
});
esclient.search({
  index: 'social-*',
  body: {
    query: {
      match: { message: 'myProduct' }
    },
    aggs: {
      top_10_states: {
        terms: {
            field: 'state',
            size: 10
        }
      }
    }
  }
}
).then(function (response) {
    var hits = response.hits.hits;
}
);
								
									$esclient = Elasticsearch\ClientBuilder::create()
              ->setHosts(["localhost:9200"])
              ->build();
$params = [
'index' => 'social-*',
'body' => [
    'query' => [
        'match' => [ 'message' => 'myProduct' ]
    ],
    'aggs' => [
        'top_10_states' => [
            'terms' => [
                'field' => 'state',
                'size' => 10,
            ]
        ]
    ]
]
];
$response = $esclient->search($params);
								
									use Search::Elasticsearch;

my $esclient = Search::Elasticsearch->new( nodes => 'localhost:9200' );
my $response = $esclient->search(
index => 'social-*',
body => {
        query => {
            match => { message => 'myProduct' }
        },
        aggs => {
            top_10_states => {
                terms => {
                    field => 'state',
                    size => 10
                }
            }
        }
    }
);
								
									require 'elasticsearch'

esclient = Elasticsearch::Client.new

response = esclient.search index: 'social-*', body: {
  query: {
    match: {
      message: 'myProduct'
    }
  },
  aggregations: {
    top_10_states: {
      terms: {
        field: 'state',
        size: 10
      }
    }
  }
}
								

Sie sind in guter Gesellschaft: Ein Erfahrungsbericht von Walgreens

„Don't waste the customer's time“ (Verschwenden Sie niemals die Zeit Ihres Kunden) lautet die Devise des US-Einzelhändlers Walgreens. Das Unternehmen konnte dieses Versprechen einhalten, indem es seine eigene, unflexible Suchlösung für die Handy-App durch Elasticsearch ersetzte.

Walgreens ist nicht das einzige Unternehmen, das Elastic für die Suche einsetzt. Hier finden Sie weitere Kundenbeispiele.

Die Suche in Ihrer App ist erst der Anfang

Haben Sie Metriken? Proxy- oder Firewall-Logs? Webseiten- oder Server-Logs? Zentralisieren Sie all diese Daten im Elastic-Stack, um das volle Potenzial Ihres Anwendungsfalls zu nutzen.

Logging

Schnelles und skalierbares Logging – ohne Unterbrechung.

Mehr erfahren

Metriken

Erhalte Einblick in Zahlen: CPU, Speicher, usw.

Mehr erfahren

Website-Suche

Optimiere das Sucherlebnis auf deiner Website.

Mehr erfahren

Sicherheitsanalysen

Interaktive Untersuchung – schnell und skalierbar.

Mehr erfahren

APM

Erhalte Einblicke in deine Application-Performance.

Mehr erfahren