Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
ElasticSearch with Ruby
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Oriol Gual
March 22, 2013
Programming
10
3.2k
ElasticSearch with Ruby
An introductory talk about using ElasticSearch with Ruby (and Rails).
Oriol Gual
March 22, 2013
Tweet
Share
Other Decks in Programming
See All in Programming
コントリビューターによるDenoのすゝめ / Deno Recommendations by a Contributor
petamoriken
0
200
AIで開発はどれくらい加速したのか?AIエージェントによるコード生成を、現場の評価と研究開発の評価の両面からdeep diveしてみる
daisuketakeda
1
970
余白を設計しフロントエンド開発を 加速させる
tsukuha
7
2.1k
開発者から情シスまで - 多様なユーザー層に届けるAPI提供戦略 / Postman API Night Okinawa 2026 Winter
tasshi
0
200
Oxlint JS plugins
kazupon
1
770
AIエージェントのキホンから学ぶ「エージェンティックコーディング」実践入門
masahiro_nishimi
4
330
インターン生でもAuth0で認証基盤刷新が出来るのか
taku271
0
190
メルカリのリーダビリティチームが取り組む、AI時代のスケーラブルな品質文化
cloverrose
2
510
2026年 エンジニアリング自己学習法
yumechi
0
130
dchart: charts from deck markup
ajstarks
3
990
AI時代の認知負荷との向き合い方
optfit
0
150
0→1 フロントエンド開発 Tips🚀 #レバテックMeetup
bengo4com
0
540
Featured
See All Featured
How To Stay Up To Date on Web Technology
chriscoyier
791
250k
What's in a price? How to price your products and services
michaelherold
247
13k
Designing Experiences People Love
moore
144
24k
Six Lessons from altMBA
skipperchong
29
4.1k
Darren the Foodie - Storyboard
khoart
PRO
2
2.3k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
Tell your own story through comics
letsgokoyo
1
800
HDC tutorial
michielstock
1
360
Measuring & Analyzing Core Web Vitals
bluesmoon
9
750
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
72
We Have a Design System, Now What?
morganepeng
54
8k
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
160
Transcript
ElasticSearch with Ruby
Oriol Hi, I ‘m
Me • github.com/oriolgual • twitter.com/oriolgual • codegram.com
None
None
ElasticSearch • OpenSource search engine • Speaks JSON over HTTP
• RESTFul • WebScaleReady™
Basics • Indexs • Types • Documents • Mapping •
Analyzing • Boosting
Examples curl -XPUT 'http://localhost:9200/twitter/' curl -XPUT 'http://localhost:9200/twitter/tweet/1' -d '{ "user"
: "kimchy", "post_date" : "2009-11-15T14:12:12", "message" : "trying out Elastic Search" }' curl -XGET 'http://localhost:9200/twitter/tweet/1' curl -XGET 'http://localhost:9200/twitter/tweet/_search?q=user:kimchy'
+ Ruby ElasticSearch
Clients • Tire • Elastictastic • Rubberband • Net::HTTP (nah,
just kidding)
Tire
None
Tire • ActiveRecord/ActiveModel integration • Custom DSL • Indexing, mapping,
analyzing, auto-loading • Searching
Elastictastic • Object Document Mapper • Define fields at the
model • has_many and belongs_to support • Better search DSL (than Tire)
Rubberband • Lightweight Ruby client • Different transports • Index
admin, indexing and searching.
None
Our approach • Rubberband • Indexer objects triggered by an
observer • ElasticSearch only as search engine • Custom service objects to search
Examples • Observer • Indexer • Service object
• filters • custom_score • custom_filter_score • boosting • geo-stuff
ElasticSearch goodies
• Elastomer.com • Bonsai.io • Found.no • Searchbox.io ElasticSearch SaaS
Further reading • http://www.elasticsearch.org/ • http://lucene.apache.org/ • https://github.com/karmi/tire • https://github.com/grantr/rubberband
• https://github.com/brewster/elastictastic • https://github.com/sonian/elasticsearch-jetty • http://getelastomer.com/blog/ • http://jontai.me/blog/
Thanks!