自从公司使用大数据产品之后,就很少碰开源的东西了,集群出问题也是跟研发沟通,前些天有朋友问我,怎么能把hive底层的引擎换成spark,我想了想,是不是将hive的数据库共享给spark然后用spark-shell不就好了,后来查了查资料,原来不是这样的,这里面的操作还挺多了。哎,真的是,用了别人产品,开发是方便了,原理懂的就少了,小编一直还沉浸在用一条SQL底层就能转换的
1.执行流程概述查看hive语句的执行流程:explainselect….fromt_table…;查看hive语句的执行流程:explainselect….fromt_table…;操作符是hive的最小执行单元Hive通过execmapper和execreducer执行MapReduce程序,执行模式有本地模式和分布式模式每个操作符代表一个HDFS操作或者MapReduce作业hive的操作符
1.hive的数据倾斜 介绍:只要在分布式一定有shuffle,避免不了出现数据倾斜,在混淆数据的过程中出现数据分布不均匀。比如:在MR编程中reducetask阶中的数据的大小不一致,即很多的数据集中到了一个reducetask中,hive的数据倾斜就是mapreduce的数据倾斜maptaskreducetask最后就是reducetask阶段的数据倾斜。 不会产生数据倾斜
案例一:需求:现有这么一批数据,现要求出:每个用户截止到每月为止的最大单月访问次数和累计到该月的总访问次数。数据:用户名,月份,访问次数A,2015-01,5A,2015-01,15B,2015-01,5A,2015-01,8B,2015-01,25A,2015-01,5A,2015-02,4A,2015-02,6B,2015-02,10B,2015-02,5A,2015-03,16A,2015-
现在有一批数据:01||zs||1802||ls||1903||jj||10每一行的数据的分割符是||,是一个多字节的分隔符,默认的hive只支持单字节的分隔符,上面的数据时||多字节,不支持。解决方案: method01:使用RegexSerDe通过正则表达式来抽取字段#建表语句createtablet_bi_reg(idstring,namestring,agestring)rowf
查看函数的介绍(必读):showfunctions;#查看hive中的所有内置函数descfunctionextended函数名;#查看某个函数的详细介绍1.hive中常见的内置函数1)集合函数 创建数组 array(ele1,ele2,ele3) 例:selectarray(1,2,3,4); 判断值是否在数
创建视图:createviewview_piaofangasselect*fromt_name;查看视图:showtables;#既有表又有视图showviews#只查看视图查看视图的详细信息descformatted|extended删除视图dropviewview_name;使用视图的注意点:Hive中的试图,仅仅是一个sql语句的快捷方式hive中的视图只是逻辑视图,没有物化视图hive的视
1.基本数据类型因为hive也是java语言编写的,所以他的基本数据类型和java的大致相同:2.基本数据类型(1)array(数组)特点:个数可以不相同,但是类型相同例:以family表(namestringfamilesarray<string>)为例:#建表语句:createtablet_family(namestring,familesarray<string>)r
1.hive的基本语法:createdatabasesmydb#创建数据库showdatabases#查看所有的库usemydb#切换数据库createtablet_user(idint,namestring,ageint)#创建表createtablet_user(idint,namestring,ageint)rowformatdelimitedfieldsterminatedby'分隔符'#
因为hive是基于hadoop的,所以一定要有hadoop的平台支撑:hadoop分布式集群搭建:http://blog.51cto.com/14048416/23414911.内嵌Derby版本:安装步骤:上传安装包:apache-hive-2.3.2-bin.tar.gz解压安装包:tar-zxvfapache-hive-2.3.2-bin.tar.gz-C/application进入进入到b
1.hive的介绍 什么是hive:Hive是基于hadoop的一个数据仓库工具,实质就是一款基于hdfs的MapReduce计算框架,对存储在HDFS中的数据进行分析和管理。 hive的工作方式:把存放在hive中的数据都抽象成一张二维表格,提供了一个类似于sql语句的操作方式,这些sql语句最终被hive的底层翻译成为MapReduce程序,最终在h
Copyright © 2005-2024 51CTO.COM 版权所有 京ICP证060544号