3 ms·
SQL feels opaque, and its syntax is one of a particular kind (can't remember how it's called), which makes it difficult to learn and understand how it's parsed,
by jokoon 8y ago
SQL feels opaque, and its syntax is one of a particular kind (can't remember how it's called), which makes it difficult to learn and understand how it's parsed, because it's not very well compartmentalized. If the language was better structured like other programming languages are, that'd be better, and jooq looks like something that should be standard across all languages.
Usually when I'm using any technology, being able to understand how it works is my most important priority, because it prevents me from using it improperly. I have a hard time understanding what those "algorithms" really are after all. I heard that databases engines use backtracking, but I'm not really sure that's what it is talked about here. Maybe databases don't use BT?
Using another language that parses every time you do something doesn't feel very fast. It is fast for many applications, but I don't think it is for all of them.
In the end, it's the same old combat, either choose peak performance or development delays with good enough performance.
Although I have to admit that for GIS (geographic information system), databases with embedded R-trees and other things are very much welcome, since implementing those algorithms from the ground up is way too hard.
- dahfizz 8y agoI'm not sure that parsing is going to be a bottleneck when you consider that DBMS read from the disk.
- thesz 8y agoPrepared statements would not have been invented if parsing and checking was not a significant issue.
- jhayward 8y agoThe main point of prepared statements is that expensively optimized query execution plans can be re-used, including incorporating things learned from data patterns by previous queries. I've never considered them to be a crutch on parsing.