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
AIエージェントのキホンから学ぶ「エージェンティックコーディング」実践入門
masahiro_nishimi
7
1.2k
AI時代でも変わらない技術コミュニティの力~10年続く“ゆるい”つながりが生み出す価値
n_takehata
2
490
AIに仕事を丸投げしたら、本当に楽になれるのか
dip_tech
PRO
0
160
Package Management Learnings from Homebrew
mikemcquaid
0
280
CSC307 Lecture 10
javiergs
PRO
1
690
AI駆動開発の本音 〜Claude Code並列開発で見えたエンジニアの新しい役割〜
hisuzuya
1
390
CSC307 Lecture 08
javiergs
PRO
0
690
NetBSD+Raspberry Piで 本物のPSGを鳴らすデモを OSC駆動の7日間で作った話 / OSC2026Osaka
tsutsui
1
130
あなたはユーザーではない #PdENight
kajitack
4
280
エージェント開発初心者の僕がエージェントを作った話と今後やりたいこと
thasu0123
0
200
Rails Girls Tokyo 18th GMO Pepabo Sponsor Talk
yutokyokutyo
0
170
米国のサイバーセキュリティタイムラインと見る Goの暗号パッケージの進化
tomtwinkle
1
310
Featured
See All Featured
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
19k
Testing 201, or: Great Expectations
jmmastey
46
8.1k
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.1k
Designing Experiences People Love
moore
144
24k
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
9.7k
We Are The Robots
honzajavorek
0
180
AI: The stuff that nobody shows you
jnunemaker
PRO
3
330
Odyssey Design
rkendrick25
PRO
2
520
エンジニアに許された特別な時間の終わり
watany
106
230k
Six Lessons from altMBA
skipperchong
29
4.2k
Making the Leap to Tech Lead
cromwellryan
135
9.7k
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
0
150
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!