อนาคตของ SQL สำหรับเว็บ
(jlongster.com)- absurd-sql : รูปแบบที่ใช้ SQL.js(SQLite) อ่านและเขียนข้อมูลทีละน้อยบน IndexedDB
→ จึงถูกเรียกว่า absurd เพราะเป็นวิธีประหลาดที่เก็บข้อมูล DB ไว้ใน DB อื่น
→ IndexedDB นั้นช้าและฟีเจอร์ก็ไม่ได้ดีนัก แต่ด้วยวิธีนี้กลับเร็วขึ้นมากกว่า 10 เท่า
- hook sql.js เพื่อเก็บข้อมูลลงใน IndexedDB
→ ตอนนี้ยังช้ากว่า SQLite แบบเนทีฟอยู่ 50~100x
→ อันนี้ใช้ IndexedDB แต่ก็น่าจะใช้ Storage Foundation API ได้เช่นกัน (มีแผนจะทดสอบ)
- ข้อดี/ข้อเสีย
→ ข้อเสียอย่างเดียวคือ ต้องดาวน์โหลดไฟล์ WASM (SQL.js) ที่บีบอัดด้วย gzip มาใช้งาน
→ สามารถใช้ความสามารถทั้งหมดของ SQLite ได้: ทรานแซกชัน, ระบบ Query แบบสมบูรณ์, View, CTE, ทริกเกอร์, Full-text Search, แคช เป็นต้น
2 ความคิดเห็น
หัวข้อใช้ชื่อเดิมของผู้เขียนต้นฉบับว่า "A future for SQL on the web" ตามเดิม
sql.js-httpvfs - โฮสต์ฐานข้อมูล SQLite บน GitHub Pages https://th.news.hada.io/topic?id=4226
บทความนี้กำลังจุดประกายไอเดียได้หลากหลายทีเดียว
แม้จะเป็นวิธีพลิกแพลง แต่ก็นับเป็นการหวนกลับมาของ WebSQL ที่ W3C เคยยุติไปโดยบอกว่า SQL ไม่เหมาะกับเว็บ จริงๆ แล้วสำหรับนักพัฒนา มันน่าจะสะดวกกว่ามาก
ผมว่ามันยิ่งเป็นแบบนั้นเพราะการมีอยู่ของ Electron ด้วยครับ
ผมก็เคยเห็นรีวิวจาก Notion ด้วยว่า ตอนแรกใช้ IndexedDB เหมือนกับเวอร์ชันเว็บ แต่พอเปลี่ยนมาใช้ SQLite ในเวอร์ชัน Electron แล้วก็ใช้งานได้สบายขึ้นมาก
https://www.notion.so/blog/faster-page-load-navigation
มันเลยให้ความรู้สึกเหมือนว่าประสบการณ์แบบนี้กำลังถูกส่งกลับไปยังฝั่งเว็บด้วยเหมือนกันนะครับ