pg_duckdb是PostgreSQL的扩展,它将DuckDB的列矢量化分析引擎和特性嵌入到PostgreSQL中。本文介绍pg_duckdb插件安装、特点以及如何快速入门使用。
pg_duckdb简介
pg_duckdb扩展将完全能够查询DuckDB中存储在云中的数据,就像它是本地的一样。DuckDB的“双重执行”功能让我们可以无缝地将本地PostgreSQL数据与DuckDB数据连接起来,我们将找出运行查询的最佳位置。作为用户无需关心计算在哪里运行,我们只需要弄清楚如何让它运行得更快。
此外,在分析领域中,通常会将数据从事务数据库迁移到分析存储库中。pg_duckdb扩展和DuckDB可以提供帮助;你可以在PostgreSQL中运行一个查询,从PostgreSQL数据库中提取最近的数据并将其写入DuckDB。你不需要导出和重新导入数据,也不需要设置CDC。
最后,分析程序和事务业务位于相同数据库方案缺点比较明显。从内存和CPU需求的角度来看,分析程序可能会非常耗费资源。一旦数据库规模超过特定限额,直接在生事务型数据库上运行分析程序是不合适的。DuckDB可以帮助将分析程序迁移到云端,这样人们甚至不需要更改正在运行的查询,就能让查询速度更快。
安装pg_duckdb
要构建pg_duckdb,需要下面依赖:
- PostgreSQL 16或17
- Linux或MacOS
- PostgreSQL扩展的标准构建工具集