spark
文章平均质量分 88
gongpulin
这个作者很懒,什么都没留下…
展开
-
SparkSQL的自适应执行---Adaptive Execution
1 背景本文介绍的 Adaptive Execution 将可以根据执行过程中的中间数据优化后续执行,从而提高整体执行效率。核心在于两点 执行计划可动态调整 调整的依据是中间结果的精确统计信息 2 动态设置 Shuffle Partition2.1 Spark Shuffle 原理如上图所示,该 Shuffle 总共有 2 个 Mapper 与 5 个 Reducer。每个 Mapper 会按相同的规则(由 Partitioner 定义)将自己的数据分为五份。..转载 2020-05-11 21:50:25 · 403 阅读 · 0 评论 -
Spark性能调优-总结分享
1、Spark调优背景目前Zeppelin已经上线一段时间,Spark作为底层SQL执行引擎,需要进行整体性能调优,来提高SQL查询效率。本文主要给出调优的结论,因为涉及参数很多,故没有很细粒度调优,但整体调优方向是可以得出的。环境:服务器600+,spark 2.0.2,Hadoop2.6.02、调优结果调优随机选取线上9条SQL,表横轴是调优测试项目,测试在集群空闲情况下进行,后一个的测试都是叠加前面测试参数。从数据可参数经过调优,理想环境下性能可提高50%到300%3、 下面为调.转载 2020-05-11 21:28:51 · 279 阅读 · 0 评论 -
Spark内存管理详解(上)——内存分配
本文最初由IBM developerWorks中国网站发表,其链接为Apache Spark内存管理详解在这里,正文内容分为上下两篇来阐述,下一篇见《Spark内存管理详解(下)——内存管理》Spark内存管理详解(上)——内存分配 1. 堆内和堆外内存 2. 内存空间分配Spark内存管理详解(下)——内存管理 3. 存储内存管理 4. 执行内存管理引言Spark作为转载 2018-01-05 19:16:13 · 4323 阅读 · 0 评论 -
Spark 内存管理详解
转载:https://www.ibm.com/developerworks/cn/analytics/library/ba-cn-apache-spark-memory-management/index.htmlSpark 作为一个基于内存的分布式计算引擎,其内存管理模块在整个系统中扮演着非常重要的角色。理解 Spark 内存管理的基本原理,有助于更好地开发 Spark 应用程序和进行性能转载 2018-01-05 19:14:35 · 345 阅读 · 0 评论 -
spark在windows下运行报错ERROR Shell: Failed to locate the winutils binary in the hadoop binary path
文章发自:http://www.cnblogs.com/hark0623/p/4170172.html 转发请注明14/12/17 19:18:53 ERROR Shell: Failed to locate the winutils binary in the hadoop binary pathjava.io.IOException: Could not locate executable转载 2017-12-31 18:22:55 · 437 阅读 · 0 评论 -
Spark性能调优之合理设置并行度
Spark性能调优之合理设置并行度Spark性能调优之合理设置并行度1.Spark的并行度指的是什么? spark作业中,各个stage的task的数量,也就代表了spark作业在各个阶段stage的并行度! 当分配完所能分配的最大资源了,然后对应资源去调节程序的并行度,如果并行度没有与资源相匹配,那么导致你分配下去的资源都浪费掉了。同时并行运行,还可以让每转载 2017-11-14 12:59:51 · 947 阅读 · 0 评论 -
Spark2.0源码学习-Job提交与Task的拆分
【Spark2.0源码学习】-9.Job提交与Task的拆分 在前面的章节Client的加载中,Spark的DriverRunner已开始执行用户任务类(比如:org.apache.spark.examples.SparkPi),下面我们开始针对于用户任务类(或者任务代码)进行分析 一、整体预览 基于上篇图做了扩展,增加任务执行的相关交互转载 2017-08-31 23:56:13 · 440 阅读 · 0 评论 -
Apache Spark 2.0中使用DataFrames和SQL
在Apache Spark 2.0中使用DataFrames和SQL的第一步Spark 2.0开发的一个动机是让它可以触及更广泛的受众,特别是缺乏编程技能但可能非常熟悉SQL的数据分析师或业务分析师。因此,Spark 2.0现在比以往更易使用。在这部分,我将介绍如何使用Apache Spark 2.0。并将重点关注DataFrames作为新Dataset API的无类型版本。到转载 2017-08-27 23:51:48 · 1019 阅读 · 0 评论 -
Spark性能优化总结
优化的目标保证大数据量下任务运行成功降低资源消耗提高计算性能三个目标优先级依次递减,首要解决的是程序能够跑通大数据量,资源性能尽量进行优化。基础优化这部分主要对程序进行优化,主要考虑stage、cache、partition等方面。1. Stage在进行shuffle操作时,如reduceByKey、groupByKey,会划分新的stage转载 2017-08-27 23:45:26 · 2328 阅读 · 3 评论 -
Spark支持三种分布式部署方式
目前Apache Spark支持三种分布式部署方式,分别是standalone、spark on mesos和 spark on YARN,其中,第一种类似于MapReduce 1.0所采用的模式,内部实现了容错性和资源管理,后两种则是未来发展的趋势,部分容错性和资源管理交由统一的资源管理系统完成:让Spark运行在一个通用的资源管理系统之上,这样可以与其他计算框架,比如MapReduce,公用一...转载 2018-03-12 00:02:59 · 5958 阅读 · 1 评论 -
[解决]Spark集群HA无法正常启动的问题
Spark集群HA无法正常启动的问题,master节点正常情况的状态为ALIVE与STANDBY,使用HA后通过zookeeper集群来确定master的ALIVE与STANDBY。今天,出现master节点一直处于RECOVERING,处理恢复状态,却不能正常启动。根据以往hadoop集群的经验,应该是zk管理master节点的问题解决方案为进行zk的客户端./zkCli.sh 查看目录ls ...转载 2018-03-13 21:59:15 · 1511 阅读 · 0 评论 -
Spark排错与优化
https://blog.csdn.net/lsshlsw/article/details/49155087一. 运维1. Master挂掉,standby重启也失效Master默认使用512M内存,当集群中运行的任务特别多时,就会挂掉,原因是master会读取每个task的event log日志去生成spark ui,内存不足自然会OOM,可以在master的运行日志中看到,通过HA启动的mas...转载 2018-04-28 11:18:50 · 996 阅读 · 0 评论 -
解决spark中遇到的数据倾斜问题
一. 数据倾斜的现象多数task执行速度较快,少数task执行时间非常长,或者等待很长时间后提示你内存不足,执行失败。二. 数据倾斜的原因常见于各种shuffle操作,例如reduceByKey,groupByKey,join等操作。数据问题key本身分布不均匀(包括大量的key为空)key的设置不合理spark使用问题shuffle时的并发度不够计算方式有误三. 数据倾斜的后果spark中一个s...转载 2018-04-28 12:11:13 · 711 阅读 · 0 评论 -
A master URL must be set in your configuration异常解决:
错误:Caused by: org.apache.spark.SparkException: A master URL must be set in your configuration at org.apache.spark.SparkContext.<init>(SparkContext.scala:401)原因:创建spark实例,或者sc.textFile读取数据...原创 2018-06-08 16:51:01 · 1336 阅读 · 0 评论 -
spark性能优化:高级篇(数据倾斜调优,shuffle调优)
原文链接:http://tech.meituan.com/spark-tuning-pro.html前言继基础篇讲解了每个Spark开发人员都必须熟知的开发调优与资源调优之后,本文作为《Spark性能优化指南》的高级篇,将深入分析数据倾斜调优与shuffle调优,以解决更加棘手的性能问题。数据倾斜调优调优概述有的时候,我们可能会遇到大数据计算中一个最棘手的问题——数据倾斜,此时Spark作业的性能...转载 2018-06-01 19:24:16 · 179 阅读 · 0 评论 -
Spark性能优化指南——基础篇
前言在大数据计算领域,Spark已经成为了越来越流行、越来越受欢迎的计算平台之一。Spark的功能涵盖了大数据领域的离线批处理、SQL类处理、流式/实时计算、机器学习、图计算等各种不同类型的计算操作,应用范围与前景非常广泛。在美团•大众点评,已经有很多同学在各种项目中尝试使用Spark。大多数同学(包括笔者在内),最初开始尝试使用Spark的原因很简单,主要就是为了让大数据计算作业的执行速度更快、...转载 2018-06-01 19:25:10 · 211 阅读 · 0 评论 -
Spark RDD(Resilient Distributed Datasets)论文
Spark RDD(Resilient Distributed Datasets)论文概要1: 介绍2: Resilient Distributed Datasets(RDDs)2.1 RDD 抽象2.2 Spark 编程接口2.2.1 例子 – 监控日志数据挖掘2.3 RDD 模型的优势2.4 不适合用 RDDs 的应用3 Spark 编程接口3.1 Spark 中 RDD 的操作3.2 举例应...转载 2018-06-28 20:06:01 · 487 阅读 · 0 评论 -
Apache Spark Jobs 性能调优(一)
转载:https://www.zybuluo.com/xiaop1987/note/76737Apache Spark Jobs 性能调优(一)Spark 性能调优原文地址:http://blog.cloudera.com/blog/2015/03/how-to-tune-your-apache-spark-jobs-part-1/Apache Spark Jobs 性能调优(一)Spark 是如...转载 2018-07-05 16:46:40 · 534 阅读 · 0 评论 -
RDD、DataFrame、Dataset介绍
rdd优点:编译时类型安全 编译时就能检查出类型错误面向对象的编程风格 直接通过类名点的方式来操作数据缺点:序列化和反序列化的性能开销 无论是集群间的通信, 还是IO操作都需要对对象的结构和数据进行序列化和反序列化.GC的性能开销 频繁的创建和销毁对象, 势必会增加GCval sparkconf = new SparkConf().setMaster原创 2017-08-27 20:33:25 · 664 阅读 · 0 评论 -
Spark在Windows下的环境搭建
由于Spark是用Scala来写的,所以Spark对Scala肯定是原生态支持的,因此这里以Scala为主来介绍Spark环境的搭建,主要包括四个步骤,分别是:JDK的安装,Scala的安装,Spark的安装,Hadoop的下载和配置。为了突出”From Scratch”的特点(都是标题没选好的缘故),所以下面的步骤稍显有些啰嗦,老司机大可不必阅读,直接跳过就好。 一.JDK的安装转载 2017-07-02 21:34:20 · 286 阅读 · 0 评论 -
Hive实战
1、Hive操作演示1.1 内部表1.1.1 创建表并加载数据第一步 启动HDFS、YARN和Hive,启动完毕后创建Hive数据库hive>create database hive;hive>show databases;hive>use hive;第二步 创建内部表由于Hive使用了类似SQL的语法,所以创建内部表转载 2016-06-29 11:53:24 · 3237 阅读 · 0 评论 -
Hive
1、Hive介绍1.1 Hive介绍Hive是一个基于Hadoop的开源数据仓库工具,用于存储和处理海量结构化数据。它是Facebook 2008年8月开源的一个数据仓库框架,提供了类似于SQL语法的HQL语句作为数据访问接口,Hive有如下优缺点:l 优点:1.Hive 使用类SQL 查询语法, 最大限度的实现了和SQL标准的兼容,大大降低了传统数据分析人员转载 2016-06-29 11:48:36 · 2926 阅读 · 0 评论 -
分布式内存文件系统Tachyon介绍及安装部署
1 Tachyon介绍1.1 Tachyon简介随着实时计算的需求日益增多,分布式内存计算也持续升温,怎样将海量数据近乎实时地处理,或者说怎样把离线批处理的速度再提升到一个新的高度是当前研究的重点。近年来,内存的吞吐量成指数倍增长,而磁盘的吞吐量增长缓慢,那么将原有计算框架中文件落地磁盘替换为文件落地内存,也是提高效率的优化点。 目前已经使用基于内存计算的分布式计算框架有:Sp转载 2016-06-29 11:24:22 · 1918 阅读 · 0 评论 -
Spark之Action操作
1.reduce(func):通过函数func先聚集各分区的数据集,再聚集分区之间的数据,func接收两个参数,返回一个新值,新值再做为参数继续传递给函数func,直到最后一个元素 2.collect():以数据的形式返回数据集中的所有元素给Driver程序,为防止Driver程序内存溢出,一般要控制返回的数据集大小 3.count():返回数据集元素个数 4.first(原创 2016-05-31 22:50:07 · 1684 阅读 · 0 评论 -
Spark之键值RDD转换
1.mapValus(fun):对[K,V]型数据中的V值map操作(例1):对每个的的年龄加2object MapValues { def main(args: Array[String]) { val conf = new SparkConf().setMaster("local").setAppName("map") val sc = new Spark原创 2016-05-31 22:34:44 · 3292 阅读 · 0 评论 -
spark之RDD基本转换
1.map(func):数据集中的每个元素经过用户自定义的函数转换形成一个新的RDD,新的RDD叫MappedRDDobject Map { def main(args: Array[String]) { val conf = new SparkConf().setMaster("local").setAppName("map") val sc = new Spark原创 2016-05-31 22:29:27 · 3255 阅读 · 0 评论 -
Spark 入门实战之最好的实例
转载:https://www.ibm.com/developerworks/cn/opensource/os-cn-spark-practice1/搭建开发环境安装 Scala IDE搭建 Scala 语言开发环境很容易,Scala IDE 官网 下载合适的版本并解压就可以完成安装,本文使用的版本是 4.1.0。安装 Scala 语言包如果下载的 S转载 2016-05-29 23:27:28 · 38890 阅读 · 4 评论 -
spark之RDD
1、Spark中的RDD就是一个不可变的分布式对象集合。每个RDD都被分为多个分区,这些分区运行在集群的不同节点上。创建RDD的方法有两种:一种是读取一个外部数据集;一种是在群东程序里分发驱动器程序中的对象集合,不如刚才的示例,读取文本文件作为一个字符串的RDD的示例。2、创建出来后,RDD支持两种类型的操作:转化操作和行动操作转化操作会由一个RDD生成一个新的RDD。(比如刚才的根据谓词原创 2016-05-29 23:23:03 · 3510 阅读 · 0 评论 -
Spark运行架构
1、 Spark运行架构1.1 术语定义lApplication:Spark Application的概念和Hadoop MapReduce中的类似,指的是用户编写的Spark应用程序,包含了一个Driver 功能的代码和分布在集群中多个节点上运行的Executor代码;lDriver:Spark中的Driver即运行上述Application的main()函数并且创建Sp转载 2016-06-29 14:12:41 · 2024 阅读 · 0 评论 -
SparkSQL(上)--SparkSQL简介
1、SparkSQL的发展历程1.1 Hive and SharkSparkSQL的前身是Shark,给熟悉RDBMS但又不理解MapReduce的技术人员提供快速上手的工具,Hive应运而生,它是当时唯一运行在Hadoop上的SQL-on-Hadoop工具。但是MapReduce计算过程中大量的中间磁盘落地过程消耗了大量的I/O,降低的运行效率,为了提高SQL-on-Hadoop转载 2016-06-30 15:45:09 · 1781 阅读 · 0 评论 -
数据挖掘算法之关联规则挖掘一apriori算法
关联规则挖掘算法在生活中的应用处处可见,几乎在各个电子商务网站上都可以看到其应用举个简单的例子如当当网,在你浏览一本书的时候,可以在页面中看到一些套餐推荐,本书+有关系的书1+有关系的书2+...+其他物品=多少¥而这些套餐就很有可能符合你的胃口,原本只想买一本书的你可能会因为这个推荐而买了整个套餐这与userCF和itemCF不同的是,前两种是推荐类似转载 2016-12-15 17:27:36 · 1315 阅读 · 0 评论 -
Spark图计算GraphX介绍及实例
【注】该系列文章以及使用到安装包/测试数据 可以在《倾情大奉送--Spark入门实战系列》获取1、GraphX介绍1.1 GraphX应用背景Spark GraphX是一个分布式图处理框架,它是基于Spark平台提供对图计算和图挖掘简洁易用的而丰富的接口,极大的方便了对分布式图处理的需求。众所周知·,社交网络中人与人之间有很多关系链,例如Twitter、Facebook、微博和微信转载 2016-06-30 23:55:44 · 13764 阅读 · 2 评论 -
Spark MLlib(下)--机器学习库SparkMLlib实战
【注】该系列文章以及使用到安装包/测试数据 可以在《倾情大奉送--Spark入门实战系列》获取1、MLlib实例1.1 聚类实例1.1.1 算法说明聚类(Cluster analysis)有时也被翻译为簇类,其核心任务是:将一组目标object划分为若干个簇,每个簇之间的object尽可能相似,簇与簇之间的object尽可能相异。聚类算法是机器学习(或者说是数据挖掘更合适)中重要的转载 2016-06-30 23:53:54 · 2463 阅读 · 0 评论 -
Spark MLlib(上)--机器学习及SparkMLlib简介
【注】该系列文章以及使用到安装包/测试数据 可以在《倾情大奉送--Spark入门实战系列》获取1、机器学习概念1.1 机器学习的定义在维基百科上对机器学习提出以下几种定义:l“机器学习是一门人工智能的科学,该领域的主要研究对象是人工智能,特别是如何在经验学习中改善具体算法的性能”。l“机器学习是对能通过经验自动改进的计算机算法的研究”。l“机器学习是用数据或以往的经验,以此转载 2016-06-30 23:52:03 · 6054 阅读 · 0 评论 -
Spark Streaming(下)--实时流计算Spark Streaming实战
【注】该系列文章以及使用到安装包/测试数据 可以在《倾情大奉送--Spark入门实战系列》获取1、实例演示1.1 流数据模拟器1.1.1 流数据说明在实例演示中模拟实际情况,需要源源不断地接入流数据,为了在演示过程中更接近真实环境将定义流数据模拟器。该模拟器主要功能:通过Socket方式监听指定的端口号,当外部程序通过该端口连接并请求数据时,模拟器将定时将指定的文件数据随机获取发送转载 2016-06-30 23:47:45 · 3907 阅读 · 0 评论 -
Spark Streaming(上)--实时流计算Spark Streaming原理介绍
1、Spark Streaming简介1.1 概述Spark Streaming 是Spark核心API的一个扩展,可以实现高吞吐量的、具备容错机制的实时流数据的处理。支持从多种数据源获取数据,包括Kafk、Flume、Twitter、ZeroMQ、Kinesis 以及TCP sockets,从数据源获取数据之后,可以使用诸如map、reduce、join和window等高级函数进行复杂算转载 2016-06-30 23:32:47 · 3863 阅读 · 0 评论 -
SparkSQL(下)--Spark实战应用
1、运行环境说明1.1 硬软件环境l 主机操作系统:Windows 64位,双核4线程,主频2.2G,10G内存l 虚拟软件:VMware® Workstation 9.0.0 build-812388l 虚拟机操作系统:CentOS 64位,单核l 虚拟机运行环境:Ø JDK:1.7.0_55 64位Ø Hadoop:2.2.0转载 2016-06-30 16:02:56 · 2537 阅读 · 0 评论 -
SparkSQL(中)--深入了解SparkSQL运行计划及调优
1.1 运行环境说明1.1.1 硬软件环境l 主机操作系统:Windows 64位,双核4线程,主频2.2G,10G内存l 虚拟软件:VMware® Workstation 9.0.0 build-812388l 虚拟机操作系统:CentOS6.5 64位,单核l 虚拟机运行环境:Ø JDK:1.7.0_55 64位Ø Hado转载 2016-06-30 15:53:31 · 2185 阅读 · 1 评论 -
spark简介
Spark 由加州大学伯克利分校 AMP 实验室 (Algorithms, Machines, and People Lab) 开发,可用来构建大型的、低延迟的大数据处理的应用程序。并且提供了用于机器学习 (MLlib), 流计算(Streaming), 图计算 (GraphX) 等子模块, 1.4.0 版本更是提供了与 R 语言的集成,这使得 Spark 几乎成为了多领域通吃的全能技术。Spar原创 2016-05-29 23:12:58 · 3439 阅读 · 0 评论