• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Elasticsearch (Rubyshift 2013)
 

Elasticsearch (Rubyshift 2013)

on

  • 1,490 views

General introduction to Elasticsearch at the RubyShift 2013 conference. ...

General introduction to Elasticsearch at the RubyShift 2013 conference.

Download the source code for demos:

* http://git.io/hello-elasticsearch-ruby
* http://git.io/stackexchange-elasticsearch

Statistics

Views

Total Views
1,490
Views on SlideShare
1,460
Embed Views
30

Actions

Likes
0
Downloads
13
Comments
0

2 Embeds 30

https://twitter.com 25
http://librosweb.es 5

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

CC Attribution-NonCommercial-ShareAlike LicenseCC Attribution-NonCommercial-ShareAlike LicenseCC Attribution-NonCommercial-ShareAlike License

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Elasticsearch (Rubyshift 2013) Elasticsearch (Rubyshift 2013) Presentation Transcript

    • Karel Minařík @karmiq elasticsearch
    • What is Elasticsearch?
    • Elasticsearch Flexible REST API & JSON documents; API driven configuration; scripting; index aliases; … Scalable Distributed; built for cloud; … Versatile Search; analytics; storage; alerting; text clustering; NLP … Open Open source; community; plugins; …
    • Demo http://git.io/hello-elasticsearch-ruby
    • http://stackoverflow.com total title date author rating answers result ordering query syntax excerpt highlight
    • http://stackexchange.com/sites?view=list#questions
    • Schema-less is not schema-free
    • Flat structure An index per model. "Common search" scenario. Cannot cross-search. users questions answers comments { "name" : "John", "location" : "..." } { "title" : "My First Question", "body" : "..." } { "title" : "My First Answer", "body" : "..." } { "body" : "Just a comment: ..." }
    • Denormalized Cheap to query, expensive to update. { "title": "My first question", "body": "...", "user": { "name": "John", "location": "..." }, "comments": [ { "text": "Good question!", "user": { "name": "Robert", "location": "..." } } ] } questions answers
    • Compromised denormalisation Some properties don't change (user_name). Some can either be "freezed" or we have to pay the price of the mass update (user_location). { "id" : "john", "name" : "John", "location" : "..." } myapp user question answer { "id" : 1, "title" : "My first question", "body" : "...", "user" : { "name" : "John", "location" : "..." }, "comments" : [ { "body" : "...", "user" : { ... } }, { "body" : "...", "user" : { ... } } ] } { "id" : 2, "title" : "My first answer", "parent_id" : 1, "user" : { "name" : "Robert", "location" : "..." }, "comments" : [ { "body" : "...", "user" : { ... } } ] } parent_id comment comment
    • http://git.io/stackexchange-elasticsearch Demo
    • thanks!