Web向けSQLの未来
(jlongster.com)- absurd-sql : SQL.js(SQLite)でIndexedDBからデータを少しずつ読み書きする方式
→ DBデータを別のDBに保存するという突飛なやり方なので absurd
→ IndexedDBは遅く、機能もあまり充実していないが、この方式では10倍以上高速
- sql.jsをフックしてIndexedDBにデータを保存
→ それでもまだSQLiteネイティブより50〜100倍遅い
→ これはIndexedDBを使ったが、Storage Foundation APIも利用できそう(テスト予定)
- 長所/短所
→ 唯一の短所は、gzipされたWASM(SQL.js)ファイルをダウンロードして使うこと
→ SQLiteのすべての機能を活用可能 : トランザクション、完全なクエリシステム、View、CTE、トリガー、Full-text Search、キャッシュなど
2件のコメント
タイトルは原著者の「A future for SQL on the web」をそのまま使いました。
sql.js-httpvfs - GitHub PagesでSQLite DBをホスティングする https://ja.news.hada.io/topic?id=4226
この記事はいろいろなインスピレーションを与えてくれますね。
裏技ではありますが、W3CがWebではSQLは合わないとして打ち切ってしまったWebSQLの復活ですね。実際、開発者にとってはずっと楽そうです。
特にElectronの存在のせいで、なおさらそう感じます。
Web版と同じようにIndexedDBを使っていたものの、Electron版ではSQLiteに切り替えたことでずっと快適になったというNotionの後日談もありました。
https://www.notion.so/blog/faster-page-load-navigation
こうした経験がWeb側に逆輸入されているようにも思えますね。