

DuckDB - DuckDB-Wasm:浏览器中的高效分析 SQL
source link: https://www.jdon.com/57487
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

DuckDB-Wasm 是一个用于浏览器的进程内分析 SQL 数据库。它由 WebAssembly 提供支持,可以流利地使用 Arrow 语言,读取由文件系统 API 或 HTTP 请求支持的 Parquet、CSV 和 JSON 文件,并且已经过 Chrome、Firefox、Safari 和 Node.js 的测试。您可以在浏览器中的shell.duckdb.org或Observable上试用它。
Web 浏览器已经发展成为一个通用计算平台,甚至可以在您的汽车中运行。它的兴起伴随着对浏览器编程语言 JavaScript 的需求不断增加。JavaScript 首先被设计为非常灵活,与 C++ 等本地语言相比,其代价是处理效率降低。考虑到更复杂的数据分析任务的执行时间,这些任务的执行时间通常落后于本地执行几个数量级,这一点变得尤为明显。过去,此类分析任务因此被推送到服务器,这些服务器将任何客户端处理与 Internet 上的额外往返联系起来,并引入了它们自己的一组可扩展性问题。
4 年前,随着 WebAssembly 的引入,浏览器的处理能力得到了极大的提升。
WebAssembly(缩写为 Wasm)是一种用于基于堆栈的虚拟机的二进制指令格式。Wasm 被设计为编程语言的可移植编译目标,支持在 Web 上部署客户端和服务器应用程序。
Wasm 堆栈机旨在以大小和加载时间高效的二进制格式进行编码。WebAssembly 旨在通过利用各种平台上可用的通用硬件功能以本机速度执行。
四年后,WebAssembly 革命正在全面推进,第一个实现在四个主要浏览器中发布。它已经为我们带来了游戏引擎、整个 IDE甚至Photoshop的浏览器版本。今天,我们加入了第一个 npm 库@duckdb/duckdb-wasm 的行列。
作为一个进程内分析数据库,DuckDB 有难得的机会显着加快浏览器中的 OLAP 工作负载。我们认为需要一个全面且独立的数据分析库。DuckDB-wasm 自动将您的查询卸载到专用的工作线程,并从您的本地文件系统或由纯 SQL 输入驱动的 HTTP 服务器读取 Parquet、CSV 和 JSON 文件。
详细点击标题
Recommend
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK