11 ポイント 投稿者 xguru 2021-08-13 | 2件のコメント | WhatsAppで共有
  • 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件のコメント

 
xguru 2021-08-13

タイトルは原著者の「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の復活ですね。実際、開発者にとってはずっと楽そうです。

 
kbumsik 2021-08-13

特にElectronの存在のせいで、なおさらそう感じます。

Web版と同じようにIndexedDBを使っていたものの、Electron版ではSQLiteに切り替えたことでずっと快適になったというNotionの後日談もありました。

https://www.notion.so/blog/faster-page-load-navigation

こうした経験がWeb側に逆輸入されているようにも思えますね。