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
The first PostSQL database?
Search
Jacob Kaplan-Moss
September 18, 2012
Technology
17
2.4k
The first PostSQL database?
My keynote given at PostgresOpen 2012.
Jacob Kaplan-Moss
September 18, 2012
Tweet
Share
More Decks by Jacob Kaplan-Moss
See All by Jacob Kaplan-Moss
To ••• With Passwords
jacobian
4
870
How to Ace a Technical Interview
jacobian
273
22k
Implementing Multi-factor Auth (dotSecurity 2016)
jacobian
10
1.3k
Heroku Under The Hood - Django Under The Hood 2015
jacobian
9
520
Django's request/response cycle - Django Under The Hood 2015
jacobian
9
1.1k
Minimum Viable Security - Wharton Web Conference 2015
jacobian
1
960
Django minus Django (DJangoCon EU 2014)
jacobian
12
1.3k
Heroku 101 – PyCon 2014
jacobian
1
880
Be Agile, Not Vulnerable: Security engineering in an agile world
jacobian
8
670
Other Decks in Technology
See All in Technology
定量データと定性評価を用いた技術戦略の組織的実践 / Systematic implementation of technology strategies using quantitative data and qualitative evaluation
chaspy
5
570
actionlint の Linter 設計
rhysd
5
700
SSII2024 [OS1] 自動運転における 重要技術とトレンド紹介
ssii
PRO
0
170
セキュリティ研修 〜テクニカルパート〜(サイバーエージェント新卒研修2024)
cyberagentdevelopers
PRO
2
290
Power Automateのデータ操作(Data Operation)について (Ver.モダンデザイナー)
miyakemito
4
320
Liberty Dojo 2024 第1回「いまからでも遅くない!LibertyでエンタープライズJavaのモダナイズ」
takakiyo
0
160
Cloudflare Workersで構築する非同期ジョブシステム
aiji42
6
900
ドラッグストア店員が 独学で化粧品顧客管理アプリを作成した話
mierune
PRO
1
250
Spring for GraphQL の実践 #jjug_ccc #jjug_ccc_c / Spring for GraphQL in Practice
sms_tech
1
120
RAGの評価フレームワーク「Ragas」をさくっとキャッチアップ
os1ma
4
910
不要な DNS リソースレコードは消そう / Delete unused DNS records
wa6sn
4
3k
リードタイム、コストを最適化しながら 回復性を求めるクラウドネイティブ戦略 #CNDS2024
sgrokym
1
170
Featured
See All Featured
Automating Front-end Workflow
addyosmani
1359
200k
A Modern Web Designer's Workflow
chriscoyier
689
190k
Web Components: a chance to create the future
zenorocha
306
41k
ParisWeb 2013: Learning to Love: Crash Course in Emotional UX Design
dotmariusz
104
6.7k
Reflections from 52 weeks, 52 projects
jeffersonlam
345
19k
The Cult of Friendly URLs
andyhume
74
5.8k
Building Applications with DynamoDB
mza
89
5.7k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
359
22k
Fireside Chat
paigeccino
23
2.7k
Bash Introduction
62gerente
606
210k
Designing on Purpose - Digital PM Summit 2013
jponch
112
6.6k
Rails Girls Zürich Keynote
gr2m
91
13k
Transcript
The first Post-SQL database? Jacob Kaplan-Moss
[email protected]
“So… I have this conference… What I'm interested in is
a talk about why Django chose to specifically recommend PostgreSQL.”
None
None
None
L A M P
Linux Apache MySQL Perl
Linux Apache PostgreSQL Python
Linux Apache PostgreSQL Python RabbitMQ
Linux Apache PostgreSQL Python RabbitMQ Elastic Search
Linux Apache PostgreSQL Python RabbitMQ Elastic Search Redis
Linux Apache PostgreSQL Python RabbitMQ Elastic Search Redis MongoDB
L A P P R E R M ? M
A P P L E R R ?
“Modern web stack”
“If the implementation’s hard to explain, it’s a bad idea.”
— The Zen of Python
Relational database: Task queue: RabbitMQ Search Engine: Elastic Search Key-Value
database: Redis Document database: MongoDB
Relational database: Task queue: Search Engine: Elastic Search Key-Value database:
Redis Document database: MongoDB
Relational database: Task queue: Search Engine: Key-Value database: Redis Document
database: MongoDB
Relational database: Task queue: Search Engine: Key-Value database: Document database:
MongoDB
Relational database: Task queue: Search Engine: Key-Value database: Document database:
None
One database to rule them all, One database to find
them, One database to bring them all, And in the Cloud to bind them.
None
ˑ “PostSQL”
Post-
Postmodernism
Postmodernism: “The thing that comes after Modernism.”
Postmodernism: “We can never be pre-modern again.”
Post-
What do relational databases get right?
What do relational databases get right? ✓ Ad-hoc queries.
What do relational databases get right? ✓ Ad-hoc queries. ✓
Unified, standard* query language.
What do relational databases get right? ✓ Ad-hoc queries. ✓
Unified, standard* query language. ✓ A great and powerful respect for data.
What do NoSQL databases get right?
What do NoSQL databases get right? ✓ Ease of on-boarding.
What do NoSQL databases get right? ✓ Ease of on-boarding.
✓ Schemaless data storage.
“Static typing prevents certain kinds of failures. Unfortunately, it also
prevents certain kinds of successes.” — Ned Batchelder
“Schemas prevent certain kinds of failures. Unfortunately, they also prevent
certain kinds of successes.” — Me
What do NoSQL databases get right?
What do NoSQL databases get right? ✓ Ease of on-boarding.
✓ Schemaless data storage.
What do NoSQL databases get right? ✓ Ease of on-boarding.
✓ Schemaless data storage. ✓ Easy horizontal scaling.
redis> slaveof 1.2.3.4
Relational Non-relational ✓ Ad-hoc queries. ✓ SQL ✓ Respect for
data. ✓ Ease of on-boarding. ✓ Schemaless data storage. ✓ Easy horizontal scaling.
PostSQL ✓ Ad-hoc queries. ✓ SQL ✓ Respect for data.
✓ Ease of on-boarding. ✓ Schemaless data storage. ✓ Easy horizontal scaling.
None
$ ./postsql
$ ./postsql postsql@node1> INSERT INTO cities (name, state)
VALUES ("Chicago", "IL");
$ ./postsql postsql@node1> INSERT INTO cities (name, state)
VALUES ("Chicago", "IL"); postsql@node2> SLAVEOF node1;
PostgreSQL ➡ PostSQL? ➡ Easier installation and configuration. ➡ More
support for schemaless operation. ➡ Easier replication and scaling.
PostgreSQL: The first PostSQL database. Jacob Kaplan-Moss
[email protected]