Spark
文章平均质量分 94
Spark
专注_每天进步一点点
成为健康快乐长寿有价值的人,拥有明亮灵动的眼睛,平静谦和的微笑。
展开
-
Spark 中 map 与 flatMap 的比较
通过一个实验来看Spark 中 map 与 flatMap 的区别。 步骤一:将测试数据放到hdfs上面hadoopdfs -put data1/test1.txt /tmp/test1.txt该测试数据有两行文本: 步骤二:在Spark中创建一个RDD来读取hdfs文件/tmp/test1.txt 步骤三:查看map函数的返回值得到map函数返回的RD...转载 2018-10-25 15:38:34 · 1658 阅读 · 0 评论 -
Spark入门之REPL/CLI/spark shell 快速学习
一、前言本章的目的是提供指导,以便读者熟悉独立模式下安装Apache Spark的过程及其依赖关系。 然后,我们将开始与Apache Spark的第一次交互,通过使用Spark CLI(称为REPL,REPL是Read-Evaluate-Print Loop(读取-求值-打印 循环)的首字母缩写。)进行一些练习。/** The Scala interactive shell. It p...转载 2019-10-18 14:13:03 · 317 阅读 · 0 评论 -
Spark性能优化指南——基础篇
前言在大数据计算领域,Spark已经成为了越来越流行、越来越受欢迎的计算平台之一。Spark的功能涵盖了大数据领域的离线批处理、SQL类处理、流式/实时计算、机器学习、图计算等各种不同类型的计算操作,应用范围与前景非常广泛。在美团•大众点评,已经有很多同学在各种项目中尝试使用Spark。大多数同学(包括笔者在内),最初开始尝试使用Spark的原因很简单,主要就是为了让大数据计算作业的执行速度更...转载 2018-10-08 14:53:12 · 131 阅读 · 0 评论 -
Spark 08 Spark SQL 实战:日志分析(一)介绍、数据清洗
原文地址:https://blog.csdn.net/lihaogn/article/details/82226625转载 2019-05-20 16:14:36 · 289 阅读 · 0 评论 -
Hadoop的MapReduce和Spark的Shuffle过程的详解与对比及优化
大数据的分布式计算框架目前使用的最多的就是Hadoop的MapReduce和Spark,MapReducehe和Spark之间的最大区别是前者较偏向于离线处理,而后者重视实时性,下面主要介绍mapReducehe和Spark两者的shuffle过程。MapReduce的Shuffle过程介绍Shuffle的本义是洗牌、混洗,把一组有一定规则的数据尽量转换成一组无规则的数据,越随机越好。Ma...转载 2018-10-08 15:08:49 · 202 阅读 · 0 评论 -
Spark Standalone Mode下的client mode和cluster mode
1 . 有问题找百度,百度上搜索spark2. 进入spark官网,找到对应的版本的文档.因为我的是spark2.1.2版本3.进入spark的2.1.2文档后,看到Running the Examples and Shell和Launching on a Cluster Launching on a Cluster The Spark cluster mo...原创 2019-10-23 14:25:39 · 361 阅读 · 0 评论 -
Spark --- 启动、运行、关闭过程
计算PI值 // scalastyle:off println package org.apache.spark.examples import scala.math.random import org.apache.spark._ /** Computes an approximation to pi */ ob...转载 2018-10-08 16:48:51 · 2914 阅读 · 0 评论 -
Spark性能优化指南——高级篇
前言继基础篇讲解了每个Spark开发人员都必须熟知的开发调优与资源调优之后,本文作为《Spark性能优化指南》的高级篇,将深入分析数据倾斜调优与shuffle调优,以解决更加棘手的性能问题。一、数据倾斜调优 调优概述有的时候,我们可能会遇到大数据计算中一个最棘手的问题——数据倾斜,此时Spark作业的性能会比期望差很多。数据倾斜调优,就是使用各种技术方案解决不同类型的数据倾斜问题,...转载 2018-10-08 15:02:22 · 123 阅读 · 0 评论 -
IDEA开发Spark提示failed to locate the winutils binary in the hadoop binary
转自: https://blog.csdn.net/Utopia_1919/article/details/52451952今天整理电脑删了一些没用的东西,回过头开发spark的时候发现spark提示错误:16/09/06 17:20:43 ERROR Shell: Failed to locate the winutils binary in the hadoop binary pat...转载 2019-03-20 17:06:26 · 702 阅读 · 0 评论 -
Spark源码阅读环境搭建
前言对于Spark的应用,仅仅会使用期API来编程只能达到初级(助理)工程师或中级(熟练)工程师的水平,而学会调优则可以让你进阶为高级工程师。那么怎么才能成为顶尖的工程师呢?源码!如果你还要安装spark的话,scala的版本要根据spark指定的scala版本来安装。即先安装spark,再根据spark的提示,安装指定的scala版本。具体操作见: https://blog.csdn.n...转载 2019-09-30 14:03:32 · 150 阅读 · 0 评论 -
Spark,来官网学Spark2.1.2
1.百度输入框输入Spark2.进入Spark首页Documentation菜单,找到历史版本3.进入2.1.2版本Spark Programming GuideOverview Linking with Spark Initializing Spark Using the Shell Resilient Distributed Datasets (...原创 2019-09-29 16:16:14 · 385 阅读 · 0 评论 -
通过分区(Partitioning)提高Spark的运行性能
在使用Spark的过程中他们发现了一个能够提高Spark job性能的一个技巧,也就是修改数据的分区数,本文将举个例子并详细地介绍如何做到的。文章目录1 查找质数 2 为什么会出现这种情况? 3 如何解决查找质数 比如我们需要从2到2000000之间寻找所有的质数。我们很自然地会想到先找到所有的非质数,剩下的所有数字就是我们要找的质数。 我们首先遍历2到2000000之...转载 2018-10-12 17:08:52 · 667 阅读 · 0 评论 -
Spark:超越Hadoop MapReduce
引言:和 Hadoop 一样,Spark 提供了一个 Map/Reduce API(分布式计算)和分布式存储。二者主要的不同点是,Spark 在集群的内存中保存数据,而 Hadoop 在集群的磁盘中存储数据。 本文选自《SparkGraphX实战》。 大数据对一些数据科学团队来说是 主要的挑战,因为在要求的可扩展性方面单机没有能力和容量来运行大规模数据处 理。此外,即使专为大数据设计的...转载 2018-10-08 16:53:03 · 142 阅读 · 0 评论 -
SparkSQL实战详解
摘要 如果要想真正的掌握sparkSQL编程,首先要对sparkSQL的整体框架以及sparkSQL到底能帮助我们解决什么问题有一个整体的认识,然后就是对各个层级关系有一个清晰的认识后,才能真正的掌握它,对于sparkSQL整体框架这一块,在前一个博客已经进行过了一些介绍,如果对这块还有疑问可以看我前一个博客:http://9269309.blog.51cto.com/925...转载 2019-05-14 14:55:03 · 369 阅读 · 0 评论 -
Spark分区数,task数目,core数,worker节点个数,excutor数量梳理
输入可能以多个文件的形式存储在HDFS上,每个File都包含了很多块,称为Block。当Spark读取这些文件作为输入时,会根据具体数据格式对应的InputFormat进行解析,一般是将若干个Block合并成一个输入分片,称为InputSplit,注意InputSplit不能跨越文件。随后将为这些输入分片生成具体的Task。InputSplit与Task是一一对应的关系。随后这些...转载 2019-05-14 15:19:41 · 267 阅读 · 0 评论 -
Spark处理一个不变的大文件和一个小文件的join
Spark程序可以通过分区来减少网络通信开销。分区并非对于所有场景都是有好处的:比如, 如果给定RDD只被扫描一遍,那么完全没有必要做分区, 只有当数据多次在诸如连接这种基于键的操作时,分区才会有帮助。 假设我们有一份不变的大文件userData, 以及每5分钟产生的小数据events, 现要求在每5分钟产出events数据后, userData对events做一次join操作。 该过程的代码示例...转载 2018-10-12 17:22:52 · 830 阅读 · 0 评论 -
SparkTask未序列化(Task not serializable)问题分析
问题描述及原因分析在编写Spark程序中,由于在map等算子内部使用了外部定义的变量和函数,从而引发Task未序列化问题。然而,Spark算子在计算过程中使用外部变量在许多情形下确实在所难免,比如在filter算子根据外部指定的条件进行过滤,map根据相应的配置进行变换等。为了解决上述Task未序列化问题,这里对其进行了研究和总结。 出现“org.apache.spark.Spark...转载 2018-10-08 17:20:25 · 506 阅读 · 0 评论 -
Spark 中的文本转换为 Parquet 以提升性能
操作技巧:将 Spark 中的文本转换为 Parquet 以提升性能列式存储布局(比如 Parquet)可以加速查询,因为它只检查所有需要的列并对它们的值执行计算,因此只读取一个数据文件或表的小部分数据。Parquet 还支持灵活的压缩选项,因此可以显著减少磁盘上的存储。列式存储布局(比如 Parquet)可以加速查询,因为它只检查所有需要的列并对它们的值执行计算,因此只读取一个数据文件或...转载 2018-10-08 17:22:24 · 323 阅读 · 0 评论 -
源代码:spark-shell解读
1.spark-shell启动指定master./bin/spark-shell --master local[4] --jars code.jar 2.错误:System memory 239075328 must be at least 471859200[root@biluos spark-2.2.0-bin-hadoop2.7]# bin/spark-shellSett...转载 2019-10-12 18:03:38 · 580 阅读 · 0 评论 -
SparkSQL的整体实现框架
这篇博客的目的是让那些初次接触sparkSQL框架的童鞋们,希望他们对sparkSQL整体框架有一个大致的了解,降低他们进入spark世界的门槛,避免他们在刚刚接触sparkSQL时,不知所措,不知道该学习什么,该怎么看。这也是自己工作的一个总结,以便以后可以回头查看。后续会对sparkSQL进行一系列详细的介绍。慢慢来吧~~~1、sql语句的模块解析 当我们写一个查询语句时,一般包含...转载 2019-05-14 14:40:37 · 222 阅读 · 0 评论 -
调整Spark Streaming的日志输出级别,解决Spark Streaming的代码报错:Marking the coordinator * dead for group *
Spark Streaming消费Kafka中的数据,报错如下截图:`19/05/07 17:16:58 INFO AbstractCoordinator: Discovered coordinator slave2:9092 (id: 2147483645 rack: null) for group UserClikAnalysis.19/05/07 17:17:00 INFO Abstra...原创 2019-05-07 17:37:50 · 4673 阅读 · 2 评论 -
Spark Standalone Mode:Differences between client and cluster deploy modes
1. 一个stackoverflow上的小伙伴首先提出一个问题We have a Spark Standalone cluster with three machines, all of them with Spark 1.6.1:A master machine, which also is where our application is run using spark-submit...原创 2019-10-23 15:05:17 · 314 阅读 · 0 评论 -
Spark DAGScheduler、TaskSchedule、Executor执行task源码分析
摘要spark的调度一直是我想搞清楚的东西,以及有向无环图的生成过程、task的调度、rdd的延迟执行是怎么发生的和如何完成的,还要就是RDD的compute都是在executor的哪个阶段调用和执行我们定义的函数的。这些都非常的基础和困难。花一段时间终于弄白了其中的奥秘。总结起来,以便以后继续完善。spark的调度分为两级调度:DAGSchedule和TaskSchedule。DAGSche...转载 2019-05-14 15:07:56 · 284 阅读 · 0 评论 -
Spark中关于并行度涉及的几个概念
梳理一下Spark中关于并行度涉及的几个概念,File,Block,Split,Task,Partition,RDD以及节点数、Executor数、core数目的关系。输入可能以多个文件的形式存储在HDFS上,每个File都包含了很多块,称为Block。当Spark读取这些文件作为输入时,会根据具体数据格式对应的InputFormat进行解析,一般是将若干个Block合并成一个输入分片...转载 2018-10-12 16:48:55 · 1447 阅读 · 0 评论 -
十道海量数据处理面试题与十个方法大总结
十道海量数据处理面试题与十个方法大总结 第一部分、十道海量数据处理面试题1、海量日志数据,提取出某日访问百度次数最多的那个IP。 首先是这一天,并且是访问百度的日志中的IP取出来,逐个写入到一个大文件中。注意到IP是32位的,最多有个2^32个IP。同样可以采用映射的方法,比如模1000,把整个大文件映射为1000个小文件,再找出每个小文中出现频率最大的IP(可以采用ha...转载 2018-10-08 17:45:26 · 106 阅读 · 0 评论 -
分析Spark源码第一步——搭建源码阅读环境
为了深入理解spark,想了解一下源码,故搭建了一下源码阅读环境。我是在windows环境下进行的。step1:工具的获取我安装的软件及版本如下,搭建之前请安装好这些:(1)java1.8(2)scala 安装可参考http://www.runoob.com/scala/scala-install.html(3)maven 参考 https://www.yiibai.com...转载 2019-10-10 14:26:50 · 150 阅读 · 0 评论 -
spark源码阅读系列文章1-12--SparkContext启动过程
https://www.cnblogs.com/zhuge134/tag/%E6%BA%90%E7%A0%81/转载 2019-09-30 17:54:02 · 138 阅读 · 0 评论 -
统计日志文件中访问数量,Spark中加强版WordCount
写在前面学习Scala和Spark基本语法比较枯燥无味,搞搞简单的实际运用可以有效的加深你对基本知识点的记忆,前面我们完成了最基本的WordCount功能的http://blog.csdn.net/whzhaochao/article/details/72358215,这篇主要是结合实际生产情况编写一个简单的功能,功能就是通过分析CDN或者Nginx的日志文件,统计出访问的PV、UV、I...转载 2018-11-02 16:49:30 · 368 阅读 · 0 评论 -
基于Spark2.x新闻网大数据实时分析可视化系统项目
原文位置:https://blog.csdn.net/u011254180/article/details/80172452转载 2019-05-20 16:16:15 · 667 阅读 · 1 评论 -
Spark算子:distinct去重的原理
1、Distinct是transformation算子,不是action算子。2、Distinct的去重,是当key与value都一样的时候,会被当做重复的数据。 也就是说,有多条key和value都相同的数据在执行完distincct之后,只会保留1条。原文地址:https://blog.csdn.net/wyqwilliam/article/details/8211...转载 2018-11-05 11:05:19 · 6919 阅读 · 2 评论 -
Spark常用算子详解汇总 : 实战案例、Java版本、Scala版本
官网API地址:JavaRDD:http://spark.apache.org/docs/latest/api/scala/index.html#org.apache.spark.api.java.JavaRDD JavaPairRDD:http://spark.apache.org/docs/latest/api/scala/index.html#org.apache.spark.api....转载 2018-11-05 13:51:37 · 415 阅读 · 0 评论 -
Spark的一些小项目
原文地址:https://blog.csdn.net/metooman/article/details/78775918sparkwordcountobject SparkWC { def main(args: Array[String]): Unit = { //创建配置信息类,并设置应用的程序名称 //local [2] 本地启用2个线程模拟集群运行任务 ...转载 2019-04-09 17:12:17 · 1914 阅读 · 0 评论 -
厦门大学数据库实验室
厦门大学数据库实验室:http://dblab.xmu.edu.cn/blog/1134/原创 2019-04-08 16:55:15 · 899 阅读 · 0 评论 -
Spark源码阅读系列文章1-14: Spark Submit任务提交
翻了翻之前写的文章,发现思路有一些问题,文章前后有的串不起来,近期会对之前的文章进行顺序调整和改写。 今天,重新来开个头。作为一名Spark使用者,我对Spark任务从开始到结束都抱着一个好奇心。想研究一下Spark内部是怎么运行的,究竟其中有什么奥秘,借鉴了前辈们的思路,开始的自己的源码阅读。Spark源码版本: 2.1.1Spark源码包: Spark Core Cl...转载 2019-09-30 17:51:11 · 324 阅读 · 0 评论 -
Spark闭包初探
1.什么是闭包闭包的大致作用就是:函数可以访问函数外面的变量,但是函数内对变量的修改,在函数外是不可见的.2.Spark官网对闭包的描述One of the harder things about Spark is understanding the scope and life cycle of variables and methods when executing code...转载 2019-09-29 15:07:59 · 119 阅读 · 0 评论 -
确定spark需要安装的scala的版本的技巧
Spark整理思路是(1)在windows上下载解压spark,(2)配置SPARK_HOME的环境变量以及path,(3)cmd进入命令行并输入spark-shell,这时候便会出现spark需要的scala的版本1. 下载spark包http://spark.apache.org/downloads.html2.解压,我是解压到了D:\spark-2.2.33. 配置...原创 2019-09-30 14:41:31 · 968 阅读 · 0 评论 -
Spark性能优化之道——解决Spark数据倾斜(Data Skew)的N种姿势
摘要本文结合实例详细阐明了Spark数据倾斜的几种场景以及对应的解决方案,包括避免数据源倾斜,调整并行度,使用自定义Partitioner,使用Map侧Join代替Reduce侧Join,给倾斜Key加上随机前缀等。 为何要处理数据倾斜(Data Skew) 什么是数据倾斜对Spark/Hadoop这样的大数据系统来讲,数据量大并不可怕,可怕的是数据倾斜。何谓数据倾斜?数据倾...转载 2018-10-08 17:07:49 · 157 阅读 · 0 评论 -
Spark Client和Cluster两种运行模式的工作流程
1.client mode:Inclientmode, the driver is launched in the same process as the client that submits the application..也就是说在Client模式下,Driver进程会在当前客户端启动,客户端进程一直存在直到应用程序运行结束。该模式下的工作流程图主要如下:工作流程如下...转载 2019-10-23 16:33:40 · 1747 阅读 · 0 评论 -
Spark性能调优总结
1、Spark调优背景目前Zeppelin已经上线一段时间,Spark作为底层SQL执行引擎,需要进行整体性能调优,来提高SQL查询效率。本文主要给出调优的结论,因为涉及参数很多,故没有很细粒度调优,但整体调优方向是可以得出的。环境:服务器600+,spark 2.0.2,Hadoop2.6.02、调优结果调优随机选取线上9条SQL,表横轴是调优测试项目,测试在集群空闲情况下进行...转载 2019-12-22 20:41:41 · 293 阅读 · 0 评论 -
在集群上跑spark的jar 连接mongodb 3.0以上需要的jar包
spark的jars目录/usr/local/spark-2.1.2/jars/ ,需要以下3个jar包:mongodb-driver-3.0.1.jarmongodb-driver-core-3.0.1.jarbson-3.0.1.jar下载地址:https://oss.sonatype.org/content/repositories/releases/org/mongod...原创 2020-03-10 16:37:20 · 750 阅读 · 0 评论