DuckDB 正在参加 2021 年度 OSC 中国开源项目评选,请投票支持!
DuckDB 在 2021 年度 OSC 中国开源项目评选 中已获得 {{ projectVoteCount }} 票,请投票支持!
2021 年度 OSC 中国开源项目评选 正在火热进行中,快来投票支持你喜欢的开源项目!
2021 年度 OSC 中国开源项目评选 >>> 中场回顾
DuckDB 获得 2021 年度 OSC 中国开源项目评选「最佳人气项目」 !
授权协议 MIT
操作系统 跨平台
软件类型 开源软件
所属分类 企业应用BI商业智能
开源组织
地区 不详
投 递 者 Like女书法家
适用人群 未知
收录时间 2019-07-01

软件简介

DuckDB,是一个可嵌入的 SQL OLAP 数据库管理系统。

因为 DuckDB 是一个嵌入式数据库,所以没有要启动的数据库服务器或连接到正在运行的服务器的客户端。但是,可以使用 C 或 C++ 绑定将数据库服务器直接嵌入到应用程序中。

DuckDB 是在 C++11 中实现的,应该用 GCC 和 clang 编译,使用 CMake 构建和 Catch 2 进行测试。此外,还可以使用 Jenkins 作为 CI 平台,DuckDB 也使用了各种开源数据库中的一些组件。

特点

  • 语法解析:使用 PostgreSQL 解析器,该解析器被重新打包为独立库
  • shell:对 SQLite shell 进行了调整,以使用 DuckDB
  • 测试:使用 SQLite 中的 SQL 逻辑测试来测试 DuckDB
  • 模糊查询:使用 SQLsmith 生成随机查询以进行额外的测试
  • Date Math:使用 MonetDB 中的 Date Math 组件
  • SQL 窗口函数:DuckDB 的窗口函数实现使用分段树聚合,如 Viktor Leis、KanKundhikanjana、Alfons Kemper 和 Thomas Neumann
  • 执行引擎:矢量化执行引擎的灵感来源于 PeterBoncz、Marcin Zukowski 和 Niels nes 的论文 “MonetDB/X 100:超级流水线查询执行”
  • 优化器:DuckDB 的优化器从 Guido Moerkotte 和 Thomas Neumman 的论文 “动态规划回击” 以及 Thomas Neumann 和 Alfons Kemper 的“取消任意查询嵌套”中获得灵感
  • 并发控制:我们的 MVCC 实现灵感来自于 Thomas Neumann,Tobias Mühlbauer 和 Alfons Kemper 的论文“用于主存数据库系统的快速序列化多版本并发控制”
  • 存储:DuckDB 使用 DataBlock 作为持久存储,如 Harald lang、Tobias Mühlbauer、Florian Funke、Peter Boncz、Thomas Neumann 和 Alfons Kemper 在“数据块:利用矢量化和编译的压缩存储上的混合 OLTP和OLAP” 中描述的那样
  • 正则表达式:DuckDB 使用 Google 的 RE2 正则表达式引擎
展开阅读全文

代码

的 Gitee 指数为
超过 的项目

评论

点击引领话题📣 发布并加入讨论🔥
发表了资讯
06/04 08:35

DuckDB 1.0.0 版本正式发布,开启数据分析新纪元

2024年6月3日,备受瞩目的数据分析引擎DuckDB迎来了一个重要的里程碑——1.0.0版本正式发布。这个版本的代号为"Snow Duck"(雪鸭),寓意着DuckDB在数据分析领域已经达到了一个新的高度,同时也象征着DuckDB团队对系统稳定性的不懈追求。 DuckDB项目始于2018年,经过近6年的不断打磨,如今已发展成为一个拥有30多万行C++引擎代码、4.2万次代码提交、解决了4000个问题的成熟开源项目。DuckDB以其卓越的查询性能和易用性在业界赢得...

4
5
发表了资讯
05/31 16:17

不需要数据的数据库

数据库的众多优点之一是它们通常试图将数据在内部的表示方式(例如在磁盘上)与数据使用方式分开。甚至 不将数据存储在运行查询的同一硬件上已成为常态。 数据库在这方面已经做得非常出色,以至于这个术语现在几乎具有误导性。“数据库”暗示着某种坚固的东西,没有它数据就会消失。但数据始终存在,只是无名硬盘上的一些位。现代数据库提供的结构和可访问性完全独立于硬盘而存在。没错——大多数数据库中不再包含任何数据。 Du...

5
5
发表了资讯
02/19 10:29

DuckDB 0.10.0 发布,进程内 SQL OLAP 数据库

DuckDB 是高性能的分析型关系数据库,旨在实现高效的数据分析。它易于安装,运行速度非常快,并且可以在进程内 (in-process) 运行。 DuckDB 背后的核心思想是保留 SQLite 的简单性和易用性,同时通过 R/Python 和 RDBMS 之间的快速分析处理和快速数据传输进行增强,以处理 OLAP 工作负载。 该项目被命名为 “DuckDB”,因为创建者认为鸭子具有弹性并且可以靠任何东西为生,类似于他们设想的数据库系统运行方式。 DuckDB 最新版本...

2
3
发表了资讯
2023/05/24 07:19

DuckDB 0.8.0 发布,进程内 SQL OLAP 数据库

DuckDB 是高性能的分析型关系数据库,旨在实现高效的数据分析。它易于安装,运行速度非常快,并且可以在进程内 (in-process) 运行。 DuckDB 背后的核心思想是保留 SQLite 的简单性和易用性,同时通过 R/Python 和 RDBMS 之间的快速分析处理和快速数据传输进行增强,以处理 OLAP 工作负载。 该项目被命名为“DuckDB”,因为创建者认为鸭子具有弹性并且可以靠任何东西为生,类似于他们设想的数据库系统运行方式。 DuckDB 最新版本...

0
6
发表了资讯
2023/02/15 07:42

DuckDB 0.7.0 发布,高性能分析型数据库系统

DuckDB 是一个高性能的分析数据库系统,它快速、可靠、易于使用。DuckDB 提供了丰富的 SQL 方言,支持远远超过基本 SQL,且支持任意的和嵌套的相关子查询、复杂类型等。 DuckDB 0.7.0 新版本包含对 JSON 支持的许多改进、新的 SQL 功能、对数据摄取和导出的改进以及其他新功能。以下是最具影响力的更改摘要: JSON 提取 这个版本介绍了read_json和read_json_auto方法,可用于将 JSON 文件提取为表格格式。类似read_csv,该read_...

0
0
发表了资讯
2022/11/16 07:05

DuckDB 0.6 发布,高性能分析型数据库系统

DuckDB 是一个高性能的分析数据库系统。它被设计为快速,可靠和易于使用。DuckDB 提供了丰富的 SQL 方言,支持远远超过基本 SQL。DuckDB 支持任意的和嵌套的相关子查询、复杂类型等。 新版本包含对存储系统的许多改进、一般性能改进、内存管理改进和新功能。以下是最具影响力的更改,以及实现这些功能的链接 PR。 特色变化 并行无序保留 CREATE TABLE AS 和 INSERT INTO #5033 并行顺序保存 CREATE TABLE AS 和 INSERT INTO #5...

0
0
发表了资讯
2022/09/14 07:11

DuckDB 0.5 发布

DuckDB 是一个高性能的分析数据库系统。它被设计为快速,可靠和易于使用。DuckDB 提供了丰富的 SQL 方言,支持远远超过基本 SQL。DuckDB 支持任意的和嵌套的相关子查询、复杂类型等。 注意:这个版本再次引入了一个向后不兼容的磁盘存储格式的变化。因此建议用户使用旧版本的 EXPORT DATABASE 命令,然后用新版本的 IMPORT DATABASE 来迁移你的数据。 主要变化和特点 实施 Out-of-Core 哈希连接(Hash join)和重新处理了查询验...

0
1
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
发表了博客
{{o.pubDate | formatDate}}

{{formatAllHtml(o.title)}}

{{parseInt(o.replyCount) | bigNumberTransform}}
{{parseInt(o.viewCount) | bigNumberTransform}}
没有更多内容
暂无内容
发表了问答
{{o.pubDate | formatDate}}

{{formatAllHtml(o.title)}}

{{parseInt(o.replyCount) | bigNumberTransform}}
{{parseInt(o.viewCount) | bigNumberTransform}}
没有更多内容
暂无内容
暂无内容
0 评论
18 收藏
分享
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部