Spark
文章平均质量分 96
dabokele
这个作者很懒,什么都没留下…
展开
-
Spark-streaming 连接flume
1,程序为spark的example中的FlumeEventCount示例object FlumeEventCount { def main(args: Array[String]) { StreamingExamples.setStreamingLogLevels() //val Array(host, IntParam(port)) = args val host原创 2015-09-23 14:17:22 · 1180 阅读 · 0 评论 -
IntelliJ IDEA在Local模式下Spark程序消除日志中INFO输出
在使用Intellij IDEA,local模式下运行Spark程序时,会在Run窗口打印出很多INFO信息,辅助信息太多可能会将有用的信息掩盖掉。如下所示 要解决这个问题,主要是要正确设置好log4j文件,本文主要分析如何在local模式下,将Spark的INFO信息隐藏,不影响程序中的结果输出。1、将spark根目录下的log4j.properties文件复制到Intellij IDE原创 2016-09-20 20:47:25 · 17986 阅读 · 12 评论 -
Spark-SQL连接MySql关系型数据库
注意:程序中需要用到jdbc的jar包本程序中使用的是mysql-connector-java-5.1.29.jar1,从mysql数据库读取数据 完整程序如下:import java.util.Propertiesimport org.apache.spark.sql.SQLContextimport org.apache.spark.{SparkContext, S原创 2015-09-23 11:58:09 · 8484 阅读 · 1 评论 -
Spark Streaming + Kafka整合(Kafka broker版本0.8.2.1+)
这篇博客是基于Spark Streaming整合Kafka-0.8.2.1官方文档。 本文主要讲解了Spark Streaming如何从Kafka接收数据。Spark Streaming从Kafka接收数据主要有两种办法,一种是基于Kafka high-level API实现的基于Receivers的接收方式,另一种是从Spark 1.3版本之后新增的无Receivers的方式。这两种方式的代码编翻译 2016-10-14 00:08:55 · 6229 阅读 · 2 评论 -
Spark Streaming中的操作函数分析
根据Spark官方文档中的描述,在Spark Streaming应用中,一个DStream对象可以调用多种操作,主要分为以下几类TransformationsWindow OperationsJoin OperationsOutput Operations一、Transformations1、map(func) map操作需要传入一个函数当做参数,具体调用形式为val b = a.map原创 2016-09-21 00:09:18 · 14328 阅读 · 2 评论 -
Spark Streaming应用启动过程分析
本文为SparkStreaming源码剖析的第三篇,主要分析SparkStreaming启动过程。 在调用StreamingContext.start方法后,进入JobScheduler.start方法中,各子元素start方法的调用顺序如下:private var eventLoop : EventLoop[JobSchedulerEvent] = nullval listenerBus原创 2016-12-20 23:44:25 · 4858 阅读 · 0 评论 -
Spark Streaming编程指南
本文基于Spark Streaming Programming Guide原文翻译, 加上一些自己的理解和小实验的结果。 一、概述 Spark Streaming是基于Core Spark API的可扩展,高吞吐量,并具有容错能力的用于处理实时数据流的一个组件。Spark Streaming可以接收各种数据源传递来的数据,比如Kafka, Flume, Kinesis或者TCP等,对接收到的翻译 2016-10-13 22:03:35 · 6877 阅读 · 3 评论 -
Spark编程模型
Spark编程模型原创 2015-07-17 15:13:22 · 1147 阅读 · 0 评论 -
Spark SQL中的broadcast join分析
本文分析Spark-1.6.2中大小表join时的broadcast机制。分析源码执行逻辑,并且对源码进行一定的调整。原创 2017-03-25 21:34:57 · 30111 阅读 · 2 评论 -
Spark-1.6.0中的Sort Based Shuffle源码解读
Spark-1.6.0源码中默认的Sort Based Shuffle, Shuffle Write和Shuffle Read过程分析。原创 2016-05-25 23:22:40 · 9904 阅读 · 1 评论 -
Spark内存管理-UnifiedMemoryManager和StaticMemoryManager
在Spark-1.6.0中,引入了一个新的参数spark.memory.userLegacyMode(默认值为false),表示不使用Spark-1.6.0之前的内存管理机制,而是使用1.6.0中引入的动态内存分配这一概念。 从SparkEnv.scala的源码中可以看到,该参数设置为true或false,主要影响到构造memoryManager的类的不同:val useLegacyMemoryM原创 2016-05-22 16:01:54 · 12281 阅读 · 8 评论 -
IDEA中运行KafkaWordCount程序
1,从spark的example中找到KafkaWordCount.scala文件复制到idea编辑器中,引入包:2,编辑configuration, (1)KafkaWordCountProducer 选择KafkaWordCount.scala中的KafkaWordCountProducer方法 VM options 设置为:-Ds原创 2015-09-24 10:31:49 · 2937 阅读 · 2 评论 -
Spark MLlib数据类型
MLlib支持几种数据类型:本地向量(local vectors),和存储在本地或者基于RDD的分布式矩阵(matrices)。底层的线性代数转换操作是基于Breeze和jblas实现的。在MLlib中有监督学习算法使用的训练样本数据类型被称为“带标签的点(labeled point)”。一、本地向量(Local Vector) 一个本地向量是由从0开始的整型下标和double型数值组成的,存储翻译 2017-04-19 21:15:10 · 3791 阅读 · 1 评论 -
Spark-SQL之DataFrame操作大全
Spark SQL中的DataFrame类似于一张关系型数据表。在关系型数据库中对单表或进行的查询操作,在DataFrame中都可以通过调用其API接口来实现。可以参考,Scala提供的DataFrame API。 本文中的代码基于Spark-1.6.2的文档实现。一、DataFrame对象的生成 Spark-SQL可以以其他RDD对象、parquet文件、json文件、hive表,以及通过JD原创 2016-10-12 23:31:35 · 197221 阅读 · 18 评论 -
Spark UI界面原理
本文以Spark-1.6.0源码为基础,分析了Spark UI界面的框架构成,及页面数据展示方法。原创 2016-07-06 23:21:51 · 21598 阅读 · 0 评论 -
Spark Scheduler模块源码分析之DAGScheduler
本文主要结合Spark-1.6.0的源码,对Spark中任务调度模块的执行过程进行分析,分析了Scheduler模块中DAGScheduler的作用,构成,以及Stage划分和Stage最终的提交过程。原创 2016-07-13 23:47:28 · 13939 阅读 · 10 评论 -
分析比较KafkaWordCount及DierctKafkaWordCount
参考spark官方文档,Spark Streaming + Kafka Integration Guide,其中提到Spark Streaming如何从Kafka中接收数据.主要有两种方法,一种是使用Receivers的旧方法,另一种是不使用Receivers的新方法(从Spark 1.3才开始引入)1,Approach 1: Receiver-based Approach(基于Rec翻译 2015-09-24 10:31:03 · 1571 阅读 · 0 评论 -
Spark1.4从HDFS读取文件运行Java语言WordCounts并将结果保存至HDFS
习惯印象笔记客户端记录的方便。想想这几天搭建Spark环境,分析spark运行过程,分析程序编写过程的迷茫,记录一篇从Hadoop2.4.0 HDFS系统中读取文件,并使用java语言编译运行的WordCount过程与大家分享吧。本次实验相关信息如下:操作系统:Ubuntu 14Hadoop版本:2.4.0Spark版本:1.4.0运行前提是Hadoop和Spark均已正确安装原创 2015-07-16 15:34:35 · 7259 阅读 · 0 评论 -
Spark Streaming + Flume整合官网文档阅读及运行示例
1,基于Flume的Push模式(Flume-style Push-based Approach) Flume被用于在Flume agents之间推送数据.在这种方式下,Spark Streaming可以很方便的建立一个receiver,起到一个Avro agent的作用.Flume可以将数据推送到改receiver.1),需求从集群中选择一台机器,当Flu原创 2015-09-23 15:56:30 · 2905 阅读 · 0 评论 -
Spark MLlib数据类型
MLlib支持几种数据类型:本地向量(local vectors),和存储在一个简单机器中的矩阵(matrices),以及由一个或多个RDDs组成的分布式矩阵.1,本地向量(Local Vector) 一个本地向量是由从0开始的整型下标和double型值组成,存储在一个单机节点上.MLlib支持两种类型的本地向量:密集的和稀疏的.密集向量用一个double数组来存储值.而一个翻译 2015-09-24 09:57:07 · 4349 阅读 · 0 评论 -
Spark SQL官方文档阅读--待完善
1,DataFrame是一个将数据格式化为列形式的分布式容器,类似于一个关系型数据库表.编程入口:SQLContext2,SQLContext由SparkContext对象创建也可创建一个功能更加全面的HiveContext对象,HiveContext是SQLContext的子类,从API中可以看出HiveContext extends SQLContext,所以能用SQL翻译 2015-09-24 10:21:28 · 4101 阅读 · 0 评论 -
Spark1.4从HDFS读取文件运行Java语言WordCounts
Hadoop:2.4.0Spark:1.4.0Ubuntu 14.01、首先启动Hadoop的HDFS系统。 HADOOP_HOME/sbin/start-dfs.sh2、在Linux中生成一个文件test.txt,保存在/home/testjars/目录下3、通过hadoop fs -put命令上传 hadoop fs -put原创 2015-09-24 10:22:41 · 2834 阅读 · 0 评论 -
IDEA中运行DirectKafkaWordCount程序
1,将SPARK_HOME中的DirectKafkaWordCount程序复制到idea中.2,由于在KafkaWordCount中已引入相关jar包,此步可略过3,配置configurations参数 关于program arguments参数,程序中定义如下:/** * Consumes messages from one or more topics原创 2015-09-24 10:30:31 · 2010 阅读 · 0 评论 -
Spark调度模式-FIFO和FAIR
Spark中的调度模式主要有两种:FIFO和FAIR。使用哪种调度器由参数spark.scheduler.mode来设置,默认为FIFO原创 2016-05-28 18:12:10 · 25513 阅读 · 6 评论 -
Spark-1.6.0之Application运行信息记录器JobProgressListener
JobProgressListener类是Spark的ListenerBus中一个很重要的监听器,可以用于记录Spark任务的Job和Stage等信息,比如在Spark UI页面上Job和Stage运行状况以及运行进度的显示等数据,就是从JobProgressListener中获得的。本文主要分析了JobProgressListener的结构,以及数据生产和消费的过程。原创 2016-07-05 23:42:21 · 5860 阅读 · 0 评论 -
Spark Scheduler模块源码分析之TaskScheduler和SchedulerBackend
本文是Scheduler模块源码分析的第二篇,第一篇Spark Scheduler模块源码分析之DAGScheduler主要分析了DAGScheduler。本文接下来结合Spark-1.6.0的源码继续分析TaskScheduler和SchedulerBackend。原创 2016-07-17 13:59:15 · 8282 阅读 · 3 评论 -
Spark运行环境之SparkEnv和通信工具RpcEnv
Spark在运行时Driver端和Executor端需要互相通信,那么这种通信是如何进行的?在SparkEnv中有两个方法createDriverEnv,createExecutorEnv,分别用于创建Driver端和Executor端的SparkEnv对象。看一下SparkEnv对象的结构,从下面的代码中可以看到SparkEnv包含了Spark中很多重要组件,比如用于通信的RpcEnv,用于...原创 2019-01-03 17:14:15 · 2611 阅读 · 2 评论