
Spark
OddBillow
这个作者很懒,什么都没留下…
展开
-
一:Spark介绍
spark 快速,通用的大规模数据处理技术。【speed】 执行mr作业程序在内存比Hadoop快100倍。spark有GAG执行引擎,支持离散数据流和内存计算。【易于使用】 多种语言编写。 Java Scala Pythonspark有着自己的集群计算技术,扩展了Hadoop mr模型用于高效计算,包括交互式查询和流计算,主要的特性就是基于内存的集群计算提升计算速度。spark部署的三种模原创 2016-11-28 17:21:12 · 398 阅读 · 0 评论 -
运行Spark程序,java.lang.ClassNotFoundException的解决
IDEA中运行出现错误;打包成jar,submit命令提交正确执行设置:SparkConf().setJars(List(pathtojar))其中pathtojar:jar包的绝对路径原创 2018-11-21 13:08:45 · 9435 阅读 · 0 评论 -
Spark Executor内存管理
堆内和堆外内存规划1.堆内内存:由-executor-memory配置,executor内所有并发任务共享 序列化:将对象转换为二进制字节流,本质上可以理解为将非连续空间的链式存储转化为连续空间或块存储2.堆外内存:由spark.memory.offHeap.size配置,优化内存的使用,提高shuffle时排序效率,存储经过序列化的二进制数据,默认关闭3.内存管理接口:MemoryMana...原创 2018-07-04 21:05:52 · 1108 阅读 · 0 评论 -
关于spark shuffle过程的理解
shuffle过程:由ShuffleManager负责,计算引擎HashShuffleManager(Spark 1.2)—>SortShuffleManagerspark根据shuffle类算子进行stage的划分,当执行某个shuffle类算子(reduceByKey、join)时,算子之前的代码被划分为一个stage,之后的代码被划分为下一个stage。当前stage开始执行时,它的每...原创 2018-07-03 22:26:20 · 5179 阅读 · 0 评论 -
Spark作业基本运行原理
使用spark-submit提交spark作业,启动相应的Driver进程,本地或工作节点driver进程向集群管理器(standalone)申请运行spark作业所需的资源(Executor进程)在各个工作节点启动一定数量的executor进程,每个进程占有一定数量内存核CPUDriver进程调度spark作业:spark作业根据shuffle类算子被分为多个stage,每个stage创建一批t...原创 2018-07-03 20:30:55 · 311 阅读 · 0 评论 -
Spark性能调优—高级
数据倾斜调优定位:Spark Web UI或本地log查运行较慢的task(查看数据量),确定stage,定位代码位置查看key的数据分布:countByKey()解决方案过滤少数导致倾斜的key适用于少数几个数据量特别多的key对作业的执行和计算结果影响不大提高shuffle并行度两阶段聚合(局部聚合+全局聚合)—适用于reduceByKey等聚合类shuffle算子将原来相同的key添加随机前...原创 2018-07-03 16:56:35 · 246 阅读 · 0 评论 -
Spark性能优化—基础
Spark性能优化:开发调优、资源调优、数据倾斜调优、shuffle调优开发调优避免重复创建RDD复用同一个RDD对多次使用的RDD进行持久化尽量避免使用shuffle类算子——broadcast+map代替join使用map-side预聚合的shuffle操作——reduceByKey代替groupByKey高性能算子广播大变量Kyro优化序列化性能优化数据结构——Spark官方建议尽量使用字符...原创 2018-07-03 14:35:23 · 164 阅读 · 0 评论 -
multiple input paths are not supported for libsvm data
解决spark运行SVM时,multiple input paths are not supported for libsvm data错误: 未分片: val df = spark.read.format(“libsvm”).load(“data/mllib/sample_libsvm_data.txt”) hdfs分片: val df = spark.read.format(“libsv原创 2017-10-31 10:14:28 · 1167 阅读 · 0 评论 -
initial job has not accepted any resources
–executor-memory设置的比实际值大,可减小该值原创 2017-09-24 21:23:08 · 442 阅读 · 0 评论 -
There is insufficient memory for the Java Runtime Environment to continue
增大linuxswap的空间 这里写链接内容原创 2017-09-24 21:30:01 · 3994 阅读 · 1 评论 -
解决Consider increasing spark.rpc.message.maxSize
apache.spark.SparkException: Job aborted due to stage failure: Serialized task 32:5 was 204136673 bytes, which exceeds max allowed: spark.rpc.message.maxSize (134217728 bytes).Consider increasing spark原创 2017-09-23 16:26:40 · 6460 阅读 · 0 评论 -
spark-submit提交jar包到集群找不到主类
报错:java.lang.ClassNotFoundException: Main 解决: 删除与spark集群上已有环境的相关jar包原创 2017-09-04 09:44:43 · 10486 阅读 · 3 评论 -
Spark中map与flatMap
import org.apache.spark.{SparkConf, SparkContext}/** * Created by zangtt on 17-3-9. */object test { def main(args: Array[String]): Unit = { val conf = new SparkConf().setAppName("Spark Pi")原创 2017-07-26 21:05:08 · 290 阅读 · 0 评论 -
spark生成jar文件并提交集群
project structure(删除META-INF)artifacts—添加—jar—from modules with dependenciesbuildbuild artifacts在工程目录out/artifacts下找到jar文件,并拷到集群上在集群上打开终端,输入:spark-submit --class sparkPI --master spark://10.10.10.原创 2017-07-19 13:29:09 · 425 阅读 · 0 评论 -
scp命令
将本地文件拷到远程目录下 scp -r zangtt@10.10.10.65:/home/zangtt/sparkTest.jar /home/hadoop/zqt原创 2017-07-19 12:17:57 · 259 阅读 · 0 评论 -
对Spark中Broadcast的理解
用Broadcast广播的变量是只读变量,可以有效的保持数据的一致性。 Broadcast的Storage Level是MEMORY_AND_DISK方式,所以不会造成内存溢出。 Broadcast广播的变量只会在Executor中保存一份,同一个Executor中所有task共享该变量,可以有效的减少内存的开销。原创 2017-07-22 20:42:02 · 634 阅读 · 0 评论 -
TensorFlowOnSpark安装教程
各个环境版本 OS:Ubuntu16.04 LTS java:jdk 1.8 scala:2.10.4 hadoop:2.7.3 spark:2.1.0 TensorFlowOnSpark:0.12.1安装Hadoop 需要配置3台虚拟机,分别为master,slave,slave2。先配置主节点master,别的slave节点的虚拟机可copy master。安装SSH并配原创 2017-05-09 11:28:14 · 4064 阅读 · 2 评论 -
二 SparkContext-RDD
SparkContext 类名:org.apache.spark.SparkContext 是Spark的上下文对象,是spark程序的主入口点,负责连接到spark cluster 可用于创建RDD,在集群上创建累加器和广播变量 每个jvm只能激活一个SparkContext对象,创建新的spark对象时,必须stop掉原来的对象 SparkContext可以与不同种类的集群资源管理器(原创 2016-12-03 13:49:29 · 873 阅读 · 0 评论 -
HDFS上传文件与Spark执行
根据并行度与文件大小设置Block大小,上传脚本:hadoop dfs -D dfs.block.size=42724400 -D io.bytes.per.checksum=100 /-D dfs.namenode.fs-limits.min-block-size=324000 -put BytePaviaU /home/zangtt/original-2.txt Spark ...原创 2018-11-18 14:31:17 · 1037 阅读 · 1 评论