- 博客(28)
- 收藏
- 关注
原创 Hive-架构原理
文章目录什么是HiveHive架构Hive使用场景Hive的执行流程SQL转化成MapReduce过程推荐博客:https://blog.csdn.net/qq_36932624/article/details/81702405什么是HiveHive是由Facebook开源用于解决海量结构化日志的数据统计;Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射 成一张表,并提供类SQL查询功能,底层计算引擎默认为Hadoop的MapReduce(本质是将sql转化成mapreduce
2020-09-08 18:47:58 357
原创 Hive-- 自定义函数介绍(UDF/UDAF/UDTF).md
文章目录UDF函数简介UDAF函数简介UDTF函数简介UDF函数实现1 实现步骤2 代码实现UDAF实现1:实现步骤UDTFUDF函数简介特点:一进一出,类似与substring、abs等UDAF函数简介特点:n进一出,类似于count,sum,avgUDTF函数简介特点:1进n出,此种函数实现较为复杂,往往被lateral view explode+udf 替代。UDF函数实现1 实现步骤自定义一个java类继承UDF类重写evaluate方法打包类所在项目成一个all-in-
2020-09-08 18:40:20 282
原创 Hive-动态分区
Hive动态分区参数配置往hive分区表中插入数据时,如果需要创建的分区很多,比如以表中某个字段进行分区存储,则需要复制粘贴修改很多sql去执行,效率低。因为hive是批处理系统,所以hive提供了一个动态分区功能,其可以基于查询参数的位置去推断分区的名称,从而建立分区。使用动态分区表必须配置的参数set hive.exec.dynamic.partition =true(默认false),表示开启动态分区功能; set hive.exec.dynamic.partition.mode .
2020-09-08 18:00:50 1021
原创 Hive 数据倾斜的优化
一:Hive数据倾斜产生的原因和解决方案1.1:原因:数据倾斜产生的原因是有与数据的key的分布严重不均导致的,少部分Reduce Job接收了大部分数据。所以业务逻辑、数据量、代码、以及集群配置都会导致数据倾斜。2.2 解决方案1:参数优化set hive.map.aggr=true (在map中会做部分聚集操作,效率更高但需要更多的内存)set hive.groupby.skewindata=true;(数据倾斜时负载均衡,当选项设定为true,生成的查询计划会有两个MRJob。第一个MRJ
2020-08-12 10:07:18 299
原创 数据仓库-拉链表+增量表抽取的实现
背景:业务部门提了用户分层的需求,其中有一点,业务放需要我们数仓提供历史数据,并且业务库里的部分表还没有数据更新时间字段。所以本篇文章主要解决两个问题1:问题一 怎么再HIVE里实现拉链表2:问题二 怎么再没有数据更新时间字段的情况下实现增量更新(个人认为这个方式也是一种通用的方式)一:拉链表是什么?使用场景?实现原理? 1:是什么? 拉链表是一张记录事务历史变化的表,记录一个事务从开...
2020-04-23 18:44:54 1806
原创 HIVE 的窗口函数理论与实践
写自定义目录标题欢迎使用Markdown编辑器二 实践数据准备1: LEAD与 LAG 、first_value3: first_value 与Last_value新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少...
2020-04-18 18:54:30 424
原创 在Shell 中 Spark-SQL 的调试
对于熟悉Scala开发的人来说,对于spark-sql的使用,直接jar包中写入代码处理就能轻松实现动态语句的执行。但是对于我,不打算学习Scala和Java语言,但是又想定时执行时间推延的周期、定时任务,该肿么办?一 Spark-SQL 是什么1: Spark-SQL参见参数\-d:–define <key=value> 定义键值对:–database 定义使...
2019-09-11 16:57:35 1486
转载 企业的加之毁灭之道-正派哥
一谈到"价值毁灭",大家想到的就是那些遭遇"雷劈"的企业。但在我眼中,大量企业,甚至可以说,几乎所有企业都会走向"价值毁灭,这就好比说,所有人都会死去一样。企业之有价值,在于企业能给股东,给投资者带来收益;而如果让他们亏损本钱,乃至于本金尽失,那自然就是价值毁灭了。一个保守经营的企业,价值毁灭在于竞争力的削弱,乃至丧失,导致企业收入停滞减少,走上亏损之路,慢慢将企业的现金耗尽,最终倒闭...
2019-08-06 22:35:19 114
原创 MapReduce 作业java heap space(记录蛋疼的一天)
描述:记录作业相关的异常,本次作业是用sqoop导mysql数据到hivehttp://www.imooc.com/article/253941 YARN调优完美版一 YARN 作业的java heap space日志如下:ERROR [IPC Server handler 7 on 43205] org.apache.hadoop.mapred.TaskAttemptListenerIm...
2019-06-27 09:26:15 1790
原创 YARN的内存管理 与 CDH集群管理之角色组
0x00前言现在一般都使用CM来管理集群,这是一个很好的管理集群工具,使集群便于维护,其中有一点他们推荐一些默认的配置,省去了我们手动选择的烦恼。但是还是由不少小毛病,最近就遇到了分配给YARN管理的集群资源太少的问题。主机配置如下(每台15G的内存):YARN集群实际管理的内存(只有3G):0x01 YARN管理的内存为什么这么小?大小由什么决定?1:YARN 的RM 所管理...
2019-06-25 13:45:25 1183
原创 Structed Streaming 输出模式
# 由错误引起Complete output mode not supported when there are no streaming aggregations on streaming DataFrames/Datasets;;
2019-06-13 20:27:02 1437
翻译 岛(方三文)
岛是没有意义的,除非别的岛可以到达它。 信息是没有意义的,除非别的信息可以链接它,只有当信息与信息链接起来,我们才知道它是真是假,存在怎样的偏颇与疏漏。 链接信息与信息最好的办法是互动。 互动是美好的,它让我们展现自己的智慧,分享别人的智慧。 互动也是惨烈的,他让我们发现别人的愚昧和偏见,也让我们发现自己的愚昧和偏见。 前者可能让人不悦,后者可能让人愤...
2019-05-24 17:46:21 314
原创 Spark Thrift Server 解放数据开发,开发计算资源的里利器
0x001 Spark Thrift Server 是什么 Spark Thrift Server 是一个jdbc和odbc服务,底层依赖的是hive Server2。0X002 Spark Thrift Sever 带来的价值现在部分公司情况, 大数据部门更像是一个报表开发部门,日常工作就是开发报表,一个完了接着下一个。整个模式的架构如下: 关系数据库=》 大数据平台 =》关系数据库...
2019-05-24 12:00:34 832
原创 HIVE 动态分区表详解
备注:写一点关于动态分区表的东西(参见:https://blog.csdn.net/qq_26442553/article/details/80382174)一 创建分区表set hive.exec.dynamic.partition=true;
2019-05-08 15:28:46 898
原创 Spark SQL too many elements for tuple: 25 (scala tuple超过默认22个元素)
背景:把一列的DataSet扩张到25列,就报了上面的错,也就是tuple超过了它默认允许的元素个数。/** // 方式一:使用普通方式转换,直接在mp函数类增加DataSet的列数。 这种方式使用的是Tuple()增加列** 结果:未通过 (现在的scala是2.11 ,2.12以上版本没有试)* */ def fun1(ds1: Dataset[String],spark: ...
2019-05-03 10:23:14 4359
原创 StructedStreaming Kafka 排错(AbstractCoordinator: Marking the coordinator *dead for grou
描述:这次要接收一个新业务的数据,这个数据已经用Flume采集到了kafka里,考虑后决定采用SparkStructedStreaming去接收数据,可是在接收过程中一直报一个错19/04/26 15:06:11 INFO AbstractCoordinator: Discovered coordinator hbase-single:9092 (id: 2147483647 rack: nu...
2019-04-26 15:27:54 5240
原创 第一、第二、第三范式理解
第一、第二、第三范式理解一 规范化之前二 规范化:第一范式新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入一 ...
2019-04-21 23:14:57 375
原创 应该担心什么不应该关心什么(做正确的事,把事情做对)
备注:以下转至雪球不明真相的群众(方三文)我把去年7月份写给投资人的信再公开发一下哈:应该担心的和不应该担心的我能感受到最近大家的忧虑情绪。那么,作为一名投资者,大家应该担心什么,不应该担心什么呢?我觉得:1、不用担心全球自由贸易体系崩溃。主要的原因是它的好处实在是太大,没有人能够放弃。自从世界上有国家以来,国与国之间就征战不休,酿成了无穷灾难。战争的原因,据说有时候是争夺美女,有时候是...
2019-04-11 14:40:35 405
原创 数据结构
================一 链表linklist:是一种线性表,每一个节点都存着下一个节点的指针。 插入:如果在ABnode中插入一个新节点C,需要把A的next指向C的地址,C的next指向B的地址。1:单向链表: 描述:是最简单的链表,链表的每个node由2部分组成,data和下一个节点的地址。 1.1 遍历: 遍历的时候只可以从头到尾开始遍历。 1.3 删除: 要删除...
2018-07-03 15:39:00 141
原创 闲来没事,谢谢sql玩
超经典SQL练习题,做完这些你的SQL就过关了原网址:https://blog.csdn.net/flycat296/article/details/63681089# 1. 查询" 01 "课程比" 02 "课程成绩高的学生的信息及课程分数select * from (select * from SC where c = '01') Aleft join (select * from SC ...
2018-04-24 20:09:56 236
原创 如何优雅的停止Spark Streaming 作业 -----非手动
#一 网上也有停止SparkStreaming作业的方法,但是都不够优雅,不能够从程序内部实现停止SparkStreaming作业。我来介绍一种优雅的方式。##1:思路 1: 程序出现异常后打一个标记,标记存放在可靠的外部系统如hdfs、redis等。2:Driver 不断重复扫描标记,判断是否需要停止作业。3: 把ssc.awaitTermination() 替换为 ssc.awaitTermi...
2018-04-11 20:07:34 4177
原创 非常厉害的blog
一: 实践性很强的博客https://www.jianshu.com/u/689be58a4c70https://www.cnblogs.com/ranjiewen/articles/6883723.html一: 有用的社区https://cloud.tencent.com/developer/article/1014921http://www.apachecn.org/https://githu...
2018-03-13 17:18:59 184
原创 一 spark on yarn cluster模式提交作业,一直处于ACCEPTED状态,改了Client模式后就正常了
1. 提交spark作业到yarn,采用client模式的时候作业可以运行,但是采用cluster模式的时候作业会一直初一accept状态。背景:这个测试环境的资源比较小,提交作业后一直处于accept状态,所以把作业的配置也设置的小。submit 语句:spark-submit \spark-submit \--class a.kafka_streaming.KafkaConsu...
2018-03-13 10:57:53 13292 4
原创 spark 方面的的链接
==============SparkStreaming 保证数据准确性 https://github.com/cpbaranwal/Spark-Streaming-DirectKafka-Examples https://github.com/ippontech/spark-kafka-source http://aseigneurin.github.io/2016/05/07...
2018-03-02 16:50:20 241
原创 记录常用工具的使用
一: idea 首次提交项目到svn http://blog.sina.com.cn/s/blog_1560880010102wq1l.html https://www.cnblogs.com/signheart/p/193448a98f92bd0cc064dbd772dd9f48.html二:java 关于JDBC和DAO模式使用https://www.cnblog...
2018-03-02 10:29:54 246
原创 java 用递归实现球上下级(牵涉到对上级的去重)
1:最近遇到一个问题需要用到SparkStreaming 算出某个角色的所有的上级,同时当上级的等级相同的时候需要去重。我想到了用递归去实现数据描述:自己的id, 等级, 父节点的id。数据呈现为树结构package org.training.shiyanlou;import java.lang.reflect.Array;import java.util.ArrayList;import...
2018-02-03 17:43:38 4160
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人