数据仓库(hive)
随风奔跑之水
理想是光明的,道路是曲折的,劲头是不可阻挡的
展开
-
UDF(PYTHON / JAVA)入门级开发
开发前的声明 udf开发是在数据分析的时候如果内置的函数解析不了的情况下去做的开发,比方说你只想拆分一个字段,拼接一个字段之类的,就不要去搞udf了,这种基本的需求自带函数完全支持,具体参数可参考文档: http://spark.apache.org/docs/latest/api/sql/search.html?q=cast 里面列举了所有函数的介绍和使用,推荐优先使用官方推出的,因为自己写的udf如果对一些异常处理不到位可能会导致数据分析的失败或者意...原创 2020-07-07 10:08:23 · 1841 阅读 · 0 评论 -
你的数据业务系统需要数据仓库吗?(合集)
参考博客:https://www.cnblogs.com/JaneZSS/p/6678548.html原创 2020-06-22 10:35:21 · 388 阅读 · 1 评论 -
Hive中with cube、with rollup、grouping sets用法
表结构CREATE TABLE test (f1 string, f2 string, f3 string, cnt int) ROW FORMAT delimited FIELDS TERMINATED BY '\t' stored AS textfile; L...原创 2019-11-04 18:23:30 · 10484 阅读 · 1 评论 -
hadoop任务参数配置-原理-调优
一、MapReduce On Yarn的配置详解和日常维护https://www.cnblogs.com/yinzhengjie/articles/11064239.html二、YARN and MapReduce 内存参数设置原理https://docs.cloudera.com/HDPDocuments/HDP2/HDP-2.0.9.1/bk_installing_manually...转载 2019-10-18 17:24:18 · 299 阅读 · 0 评论 -
Hive优化
Hive优化一、Hadoop 计算框架的特性1、什么是数据倾斜由于数据的不均衡原因,导致数据分布不均匀,造成数据大量的集中到一点,造成数据热点。2、Hadoop框架的特性不怕数据大,怕数据倾斜jobs数比较多的作业运行效率相对比较低,比如即使有几百行的表,如果多次关联多次汇总,产生十几个jobs,耗时很长。原因是map reduce作业初始化的时间是比较长的sum,coun...转载 2019-08-21 14:30:56 · 123 阅读 · 0 评论 -
将win本地文件数据导入hive表中(通用方法)
重要说明:1、本地文件理论上可以是任意格式的数据(.txt , .json , 字符串...)2、过程完全可以复用(同种类型问题)数据源示例:json格式数据[ { "cityId": 19, "cityName": "北京", "province": "北京", "shortWord": "B", ...原创 2019-08-21 17:57:50 · 3204 阅读 · 1 评论 -
hdfs中的数据离线校核
一、将目标数据拉取到本地1、将目标数据筛选后转到Liunx系统文件中hdfs dfs -text /backup/dataflow/20190822/* | grep "mwapp" > mwapp.log## 1、先查询指定日期下的所有数据,2、通过管道筛选出含有指定字符的内容,3、将数据重定向到log文件less mwapp.log## 查看文件的前一部分2、将中转...原创 2019-08-23 15:44:00 · 167 阅读 · 0 评论 -
hadoop – 如何将数据插入Hive中的Parquet表
Hive中的Parquet表本质是一种被压缩了的二进制文件,不方便对其进行操作编辑方法一:(针对数据量不大时)优点:方便、快捷insert into table TABLE_NAME1 partition(dt="2019-09-05")select32451,"支付卡券11111qaz",19,19,"2019-09-06 17:34:19"from TABLE_NAME2...原创 2019-09-06 18:15:47 · 2007 阅读 · 0 评论 -
Hadoop之hive中sql常用函数汇总
1、hive执行引擎 mr/tez/sparkset hive.execution.engine = mr;2、开启动态分区set hive.exec.dynamic.partition = true;set hive.exec.dynamic.partition.mode = nonstrict;## 删除分区:ALTER TABLE dm.user_action_sel...原创 2019-05-13 18:15:39 · 3927 阅读 · 1 评论 -
深入解析hive中的NULL(空值)和''(空字符串)
一、hive里面的 null(空值) 和 ''(空字符串) 是两个不同的东西1、如果查某个字段【 a 是否为空】应该这样写:a is nullais not null2、如果查某个字段 【a 是否为''】应该这样写:a = ''a <>''在hive的数据中,null值(空值)较为常见,比如字段没有值,就是所谓的null值(空值),而 ''(空字符串)...原创 2019-09-29 15:09:03 · 26683 阅读 · 1 评论 -
Hive Shell操作
Hive Shell操作一、Hive Shell 基本操作1、Hive 命令行hive [-hiveconf x=y]* [<-ifilename>]* [<-f filename>|<-e query-string>] [-S]-i 从文件初始化HQL-e 从命令行执行指定的HQL-f 执行HQL脚本-v 输出执行的HQL语句到控...转载 2019-08-21 14:23:59 · 250 阅读 · 0 评论 -
HiveQL
HiveQL一、DDL1、DDL功能建表删除表修改表结构创建/删除视图创建数据库显示命令增加分区、删除分区重命名表修改列的名字、类型、位置、注释增加/更新列增加表的元数据信息2、建表CREATE [EXTERNAL] TABLE [IF NOT EXISTS] table_name [(col_namedata_type [COMMENT col_comm...转载 2019-08-21 14:17:12 · 311 阅读 · 0 评论 -
Hive高级编程 -- UDF
Hive高级编程一、产生背景为了满足客户个性化的需求,Hive被设计成一个很开放的系统,很多内容都支持用户定制,包括:文件格式:Text File,Sequence File内存中的数据格式: Java Integer/String, Hadoop IntWritable/Text用户提供的 map/reduce 脚本:不管什么语言,利用stdin/stdout 传输数据...转载 2019-08-21 14:05:50 · 542 阅读 · 0 评论 -
向hive表中添加数据
1、首先准备数据源:学生成绩txt文件,共七个字段(ID,name,Chinese,English,math,school,class)[root@xxx tmp]# hdfs dfs -cat /tmp/score.txt0001,zhangsan,99,98,100,school1,class10002,lisi,59,89,79,school2,class10003,w...转载 2019-08-05 15:57:03 · 16640 阅读 · 0 评论 -
hive问题总结
hive sql使用总结:1.hive在连接中不支持不等值连接,不支持or,where条件后不支持子查询。分别举例如下及实现解决办法。 1.1.不支持不等值连接错误:select * from a inner join b on a.id<>b.id替代方法:select * from a inner join b on a.id=b.id ...转载 2019-08-02 18:04:30 · 865 阅读 · 0 评论 -
数据的ETL(篇一)
ETL是将业务系统的数据经过抽取、清洗转换之后加载到数据仓库的过程,目的是将企业中的分散、零乱、标准不统一的数据整合到一起,为企业的决策提供分析依据。ETL是BI项目重要的一个环节。 通常情况下,在BI项目中ETL会花掉整个项目至少1/3的时间,ETL设计的好坏直接关接到BI项目的成败。1、ETL的设计ETL的设计分三部分:数据抽取、数据的清洗转换、数据的加载。在设计ETL...原创 2019-07-02 14:31:30 · 672 阅读 · 0 评论 -
数据转换故事分享一
本次问题根源是前后端数据处理的机制差异1、问题描述:在某次会员活动中,需要汇总以下数据:1、总访问次数:统计某活动首页PV -- (visit_counts)2、总访问人数:统计某活动首页UV -- (visit_persion_counts)3、总参与人数:统计某活动参与抽奖的人数,去重 -- (participate_counts)4、总分享数:某活动首页分享...原创 2019-07-03 14:38:07 · 115 阅读 · 0 评论 -
Hadoop生态上几个技术的关系与区别:hive、pig、hbase 关系与区别
Pig介绍一种操作hadoop的轻量级脚本语言,最初又雅虎公司推出,不过现在正在走下坡路了。当初雅虎自己慢慢退出pig的维护之后将它开源贡献到开源社区由所有爱好者来维护。不过现在还是有些公司在用,不过我认为与其使用pig不如使用hive。:)Pig是一种数据流语言,用来快速轻松的处理巨大的数据。Pig包含两个部分:Pig Interface,Pig Latin。Pig可以非常方便的...转载 2019-08-21 11:34:07 · 573 阅读 · 0 评论 -
Hive的安装部署、配置及实践操作
在此强调:Hadoop,zookpeer,spark,kafka,mysql已经正常启动一、开始安装部署hive基础依赖环境:1,jdk 1.6+2, hadoop 2.x3,hive 0.13-0.194,mysql (mysql-connector-jar)安装详细如下:#javaexport JAVA_HOME=/soft/jdk1.7.0_79/expor...转载 2019-08-21 11:59:59 · 348 阅读 · 0 评论 -
Hive内建操作符与函数开发
Hive内建操作符与函数开发1、 关系运算符等值比较: =不等值比较: <>小于比较: <小于等于比较: <=大于比较: >大于等于比较: >=空值判断: IS NULL非空判断: IS NOT NULLLIKE比较: LIKEJAVA的LIKE操作: RLIKEREGEXP操作: REGEXP等值比较: =...转载 2019-08-21 13:42:49 · 195 阅读 · 0 评论 -
Hive JDBC
Hive JDBC1、 基本操作对象的介绍1、Connection说明:与Hive连接的Connection对象Hive的连接jdbc:hive://IP:10000/default“获取Connection的方法DriverManager.getConnection("jdbc:hive://IP:10000/default","", "");2、Statement...转载 2019-08-21 13:48:01 · 492 阅读 · 0 评论 -
Hive参数
Hive参数hive.exec.max.created.files说明:所有hive运行的map与reduce任务可以产生的文件的和默认值:100000hive.exec.dynamic.partition说明:是否为自动分区默认值:falsehive.mapred.reduce.tasks.speculative.execution说明:是否打开推测执行默认值:true...转载 2019-08-21 13:56:14 · 258 阅读 · 0 评论 -
hive 新增的聚合功能
hive 新增加了以下四种聚合功能,扩展了之前只能 group by 一组的模式。1. GROUPING SETS clause2. Grouping__ID function3. Cubes and Rollups4. hive.new.job.grouping.set.cardinality1. GROUPING SETS 这个功能比较容易理解,就如下表所示。Aggreg...转载 2019-08-14 18:00:44 · 351 阅读 · 0 评论