自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(1097)
  • 资源 (4)
  • 论坛 (1)
  • 收藏
  • 关注

转载 Spark性能调优之Shuffle调优

Spark性能调优之Shuffle调优 •Spark底层shuffle的传输方式是使用netty传输,netty在进行网络传输的过程会申请堆外内存(netty是零拷贝),所以使用了堆外内存。 •shuffle过程中常出现的问题常见问题一:reduce oom? 问题原因: reduce task 去map端获取数据,reduce一边拉取数据一边聚合,reduce端有一块聚合内存(executor memory * 0.2),也就是这块内存不够 ...

2021-06-16 11:44:10 5

转载 spark之shuffle原理及性能优化

ShuffleManager里有四个接口,register,reader,writer和stop。核心接口则是reader和writer,当前版本reader接口只有1个实现,writer接口有3个实现,每种实现分别对应不同的场景。writer 3种:1.BypassMergeSortShuffleWriter ,使用场景shuffle中没有map端的聚合操作 输出的分区数小于spark.shuffle.sort.bypassMergeThreshold,默认是200sh..

2021-06-16 11:23:04 12

转载 spark中哪些算子会导致shuffle

spark中会导致shuffle操作的有以下几种算子、1、repartition类的操作:比如repartition、repartitionAndSortWithinPartitions、coalesce等2、byKey类的操作:比如reduceByKey、groupByKey、sortByKey等3、join类的操作:比如join、cogroup等重分区: 一般会shuffle,因为需要在整个集群中,对之前所有的分区的数据进行随机,均匀的打乱,然后把数据放入下游新的指定数量的分区内byKey类

2021-06-15 18:47:11 5

转载 spark中shuffle运行原理

ShuffleManager里有四个接口,register,reader,writer和stop。核心接口则是reader和writer,当前版本reader接口只有1个实现,writer接口有3个实现,每种实现分别对应不同的场景。writer 3种:1.BypassMergeSortShuffleWriter ,使用场景shuffle中没有map端的聚合操作 输出的分区数小于spark.shuffle.sort.bypassMergeThreshold,默认是200sh..

2021-06-15 18:18:50 26

转载 spark中repartition和coalesce的区别

目录:一.区别二.使用三.总结一.区别repartition(numPartitions:Int):RDD[T]coalesce(numPartitions:Int,shuffle:Boolean=false):RDD[T]他们两个都是RDD的分区进行重新划分,repartition只是coalesce接口中shuffle为true的简易实现,(假设RDD有N个分区,需要重新划分成M个分区)二.使用1)N < M。一般情况下N个分区有数据分布不均匀的状况,利用HashPa

2021-06-15 14:59:02 8

转载 hive解析json数据

hive处理json数据总体来说有两个方向的路走1、将json以字符串的方式整个入Hive表,然后通过使用UDF函数解析已经导入到hive中的数据,比如使用LATERAL VIEW json_tuple的方法,获取所需要的列名。2、在导入之前将json拆成各个字段,导入Hive表的数据是已经解析过得。这将需要使用第三方的SerDe。测试数据为新浪微博测试公开数据该数据采用json格式存储,id代表当前用户微博的id,ids代表当前微博用户关注其他微博用户的id列表,total_..

2021-06-15 13:58:27 6

转载 hive中的EXPLODE和LATERAL VIEW

行转列操作0.函数说明EXPLODE(col):将 hive 一列中复杂的 array 或者 map 结构拆分成多行。LATERAL VIEW用法:LATERAL VIEW udtf(expression) tableAlias AS columnAlias解释:用于和 split, explode 等 UDTF 一起使用,它能够将一列数据拆成多行数据,在此基础上可以对拆分后的数据进行聚合。lateral view 使用案例:源数据结构如下:movie category《疑犯追踪》

2021-06-15 13:52:05 6

转载 hive中添加UDF

Hive中有三种UDF:1、用户定义函数(user-defined function)UDF; 2、 用户定义聚集函数(user-defined aggregate function , UDAF );3、用户定义表生成函数(user-defined table-generating function, UDTF )。============================================================================...

2021-06-14 13:08:22 29

转载 hive中distribute by、sort by、cluster by

1.背景 hive中有一个store表,字段分别是"商店所属人标识"(merid),“商户余额(money)”,“商店名称(name)”。求每个法人下属的商店的余额按照降序排序。 //merid,money,name B 10 store_B_4 A 12 store_A_1 A 14 store_A_2 B 15 store_B_1 B 19 store_B_2 B 30 store_B_3 2.distribute...

2021-06-12 22:05:45 5

转载 hive的分捅表

参考文章:hive分桶管理https://blog.csdn.net/freefish_yzx/article/details/77150714hive的分区和分桶https://blog.csdn.net/wl1411956542/article/details/52931499Hive中有数据分区的方案,也有数据分桶的方案,今天我们就来探讨下数据分桶 以及数据分桶使用的场景。该篇文章主要分为一下几个部分:1.数据分桶的适用场景2.数据分桶的原理...

2021-06-11 11:34:15 11 2

转载 hive中如何取到每个顾客最新交易

hive -e "use db; select t.advertId,t.exposureNum from ( select advertId, exposureNum, ROW_NUMBER() OVER(PARTITION BY advertId ORDER BY addTime desc) AS rn FROM tb_advert_flow_money where ftype = 2) t where t..

2021-06-11 11:17:37 9 2

转载 大数据面试题

大数据面试题https://www.yuque.com/zhongguohaopangzi/igi4hb/kws4zv京东1、列举几种数据倾斜的情况,并解释为什么会倾斜,以及如何解决?Join的时候发生数据倾斜: join的键对应的记录条数超过这个值则会进行分拆,值根据具体数据量设置set hive.skewjoin.key=100000; set hive.optimize.skewjoin=false广而告之1、近期做得什么项目,你负责什么模块,什...

2021-06-10 16:45:45 31

原创 idea打包spark程序上传集群运行

IDEA编写scala代码并打包上传集群运行我们在IDEA上的maven项目已经搭建完成了,现在可以写一个简单的spark代码并且打成jar包上传至集群,来检验一下我们的spark搭建后是否真正可以使用了1.简单编写个spark程序import org.apache.spark.{SparkConf, SparkContext}import com.alibaba.fastjson.JSONobject JsonTest { def main(args: Array[String

2021-06-10 13:22:09 5

转载 idea中编写spark程序并打包到集群执行

本篇主要介绍了如何使用IDEA在本地打包Spark应用程序(以K-Means为例),并提交到集群执行。1、 安装JDK与Scala SDKJDK和Scala SDK的安装在这里不再赘述,需要注意的是:要设置好环境变量,这样新建项目时就能自动检测到对应的版本,同时版本最好不要太高,以避免版本不兼容的问题,本篇采用的是JDK 8.0与Scala 2.10.6。JDK下载地址:http://www.oracle.com/technetwork/java/javase/downloads/Scala下载

2021-06-10 10:20:38 8

原创 spark程序Scala脚本使用fastJson解析JSON格式数据

源数据样式{"name":"Michael","sex":1}{"name":"Andy", "age":30,"sex":2}{"name":"Justin", "age":19}解析后为map键值对代码如下:1. pom.xml 引入依赖:/*for json*/<dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson&...

2021-06-09 19:18:42 16

原创 解决org.apache.hadoop.ipc.RenoteException(java.io.IOException)

部署hadoop集群以后,集群显示启动成功。但是 在启动spark-shell时候报错,org.apache.hadoop.ipc.RenoteException(java.io.IOException) file:************************************************can only write使用 hdfs dfsadmin -report 命令检查 hdfs 存储,发现是 hdfs 存储问题, dfs启动后 所有储存节点 大小都是...

2021-06-03 10:28:33 49 1

原创 hadoop启动报错:Attempting to operate on hdfs namenode as root

写在最前注意:1、master,slave都需要修改start-dfs.sh,stop-dfs.sh,start-yarn.sh,stop-yarn.sh四个文件2、如果你的Hadoop是另外启用其它用户来启动,记得将root改为对应用户HDFS格式化后启动dfs出现以下错误:[root@master sbin]# ./start-dfs.shStarting namenodes on [master]ERROR: Attempting to operate on hdfs namenod

2021-06-02 13:16:47 25

转载 linux重启网络报错Unit network-manager.service not found.

问题:使用systemctl restart network 或 service network restart 命令重启网卡失败,如下所示。[root@localhost ~]# service network-manager restart Failed to restart network-manager.service: Unit network-manager.service not found. [root@localhost ~]# [root@localh..

2021-06-01 10:02:37 69

原创 电脑C盘清理

可清理的文件夹C:\Windows\HelpC:\Windows\WinSxS\BackupC:\Windows\Temp另外,可以执行 如下操作:1、电脑左下角 设置找到存储2、找到存储3、打开 存储开关,点击配置存储感知4、点击 立即清理...

2021-05-30 21:43:35 12

转载 Hive小文件问题:如何产生、造成影响、解决办法

一、小文件是如何产生的1.动态分区插入数据,产生大量的小文件,从而导致map数量剧增。2.reduce数量越多,小文件也越多(reduce的个数和输出文件是对应的)。3.数据源本身就包含大量的小文件。二、小文件问题的影响1.从Hive的角度看,小文件会开很多map,一个map开一个JVM去执行,所以这些任务的初始化,启动,执行会浪费大量的资源,严重影响性能。2.在HDFS中,每个小文件对象约占150byte,如果小文件过多会占用大量内存。这样NameNode内存容量严重制约了集.

2021-05-28 16:27:31 13

转载 hive参数调优

合理设置参数,让集群飞起来~  参数 缺省值 描述 可单独使用 set hive.execution.engine=tez;   设置hive的计算引擎 可单独使用 set mapreduce.map.memory.mb=4096;   设置每个map的内存 可单独使用 set mapreduce.reduce.memory.mb=4096;   设置每个reduce的内存 可单独使用 set mapreduc

2021-05-28 16:22:30 14

转载 微信发出消息后,消息走过哪些路

PC-A向PC-B传输消息,首先是用户打开消息应用例如QQ,然后给小黑发消息(你吃了吗),1)在应用层生成数据”你吃了吗(小黑IP)“,然后数据传入表示层节点-表示层,2)在表示层将数据进行转换(针对计算机系统编码如IBM主机使用EBCDIC编码,而大部分PC机使用的是ASCII码等等的不同)加密,压缩-会话层3)在会话层将这个qq消息的回话区分出来,然后将会话内容以及相关信息传到下一层-网络层4)在网络层将会话内容和相关信息(小黑IP)封入数据包-运输层5)在运输层需要在数据包中插入写

2021-05-25 13:56:28 23 2

转载 SQL获取字段中的数字

sql获取数字:只是将字符串中所有的数字组织在一起,比如“test12tt456”,返回的是12456create function dbo.F_Get_Number (@S varchar(100))returns intAS begin while PATINDEX('%[^0-9]%',@S)>0 begin set @s=stuff(@s,patindex('%[^0-9]%',@s),1,'')

2021-05-24 13:22:29 39

转载 hadoop的hdfs的一些操作

  先说一下"hadoop fs和hadoop dfs的区别",看两本Hadoop书上各有用到,但效果一样,求证与网络发现下面一解释比较中肯。  粗略的讲,fs是个比较抽象的层面,在分布式环境中,fs就是dfs,但在本地环境中,fs是local file system,这个时候dfs就不能用。5.1 文件操作  1)列出HDFS文件  此处为你展示如何通过"-ls"命令列出HDFS下的文件:hadoop fs -ls  执行结果如图5-1-1所示。在这里需要注意:在HDFS中未.

2021-05-21 15:46:48 22

转载 spark保存计算结果

4.数据读取与保存  Spark 的数据读取及数据保存可以从两个维度来作区分:文件格式以及文件系统。文件格式分为:Text 文件、Json 文件、Csv 文件、Sequence 文件以及 Object 文件;文件系统分为:本地文件系统、HDFS、HBASE以及数据库。1)数据读取:textFile(String)scala> val hdfsFile = sc.textFile("hdfs://hadoop102:9000/fruit.txt")hdf...

2021-05-21 15:09:29 16

原创 大数据集群可视化管理界面

hadoop:hadoop:http://master:50070/dfshealth.html#tab-overviewhdfs;http://master:50070/explorer.html#/yarn:http://master:8088/clusterspark集群:http://master:8080/

2021-05-21 13:36:25 23

原创 spark-shell 加载本地文件报错 java.io.FileNotFoundException

学习spark-shell 时候发现一个问题,从本地文件加载数据生成RDD 报错,文件找不到原因:spark-shell 如果启动了集群模式, 真正负责计算的executor会在,该executor所在的 worker节点上读取文件,并不是在master节点上读取。解决方案: 把数据文件传给各个worker节点for i in {1..2}; do scp -r /root/spark slave$i:/root/; done详细情况:首先 进入spark-shell...

2021-05-21 11:32:27 15

原创 spark学习7:RDD编程

1.目录2.创建RDD两种方式2.1从文件系统加载sc.textFile() 方法来加载文件数据,并将文件数据转换为RDD2.1.1 从本地文件加载数据2.1.2加载hdfs文件

2021-05-20 15:31:02 72

原创 spark学习6:应用程序的打包部署

standlone 集群模式下 ,提交应用后,可以在浏览器中输入 spark://master:8080查看执行情况yarn集群模式下,提交应用程序ps:在 spark-shell中 系统默认会生成一个 sparkContext,也就是sc 可以直接拿来用。不必像在编写应用程序时,自己代码去生成。ps:grep 管道函数,过滤只展示跟“Pi is roughly”相关的信息...

2021-05-20 13:18:53 11

原创 spark学习5:spark-shell

1.spark提供了交互式接口 spark-shellspark-shell 实现了用户可以逐行输入代码,进行操作的功能。 即可以不像Java一样,编写完所有代码,然后编译才能运行spark-shell 支持 Scala交互环境 和 python交互环境在学习测试中可以使用spark-shell 进行API学习2.进入Scala交互环境在spark安装目录的根目录下,有个bin目录中有个 spark_shell2.1 在本机生成spark指挥所,创建sparkCo...

2021-05-19 13:08:46 57

转载 程序员离职小技巧

作者 | 梦想橡皮擦责编 |张文来源 | 转载自 CSDN 博客俗话说的好,代码写的少,离职少不了。最近畅游互联网,发现一些离职小技巧,读后,内心被深深的打动了但是细细的品过之后,发现对我们程序员不太适用。例如: 领导夹菜你转桌,我们程序员一般不和领导在一桌; 领导开门你上车,咱程序员都是坐班,一般不出差,出差一般也领导开车; 领导 K 歌你切歌,哦~ KTV 唱歌,我一般都躲在角落; 领导敬酒你不喝,……; 领导听牌你自摸,...

2021-05-18 17:52:19 39

原创 Scala递归删除某个文件夹

//check the result is already exists or notval outFilePath = "D:/doc/spark/out/t2"val outFile = new File(outFilePath)//recursion deletedef deleteFileMethod(filePath:File): Unit ={ if(filePath.isDirectory){ val fileList = filePath.listFiles() .

2021-05-17 15:50:27 12

原创 spark学习4:spark安装

spark和hadoop的 搭载配置spark的env 环境1. cd spark-3.0.1/conf 找到spark-env.sh 文件2.在配置文件中 添加export HADOOP_CONF_DIR=/home/hzp/software/hadoop/hadoop-3.2.1/etc/hadoop/ 彩色这部分 是变化的,填写hadoop 的根目录2....

2021-05-17 14:03:53 14

转载 WiFi 破解连接方式

今天高高兴兴的回到家,打开电脑,我靠,没网!咋回事?连手机热点也贼慢。要不蹭网?下载万能钥匙?果断不能用万能钥匙!因为使用了万能钥匙,自家的Wifi密码也会共享出去。那么,怎么办?这难不倒我,于是,我打开了我的Kali操作系统,瞄准了隔壁妹子的Wifi。WPA2-PSK加密原理现在的路由器大多都默认用 WPA2-PSK 方式对无线网络进行加密了,不能再像 WEP 加密方式那样好破解,使用字典又需要费心费力地整理字典,而且字典破解的效率还慢。所以我们需要更有效率的破解方法。好在现在大多数的路由器都.

2021-05-12 18:15:38 62

转载 python将代码打包成exe文件

有时候我们需要将自己写的代码打包成exe文件,给别人使用需要怎么办呢?以下将讲解Python代码如何打包成.exe文件。1. 下载pyinstaller因为Python中有很多三方包,我们想要这些三方包也包含在里面就需要一个工具,就是pyinstaller,很简单,直接在命令行输入pip install pyinstaller或者使用镜像下载pip install pyinstaller-i "https://mirrors.aliyun.com/pypi/simple"2. 将自己需要打包的

2021-05-12 18:03:53 16

转载 帆软指标开发指南

随着企业信息化建设的逐步完善,报表在企业中的价值地位越来越重。传统的格式报表正在向可视化图表类报表转变,企业在报表实用性满足的基础上,对报表美观度也同样提出了高要求,让表哥表姐在报表设计上压力倍增。于是,表哥表姐经常遇到这样的情况……报表上交后......如何做一张好看又实用的报表呢,今天大师兄为大家整理了一份报表设计秘笈,详细全面的讲述了报表设计的步骤和流程,同时也为大家准备了超多的报表设计素材资源。ps:本文所有模板样例及布局参考素材均已打包,公众号后台回...

2021-05-11 14:59:47 30

原创 spark学习3:RDD运行原理

1.RDD设计背景为了解决 MapReduce的 频繁磁盘IO开销,序列化和反序列化的开销,因为从磁盘读取数据转换为对象 需要反序列化, 在对象落磁盘时候 需要序列化

2021-05-11 10:31:48 17

原创 帆软大屏开发手册

1. 需求调研模块 输出 业务需求调研 《业务需求调研报告》 硬件调研 《大屏采购硬件清单》 数据调研 《数据质量调研报告》 关键性技术预研 《技术预研报告》 1.1 业务需求调研1.1.1 根据业务场景抽取关键指标关键指标是一些概括性词语,是对一组或者一系列数据的统称。一般情况下,一个指标在大屏上独占一块区域,所以通过关键指标定义,我们就知道大屏上大概会显示哪些内容以及大屏会被

2021-05-10 18:15:04 24

原创 spark学习2:spark运行基本架构

各个名词介绍:1.RDD -弹性分布式数据集2.DAG -有向无环图反应各RDD之间关系3.executorexecutor是 驻守在各个工作节点中的一个进程,负责生成线程 来执行分配给该工作节点的任务4.application程序员编写的一整个代码文件,比如一个 wordcount 代码文件5.任务executor派生出的一个个 线程,每一个线程处理一个任务6.作业一个application 会被且分为多个 作业,每个...

2021-05-10 16:23:21 83 4

原创 spark学习之路1:概述

1.spark为什么比hadoop快1.基于内存,中间值不用落磁盘2.DAG有向无环图ps: hadoop主要包含两部分:MapReduce和 HDFSspark 其实优化的只是 hadoop的 MapReduce,那么 MapReduce最大的诟病1.MapReduce 把任务分为两段, map阶段和 reduce阶段,而reduce阶段必须要等 所有的map阶段都完成后,才能执行。 那么问题就来了...

2021-05-10 14:15:48 11

dataViewH5

数据可视化,PRD开发工具帮助文档

2018-10-23

scala-2.12.13.tgz

Scala2.12.13.tar linux安装包

2021-04-02

windows系统hadoop插件-winutilsmaster.zip

spark2.6-3.0的winutils

2021-02-21

Pentaho Report Designer

BI学习,PRD,pentaho,报表,学习资料

2017-01-12

hzp666的留言板

发表于 2020-01-02 最后回复 2020-04-27

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人 TA的粉丝

提示
确定要删除当前文章?
取消 删除