N.0 前言
1)这里我们讲解的是CDH版的数仓,一般用impala。而 apache版的数仓使用的是Druid+Presto+Kylin查询引擎,有兴趣的可以学习下。 |
N.1 Druid
1)摘要:Druid是一个快速的列式分布式的支持实时分析的数据存储系统(自带SQL分析引擎),在处理PB级别数据、毫秒级查询、数据实时处理方面,比传统的OLAP系统有了显著的性能改进。 Druid数据结构 与Druid架构相辅相成的是其基于DataSource与Segment的数据结构,它们共同成就了Druid的高性能优势。 2)注意:阿里巴巴也创建过一个开源项目叫作Druid (简称阿里Druid) ,它是个数据库连接池的项目,为spirngBoot。阿里Druid(属于连接池)和apache的Druid(属于数据存储系统)没有任何关系,只是他们的名字刚好取的一模一样而已。 |
N.2 Presto
1)摘要:Presto是一个开源的分布式SQL分析引擎,数据量支持GB到PB字节,主要用来处理秒级查询的场景。 虽presto可以解析SQL,但它不是一个标准的数据库,不是MySQL、Oracle的代替品,也不能用来处理在线事务,值用作OLAP; Presto、Impala性能比较 测试结论: |
N.3 Phoenix
1)摘要:Phoenix Phoenix是HBase的开源SQL查询引擎。可以使用标准JDBC API代替HBase客户端API来创建表,插入数据和查询HBase数据。 2)特点 (1)容易集成:如Spark,Hive,Pig,Flume和Map Reduce。 (2)性能好:直接使用HBase API以及协处理 |
N.4 Kylin
1)摘要:开源的分布式SQL分析引擎,提供Hadoop/Spark之上的SQL查询接口及多维分析(MOLAP)能力以支持超大规模数据,能在亚秒内查询巨大的Hive表; Kylin的主要特点包括支持SQL接口、支持超大规模数据集、亚秒级响应、可伸缩性、高吞吐率、BI工具集成等。 MR HiveM(多维)OLAP连接分 |
N.5 Impala
1)摘要: 概述 Cloudera公司推出,提供对HDFS、Hbase数据的高性能、低延迟的交互式SQL查询功能。基于Hive,使用内存计算,兼顾数据仓库、具有实时、批处理、多并发等优点。 是CDH平台首选的PB级大数据实时SQL分析引擎。 2)优点: 基于内存运算,不需要把中间结果写入磁盘,省掉了。 |