இணைய உலாவியில் DBMS ஐப் பயன்படுத்த SQLite WASM ஆதரவு சேர்க்கப்பட்டது

SQ லிட்

ஒரு ACID-இணக்கமான தொடர்புடைய தரவுத்தள மேலாண்மை அமைப்பு, C இல் எழுதப்பட்ட ஒப்பீட்டளவில் சிறிய நூலகத்தில் உள்ளது

தி SQLite டெவலப்பர்கள் செயல்படுத்த ஒரு திட்டத்தை உருவாக்குகின்றனர் நூலகத்தை தொகுக்கும் திறன் a இடைநிலை WebAssembly குறியீடு இது ஒரு இணைய உலாவியில் இயங்கக்கூடியது மற்றும் ஜாவாஸ்கிரிப்ட் மொழியில் உள்ள இணைய பயன்பாடுகளிலிருந்து தரவுத்தளத்துடன் பணியை ஒழுங்கமைக்க ஏற்றது.

நோக்கம் திட்டத்தின் செயல்பாட்டு ஜாவாஸ்கிரிப்ட் இணைப்பை வழங்குவதாகும் இது SQLite API க்கு ஒரே மாதிரியான செயல்பாடாகும். இணைய உருவாக்குநர்கள் sql.js அல்லது Node.js பாணியில் தரவுகளுடன் பணிபுரிவதற்காக உயர்-நிலை பொருள் சார்ந்த இடைமுகத்துடன் வழங்கப்படுகின்றனர், ஒரு குறைந்த-நிலை C API மற்றும் API ஐ அடிப்படையாகக் கொண்டு ஒத்திசைவற்ற உருவாக்கத்தை அனுமதிக்கிறது. தனித்தனி இழைகளில் இயங்கும் கட்டுப்படுத்திகள்.

Web Worker-அடிப்படையிலான API மூலம் த்ரெடிங்கின் சிக்கல்களை மறைக்க, ஒரு மாறுபாடு பொறிமுறையின் அடிப்படையில் நிரலாக்க இடைமுகம் வாக்குறுதி.

SQLite இன் WASM பதிப்பில் இணைய பயன்பாடுகள் சேமிக்கும் தரவு தற்போதைய அமர்வில் (பக்கத்தை மறுஏற்றத்திற்குப் பிறகு இழக்கப்படும்) அல்லது கிளையன்ட் பக்கத்தில் (அமர்வுகள் முழுவதும் தொடர்ந்து) இருக்கும்.

நிரந்தர சேமிப்பகத்திற்காக, உள்ளூர் கோப்பு முறைமையில் தரவை வைக்க பின்தளங்கள் தயார் செய்யப்பட்டுள்ளன OPFS (தோற்றம்-தனியார் கோப்பு முறைமை, கோப்பு முறைமை அணுகல் APIக்கான நீட்டிப்பு, தற்போது WebKit மற்றும் Chromium-அடிப்படையிலான உலாவிகளில் மட்டுமே கிடைக்கிறது) மற்றும் window.localStorage மற்றும் window.sessionStorage APIகளின் அடிப்படையில் உலாவி உள்ளூர் சேமிப்பகத்தைப் பயன்படுத்துகிறது.

LocalStorage/sessionStorage ஐப் பயன்படுத்தும் போது, ​​தரவு பொருத்தமான விசை/மதிப்புக் கடைகளில் மேப் செய்யப்படுகிறது, அதேசமயம் OPFS ஐப் பயன்படுத்தும் போது, ​​இரண்டு விருப்பங்கள் உள்ளன: WASMFS ஐப் பயன்படுத்தி ஒரு மெய்நிகர் FS ஐ உருவகப்படுத்துதல் மற்றும் SQLite அடிப்படையிலான VFS லேயரை வழங்கும் தனி sqlite3_vfs செயல்படுத்தல். OPFS இல். .

WASM பிரதிநிதித்துவத்தில் SQLite ஐ உருவாக்க எம்ஸ்கிரிப்டன் கம்பைலர் பயன்படுத்தப்படுகிறது. இதன் விளைவாக sqlite3.js மற்றும் sqlite3.wasm கோப்புகள் உங்கள் JavaScript திட்டத்தில் (HTML மற்றும் JavaScript மாதிரி) சேர்க்கலாம்.

குறிப்பிட்ட நோக்கங்கள் இந்த திட்டம் குறிப்பிடப்பட்டுள்ளது:

இலக்குகள் அல்லாதவற்றில் குறிப்பிடப்பட்டுள்ளதைத் தவிர, sqlite3 C APIக்கான அம்சங்களின் முழுமையான ரேப்பரை வழங்கவும், C உடன் WASM இன் அம்ச சமநிலை அனுமதிக்கும் அளவிற்கு, குறைந்தபட்சம் பின்வரும் APIகளை வழங்கவும்.

  • குறைந்த அளவிலான sqlite3 API ஐ இணைக்கவும், இது பயன்பாட்டின் அடிப்படையில் முடிந்தவரை சொந்தமாக உள்ளது.
  • sql.js மற்றும் node.js பாணி செயலாக்கங்கள் போன்ற உயர் நிலை OO API.
  • பணியாளர் செய்திகள் மூலம் மேலே உள்ள ஏபிஐகளுடன் தொடர்பு கொள்ளும் தொழிலாளர் அடிப்படையிலான ஏபிஐ. இது முக்கிய தொடரிழையில் பயன்படுத்த வடிவமைக்கப்பட்டுள்ளது, கீழ்-நிலை APIகள் ஒரு பணியாளரின் நூலில் நிறுவப்பட்டு, பணியாளரின் செய்திகள் மூலம் அவர்களுடன் தொடர்புகொள்ளும்.
  • பயனரின் இண்டர்-த்ரெட் தொடர்பு அம்சங்களை முற்றிலும் மறைக்கும் Worker 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 உலாவியில் இருந்து முற்றிலும் தனிமைப்படுத்தப்பட்டுள்ளது மற்றும் அதன் பாதுகாப்பைப் பாதிக்காது (SQLite இல் உள்ள பல பாதிப்புகளுக்குப் பிறகு, WebSQL மூலம் நேவிகேட்டரைத் தாக்கக்கூடிய பல பாதிப்புகளுக்குப் பிறகு Chrome இல் WebSQL க்கான ஆதரவை Google கைவிட முடிவு செய்தது. )

இறுதியாக நீங்கள் இருந்தால் அதைப் பற்றி மேலும் அறிய ஆர்வம், நீங்கள் விவரங்களை சரிபார்க்கலாம் பின்வரும் இணைப்பில்.


உங்கள் கருத்தை தெரிவிக்கவும்

உங்கள் மின்னஞ்சல் முகவரி வெளியிடப்பட்ட முடியாது. தேவையான புலங்கள் குறிக்கப்பட்டிருக்கும் *

*

*

  1. தரவுகளுக்குப் பொறுப்பு: AB இன்டர்நெட் நெட்வொர்க்ஸ் 2008 SL
  2. தரவின் நோக்கம்: கட்டுப்பாட்டு ஸ்பேம், கருத்து மேலாண்மை.
  3. சட்டபூர்வமாக்கல்: உங்கள் ஒப்புதல்
  4. தரவின் தொடர்பு: சட்டபூர்வமான கடமையால் தவிர மூன்றாம் தரப்பினருக்கு தரவு தெரிவிக்கப்படாது.
  5. தரவு சேமிப்பு: ஆக்சென்டஸ் நெட்வொர்க்குகள் (EU) வழங்கிய தரவுத்தளம்
  6. உரிமைகள்: எந்த நேரத்திலும் உங்கள் தகவல்களை நீங்கள் கட்டுப்படுத்தலாம், மீட்டெடுக்கலாம் மற்றும் நீக்கலாம்.