数据仓库&Hive
流风雨情
空杯心怀,stay hungry stay foolish
展开
-
hive常用的时间-日期转换方法 月初 月末 时间差等
hive 实现本月第一天select trunc(current_date(),'MM'); select date_sub(current_date,dayofmonth(current_date)-1);原创 2021-03-30 00:07:27 · 3502 阅读 · 0 评论 -
Hive中数据报错:Failed with exception java.io.IOException: rename for src path: hdfs://xx returned false.
https://blog.csdn.net/godlovedaniel/article/details/105710538转载 2021-01-24 23:35:22 · 710 阅读 · 0 评论 -
Hive分区表新增字段为null的bug及解决方法
环境:hive-1.1.0-cdh5.13.0重跑 insert overwrite table tablename partition(dt=’${dt}’) …新加的字段为null的问题:执行修改表语句:alter table table_name add columns(newCol string comment ‘新加的字段’);重新insert overwrite 历史已存在的分区后发现 newCol字段为null,新分区正常,无论是内部表还是外部表均有该问题。在新增字原创 2021-01-16 14:45:01 · 767 阅读 · 0 评论 -
superset css自定义样式
body { background-color: #fff;}header { border-bottom: 2px solid #eee;}.navbar { margin-bottom: 0;}/* 条件搜索区域样式 */.widget.filter_box .slice_container.filter_box .scrollbar-content { display: flex; flex-wrap: wrap;}.widget.fi原创 2020-06-28 14:28:35 · 4073 阅读 · 0 评论 -
拉链表解决什么场景下问题,为什么要用拉线表
这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Markdown编辑器你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Mar原创 2020-06-23 16:55:32 · 1360 阅读 · 3 评论 -
怎么定义你设计的系统或者开发软件 好
解决了客户的问题,需求稳定投入产出比原创 2020-06-16 15:25:21 · 161 阅读 · 0 评论 -
Hive 空值和NULL字符串 踩坑
在hive测试环境中发现,通过csv上传到hive中的空值字段会被转化为NULL字符串,在查询的时候where xxx is null 查不到数据 通过 where xxx = ‘NULL’ 能查到数据复现问题:CREATE TABLE `call_v2`( `id` string, `call_uuid` string, `transa.原创 2020-06-04 14:20:24 · 2645 阅读 · 0 评论 -
Hive多维度分析MOLAP
SELECT t.type, t.status, count(1), grouping__idFROM ods_callcenter.sdm_call tWHERE dt = '20200601'GROUP BY t.type, t.statusWITH CUBE--WITH ROLLUP--GROUPING SETS(t.status,t.type,(t.status,t.type))原创 2020-06-02 22:22:09 · 1445 阅读 · 0 评论 -
ROLAP、MOLAP和HOLAP联机分析处理区别
在线分析处理(OLAP,Online Analytical Processing)是通过带层次的维度和跨维度进行多维分析的,简单理解为一种多维数据分析的方式,通过OLAP可以展示数据仓库中数据的多维逻辑视图。在多维分析中,数据是按照维度(观察数据的角度)来表示的,比如商品、城市、客户。而维通常按层次(层次维度)组织的,如城市、省、国家,再比如时间也是有层次的,如天、周、月、季度和年。不同的管理者可以从不同的维度(视角)去观察这些数据,这些在多个不同维度上对数据进行综合考察的手段就是通常所说的数据仓库多维查询原创 2020-06-02 22:08:25 · 587 阅读 · 0 评论 -
Hive SQL上传csv文件忽略第一行
建表时加入 tblproperties TBLPROPERTIES("skip.header.line.count"="1"); 例子CREATE TABLE `ods_callcenter.sdm_call`( `id` string, `call_uuid` string, `transaction_id` string, `type` string, `status` string, `caller_number` string, .原创 2020-06-02 21:52:22 · 1315 阅读 · 0 评论 -
阿里数据中台架构图
来自公共号木东居士原创 2020-03-17 17:40:23 · 4404 阅读 · 0 评论 -
Hive常用DDL操作
Hive常用DDL操作一、Database 1.1 查看数据列表 1.2 使用数据库 1.3 新建数据库&...原创 2020-03-17 17:25:01 · 174 阅读 · 0 评论 -
Hive CLI
使用 hive -H 或者 hive --help 命令可以查看所有命令的帮助,显示如下:➜ /Users/liuzhiwei/app/hive-2.3.6/bin> hive -HSLF4J: Class path contains multiple SLF4J bindings.SLF4J: Found binding in [jar:file:/Users/liuzhiwe...原创 2020-03-17 17:13:35 · 159 阅读 · 0 评论 -
beeline 链接 hiveserver2 报错
➜ /Users/liuzhiwei/app/hive-2.3.6/bin> ./beeline SLF4J: Class path contains multiple SLF4J bindings.SLF4J: Found binding in [jar:file:/Users/liuzhiwei/app/hive-2.3.6/lib/log4j-slf4j-impl-2.6.2.j...原创 2020-03-17 16:36:35 · 914 阅读 · 0 评论 -
hive-2.3.6 使用transform
现有原始 json 数据(rating.json)如下{"movie":"1193","rate":"5","timeStamp":"978300760","uid":"1"}{"movie":"661","rate":"3","timeStamp":"978302109","uid":"1"}{"movie":"914","rate":"3","timeStamp":"97830196...原创 2020-03-09 19:04:51 · 294 阅读 · 0 评论 -
hadoop WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform...
WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable解决方案是在文件hadoop-env.sh中增加:export HADOOP_OPTS="-Djava.library.path=${H...原创 2020-03-09 11:13:42 · 428 阅读 · 1 评论 -
Hive优化
https://blog.csdn.net/wxfghy/article/details/81361400原创 2020-03-04 15:24:20 · 114 阅读 · 0 评论 -
Hive导入导出方式
Hive中追加导入数据的4种方式是什么?请写出简要语法从本地导入: load data local inpath ‘/home/1.txt’ (overwrite)into table student;从Hdfs导入: load data inpath ‘/user/hive/warehouse/1.txt’ (overwrite)into table student;查询导入: cr...原创 2020-03-04 15:20:38 · 270 阅读 · 0 评论 -
Hive 分区 和 分桶 的区别
背景Hive使用select语句进行查询的时候一般会扫描整个表内容,会消耗很多时间做没必要的工作。Hive可以在创建表的时候指定分区空间,这样在做查询的时候就可以很好的提高查询的效率。分区: 在HDFS上的表现形式是一个目录,分桶: 在HDFS上的表现形式是一个单独的文件分区:Hive的分区使用HDFS的子目录功能实现。每一个子目录包含了分区对应的列名和每一列的值Hive的分区方...原创 2020-03-04 13:10:10 · 703 阅读 · 0 评论 -
Hive 随机取样-抽样查询
背景在大规模数据量的数据分析及建模任务中,往往针对全量数据进行挖掘分析时会十分耗时和占用集群资源,因此一般情况下只需要抽取一小部分数据进行分析及建模操作Hive提供了数据取样(SAMPLING)的功能,能够根据一定的规则进行数据抽样,目前支持数据块抽样,分桶抽样和随机抽样,具体如下所示:随机抽样(rand()函数)使用rand()函数进行随机抽样,limit关键字限制抽样返回的数据,...原创 2020-03-03 18:44:11 · 8911 阅读 · 0 评论 -
Hive 实现 分组后随机取N条数据
hive取随机的数据,可以使用rand()函数,用rand()对数据排序,取topN如果要用到分组取随机数,比如每个班级随机取10人,针对这种每个分组取topN的情况,可以使用row_number() over(partition by fieldx order by rand()) as rnselect id,class_idfrom(select id,class_id,row_...原创 2020-03-03 16:35:02 · 8302 阅读 · 0 评论 -
sum() over(partition by order by row between ... )
原始数据SELECT NAME, p_date, cost, sum(cost) over() AS sample1, --所有行相加 sum(cost) over(PARTITION BY NAME) AS sample2,--按name分组,组内所有行相加 sum(cost) over(PARTITION BY NAME...原创 2019-12-20 16:36:17 · 4664 阅读 · 1 评论 -
explode函数的局限性
explode函数的局限性不能关联原有的表中的其他字段。不能与group by、cluster by、distribute by、sort by联用。不能进行UDTF嵌套。不允许选择其他表达式。常常和lateral view 结合使用...原创 2019-12-20 12:20:26 · 328 阅读 · 0 评论 -
Hive面试总结
order by,sort by,distribute by,cluster by的区别一:order byorder by会对输入做全局排序,因此只有一个Reducer(多个Reducer无法保证全局有序),然而只有一个Reducer,会导致当输入规模较大时,消耗较长的计算时间。set hive.mapred.mode默认为nonstrict,在strict模式下使用order by必...原创 2019-12-14 11:42:34 · 152 阅读 · 0 评论 -
Hive分桶
SET hive.enforce.bucketing=true; ①INSERT (INTO|OVERWRITE) TABLE <bucketed_table> SELECT <select_statement>[SORT BY <sort_key> [ASC|DESC], [<sort_key> [ASC|DESC], ...]]; ②...原创 2019-12-09 09:38:24 · 116 阅读 · 0 评论 -
Hive批量删除一段时间分区&&动态分区更新数据
alter table dm.dm_call_gateway_bill_time_detail drop partition(dt >="20191101",dt <='20191130')原创 2019-12-05 11:29:22 · 2955 阅读 · 0 评论 -
Hive优化
首先说下优化的点,从哪些方面着手:主要是SQL不同写法,还有有就是对Hadoop 、MapReduce、HDFS的理解,调整相应的参数,以下结合我工作中的使用和个人的理解整理的,个人水平有限,欢迎指正,共同学习。SQL 会用explain队列设置本地模式和并行模式设置maper和reducer的个数JVM重用索引动态分区调整:静态分区和动态分区H...原创 2019-12-04 21:44:50 · 122 阅读 · 0 评论 -
HiveSQL数据笔试题
题目一:计算平台的每一个用户发过多少朋友圈、获得多少点赞已知,数据如下:T1:10万行数据uid(用户id)log_id(日记id)uid1log_id1uid1log_id2uid2log_id3……T2:1000万行数据(注:没有被点赞的日记此表不做记录)log_id(日记id)like_uid(点赞的用户id)l...原创 2019-12-02 22:45:03 · 1585 阅读 · 1 评论 -
Impala和Hive的关系
Impala和Hive的关系原创 2019-11-27 22:45:47 · 193 阅读 · 0 评论 -
Hive数据倾斜问题
数据倾斜的现象:简单来说,就是一个reduce累死,其他reduce闲死用Hive算数据的时候reduce阶段卡在99.99%用SparkStreaming做实时算法时候,一直会有executor出现OOM的错误,但是其余的executor内存使用率却很低。各种container报错OOM读写的数据量极大,至少远远超过其它正常的reduce ,伴随着数据倾斜,会出现任务被kill等...原创 2019-11-17 14:54:54 · 376 阅读 · 0 评论 -
ELK
ELK是Elasticsearch、Logstash、Kibana的简称,这三者是核心套件,但并非全部。Elasticsearch是实时全文搜索和分析引擎,提供搜集、分析、存储数据三大功能;是一套开放REST和JAVA API等结构提供高效搜索功能,可扩展的分布式系统。它构建于Apache Lucene搜索引擎库之上。Logstash是一个用来搜集、分析、过滤日志的工具。它支持几乎任何类型的日...原创 2019-11-14 17:08:19 · 3403 阅读 · 1 评论 -
Hive on mr合并小文件
set hive.merge.mapfiles = true;set hive.merge.mapredfiles= true;set hive.merge.size.per.task = 1024000000;set hive.merge.smallfiles.avgsize=1024000000;此设置并不适用于hive on tez原创 2019-11-14 16:16:08 · 455 阅读 · 0 评论 -
实时数仓架构图
原创 2019-11-14 16:10:23 · 2582 阅读 · 1 评论