DuckDB هو نظام إدارة قاعدة بيانات SQL OLAP قيد التشغيل.
DuckDB-Wasm يجلب DuckDB إلى كل متصفح بفضل WebAssembly.
يتحدث Duckdb-Wasm لغة Arrow بطلاقة، ويقرأ ملفات Parquet وCSV وJSON المدعومة بواجهات برمجة تطبيقات نظام الملفات أو طلبات HTTP، وقد تم اختباره باستخدام Chrome وFirefox وSafari وNode.js. تعرف على المزيد حول DuckDB-Wasm من منشور VLDB الخاص بنا أو المحادثة المسجلة.
جربه على shell.duckdb.org أو تضمين DuckDB-Wasm من جهة خارجية، واقرأ وثائق واجهة برمجة التطبيقات، وتحقق من أمثلة تطبيقات الويب، وتحدث معنا على Discord.
يعتمد DuckDB-Wasm حاليًا على DuckDB v1.1.1.
الاختلافات ذات الصلة:
INSTALL extension_name FROM 'https://repository.endpoint.org';
تأجيل جلب الامتداد إلى أول LOAD extension_name;
تعليمات. INSTALL x FROM community;
يتم أيضًا دعم الاختصارات.LOAD icu;
قد تكون هناك حاجة لإعادة إنتاج نفس السلوك.ميزات DuckDB المدعومة:
ATTACH 'https://blobs.duckdb.org/data/test.db'; FROM db.t;
تجريبيLOAD spatial
DuckDB قابل للتوسيع وهذا يسمح بتفويض الوظائف إلى الامتدادات.
الامتدادات الأساسية متاحة على https://extensions.duckdb.org، والامتدادات المجتمعية متاحة على https://community-extensions.duckdb.org.
-- - Excplicitly load extensions
LOAD icu;
-- - Or have them autoloaded when using relevant functions or settings
DESCRIBE FROM read_parquet( ' https://blobs.duckdb.org/stations.parquet ' ); -- (this autoloads JSON)
-- - Or register extensions
INSTALL h3 FROM community;
INSTALL sqlite_scanner FROM ' https://extensions.duckdb.org ' ;
INSTALL quack FROM ' https://community-extensions.duckdb.org ' ;
-- - And then load them
LOAD h3;
LOAD sqlite_scanner;
LOAD quack;
FROM duckdb_extensions() WHERE loaded;
سيُظهر أنه تم تحميل h3 وicu وparquet وquack وsqlite_scanner.
يمكنك تجربة عرض Shell التجريبي مع تحميل الملحقات ولكن هذا يتطلب حوالي 3.2 ميجابايت من ملفات Wasm المضغوطة ليتم نقلها عبر الشبكة (في الزيارة الأولى، قد يساعد التخزين المؤقت).
ستختلف أحجام الامتدادات اعتمادًا على الوظائف المتوفرة أو سلسلة الأدوات المستخدمة، من بين أمور أخرى.
git clone https://github.com/duckdb/duckdb-wasm.git
cd duckdb-wasm
git submodule init
git submodule update
make apply_patches
make serve
مشروع فرعي | وصف | لغة |
---|---|---|
duckdb_wasm | مكتبة وسام | سي ++ |
@duckdb/duckdb-wasm | واجهة برمجة تطبيقات الآلة الكاتبة | الآلة الكاتبة |
@duckdb/duckdb-wasm-shell | SQL شل | الصدأ |
@duckdb/duckdb-wasm-app | صفحة جيثب | الآلة الكاتبة |
@duckdb/رد فعل-duckdb | رد فعل السنانير | الآلة الكاتبة |