10 คะแนน โดย xguru 2021-05-10 | 1 ความคิดเห็น | แชร์ทาง WhatsApp
<p>- วิธีใช้งานฐานข้อมูล SQLite แบบเต็มรูปแบบบนเว็บเพจสแตติกที่ไม่มีแบ็กเอนด์ <br /> - คอมไพล์ SQLite เป็น WASM ด้วย emscripten และใช้ sql.js เป็น JS wrapper <br /> → sql.js ทำงานบนหน่วยความจำ จึงปรับให้สามารถอ่านฐานข้อมูลผ่านคำขอ HTTP Range ได้ (httpvfs)<br /> → เพื่อลดขนาดคำขอ จึงตั้งค่า page เป็น 1 KiB (ค่าเริ่มต้น 4 KiB)<br /> - เนื่องจากฐานข้อมูลทำงานอยู่ในเบราว์เซอร์ จึงสามารถใช้ DOM เสมือนเป็นฐานข้อมูลได้ด้วย <br /> - นอกจาก GitHub แล้ว ยังใช้ได้กับหน้าเว็บสแตติกใด ๆ เช่น GitLab Pages, Netlify เป็นต้น</p>

1 ความคิดเห็น

 
panarch 2021-05-10
<p>อีกหนึ่งอิมพลีเมนเตชันของฐานข้อมูล SQL ที่รันบนเว็บได้คือ GlueSQL ซึ่งเขียนด้วย Rust ครับ :)<br /> <br /> GlueSQL - https://github.com/gluesql/gluesql<br /> มันสามารถใช้งานได้ในลักษณะเดียวกับฐานข้อมูล SQL แบบฝังตัวอย่าง SQLite<br /> และยังสามารถใช้ GlueSQL ในรูปแบบไลบรารีเพื่อสร้างฐานข้อมูล SQL ตัวใหม่ได้ด้วย ในกรณีนี้เพียงแค่ต้องอิมพลีเมนต์ storage trait บางตัวที่ GlueSQL มีให้เท่านั้น<br /> <br /> ตอนนี้นอกจาก reference storage พื้นฐานแล้ว ก็ยังมีตัวอย่างการใช้งานอยู่หลายแบบ<br /> <br /> 1. GlueSQL.js - https://github.com/gluesql/gluesql-js<br /> เป็นฐานข้อมูล SQL ที่คอมไพล์เป็น WASM จึงสามารถรันได้โดยตรงบนเว็บ<br /> ปัจจุบันรองรับสตอเรจที่แตกต่างกัน 3 แบบ<br /> * หน่วยความจำ<br /> * HTML5 localStorage<br /> * HTML5 sessionStorage<br /> (ตอนนี้ยังใช้ GlueSQL เวอร์ชันที่ค่อนข้างเก่าอยู่นิดหน่อย)<br /> <br /> 2. GlueSQL Sheets - https://sheets.gluesql.com<br /> ด้วยข้อดีที่สามารถเชื่อมต่อ custom storage ได้แทบทุกอย่าง GlueSQL Sheets จึงเป็นบริการฐานข้อมูล SQL ที่ใช้ Google Spreadsheets เป็นสตอเรจ<br /> เมื่อรัน SQL ผ่าน API ที่ให้มา ข้อมูลทั้งหมดจะถูกอ่านและเขียนลงใน Google Spreadsheets ที่เกี่ยวข้อง</p>