11 2018 档案
摘要:Apache Spark 内存管理详解 转载于:https://www.ibm.com/developerworks/cn/analytics/library/ba-cn-apache-spark-memory-management/index.html Spark 作为一个基于内存的分布式计算引擎
阅读全文
摘要:主要分为开发调优、资源调优、数据倾斜调优、shuffle调优几个部分。 开发调优和资源调优是所有Spark作业都需要注意和遵循的一些基本原则,是高性能Spark作业的基础;数据倾斜调优,主要讲解了一套完整的用来解决Spark作业数据倾斜的解决方案;shuffle调优,面向的是对Spark的原理有较深
阅读全文
摘要:spark任务运行原理 一:spark运行组件的介绍 如下图为分布式spark应用中的组件: 1 驱动器节点的任务: (1)-把用户程序转化为任务(多个物理服务器执行的单元); Driver进程首先构造SparkConf,接着创建SparkContext。SparkContext创建时,会构造DAG
阅读全文
摘要:钩子是什么:是一种消息的拦截机制,可以拦截单个进程的消息(线程钩子),可以拦截所有进程的消息(系统钩子),并可以对拦截消息进行自动以处理。 钩子应用的情况:键盘打字时的显示,关闭线程池。 java自带的JVM钩子使用方法: Runtime.getRuntime().addShutdownHook(T
阅读全文
摘要:1- 安装scala插件 file -> setting -> plugins -> 搜索scala -> install 若果报错,需要首先下载安装包,然后Install plugin from disk...本地文件进行安装。 2- 安装scala file -> Project Structu
阅读全文
摘要:1 为什么使用广播变量 和 累加器 变量存在的问题:在spark程序中,当一个传递给Spark操作(例如map和reduce)的函数在远程节点上面运行时,Spark操作实际上操作的是这个函数所用变量的一个独立副本。这些变量会被复制到每台机器上,并且这些变量在远程机器上的所有更新都不会传递回驱动程序,
阅读全文
摘要:一:安装教程 修改配置文件 (1)spark.env.sh 配置参数说明: -Dspark.deploy.recoveryMode=ZOOKEEPER #说明整个集群状态是通过zookeeper来维护的,整个集群状态的恢复也是通过zookeeper来维护的。就是说用zookeeper做了spark的
阅读全文
摘要:spark基本RDD方法(Java版) 一:Transformations map:输入和输出条数一致; JavaRDD<Integer> mappedRDD = lines.map(s -> s.length()); filter:只保留返回true的数据; JavaRDD<String> map
阅读全文
摘要:下面是异常信息: 代码设置参数: 代码的基本设置和出现的场景: 1-超时时长180s; 2-缓存条数2000条,每条三列,值为Long型; 3-被扫描表大小,54G; 4-有一个过滤器,使用的前缀查询; 5-刚迁移集群,以前是MapReduc和Hbase在同一个集群上。迁移后,Hbase和MapRe
阅读全文
摘要:shuffle和排序 Shuffle阶段分为两部分:Map端和Reduce端。 一 map端shuffle过程; 1-内存预排序:默认每个map有100M内存进行预排序(为了效率),超过阈值,会把内容写到磁盘; 此过程使用快速排序算法; 2-根据key和reducer的数量进行分区和排序;首先根据数
阅读全文
摘要:MapReduce作业的调度历史发展:①按照作业的提交顺序执行,即先进先出(FIFO)调度算法来运行作业;存在的问题,一些阻塞型任务会持续占有资源,使得任务无法进行。可以类似单线程相对于多线程存在的阻塞问题。②作业优先级调度算法;存在的问题:优先级不支持抢占,仍然存在上一个算法的阻塞问题;③MapR
阅读全文
摘要:如要了解hadoop的运行机制过程, 需要先了解几个概念: mapreduce中概念: 1、首先用户程序(JobClient)提交了一个job,job的信息会发送到Job Tracker,Job Tracker是Map-reduce框架的中心,他需要与集群中的机器定时通信heartbeat,需要管理
阅读全文