极致丝滑:用DuckDB玩转超百亿级数据(作者都要魔怔了,不建议亲自测试)

前面有说过,DuckDB的创建者一开始就放弃了分布式,然后就有同学提出质疑,DuckDB会有性能瓶颈。我只想说,目前DuckDB可以说是单机场景下大数据量分析的最佳选择。

本文,我将为同学们演示DuckDB在百亿级数据量下的性能表现,我感觉我已经彻底魔怔了,百亿级数据量意味着什么?

百亿级数据是多少

我们假设一家企业每天可以产生1000万的数据量,那么产生100亿的数据量就需要1000天(超过两年半)。

我们按照前文3亿数据量,CSV文件约9GB,那么100亿就是300G。这个数据量我相信这个世界上已经没有几个单机可以处理这个CSV文件了。

此情此景,如何解决呢?

答案就是Parquet。

Parquet是什么

Parquet又称Apache Parquet,是Apache Hadoop生态系统的一种免费、开源的面向列的数据存储格式。

Parquet优点

  • 数据压缩

  • 列式存储

  • 与编程语言无关

  • 开源格式,免费使用

  • 支持复杂数据类型

创建超百亿的数据量

  1. 创建数据库文件并创建表
CREATE TABLE weather (
    city    VARCHAR,
    temp_lo INTEGER,
    temp_hi INTEGER,
    prcp    REAL,
    date    DATE
);

  1. 插入数据
INSERT IN
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值