DuckDB:在Apache Arrow上使用SQL

arrow

DuckDB可以查询多种不同类型的Apache Arrow对象。

Apache Arrow表

存储在本地变量中的Arrow表可以像DuckDB中的常规表一样被查询。

import duckdb
import pyarrow as pa

# 连接到内存数据库
con = duckdb.connect()

my_arrow_table = pa.Table.from_pydict({
   'i': [1, 2, 3, 4],
                                       'j': ["one", "two", "three", "four"]})

# 查询Apache Arrow表"my_arrow_table"并以Arrow表的形式返回结果
results = con.execute("SELECT * FROM my_arrow_table WHERE i = 2").arrow()

Apache Arrow数据集

存储为变量的Arrow数据集也可以像常规表一样被查询。
数据集对于指向Parquet文件目录以分析大型数据集非常有用。
DuckDB会将列选择和行过滤推送到数据集扫描操作中,以便只将必要的数据拉入内存。

import duckdb
import pyarrow as pa
import tempfile
import pathlib
import pyarrow.parquet as pq
import</
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值