一文详解MPP大规模并行处理架构
导读
随着分布式、并行化技术成熟应用,MPP引擎逐渐表现出强大的高吞吐、低时延计算能力,有很多采用MPP架构的引擎都能达到“亿级秒开”。
MPP是系统架构角度的一种服务器分类方法,本文对MPP架构特征、与批处理架构的异同点以及采用MPP架构的OLAP引擎进行了详细的解读,推荐给大家。
01 MPP架构
SMP(对称多处理器结构) NUMA(非一致存储访问结构) MPP(大规模并行处理结构)
1. SMP
2. NUMA
3. MPP
任务并行执行; 数据分布式存储(本地化); 分布式计算; 高并发,单个节点并发能力大于300用户; 横向扩展,支持集群节点的扩容; Shared Nothing(完全无共享)架构。
02 批处理架构的MPP架构
批处理架构(如 MapReduce)与MPP架构的异同点,以及它们各自的优缺点是什么呢?
批处理的优势:
批处理的缺陷:
MPP的优势:
MPP的缺陷:
03 MPP架构的OLAP引擎
采用MPP架构的OLAP引擎有很多,下面只选择常见的几个引擎对比下,可为公司的技术选型提供参考。
1)只负责计算,不负责存储的引擎
1. Impala
2. Presto
2)既负责计算,又负责存储的引擎
1. ClickHouse
2. Doris
3. Druid
亚秒级的OLAP查询分析:采用了列式存储、倒排索引、位图索引等关键技术; 在亚秒级别内完成海量数据的过滤、聚合以及多维分析等操作; 实时流数据分析:Druid提供了实时流数据分析,以及高效实时写入; 实时数据在亚秒级内的可视化; 丰富的数据分析功能:Druid提供了友好的可视化界面; SQL查询语言; 高可用性与高可拓展性: Druid工作节点功能单一,不相互依赖; Druid集群在管理、容错、灾备、扩容都很容易;
4. TiDB
5. Greenplum
3)常用的引擎对比
赞 (0)