下载安卓APP箭头
箭头给我发消息

客服QQ:3315713922

大数据Hive任务执行很慢

作者:软件架构     来源: 今日头条点击数:3564发布时间: 2020-04-28 20:24:00

标签: 大数据数据分析Hadoop

Hive任务执行很慢,但是导入数据非常的快?对于“大数据”(Big data)研究机构Gartner给出了这样的定义。“大数据”是需要新处理模式才能具有更强的决策力、洞察发现力和流程优化能力来适应海量、高增长率和多样化的信息资产。

直播:近二十载从业老兵谈金融科技赋能的探索与实践

读时模式和写时模式

Hive使用Hadoop来执行查询,其查询执行速度是很慢的,但是使用load data向Hive中导入数据却非常快,这是因为Hive采取的是读时模式(Schema On Read)。

  • 读时模式:读取数据的时候,对数据的类型、格式做检查;
  • 写时模式:写入数据的时候,对数据的类型、格式等规范做检查;

将数据存到Hive的数据表时,Hive采用的是“读时模式”,意思是针对写操作不会做任何校验,只是简单的将文件复制到Hive的表对应的HDFS目录。跟“读时模式”相对应的是“写时模式”,RDBMS一般采用“写时模式”,在将数据写入到数据表的时候会检查每一条记录是否合法,如果检查不通过会直接返回失败信息。

大数据Hive任务执行很慢_大数据_数据分析_Hadoop_课课家

由于向Hive中存入数据的只是简单的文件复制和粘贴,所以导入数据速度非常的快。当读取、查询的时候,才会根据表模式来解释数据,这个时候如果遇到了不符合模式的数据,Hive会直接将数据解析成NULL。

读时模式的好处

Hive采用读时模式带来了以下几个好处:

  • 向Hive表中新增数据非常的快,通常情况下对于外来数据,采用的方法是直接用Hadoop命令将文件上传到一个HDFS目录,Hive直接读这个目录;
  • 一份数据可以被解析成多种模式,存储在Hive表中的数据跟Hive本身没有关系,数据也可以被其他工具比如Pig来处理;

导入数据

  1. hive> load data local inpath '/root/usr.data' into table usr; 
大数据技术的战略意义不在于掌握庞大的数据信息,而在于对这些含有意义的数据进行专业化处理。换而言之,如果把大数据比作一种产业,那么这种产业实现盈利的关键,在于提高对数据的“加工能力”,通过“加工”实现数据的“增值”。
赞(9)
踩(0)
分享到:
华为认证网络工程师 HCIE直播课视频教程