ವೆಬ್ ಬ್ರೌಸರ್‌ನಲ್ಲಿ DBMS ಅನ್ನು ಬಳಸಲು SQLite WASM ಬೆಂಬಲವನ್ನು ಸೇರಿಸಲಾಗಿದೆ

SQLite

ಇದು ACID-ಅನುವರ್ತನೆಯ ಸಂಬಂಧಿತ ಡೇಟಾಬೇಸ್ ನಿರ್ವಹಣಾ ವ್ಯವಸ್ಥೆಯಾಗಿದೆ, ಇದು C ನಲ್ಲಿ ಬರೆಯಲಾದ ತುಲನಾತ್ಮಕವಾಗಿ ಸಣ್ಣ ಗ್ರಂಥಾಲಯದಲ್ಲಿದೆ

ದಿ SQLite ಡೆವಲಪರ್‌ಗಳು ಕಾರ್ಯಗತಗೊಳಿಸಲು ಯೋಜನೆಯನ್ನು ಅಭಿವೃದ್ಧಿಪಡಿಸುತ್ತಿದ್ದಾರೆ ಲೈಬ್ರರಿಯನ್ನು ಕಂಪೈಲ್ ಮಾಡುವ ಸಾಮರ್ಥ್ಯ a ಮಧ್ಯಂತರ ವೆಬ್ ಅಸೆಂಬ್ಲಿ ಕೋಡ್ ವೆಬ್ ಬ್ರೌಸರ್‌ನಲ್ಲಿ ರನ್ ಮಾಡಬಹುದಾದ ಮತ್ತು ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ಭಾಷೆಯಲ್ಲಿ ವೆಬ್ ಅಪ್ಲಿಕೇಶನ್‌ಗಳಿಂದ ಡೇಟಾಬೇಸ್‌ನೊಂದಿಗೆ ಕೆಲಸವನ್ನು ಸಂಘಟಿಸಲು ಸೂಕ್ತವಾಗಿದೆ.

ಉದ್ದೇಶ ಯೋಜನೆಯ ಕ್ರಿಯಾತ್ಮಕ JavaScript ಲಿಂಕ್ ಅನ್ನು ಒದಗಿಸುವುದು ಅದು SQLite API ಗೆ ಕ್ರಿಯಾತ್ಮಕತೆಯಲ್ಲಿ ಹೋಲುತ್ತದೆ. ವೆಬ್ ಡೆವಲಪರ್‌ಗಳಿಗೆ sql.js ಅಥವಾ Node.js ಶೈಲಿಯಲ್ಲಿ ಡೇಟಾದೊಂದಿಗೆ ಕೆಲಸ ಮಾಡಲು ಉನ್ನತ-ಮಟ್ಟದ ವಸ್ತು-ಆಧಾರಿತ ಇಂಟರ್ಫೇಸ್ ಅನ್ನು ಒದಗಿಸಲಾಗಿದೆ, ಅಸಮಕಾಲಿಕವನ್ನು ರಚಿಸಲು ಅನುಮತಿಸುವ ವೆಬ್ ವರ್ಕರ್ ಕಾರ್ಯವಿಧಾನದ ಆಧಾರದ ಮೇಲೆ ಕಡಿಮೆ-ಹಂತದ C API ಮತ್ತು API ಅನ್ನು ಸುತ್ತುತ್ತದೆ. ನಿಯಂತ್ರಕಗಳು ಪ್ರತ್ಯೇಕ ಥ್ರೆಡ್‌ಗಳಲ್ಲಿ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತವೆ.

ವೆಬ್ ವರ್ಕರ್-ಆಧಾರಿತ API ಮೂಲಕ ಥ್ರೆಡ್ ಮಾಡುವ ಸಂಕೀರ್ಣತೆಗಳನ್ನು ಮರೆಮಾಡಲು, ಒಂದು ರೂಪಾಂತರ ಕಾರ್ಯವಿಧಾನದ ಆಧಾರದ ಮೇಲೆ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಇಂಟರ್ಫೇಸ್ ಭರವಸೆ.

ವೆಬ್ ಅಪ್ಲಿಕೇಶನ್‌ಗಳು SQLite ನ WASM ಆವೃತ್ತಿಯಲ್ಲಿ ಸಂಗ್ರಹಿಸುವ ಡೇಟಾವು ಪ್ರಸ್ತುತ ಸೆಷನ್‌ನಲ್ಲಿ (ಪುಟ ಮರುಲೋಡ್ ನಂತರ ಕಳೆದುಹೋಗಿದೆ) ಅಥವಾ ಕ್ಲೈಂಟ್ ಬದಿಯಲ್ಲಿ (ಸೆಶನ್‌ಗಳಾದ್ಯಂತ ಮುಂದುವರಿಯುತ್ತದೆ) ಇರಬಹುದಾಗಿದೆ.

ಶಾಶ್ವತ ಸಂಗ್ರಹಣೆಗಾಗಿ, ಸ್ಥಳೀಯ ಫೈಲ್ ಸಿಸ್ಟಮ್‌ನಲ್ಲಿ ಡೇಟಾವನ್ನು ಹಾಕಲು ಬ್ಯಾಕೆಂಡ್‌ಗಳನ್ನು ಸಿದ್ಧಪಡಿಸಲಾಗಿದೆ OPFS (ಮೂಲ-ಖಾಸಗಿ ಫೈಲ್‌ಸಿಸ್ಟಮ್, ಫೈಲ್ ಸಿಸ್ಟಮ್ ಪ್ರವೇಶ API ಗೆ ವಿಸ್ತರಣೆ, ಪ್ರಸ್ತುತ ವೆಬ್‌ಕಿಟ್ ಮತ್ತು ಕ್ರೋಮಿಯಂ-ಆಧಾರಿತ ಬ್ರೌಸರ್‌ಗಳಲ್ಲಿ ಮಾತ್ರ ಲಭ್ಯವಿದೆ) ಮತ್ತು window.localStorage ಮತ್ತು window.sessionStorage API ಗಳ ಆಧಾರದ ಮೇಲೆ ಬ್ರೌಸರ್ ಸ್ಥಳೀಯ ಸಂಗ್ರಹಣೆಯನ್ನು ಬಳಸುವುದು.

ಲೋಕಲ್ ಸ್ಟೋರೇಜ್/ಸೆಷನ್‌ಸ್ಟೋರೇಜ್ ಅನ್ನು ಬಳಸುವಾಗ, ಡೇಟಾವನ್ನು ಸೂಕ್ತವಾದ ಕೀ/ಮೌಲ್ಯ ಮಳಿಗೆಗಳಿಗೆ ಮ್ಯಾಪ್ ಮಾಡಲಾಗುತ್ತದೆ, ಆದರೆ OPFS ಬಳಸುವಾಗ, ಎರಡು ಆಯ್ಕೆಗಳಿವೆ: WASMFS ಬಳಸಿಕೊಂಡು ವರ್ಚುವಲ್ FS ಅನ್ನು ಅನುಕರಿಸುವುದು ಮತ್ತು SQLite ಆಧಾರಿತ VFS ಲೇಯರ್ ಅನ್ನು ಒದಗಿಸುವ ಪ್ರತ್ಯೇಕ sqlite3_vfs ಅನುಷ್ಠಾನ. .

WASM ಪ್ರಾತಿನಿಧ್ಯದಲ್ಲಿ SQLite ಅನ್ನು ನಿರ್ಮಿಸಲು ಎಂಸ್ಕ್ರಿಪ್ಟನ್ ಕಂಪೈಲರ್ ಅನ್ನು ಬಳಸಲಾಗುತ್ತದೆ. ಫಲಿತಾಂಶವು sqlite3.js ಮತ್ತು sqlite3.wasm ಫೈಲ್‌ಗಳನ್ನು ನಿಮ್ಮ ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ಯೋಜನೆಯಲ್ಲಿ (HTML ಮತ್ತು JavaScript ಮಾದರಿ) ಸೇರಿಸಬಹುದು.

ನಿರ್ದಿಷ್ಟ ಉದ್ದೇಶಗಳ ಈ ಯೋಜನೆಯ ಬಗ್ಗೆ ಉಲ್ಲೇಖಿಸಲಾಗಿದೆ:

ಟಾರ್ಗೆಟ್‌ಗಳಲ್ಲದ ಸ್ಥಳಗಳನ್ನು ಹೊರತುಪಡಿಸಿ, sqlite3 C API ಗಾಗಿ ಹೆಚ್ಚು ಅಥವಾ ಕಡಿಮೆ ಸಂಪೂರ್ಣ ಹೊದಿಕೆಯನ್ನು ಒದಗಿಸಿ, C ನೊಂದಿಗೆ WASM ನ ವೈಶಿಷ್ಟ್ಯದ ಸಮಾನತೆಯು ಅನುಮತಿಸುವ ಮಟ್ಟಿಗೆ, ಕನಿಷ್ಠ ಈ ಕೆಳಗಿನ API ಗಳನ್ನು ಒದಗಿಸಿ .

  • ಬಳಕೆಯ ವಿಷಯದಲ್ಲಿ ಸ್ಥಳೀಯಕ್ಕೆ ಸಾಧ್ಯವಾದಷ್ಟು ಹತ್ತಿರವಿರುವ ಕಡಿಮೆ ಮಟ್ಟದ sqlite3 API ಅನ್ನು ಬಂಧಿಸಿ.
  • ಉನ್ನತ ಮಟ್ಟದ OO API, sql.js ಮತ್ತು node.js ಶೈಲಿಯ ಅನುಷ್ಠಾನಗಳಂತೆಯೇ.
  • ಕೆಲಸಗಾರರ ಸಂದೇಶಗಳ ಮೂಲಕ ಮೇಲಿನ API ಗಳೊಂದಿಗೆ ಸಂವಹನ ನಡೆಸುವ ಕೆಲಸಗಾರ-ಆಧಾರಿತ API. ವರ್ಕರ್ ಥ್ರೆಡ್‌ನಲ್ಲಿ ಕೆಳ ಹಂತದ API ಗಳನ್ನು ಸ್ಥಾಪಿಸುವುದರೊಂದಿಗೆ ಮುಖ್ಯ ಥ್ರೆಡ್‌ನಲ್ಲಿ ಬಳಸಲು ಇದನ್ನು ವಿನ್ಯಾಸಗೊಳಿಸಲಾಗಿದೆ ಮತ್ತು ಕೆಲಸಗಾರ ಸಂದೇಶಗಳ ಮೂಲಕ ಅವರೊಂದಿಗೆ ಸಂವಹನ ನಡೆಸುತ್ತದೆ.
  • ವರ್ಕರ್ API ಯ ಪ್ರಾಮಿಸ್-ಆಧಾರಿತ ರೂಪಾಂತರವು ಬಳಕೆದಾರರ ಅಂತರ-ಥ್ರೆಡ್ ಸಂವಹನ ಅಂಶಗಳನ್ನು ಸಂಪೂರ್ಣವಾಗಿ ಮರೆಮಾಡುತ್ತದೆ.
  • ಸಾಧ್ಯವಾದಷ್ಟು, ಲಭ್ಯವಿರುವ JS API ಗಳನ್ನು ಬಳಸಿಕೊಂಡು ಕ್ಲೈಂಟ್-ಸೈಡ್ ನಿರಂತರ ಸಂಗ್ರಹಣೆಯನ್ನು ಬೆಂಬಲಿಸಿ. ಈ ಬರವಣಿಗೆಯ ಸಮಯದಲ್ಲಿ, ಅದು ಮೂಲ ಖಾಸಗಿ ಫೈಲ್ ಸಿಸ್ಟಮ್ (OPFS) ಮತ್ತು (ಅತ್ಯಂತ ಸೀಮಿತ) ಸಂಗ್ರಹಣೆಯನ್ನು window.localStorage ಮತ್ತು .window.sessionStorage ಬ್ಯಾಕೆಂಡ್‌ಗಳ ಮೂಲಕ ಒಳಗೊಂಡಿದೆ

ಹಾಗೆ ನಿರ್ದಿಷ್ಟವಲ್ಲದ ಉದ್ದೇಶಗಳು:

  • WASM ವೆಬ್-ಕೇಂದ್ರಿತ ತಂತ್ರಜ್ಞಾನವಾಗಿರುವುದರಿಂದ ಮತ್ತು UTF-8 ಆ ಕ್ಷೇತ್ರದಲ್ಲಿ ಎನ್‌ಕೋಡಿಂಗ್‌ಗಳ ರಾಜನಾಗಿರುವುದರಿಂದ, UTF3-ಸಂಬಂಧಿತ sqlite16 API ಗಳನ್ನು ಬೆಂಬಲಿಸುವ ಯಾವುದೇ ಪ್ರಸ್ತುತ ಯೋಜನೆಗಳಿಲ್ಲ.
  • ಬ್ರೌಸರ್‌ನ ಹೊರಗಿನ WASM ರನ್‌ಟೈಮ್‌ಗಳಿಗೆ ಬೆಂಬಲವು ವ್ಯಾಪಕವಾಗಿದ್ದರೂ, ಈ ಯೋಜನೆಯು ಪ್ರಸ್ತುತ (2022 ರ ಕೊನೆಯಲ್ಲಿ) ಬ್ರೌಸರ್ ಗುರಿಗಳ ಮೇಲೆ ಮಾತ್ರ ಕೇಂದ್ರೀಕೃತವಾಗಿದೆ. ವೆಬ್-ಸಂಬಂಧಿತ ಅನುಷ್ಠಾನದ ವಿವರಗಳು ಪ್ರಾಶಸ್ತ್ಯವನ್ನು ಪಡೆದರೂ, ಮತ್ತು API ಯ ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ಘಟಕಗಳು ನಿರ್ದಿಷ್ಟವಾಗಿ ಬ್ರೌಸರ್ ಕ್ಲೈಂಟ್‌ಗಳ ಮೇಲೆ ಕೇಂದ್ರೀಕರಿಸುತ್ತವೆ, ಕೆಳಮಟ್ಟದ WASM ಮಾಡ್ಯೂಲ್ ವೆಬ್ ಅಲ್ಲದ WASM ಪರಿಸರದಲ್ಲಿ ಕಾರ್ಯನಿರ್ವಹಿಸಬೇಕು.
  • ಹಳೆಯ ಅಥವಾ ಸ್ಥಾಪಿತ ವೇದಿಕೆಗಳೊಂದಿಗೆ ಹೊಂದಾಣಿಕೆ. WASM ಅನ್ನು ಆಧುನಿಕ ವೆಬ್‌ಗಾಗಿ ವಿನ್ಯಾಸಗೊಳಿಸಲಾಗಿದೆ ಮತ್ತು ಆಧುನಿಕ ವೇದಿಕೆಗಳ ಅಗತ್ಯವಿದೆ. ಅಂತೆಯೇ, ಅಸಮ್ಮತಿಸಿದ sqlite3 ಲೈಬ್ರರಿ ಆಯ್ಕೆಗಳನ್ನು WASM ಇಂಟರ್ಫೇಸ್‌ನಿಂದ ಸಂಪೂರ್ಣವಾಗಿ ತೆಗೆದುಹಾಕಲಾಗುತ್ತದೆ.

WebAssembly ಬೆಂಬಲಕ್ಕಾಗಿ ಕೋಡ್ ಅನ್ನು ಯೋಜನೆಯ ಮುಖ್ಯ ಭಂಡಾರಕ್ಕೆ ಸೇರಿಸಲಾಗಿದೆ. SQLite ಅನ್ನು ಆಧರಿಸಿದ WebSQL API ಗಿಂತ ಭಿನ್ನವಾಗಿ, WASM SQLite ಬ್ರೌಸರ್‌ನಿಂದ ಸಂಪೂರ್ಣವಾಗಿ ಪ್ರತ್ಯೇಕಿಸಲ್ಪಟ್ಟಿದೆ ಮತ್ತು ಅದರ ಸುರಕ್ಷತೆಯ ಮೇಲೆ ಪರಿಣಾಮ ಬೀರುವುದಿಲ್ಲ (ನ್ಯಾವಿಗೇಟರ್ ಮೇಲೆ ದಾಳಿ ಮಾಡಲು WebSQL ಮೂಲಕ ಬಳಸಿಕೊಳ್ಳಬಹುದಾದ SQLite ನಲ್ಲಿ ಹಲವಾರು ದುರ್ಬಲತೆಗಳ ನಂತರ Chrome ನಲ್ಲಿ WebSQL ಗೆ ಬೆಂಬಲವನ್ನು ಕೈಬಿಡಲು Google ನಿರ್ಧರಿಸಿದೆ. )

ಅಂತಿಮವಾಗಿ ನೀವು ಇದ್ದರೆ ಅದರ ಬಗ್ಗೆ ಇನ್ನಷ್ಟು ತಿಳಿದುಕೊಳ್ಳಲು ಆಸಕ್ತಿ, ನೀವು ವಿವರಗಳನ್ನು ಪರಿಶೀಲಿಸಬಹುದು ಕೆಳಗಿನ ಲಿಂಕ್‌ನಲ್ಲಿ.


ನಿಮ್ಮ ಅಭಿಪ್ರಾಯವನ್ನು ಬಿಡಿ

ನಿಮ್ಮ ಈಮೇಲ್ ವಿಳಾಸ ಪ್ರಕಟವಾದ ಆಗುವುದಿಲ್ಲ. ಅಗತ್ಯವಿರುವ ಜಾಗ ಗುರುತಿಸಲಾಗಿದೆ *

*

*

  1. ಡೇಟಾಗೆ ಜವಾಬ್ದಾರಿ: AB ಇಂಟರ್ನೆಟ್ ನೆಟ್ವರ್ಕ್ಸ್ 2008 SL
  2. ಡೇಟಾದ ಉದ್ದೇಶ: ನಿಯಂತ್ರಣ SPAM, ಕಾಮೆಂಟ್ ನಿರ್ವಹಣೆ.
  3. ಕಾನೂನುಬದ್ಧತೆ: ನಿಮ್ಮ ಒಪ್ಪಿಗೆ
  4. ಡೇಟಾದ ಸಂವಹನ: ಕಾನೂನುಬದ್ಧ ಬಾಧ್ಯತೆಯನ್ನು ಹೊರತುಪಡಿಸಿ ಡೇಟಾವನ್ನು ಮೂರನೇ ವ್ಯಕ್ತಿಗಳಿಗೆ ಸಂವಹನ ಮಾಡಲಾಗುವುದಿಲ್ಲ.
  5. ಡೇಟಾ ಸಂಗ್ರಹಣೆ: ಆಕ್ಸೆಂಟಸ್ ನೆಟ್‌ವರ್ಕ್‌ಗಳು (ಇಯು) ಹೋಸ್ಟ್ ಮಾಡಿದ ಡೇಟಾಬೇಸ್
  6. ಹಕ್ಕುಗಳು: ಯಾವುದೇ ಸಮಯದಲ್ಲಿ ನೀವು ನಿಮ್ಮ ಮಾಹಿತಿಯನ್ನು ಮಿತಿಗೊಳಿಸಬಹುದು, ಮರುಪಡೆಯಬಹುದು ಮತ್ತು ಅಳಿಸಬಹುದು.