2026/3/14 15:52:27
网站建设
项目流程
如何做网站的优化,网页设计top,网站没有服务器可以吗,视频剪辑培训班的学费是多少原文地址
这篇cedardb发表的文章题为《停止嵌套数据库系统》#xff0c;作者 Christian Winter 批评了近年来在事务型数据库#xff08;如 PostgreSQL#xff09;中嵌套分析型数据库#xff08;如 DuckDB、ClickHouse#xff09;的趋势#xff0c;认为这种做法虽然表面上…原文地址这篇cedardb发表的文章题为《停止嵌套数据库系统》作者 Christian Winter 批评了近年来在事务型数据库如 PostgreSQL中嵌套分析型数据库如 DuckDB、ClickHouse的趋势认为这种做法虽然表面上能提升分析性能但实际上存在诸多局限并不能真正实现 HTAP混合事务/分析处理系统的效果。以下是文章的主要观点总结1.嵌套数据库系统的工作原理以pg_duckdb为例它允许在 PostgreSQL 中嵌入 DuckDB 引擎将分析查询交给 DuckDB 执行而数据扫描仍由 PostgreSQL 完成。DuckDB 本身是为嵌入式场景设计的支持 PostgreSQL 语法具有优秀的查询优化器与分析算法。2.嵌套系统的优势分析查询性能优于 PostgreSQL尤其是在复杂查询、并行处理和内存利用方面。可以访问 PostgreSQL 不支持的功能如直接查询远程 Parquet 文件。3.嵌套系统的局限性扫描性能瓶颈数据扫描仍依赖 PostgreSQL无法使用列式存储或高级扫描优化技术。系统复杂度增加需要同时维护两个并非为协同工作设计的系统。功能不兼容某些查询可能因函数、排序规则或比较方式的差异而产生不一致的结果。性能提升有限目前pg_duckdb和pg_clickhouse在 TPC-H 测试中并未稳定优于纯 PostgreSQL。4.嵌套系统 vs ETL对于偶尔进行的分析查询如月度报表嵌套系统可作为临时解决方案避免建立完整的 ETL 流程。但对于持续分析需求专门的 HTAP 或分析型系统更具优势。某些方案如pg_clickhouse本质上仍是“外部数据包装器”仍需自行构建数据同步管道。5.这是真正的 HTAP 吗作者认为不是。真正的 HTAP 需要系统在保证事务一致性的同时优化从扫描到结果的全流程。嵌套系统无法解决扫描瓶颈且无法在分析查询中提供与事务相同的一致性保证。6.真正 HTAP 系统的构建要素作者以 CedarDB 为例说明真正的 HTAP 系统需要同时支持点查询和分析扫描的存储布局乐观同步数据结构以减少读写冲突乐观快照隔离以支持长查询不阻塞写入调度器平衡写入与读取的优先级7.结论嵌套数据库系统是一种“藏污纳垢”式的临时方案不能从根本上解决分析性能与事务一致性并存的挑战。如果真正需要 HTAP 能力应选择专为 HTAP 设计的系统而非简单嵌套现有引擎。文章态度作者对“嵌套数据库”持批判态度认为这是一种技术上的妥协而非真正的解决方案并呼吁开发者选择真正支持 HTAP 的数据库系统。