Skip to content

Latest commit

 

History

History
executable file
·
44 lines (22 loc) · 2.48 KB

3.Hive擅长什么.md

File metadata and controls

executable file
·
44 lines (22 loc) · 2.48 KB

Hive的优势

  • 简单容易上手

    Hive使用类SQL语言,有关系型数据库使用经验的人都可以平滑过渡到Hive,非程序员也可以快速上手使用。

  • 开发快速

    Hive清洗和分析数据的效率很高,Hive出现之前,数据处理工作需要交给熟悉MR程序的开发人员才能完成,而且MR程序的编写工作量非常大,Hive出现后,使用类SQL语言直接操作数据,大大提高了开发速度。

  • 适合大规模数据的处理

    Hive最终会将SQL语句翻译成MR程序执行,所以它能处理大规模数据。

Hive的局限

  • 延迟高

    即使数据量很小,也需要很长时间才能完成Hive的一个操作,这是由Hadoop执行引擎的特点决定的。

  • 不支持DELETE/UPDATE等事务处理

    这是HDFS的特性决定的,HDFS适合一次写入多次读取的情况,因此不能通过Hive完成DELETE/UPDATE等事务处理操作。

Hive擅长的是非实时的、离线的、对响应及时性要求不高的海量数据批量计算

Hive的适用场景

  • 海量日志分析

日志数据量是非常庞大的,一个中型网站每天的日志数据量可达数十GB,这样的数据量式用单机处理会很吃力,需要式用分布式处理系统。另外日志数据产生后不会修改,满足Hive式用条件,一般情况下离线数据分析能满足很大一部分业务需求。

海量日志分析

日志数据通过flume收集到HDFS上,然后经过MR清洗(如清除一些异常日志),重新存放到HDFS,最后经过Hive处理和统计,为最终业务需要服务。

  • 海量结构化数据分析

业务数据库中的表往往是针对线上业务而设计的,对统计分析需求往往并不友好,而且通常也不满足高并发量的需求。

海量结构化数据分析

要进行数据分析通常是先使用Sqoop工具将关系型数据库中的数据导入到HDFS,之后根据统计分析业务需要,通过Hive对数据进行处理,存储成方便后续业务分析的格式。这就是数据仓库的场景。