August 3, 2021

Malware Protection

Dedicated Forum to help removing adware, malware, spyware, ransomware, trojans, viruses and more!

The Case Against SQL

The Case Against SQL
Long-time Slashdot reader RoccamOccam shares “an interesting take on SQL and its issues from Jamie Brandon (who describes himself as an independent researcher who’s built database engines, query planners, compilers, developer tools and interfaces).
It’s title? “Against SQL.”

The relational model is great… But SQL is the only widely-used implementation of the relational model, and it is: Inexpressive, Incompressible, Non-porous. This isn’t just a matter of some constant programmer overhead, like SQL queries taking 20% longer to write. The fact that these issues exist in our dominant model for accessing data has dramatic downstream effects for the entire industry:
– Complexity is a massive drag on quality and innovation in runtime and tooling
– The need for an application layer with hand-written coordination between database and client renders useless most of the best features of relational databases
The core message that I want people to take away is that there is potentially a huge amount of value to be unlocked by replacing SQL, and more generally in rethinking where and how we draw the lines between databases, query languages and programming languages…

I’d like to finish with this quote from Michael Stonebraker, one of the most prominent figures in the history of relational databases:

“My biggest complaint about System R is that the team never stopped to clean up SQL… All the annoying features of the language have endured to this day. SQL will be the COBOL of 2020…”

It’s been interesting to follow the discussion on Twitter, where the post’s author tweeted screenshots of actual SQL code to illustrate various shortcomings. But he also notes that “The SQL spec (part 2 = 1732) pages is more than twice the length of the Javascript 2021 spec (879 pages), almost matches the C++ 2020 spec (1853) pages and contains 411 occurrences of ‘implementation-defined’, occurrences which include type inference and error propagation.”

His Twitter feed also includes a supportive retweet from Rust creator Graydon Hoare, and from a Tetrane developer who says “The Rust of SQL remains to be invented. I would like to see it come.”

Read more of this story at Slashdot.