跳到主要内容
跳到主要内容

如何使用 chDB 查询 Apache Arrow

Apache Arrow 是一种标准化的列式内存格式,在数据社区中越来越受到欢迎。 在本指南中,我们将学习如何使用 Python 表函数查询 Apache Arrow。

设置

首先,让我们创建一个虚拟环境:

然后,我们将安装 chDB。 确保您安装版本为 2.0.2 或更高:

接着,我们将安装 PyArrow、pandas 和 ipython:

我们将使用 ipython 来运行本指南中的命令,您可以通过运行以下命令启动它:

您也可以在 Python 脚本中或者您喜欢的笔记本中使用这些代码。

从文件创建 Apache Arrow 表

首先,让我们下载一个 Ookla 数据集 的 Parquet 文件,使用 AWS CLI 工具

备注

如果您想下载更多文件,可以使用 aws s3 ls 来获取所有文件的列表,然后更新上述命令。

接下来,我们将从 pyarrow 包中导入 Parquet 模块:

然后,我们可以将 Parquet 文件读取到 Apache Arrow 表中:

模式如下所示:

我们可以通过调用 shape 属性获取行和列的数量:

查询 Apache Arrow

现在让我们从 chDB 查询 Arrow 表。 首先,让我们导入 chDB:

然后我们可以描述表:

我们还可以计算行数:

现在,让我们做一些有趣的事情。 以下查询排除了 quadkeytile.* 列,然后计算所有剩余列的平均值和最大值: