Woods Blog

大数据 Blog

编译Spark2.4.2

手动编译

环境搭建 下载安装包: 1) 官网 wget https://archive.apache.org/dist/spark/spark-2.4.2/spark-2.4.2.tgz 2) GitHub下载 3) git clone https://github.com/apache/spark.git 解压 tar -zxvf spark-2.4...

WARN spark.yarn.jars falling back to uploading

spark on yarn 提交WARN

spark yarn模式的任务在启动时会出现如下警告,表示需要上传本地的spark jar包到hdfs上,这一步肯能非常耗时。 1 WARN Client: Neither spark.yarn.jars nor spark.yarn.archive is set, falling back to uploading libraries under SPARK_HOME 解决办法就是提前...

spark RDD五大特性并在源码中的体现

RDD的五大特性

RDD: Resilient Distributed Dataset 弹性分布式数据集 RDD五大特性及源码中体现: 1. A list of partitions (可分区的) 是由多个分区集合合成的列表 1 protected def get Partitons:Array[Partition] HadoopRdd实现: 1 2 3 4 5 6 7 8 9 10 11 12 13 1...

RDD缓存及序列化缓存

JavaSerializer和KryoSerializer对比

RDD存到磁盘的文件大小是 4.96M。 1. MEMORY_ONLY and not Serializer 使用MEMORY_ONLY 方式缓存,RDD占用内存的大小为22.6M。比原文件大了4倍左右。 2.MEMORY_ONLY_SER and JavaSerializer 使用MEMORY_ONLY_SER 并且序列化方式为默认的JavaSerializer方式缓存,RDD占...

scala最大堆最小堆,通过堆取TopN

使用最小堆取最大的N个元素

用scala实现一个最大堆或最小堆 并且维护一个长度为N的最小堆取,用来取TopN 定义一个HeapSort class 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48...

HashShuffleManager测试shuffle阶段中间文件数量

分别测试hash、sort、hash+consolidateFiles

环境: spark 1.6.0 & 1.5.1 1.HashShuffleManager spark2.0之后就没有HashShuffleManager了,所以使用1.6版本来测试。 spark1.1之前一直是默认HashShuffleManager。 我们知道,spark中的HashShuffleManager,进行shuffle时,会生成大量的中间结果文件,频繁的创...

配置Hadoop,Hive的存储与压缩

Orc,Parquet等存储和压缩

hadoop的压缩大体分为三个步骤: 1.map阶段: 压缩文件通过split分片进入到maptask 所以压缩文件必须是支持分片的(text,lzo[index]) 2.shuffle阶段 mapshuffle落地到磁盘时,选用压缩速度快的格式。 3.reduce output阶段 分为两种场景: 一.reduce的输出作为下一个任务的输入,此时压缩文件最好采用支持分片的格式,或者保...

hadoop的压缩格式

列举了常用的hadoop压缩格式以及效率占比图

hadoop的常用压缩格式 压缩格式 可分割 算法 扩展名 Linux工具 gzip 否 DEFLATE .gz gzip lzo 是(加索引) LZO ...

shell脚本常用语法

shell脚本常用语法

1.显示行号 vim test.sh :set nu 显示行号 2.参数 1 2 3 4 5 echo $1 echo $2 echo "参数个数:$#" echo "参数作为一个长字符串: $*" echo "当时执行脚本PID: $$" 3.数组 数组只支持一维 1 2 3 4 5 6 7 #!/bin/bash arr=(aaa bbb ccc ddd eee) ech...

报错:JAVA_HOME is not set

sudo 无法提交任务

使用sudo -u hdfs 命令执行脚本时报错 执行 sudo -u hdfs spark-shell 报错 JAVA_HOME is not set 解决方法: 修改linux系统environment vim /etc/environment 添加一行: JAVA_HOME=/opt/jdk