随笔 - 54  文章 - 0  评论 - 6  阅读 - 67961

Druid对比Redshift

Redshift 内部使用了亚马逊取得了授权的ParAccel

实时注入数据

抛开可能的性能不同, 有功能性的不同

Druid 适合分析大数据量的流式数据, 也能够实时加载和聚合数据
一般来讲, 传统的数据仓库包括列式存储只摄入批量数据, 没有对流式数据做优化

Druid 是只读分析型数据仓库

Druid支持写语句, 但是数据是不变的, 也不支持join. ParAccel 是完全数据库, 支持SQL语法包括join, insert, update

 

分发数据

Druid的数据分发的单位是segment, segment的数据在高可用的深存储之中, 例如S3和HDFS. 扩展和收缩不会导致大量的复制工作和不可用. 实际上, 一些历史节点失效不会导致数据丢失,因为当历史节点启动的时候会从深存储中拉取数据

想反, ParAccel数据分发是基于hash算法的。 扩展集群会导致在所有节点上重新计算hash, 这就比较难控制可用性。亚马逊的redshif解决问题的变通方案使用多步操作
    设置集群只读
    扩集群并行复制数据
    重定向查询到新的集群

复制策略

Druid使用segment做数据分发, 使更多的节点可以加入和重新平衡数据而不用分步骤交换。 复制策略也是所有副本可以被用来查询。

ParAccel’s hash-based distribution generally means that replication is conducted via hot spares. This puts a numerical limit on the number of nodes you can lose without losing data, and this

replication strategy often does not allow the hot spare to help share query load.
复制策略不利于低访问的节点分享查询压力。

索引策略

和列式存储一起, Druid用索引来提高带过滤查询的速度。索引结构会增加存储负担(使修改更难), 但是显著的增加速度。

ParAccel 没有使用索引

posted on   lpthread  阅读(1599)  评论(0编辑  收藏  举报
编辑推荐:
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

点击右上角即可分享
微信分享提示