自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

淡淡的倔强的博客

不怕千万人阻挡,只怕自己投降!

  • 博客(28)
  • 资源 (1)
  • 收藏
  • 关注

原创 Spark系列--Spark Streaming(六)DStreams转换

前言DStream上的原语与RDD的类似,分为Transformations(转换)和Output Operations(输出)两种,此外转换操作中还有一些比较特殊的原语,如:updateStateByKey()、transform()以及各种Window相关的原语。 Transformation Meaning map(func) 将源DStream中的每个元素...

2018-07-31 19:09:31 1733

转载 Spark系列--Spark Streaming(五)DStreams输入--高级数据源之Flume

一般Spark Streaming从Kafka获取数据,进行实时计算,从Flume获取数据的项目还没接触过,在此Mark下,待需要时参考。Spark Streaming + Flume整合官网文档阅读及运行示例官方文档: http://spark.apache.org/docs/latest/streaming-flume-integration.html...

2018-07-31 16:55:09 257

原创 Spark系列--Spark Streaming(四)DStreams输入--高级数据源之Kafka

前言本篇主要介绍Spark Streaming如何集成Kafka,演示SparkStreaming如何从Kafka读取消息,如果通过连接池方法把消息处理完成后再写会Kafka。在工程中需要引入Maven工件来使用它。包内提供的 KafkaUtils 对象可以在 StreamingContext 和JavaStreamingContext 中以你的 Kafka 消息创建出 DStream...

2018-07-31 15:07:14 545

原创 Spark系列--Spark Streaming(三)DStreams输入--基本数据源及自定义Receiver

前言Spark Streaming原生支持一些不同的数据源。一些“核心”数据源已经被打包到Spark Streaming 的 Maven 工件中,而其他的一些则可以通过 spark-streaming-kafka 等附加工件获取。每个接收器都以 Spark 执行器程序中一个长期运行的任务的形式运行,因此会占据分配给应用的 CPU 核心。此外,我们还需要有可用的 CPU 核心来处理数据。这意味着...

2018-07-27 18:36:53 1468

原创 Spark系列--Spark Streaming(二)IDEA编写Spark Streaming--NetWordCount程序

前言前面介绍了Spark Streaming的相关概念,这里我们使用IDEA编写Spark Streaming基于Socket数据流进行的WordCount。一、IDEA编写NetWordCount在原有的SparkCore项目基础上,添加Spark Streaming项目依赖:<dependency>
 <groupId>org.apache.sp...

2018-07-27 17:37:17 503

转载 Linux命令--nc

前言Spark Streaming进行Socket数据流测试时,用到nc来持续往指定端口上发送数据,进行NetWordCount,在这转载稍微mark下,更多用法待以后详解。一、nc简介nc是netcat的简写,有着网络界的瑞士军刀美誉。因为它短小精悍、功能实用,被设计为一个简单、可靠的网络工具。nc的作用 (1)实现任意TCP/UDP端口的侦听,nc可以作为server以TCP...

2018-07-27 17:21:07 593

原创 Spark系列--Spark Streaming(一)Spark Streaming简介

一、简介Spark Streaming类似于Apache Storm,用于流式数据的处理。根据其官方文档介绍,Spark Streaming有高吞吐量和容错能力强等特点。Spark Streaming支持的数据输入源很多,例如:Kafka、Flume、Twitter、ZeroMQ和简单的TCP套接字等等。数据输入后可以用Spark的高度抽象原语如:map、reduce、join、window等...

2018-07-26 19:05:28 1872

原创 Spark系列--SparkSQL(六)数据源

前言SparkSQL的数据源:结构化的文件(json,parquet),或者是Hive的表,或者是外部的数据库(mysql),也或者是已经存在的RDD。Spark SQL的DataFrame接口支持多种数据源的操作。一个DataFrame可以进行RDDs方式的操作,也可以被注册为临时表。把DataFrame注册为临时表之后,就可以对该DataFrame执行SQL查询。Spark SQL...

2018-07-24 12:25:14 4014

原创 Spark系列--SparkSQL(五)用户自定义函数

一、用户自定义UDF函数通过spark.udf功能用户可以自定义函数。scala> val df = spark.read.json("/input/people.json")scala> spark.udf.register("addName",(x:String)=>"Nam

2018-07-23 18:34:37 3084

原创 Spark系列--SparkSQL(四)RDD、DataFrame、DataSet之间的转换

前言创建DataFrame主要有三种方式:从Spark数据源进行创建从RDD进行转换从Hive Table进行查询返回(后面讲述)一、RDD 和 DataFrame之间的转换准备测试RDD数据scala> val rdd=sc.makeRDD(List("Mina,19","Andy,30","Michael,29"))rdd: org.ap

2018-07-23 17:12:35 2889

原创 Spark系列--SparkSQL(三)执行SparkSQL查询

一、Spark-Shell查询(1)启动Spark-Shell(本人是以Standlone模式启动Spark集群的) (2)创建测试JSON数据,注意每一行是一个JSON数据{"name":"Michael"}
{"name":"Andy&amp

2018-07-23 11:32:34 9512 1

原创 Spark系列--SparkSQL(二)RDD、DataFrame、DataSet

前言在SparkCore中我们知道数据抽象是RDD,在SparkSQL中Spark为我们提供了两个新的抽象,分别是DataFrame和DataSet。他们和RDD有什么区别呢?首先从版本的产生上来看:
RDD (Spark1.0) —> Dataframe(Spark1.3) —> Dataset(Spark1.6) 如果同样的数据都给到这三个数据结构,他们分别计算之后,都会给出...

2018-07-20 19:24:11 1356

原创 Spark系列--SparkSQL(一)SparkSQL简介

一、SparkSQL简介1、简介Spark SQL是Spark用来处理结构化数据的一个模块,它提供了一个编程抽象叫做DataFrame并且作为分布式SQL查询引擎的作用。我们已经学习了Hive,它是将Hive SQL转换成MapReduce然后提交到集群上执行,大大简化了编写MapReduce的程序的复杂性,由于MapReduce这种计算模型执行效率比较慢。所有Spark SQL的...

2018-07-20 18:37:05 756

原创 Spark系列--SparkCore(七)广播变量和累加器

一、广播变量  通常情况下,当一个RDD的很多操作都需要使用driver中定义的变量时,每次操作,driver都要把变量发送给worker节点一次,如果这个变量中的数据很大的话,会产生很高的传输负载,导致执行效率降低。  使用广播变量可以使程序高效地将一个很大的只读数据发送给多个worker节点,而且对每个worker节点只需要传输一次,每次操作时executor可以直接获取本地保存的数据...

2018-07-20 14:44:18 3314

转载 Spark系列--SparkCore(六)RDD分区详解

一、分区个数规则spark.default.parallelism:(默认的并发数)= 2当配置文件spark-default.conf中没有显示的配置,则按照如下规则取值:1、本地模式(不会启动executor,由SparkSubmit进程生成指定数量的线程数来并发):spark-shell spark.default.parallelism = 1spark-s...

2018-07-19 22:05:04 2233 1

原创 Spark系列--SparkCore(五)RDD容错性之cache、persist、checkpoint

一、RDD容错性理解RDD的容错性:RDD可以通过血统机制来进行RDD的恢复。在RDD进行转换和动作的时候,会形成RDD的Lineage依赖链,当某一个RDD失效的时候,可以通过重新计算上游的RDD来重新生成丢失的RDD数据。但是在spark计算里面,假如计算流程DAG特别长,服务器需要将整个DAG计算完成得出结果,但是如果在这很长的计算流程中突然中间算出的数据丢失了,spark又会根...

2018-07-19 17:57:26 1717

原创 Spark系列--SparkCore(四)RDD的依赖关系及运行规划

本篇以WordCount为例,去分析RDD的依赖关系和任务切分机制,分析样例如下:sc.textFile(“xx") .flatMap(_.split(" ")) .map((_,1)) .reduceByKey(_+_) .saveAsTextFile(“xx")一、RDD的依赖关系RDD的依赖分为两种:窄依赖、宽依赖窄依赖指的是每一...

2018-07-19 14:55:11 1640

原创 Spark系列--SparkCore(三)RDD基本操作

前言RDD的基本操作分为两种,一种是转换Transformation,一种是行动ActionRDD中的所有转换都是延迟加载的,也就是说,它们并不会直接计算结果。相反的,它们只是记住这些应用到基础数据集(例如一个文件)上的转换动作。只有当发生一个要求返回结果给Driver的动作时,这些转换才会真正运行。这种设计让Spark更加有效率地运行。一、常用的Transformation1...

2018-07-12 19:16:12 1857

原创 Spark系列--SparkCore(二)RDD创建方式

一、RDD的创建方式创建RDD的创建方式大概可以分为三种:从集合中创建RDD;从外部存储创建RDD;从其他RDD转换。1.1 从集合中创建RDD**从集合中创建RDD主要有下面两个方法:makeRDD和parallelizedef makeRDD[T: ClassTag](seq: Seq[T],numSlices: Int = defaultParallelism...

2018-07-12 18:03:19 1614

原创 Spark系列--SparkCore(一)RDD简介

前言RDD是Spark的基石,是实现Spark数据处理的核心抽象。那么RDD为什么会产生呢?Hadoop的MapReduce是一种基于数据集的工作模式,面向数据,这种工作模式一般是从存储上加载数据集,然后操作数据集,最后写入物理存储设备。数据更多面临的是一次性处理。MR的这种方式对数据领域两种常见的操作不是很高效。第一种是迭代式的算法。比如机器学习中ALS、凸优化梯度下降等。这些都需要...

2018-07-12 17:00:33 2007

原创 Spark系列(五)IDEA编写及调试Spark的WordCount程序

使用IDEA编写Spark程序的前提条件是IDEA已经配置好Scala的编写环境,可以参考Scala–IDEA配置及maven项目创建在这里,我们以hadoop的wordcount为例,编写Scala程序,以本地模式和Yarn模式分别测试程序。Spark程序在开发的时候,使用IDEA编写程序及调试过程如下:一、项目创建1、创建Scala的Maven项目,pom.xml文件如下所示:...

2018-07-12 15:17:24 2437

原创 Scala--IDEA配置及maven项目创建

前言在这里补充下Scala的IDEA配置,方便后面补充在IDEA里编写Spark的Scala程序。准备: 1、首先保证你机器上已经安装好了Scala和JDK 2、下载好Scala-Idea插件,下载地址如下,注意对应自己的IDEA版本 http://plugins.jetbrains.com/plugin/1347-scala一、IDEA配置1) 打开IDEA工具,如图:点击...

2018-07-12 14:19:26 3287

原创 Spark系列(四)Spark集群模式详解

前言Spark的部署模式有Local、Local-Cluster、Standalone、Yarn、Mesos,其中Yarn和Mesos是类似的,都不需要额外部署Spark集群,其中Yarn也是有Yarn-Client,Yarn-Cluster两种模式。Mesos和Yarn差不多,在这就不详细说明了。一、Local模式Local模式分为Local本地模式和Local-Cluster本地伪...

2018-07-10 19:20:28 2116

原创 Spark系列(三)Spark-yarn集群安装及执行

前言前面提到过,Spark的部署模式有Local、Local-Cluster、Standalone、Yarn、Mesos,在这里,mark下Yarn集群的安装部署及执行。Yarn集群的部署不依赖Standalone集群,不需要启动Spark,但需要安装Hadoop和Spark,本Yarn集群是在前面的Spark镜像基础上构建的,详细安装如下:一、Yarn集群安装1、修改Hado...

2018-07-10 18:16:17 2485

原创 Spark系列(二)执行Spark程序

一、执行第一个spark程序(standalone)该算法是利用蒙特·卡罗算法求PI/opt/module/spark-2.1.1-bin-hadoop2.7/bin/spark-submit \--class org.apache.spark.examples.SparkPi \--master spark://hadoop0:7077 \--executor-memory 1G ...

2018-07-06 18:10:26 1417

原创 Spark系列(一)集群搭建

前言Spark的部署模式有Local、Local-Cluster、Standalone、Yarn、Mesos,我们选择最具代表性的Standalone集群部署模式。一、集群角色从物理部署层面上来看,Spark主要分为两种类型的节点,Master节点和Worker节点,Master节点主要运行集群管理器的中心化部分,所承载的作用是分配Application到Worker节点,维护Wo...

2018-07-06 15:33:25 1638

原创 Scala--maven编译打包

Scala的maven项目在编译打包时,需要在项目的pom.xml文件中加入以下依赖和插件配置 <dependencies> <dependency> <groupId>org.scala-lang</groupId> <artifactId>scala-libra...

2018-07-06 10:52:53 8837 1

转载 Centos7安装chrome浏览器

配置yum源在目录 /etc/yum.repos.d/ 下新建文件 google-chrome.repocd /ect/yum.repos.d/vim google-chrome.repo写入如下内容:[google-chrome]name=google-chromebaseurl=http://dl.google.com/linux/chrome/rpm/stabl...

2018-07-05 11:51:30 1480

图形工厂_课程设计报告-正文.

图形工厂_课程设计报告-正文.doc

2013-11-14

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除