HackerTube
HomeLongsLikedHistoryWatch laterCategoriesPlaylistsSettings

How Modern SQL Databases Come up with Algorithms that You Would Have Never Dreamed Of by Lukas Eder

Devoxx3 HN recommenders · recommended in 3 months, 2019-2023
YouTube
55K views · 9 years ago · talk · evergreen

Lukas Eder's Devoxx talk on how modern cost-based SQL optimizers rewrite and plan queries in ways developers would not expect. It argues that declarative SQL, used well, can run complex queries very fast.

HN commenters recommend it to developers unfamiliar with how much leverage and intelligence there is in a SQL database.

Databases & storage#sql#queryoptimizer#databases#postgresql#declarativeprogramming

6 comments from Hacker News

@lukaseder2023 · in “Permazen: Language-natural persistence to KV stores”

> This may be more intuitive for some developers, especially those that don't use SQL all the time. I tend to recommend my famous talk to such developers: ▶ this video

RecommendsView on HN
@lukaseder2022 · in “Parsing SQL”

>Totally agree. Lukas Eder has some nice presentations about it. Thanks for the shout out! For the record, that's probably the referenced talk: ▶ this video

CitesView on HN
@loudlambda2022 · in “A Hairy PostgreSQL Incident”

I would suggest that learning SQL (the syntax) isn't the crux--it's just syntax you learn over time based off need, just like learning python--what you need is motivation. I'd suggest watching this video to get a flavor of how much leverage using the database can give you: ▶ this video If the database can make you more productive and more efficient and make your life easier, you now have incentive to use it more. Another thing that took my use of databases to the next level, was using PostGraphile ( link ). It takes a PostgreSQL database and provides a GraphQL endpoint for it. Use that as your only backend. You can use PostgreSQL row-level security to do access control (who can see or modify what). You can use PL/pgSQL to write business logic for higher level calculations. You can use constraints and triggers to do data validation. Each of these areas has an initially steep learning curve, and wonky syntax, but once you get over them you can implement many backends extremely quickly with them. And using PostGraphile where you only have SQL available (well, you can also add javascript extensions, but try to limit those) will be a great forcing function that will require you to scour stackoverflow and the excellent PostgreSQL docs to learn many of the useful corners of SQL you'd never learn otherwise.

RecommendsView on HN
@nerdbaggy2020 · in “Medium-hard SQL interview questions”

I use to think that too. This is a good talk about how smart SQL query engines are. It is an hour though ▶ this video

RecommendsView on HN
@taffer2019 · in “Modern Data Practice and the SQL Tradition”

> further, afaik there's no assignment nor iteration in SQL That was until CTEs were introduced in SQL:1999 > it's not a programming language at all. It's a.. query language. The two are not mutually exclusive. SQL is used to tell a computer what to do, and it is very powerful at it: ▶ this video

CitesView on HN
@jodrellblank2019 · in “Joins In Steps”

This talk ("How Modern SQL Databases Come up with Algorithms that You Would Have Never Dreamed Of by Lukas Eder" ▶ this video ) is not particularly gripping, but he does claim that modern database engines will ignore indexes if they estimate it will be faster to read all the data than it is to access the index first then read the relevant data. And that Oracle can have multiple execution plans and switch between them mid-query if the first one isn't working out as expected. Could this be a rare case of the mythical sufficiently smart compiler having more information at runtime than the programmer has at coding time, and that if you could hint which index to use, the trade off would be that you'd instead be troubleshooting queries which end up slower because of it?

CitesView on HN
Modern SQL: A lot has changed since SQL-92 by Markus Winand55:06

Modern SQL: A lot has changed since SQL-92 by Markus Winand

Devoxx
6K views • 8 years ago
SQLite: Protégé of PostgreSQL39:00

SQLite: Protégé of PostgreSQL

Andrea Ross
8K views • 12 years ago
An Introduction to SQLite51:02

An Introduction to SQLite

Google TechTalks
80K views • 19 years ago
Rich Hickey: Deconstructing the Database1:06:24

Rich Hickey: Deconstructing the Database

InfoQ
106K views • 14 years ago
Introduction to NoSQL • Martin Fowler • GOTO 201254:52

Introduction to NoSQL • Martin Fowler • GOTO 2012

GOTO Conferences
1M views • 13 years ago
"Datafun: a functional query language" by Michael Arntzenius42:31

"Datafun: a functional query language" by Michael Arntzenius

Strange Loop Conference
9K views • 9 years ago
Event Sourcing • Greg Young • GOTO 201454:25

Event Sourcing • Greg Young • GOTO 2014

GOTO Conferences
102K views • 11 years ago
Rust at speed — building a fast concurrent database52:54

Rust at speed — building a fast concurrent database

Jon Gjengset
225K views • 7 years ago
How We've Scaled Dropbox1:08:17

How We've Scaled Dropbox

Stanford
372K views • 14 years ago
"I See What You Mean" by Peter Alvaro52:29

"I See What You Mean" by Peter Alvaro

Strange Loop Conference
59K views • 11 years ago
AWS re:Invent 2018: Amazon DynamoDB Deep Dive: Advanced Design Patterns for DynamoDB (DAT401)59:56

AWS re:Invent 2018: Amazon DynamoDB Deep Dive: Advanced Design Patterns for DynamoDB (DAT401)

Amazon Web Services
468K views • 7 years ago
Breakout Session Presented by Dan Robinson of Heap at PGConf Silicon Valley 201554:54

Breakout Session Presented by Dan Robinson of Heap at PGConf Silicon Valley 2015

Citus Data
14K views • 10 years ago
What is in a Lucene index? Adrien Grand, Software Engineer, Elasticsearch1:04:30

What is in a Lucene index? Adrien Grand, Software Engineer, Elasticsearch

LuceneSolrRevolution
80K views • 12 years ago
AWS re:Invent 2019: [REPEAT 1] Amazon DynamoDB deep dive: Advanced design patterns (DAT403-R1)59:13

AWS re:Invent 2019: [REPEAT 1] Amazon DynamoDB deep dive: Advanced design patterns (DAT403-R1)

AWS Events
115K views • 6 years ago
Greg Young — A Decade of DDD, CQRS, Event Sourcing48:04

Greg Young — A Decade of DDD, CQRS, Event Sourcing

Domain-Driven Design Europe
190K views • 10 years ago
BetrFS: A Right-Optimized Write-Optimized File System1:00:31

BetrFS: A Right-Optimized Write-Optimized File System

Microsoft Research
3K views • 10 years ago
Greg Young - CQRS and Event Sourcing - Code on the Beach 20141:03:48

Greg Young - CQRS and Event Sourcing - Code on the Beach 2014

Code on the Beach
170K views • 12 years ago
DuckDB – The SQLite for Analytics (Mark Raasveldt, CWI)1:08:01

DuckDB – The SQLite for Analytics (Mark Raasveldt, CWI)

CMU Database Group
28K views • 6 years ago
Escape from the Heap: Low-Level Programming in Common Lisp56:49

Escape from the Heap: Low-Level Programming in Common Lisp

Arthur Gleckler
17K views • 10 years ago
Four Languages from Forty Years Ago - Scott Wlaschin1:01:45

Four Languages from Forty Years Ago - Scott Wlaschin

NDC Conferences
33K views • 8 years ago