4 ms·
I wrote that article 7 years ago, and FWIW I would side more with Dale these days. It's probably a good thing we didn't just slap a half-baked API on top of SQL
by nolanl 5y ago
I wrote that article 7 years ago, and FWIW I would side more with Dale these days. It's probably a good thing we didn't just slap a half-baked API on top of SQLite and call it a web standard.
The biggest problem is that yeah, WebSQL tends to be faster than IndexedDB. Or at least it was back when I was working on PouchDB. Biggest issue IIRC was that joins were faster in SQLite than implementing the same thing in userland on top of IndexedDB. Browsers eventually shipped getAll/getAllKeys which also helped with cursor slowness.
I haven't looked much at the Storage Foundation API [1], but it seems like a more reasonable approach moving forward. Just give developers the low-level tools and let them build SQLite on top of it. Also the Chromium devs have been working on relaxed durability, which apparently improves IDB perf in some scenarios [2] (although still not as fast as Firefox it seems [3]).
[1]: https://github.com/WICG/storage-foundation-api-explainer https://github.com/WICG/storage-foundation-api-explainer
[2]: https://www.chromestatus.com/feature/5730701489995776 https://www.chromestatus.com/feature/5730701489995776
[3]: https://bugs.chromium.org/p/chromium/issues/detail?id=1025456#c12 https://bugs.chromium.org/p/chromium/issues/detail?id=102545...
- dmitriid 5y ago> Consensus & Standardization > Firefox: Negative [1] > Safari: Negative [2] However, I fully expect Chrome to ship it in stable sometime soon, like they do with dozens of other APIs. There are now four different half-baked storage/file api proposals, at least one of them is already in stable Chrome... it's a mess. [1] https://github.com/mozilla/standards-positions/issues/481 https://github.com/mozilla/standards-positions/issues/481 [2] https://lists.webkit.org/pipermail/webkit-dev/2021-February/031689.html https://lists.webkit.org/pipermail/webkit-dev/2021-February/...