JustDoDT

JustDoDT-->From Zero To Hero.

hadoop lzo 压缩及测试

lzo配置 因为lzo 压缩不是hadoop自带的,需要编译安装。 [root@hadoop001 app]# wget http://www.oberhumer.com/opensource/lzo/download/lzo-2.10.tar.gz [root@hadoop001 tar]# tar -zxvf lzo-2.10.tar.gz -C /home/hadoop/app/...

ssh信任关系建立后任需要输入密码

问题描述 出现这个错误的环境描述,重启hadoop伪分布式的时候,出现了每次启动一个进程都需要输入密码,通过第一印象是配置ssh相互信任关系有问题,但是,我以前的 ssh相互信任是可以正常工作的。检查权限等问题,看/.ssh/authorized_keys 的属性,.ssh目录的权限。经过检查,发现这些都是正常的。 没有找到根本原因,直接把.ssh/删除,重新配置信任关系,还是不行。 排查...

Spark 算子所遇到的坑

1. aggregate算子操作 val rdd3 = sc.parallelize(List("12","23","345","4567"),2) rdd3.aggregate("")((x,y) => math.max(x.length, y.length).toString, (x,y) => x + y) # 两个分区先计算出字符串的最大长度,然后合成字符串;结果可能...

为啥Spark SQL默认选择Parquet存储格式

参考资料 选择 Parquet for Spark SQL 的 5 大原因 5 Reasons to Choose Parquet for Spark SQL Spark + Parquet In Depth spark-parquet-in-depth Parquet与ORC:高性能列式存储格...

reduceByKey,groupByKey,count,collect算子

1. ReduceByKey 1.1 源码中介绍 /** * Merge the values for each key using an associative and commutative reduce function. This will * also perform the merging locally on each mapper before sending...

Spark RDD中的cache,persist,checkpint

1. 概述 作为区别于 Hadoop 的一个重要 feature,cache 机制保证了需要访问重复数据的应用(如迭代型算法和交互式应用)可以运行的更快。与 Hadoop MapReduce job 不同的是 Spark 的逻辑/物理执行图可能很庞大,task 中 computing chain 可能会很长,计算某些 RDD 也可能会很耗时。这时,如果 task 中途运行出错,那么 tas...

浅谈Spark RDD

1. RDD 是什么? 源码中对RDD的描述 源码中RDD的定义 /** * A Resilient Distributed Dataset (RDD), the basic abstraction in Spark. Represents an immutable, * partitioned collection of elements that can be operated...

Spark运行架构简介

1. Spark运行架构 1.1 基本概念和架构设计 BlockManager存储模块,当内存不够的时候才会写磁盘,有效的减少了IO开销。 1.2 Spark 中各种概念之间的相互关系 1.3 Spark 架构图说明 查看官网 Spark架构图在官网的介绍 Term Meaning ...

Spark on Yarn

1. 概述 Yarn 是一种统一的资源管理机制,在其上面可以运行多套计算框架。目前的大数据技术世界,大多数公司除了使用Spark来进行数据计算,由于历史原因或者单方面业务处理的性能考虑而使用着其他的计算框架,比如MapReduce、Storm等计算框架。Spark基于此种情况开发了Spark on YARN的运行模式,由于借助了YARN良好的弹性资源管理机制,不仅部署Application...

Spark RDD 的分区数量确定

概述 熟悉Spark的分区对于Spark性能调优很重要,本文总结Spark通过各种函数创建RDD、DataFrame时默认的分区数,其中主要和sc.defaultParallelism、sc.defaultMinPartitions以及HDFS文件的Block数量有关,还有很坑的某些情况的默认分区数为1。 如果分区数少,那么并行执行的task就少,特别情况下,分区数为1,即使你分配...