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
Introduction to RethinkDB: 1KE Meetup
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Jorge Silva
June 12, 2015
Programming
83
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Introduction to RethinkDB: 1KE Meetup
Jorge Silva
June 12, 2015
More Decks by Jorge Silva
See All by Jorge Silva
Introduction to RethinkDB : Move fast and break things
thejsj
2
300
ForwardJS - RethinkDB - Getting Started
thejsj
0
240
ForwardJS - RethinkDB - Advanced Queries
thejsj
1
240
Automatic Failover in RethinkDB
thejsj
0
270
Workshop: Introduction to RethinkDB : Santa Cruz JS
thejsj
1
170
Push databases: A better way to build realtime apps
thejsj
0
150
Data Modeling in RethinkDB
thejsj
4
300
RethinkDB+Angular.js: Building realtime web applications
thejsj
10
30k
Introduction to RethinkDB : Hack Reactor
thejsj
4
450
Other Decks in Programming
See All in Programming
【やさしく解説 設計編 #1】「ドメイン駆動」と「実装駆動」ってなに? 〜設計の考え方を、たとえ話で学ぼう〜
panda728
PRO
1
110
AI 輔助遺留系統現代化的經驗分享
jame2408
1
1.2k
Embedded SREと共に達成した会員管理システムのAWS移行 - SRE NEXT 2026 ランチスポンサーセッション
niftycorp
PRO
1
2.4k
광주소프트웨어마이스터고등학교 DevFest 특강 - 바이브 코딩 시대에서 주니어 개발자로 살아남는 방법
utilforever
1
110
使用 Meilisearch 建立新聞搜尋工具
johnroyer
0
140
信頼性について考えてみる(SRE NEXT 2026 miniLT)
hayama17
0
170
そのテスト、説明できますか?~LWテスト戦略FW~のご紹介
nakahara
0
200
過去最大のMCPアップデート! 2026-07-28 RC版の謎に迫る
licux
6
460
はてなアカウント基盤 State of the Union
cockscomb
1
1.3k
Contextとはなにか
chiroruxx
1
390
SLOをサービス品質の共通言語にするために 取り組んできたこと
wakana0222
0
480
act2-costs.pdf
sumedhbala
0
110
Featured
See All Featured
Raft: Consensus for Rubyists
vanstee
141
7.6k
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
460
Practical Orchestrator
shlominoach
191
11k
brightonSEO & MeasureFest 2025 - Christian Goodrich - Winning strategies for Black Friday CRO & PPC
cargoodrich
3
750
Fashionably flexible responsive web design (full day workshop)
malarkey
408
67k
Reality Check: Gamification 10 Years Later
codingconduct
0
2.2k
Six Lessons from altMBA
skipperchong
29
4.3k
Navigating the moral maze — ethical principles for Al-driven product design
skipperchong
2
410
Done Done
chrislema
186
16k
Fireside Chat
paigeccino
42
4k
Prompt Engineering for Job Search
mfonobong
0
370
HTML-Aware ERB: The Path to Reactive Rendering @ RubyCon 2026, Rimini, Italy
marcoroth
2
330
Transcript
1KE Tech Talks San Francisco, California June 12, 2015 RethinkDB
The database for the realtime web
Jorge Silva @thejsj Developer Evangelist @ RethinkDB
Preface Why is realtime important?
Realtime apps
Realtime apps
Realtime apps • More and more apps are built to
be realtime • Users have come to want and expect this behavior in their apps
Building realtime apps is hard • You can keep everything
in a single server • You can poll the database to keep track of updates • You can publish updates through a message broker
Building realtime apps is hard • All solutions present a
tradeoff between scalability and complexity • It’s hard to keep track of state in realtime architectures.
Introduction What is RethinkDB?
What is RethinkDB? • Open source database for building realtime
web applications • NoSQL database that stores schemaless JSON documents • Distributed database that is easy to scale
Built for Realtime Apps • Subscribe to change notifications from
database queries • No more polling — the database pushes changes to your app • Reduce the amount of plumbing needed to stream live updates
Built for Realtime Apps RethinkDB is an excellent database for:
• Collaborative web and mobile apps • Multiplayer games • Streaming analytics apps • Realtime marketplaces • Connected devices
Introduction to ReQL RethinkDB Query Language
Introduction to ReQL • ReQL embeds natively into your programming
language • Compose ReQL queries by chaining commands
Anatomy of a ReQL Query r.table("players") .orderBy({ index: r.desc("score") })
.limit(3) Top three players by score
Anatomy of a ReQL Query r.table("players") .orderBy({ index: r.desc("score") })
.limit(3) Access a database table
Anatomy of a ReQL Query r.table("players") .orderBy({ index: r.desc("score") })
.limit(3) Order results
Anatomy of a ReQL Query r.table("players") .orderBy({ index: r.desc("score") })
.limit(3) Use index as pre-processed lookup
Anatomy of a ReQL Query r.table("players") .orderBy({ index: r.desc("score") })
.limit(3) Order results in descending order
Anatomy of a ReQL Query r.table("players") .orderBy({ index: r.desc("score") })
.limit(3) Only get the first three results
Subscribe to change notifications on database queries Changefeeds
r.table("users").changes() Track changes on the users table Changefeeds
Changefeeds r.table("players") .orderBy({ index: r.desc("score") }) .limit(3) .changes() Get updates
on top three players
Realtime apps Demo
http://questions.rethinkdb.com Questions
Additional Resources • RethinkDB website: http://rethinkdb.com • RethinkDB installation: http://rethinkdb.com/docs/
install/
Questions •
[email protected]
• @thejsj