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

preview_player
Показать описание
SQL is the only ever successful, mainstream, and general-purpose 4GL (Fourth Generation Programming Language) and it is awesome!

With modern cost based optimisation, relational databases like Oracle, SQL Server, PostgreSQL finally keep up to the promise of a powerful declarative programming model by adapting to ever changing productive data without performance penalties. Thousand-line-long, complex SQL statements can be run in far below a millisecond against billion-row strong tables if database developers know their ways around the SQL language - and the best news is: It's not that hard!

In this talk, I'll show how the SQL database will constantly outperform any hand written data retrieval algorithm - or in other words - how SQL, being a logic language, is the best language for business logic.
Рекомендации по теме
Комментарии
Автор

The talk is great!

I think each tool has its purpose.
SQL is used for data manipulation in relational databases.
Java is used for building server side business logic, REST APIs.
Javascript is for UI side (mostly).
I could also use Kafka streams to solve this problem: each time I receive a payment event, I store it into the database and also I can process it separately. It is useful for large scale applications with millions of writes and replications.

yankhonski
Автор

This is a great talk. I learned new things about window functions from the query at 18:36 (it seems that the OVER clause has an implicit "RANGE BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW", which is possibly the default behaviour when you include an ORDER BY).

danieldiaz
Автор

I love this talk so much, it never gets old

AndrewBrownK
Автор

27:20 the select syntax is an early approximation of natural language parsing.
Think of it like how one would ask a warehouse employee to go fetch something for you in a complex set of storage locations, assuming that the person has little knowledge of the contents of the storage locations.
Retrieve these items from the following locations but only the ones that match these criteria.

magfal
Автор

10 minutes in, I haven't learned that SQL is awesome yet but I have learned that Java is horrible

gggrow
Автор

Still really useful presentation to watch on 2019 : )

coolcoolj
Автор

Love the talk, learned a lot, great presentation

seonwookim
Автор

He's exaggerating a bit about Java, but his point is true. Can't count time when I've been facepalming myself because of all this boilerplate bullshit and when all you need is to shuffle around some fucking bits of data (which happens to be what 99% of webapps consist of).

And yes my advice to Java developers is throw away your fugly Hibernate whenever you can, hardcode the simple SQL statements and be done with the bs.

clray
Автор

8:20 ... jfc java. Pretty contrived example, though-- most languages aren't this bad.

gnatinator
Автор

So glad I gave up object-oriented programming years ago. Creates so much unnecessary complexity.

kingluke
Автор

If you go even further. You'll end up with Clojure.

wotwot
Автор

Bad talk. Talk about SQL please. Looks like we are learning Java

ShekharGulati
Автор

Using the worst java architecture for comparison is pathetic.

igo_rs
Автор

SQL database is a liablity. It is number one reason why we have to duplicate expensive production database setup in test and catch frequent problems with incorrect execution plans.

thrael