DuckDB est un système de gestion de base de données SQL OLAP en cours.
DuckDB-Wasm apporte DuckDB à tous les navigateurs grâce à WebAssembly.
Duckdb-Wasm parle couramment Arrow, lit les fichiers Parquet, CSV et JSON soutenus par les API du système de fichiers ou les requêtes HTTP et a été testé avec Chrome, Firefox, Safari et Node.js. Apprenez-en plus sur DuckDB-Wasm grâce à notre publication VLDB ou à la conférence enregistrée.
Essayez-le sur shell.duckdb.org ou sur l'intégration tierce externe de DuckDB-Wasm, lisez la documentation de l'API, consultez les exemples d'applications Web et discutez avec nous sur Discord.
DuckDB-Wasm est actuellement basé sur DuckDB v1.1.1.
Différences pertinentes :
INSTALL extension_name FROM 'https://repository.endpoint.org';
reporter la récupération de l'extension au premier LOAD extension_name;
instruction. INSTALL x FROM community;
les raccourcis sont également pris en charge.LOAD icu;
pourrait être nécessaire pour reproduire le même comportement.Fonctionnalités DuckDB prises en charge :
ATTACH 'https://blobs.duckdb.org/data/test.db'; FROM db.t;
démoLOAD spatial
DuckDB est extensible et cela permet de déléguer des fonctionnalités à des extensions.
Les extensions principales sont disponibles sur https://extensions.duckdb.org et les extensions communautaires sont disponibles sur 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;
Montrera que h3, icu, parquet, quack et sqlite_scanner ont été chargés.
Vous pouvez essayer la démo Shell avec chargement d'extensions, mais cela nécessite environ 3,2 Mo de fichiers Wasm compressés à transférer sur le réseau (lors de la première visite, la mise en cache peut aider).
La taille des extensions varie en fonction, entre autres choses, des fonctionnalités fournies ou de la chaîne d'outils utilisée.
git clone https://github.com/duckdb/duckdb-wasm.git
cd duckdb-wasm
git submodule init
git submodule update
make apply_patches
make serve
Sous-projet | Description | Langue |
---|---|---|
duckdb_wasm | Bibliothèque Wasm | C++ |
@duckdb/duckdb-wasm | API dactylographiée | Manuscrit |
@duckdb/duckdb-wasm-shell | Shell SQL | Rouiller |
@duckdb/duckdb-wasm-app | Page GitHub | Manuscrit |
@duckdb/réagir-duckdb | Réagir aux crochets | Manuscrit |