self-motivation
专注LINUX系统与性能分析优化
展开
-
hadoop学习(三)------搭建分布式集群
(1).按照前面的讲解,安装第二台,第三台Ubuntu虚拟机,并配置hadoop为单机伪分布式。(2).在三台主机上配置集群的主机名vi /etc/hostname分别为Master,Slave1,Slave2vi /etc/hosts添加Master,Slave1,Slave2对应的IP.127.0.0.1 localhost192.168原创 2015-03-15 10:35:52 · 734 阅读 · 0 评论 -
Spark流编程指引(一)---------------------概述
Spark流是Spark核心API的扩展,它提供了以高扩展,高吞吐量,高容错性的流的方式来处理实时数据的方法。数据的涞源有很多,可以来自Kafka, Flume, Twitter, ZeroMQ, Kinesis或者TCP sockets。通过使用高级别的函数,比如map,reduce,join,window等,可以用复杂的算法来处理数据。最后,处理后的数据能够被推送至文件系统,数据库,或原创 2015-06-24 23:19:31 · 1874 阅读 · 0 评论 -
Spark流编程指引(四)---------------------------DStreams基本模型,输入DStreams和接收者
离散流(DStreams)离散流或者称为DStreams是Spark流编程提供的基本抽象。它代表了持续的数据流,从一个数据源接收到的数据流或者是在一个输入流上应用转变操作处理后的数据流。在内部实现上,DStream代表了一系列连续的RDDs.RDDs是Spark对不可变的,分布式数据集的抽象。DStream中的每个RDD包含了一定间隔内的数据,正如下图所示:任何应用在DStream上的原创 2015-06-29 15:41:31 · 2857 阅读 · 0 评论 -
Spark流编程指引(三)-------------------------------------初始化StreamingContext
基本概念接下来,我们在上一节例子的基础上,来阐述Spark Streaming的基本知识。链接和Spark类似,Spark Streaming也包含在maven的中央仓库中。为了写基于Spark Streaming的程序,你需要为你的SBT或Maven工程分别添加以下依懒:Maven: org.apache.spark spark-str原创 2015-06-28 21:50:34 · 7079 阅读 · 1 评论 -
spark基础(三)------------------------使用maven构建一个基于scala的spark应用程序。
这一章讲解一下如何使用maven构建我们的spark应用程序。首先,安装maven,在centos7上使用yum install maven直接安装。然后按照maven的约定,建立如下目录:./spark-demo./spark-demo/src./spark-demo/src/main./spark-demo/src/main/scala./spark原创 2015-06-14 20:11:58 · 19719 阅读 · 0 评论 -
spark基础(一)----------spark集群模型
spark应用程序在集群上作为一组独立的进程运行。在每个应用程序的主进程里,都有一个sparkContext对象,也被称为驱动程序,就是这个sparkContext对象负责与集群协调资源。具体来说,要在集群上运行,sparkContext可以连接多种不同的集群管理器(无论是spark自己的集群管理器还是Mesos or YARN).这些集群管理器为这些应用程序分配资源。sparkContext原创 2015-06-07 00:21:39 · 1532 阅读 · 0 评论 -
spark基础(二)-----------scala在spark shell里的应用
这篇教程为使用spark提供一个快速的介绍。我们将先介绍spark shell的API(python or scala),然后展示如何用JAVA,PYTHON,SCALA写应用。请先安装SPARK,下载地址http://spark.apache.org/downloads.html,由于我们不使用HDFS,可以基于任何hadoop版本。通过spark shell进行交互式分析启原创 2015-06-07 20:00:33 · 8458 阅读 · 0 评论 -
Spark流编程指引(二)----------------------一个快速的例子
在详细地学习如何写自己的Spark Streaming程序之前,我们先来快速地看一个简单的Spark Streaming程序的例子。我们现在要计算从一个TCP数据服务器接收到的文本数据中单词的个数。我需要向下面这样去做:首先,导入Spark Streaming的类;再导入一些StreamingContext的隐式转换,来增加来自其它类(比如DStream)的有用方法。Streaming原创 2015-06-28 11:31:55 · 1858 阅读 · 0 评论 -
Spark流编程指引(五)-----------------------------DStreams上的转换操作
与RDDs类似,转换操作允许来自输入DStreams的数据被修改。DStreams支持许多在通常Spark RDD上的转换操作。下面是一些常见的:转换含义map(func)Return a new DStream by passing each element of the source DStream through a functionfunc.原创 2015-07-08 00:22:37 · 3925 阅读 · 0 评论 -
maven实战学习(二)--------------maven安装和配置
1.Windows上安装maven1.1检查JDK安装Maven可以运行在JDK1.4及以上的版本。打开Windows命令行,运行如下命令来检查安装"如果没有安装或者没有配置JAVA_HOME,请安装JDK并配置。1.2下载Maven下载地址:http://maven.apache.org/download.cgi#下载3.3.3最新版本。1原创 2015-07-16 19:49:59 · 1552 阅读 · 0 评论 -
Spark编程指引(四)------------------共享变量(广播变量和累加器)
共享变量通常情况下,当向Spark操作(如map,reduce)传递一个函数时,它会在一个远程集群节点上执行,它会使用函数中所有变量的副本。这些变量被复制到所有的机器上,远程机器上并没有被更新的变量会向驱动程序回传。在任务之间使用通用的,支持读写的共享变量是低效的。尽管如此,Spark提供了两种有限类型的共享变量,广播变量和累加器。原创 2015-06-23 23:34:00 · 39269 阅读 · 7 评论 -
Spark编程指引(一)-------------Spark的重要抽象,如何使用Spark。
概述从上层来看,每个spark应用程序都是由驱动程序构成。这个驱动程序执行我们应用程序的main方法,并在集群上并行执行多种操作。原创 2015-06-14 22:17:16 · 2950 阅读 · 0 评论 -
hadoop学习(二)-----配置hadoop单机伪分布式模式
(1).修改hadoop的核心配置文件core-site.xml.主要是配置HDFS的地址和端口号。 fs.default.name #HDFS NameNode的ip和端口 hdfs://localhost:9000 hadoop.原创 2015-03-15 10:13:57 · 957 阅读 · 0 评论 -
hadoop学习(四)--------升级为spark集群
我们在hadoop集群的基础上构建spark集群。1.下载对应的spark版本前面我们使用的hadoop1.2.1,所以要从spark网站下载对应的spark版本。http://spark.apache.org/downloads.html注意要选择pre-duild for Haddop 1.x版本,这样我们下载好的是对应hadoop版本编译好的spark版本。如果下原创 2015-03-29 01:27:57 · 1674 阅读 · 0 评论 -
Spark源码学习(一)---------编译源码
学习spark源码的第一步,就是编译源码,这样方便我们以后修改和调试。选择的spark源码版本为最新的1.3.1 http://spark.apache.org/downloads.html第一步,安装JDK,并配置环境变量JAVA_HOME,CLASSPATH,PATH。我使用的是JDK1.7java -versionjava version "1.7.0原创 2015-04-22 23:54:43 · 4658 阅读 · 3 评论 -
spark源码学习(二)------------spark-shell启动分析
上一节学习了spark源码的编译方法,这一节我们跟踪一下spark-shell的启动.spark-shell是spark提供一个控制台,通过它我们可以方便的学习spark的API,类似于scala的REPL.spark-shell在/bin目录下,下面简单分析一下spark-shell的启动。spark-shell--------->spark-submit----------原创 2015-04-23 23:29:19 · 6265 阅读 · 0 评论 -
hadoop学习(五)------源码编译
编译环境准备:在ubuntukylin-14.04-desktop-i386环境中编译hadoop源码1.安装JDK,maven请参考http://blog.youkuaiyun.com/happyanger6/article/details/452058772.编译安装hadoop依赖protobuf2.5.0(必须使用这个版本,hadoop2.6.0源码要求此版本)原创 2015-04-26 09:33:35 · 998 阅读 · 0 评论 -
hadoop学习(六)--------eclipse远程调试
上一节我们已经成功编译了hadoop源码,这样我们就可以根据需要在源代码里增加调试信息,跟踪hadoop的执行。这种方式需要对跟踪的对应模块代码进行修改,还要重新编译jar包,并替换share/hadoop目录下对应的jar包,然后重新启动要调试的hadoop服务才行,比较麻烦。所以我学习了一下如何用eclipse远程调试,这样就可以设置断点,十分方便。1.关于JAVA远程调试的原理和原创 2015-04-26 17:13:38 · 5513 阅读 · 0 评论 -
hadoop学习(七)---------eclipse调试FsShell
上一节介绍了eclipse远程调试hadoop,这一节再以FsShell为例,巩固一下远程调试的知识。FsShell是hadoop提供的一个与本地文件系统,HDFS,HTFS,S3等文件系统交互的工具,使用格式如下:bin/hadoop fs 1.首先,修改bin/hadoop文件,使FsShell启动的时候支持远程调试,并等待eclipse调试器的连接*)原创 2015-04-26 19:25:46 · 2131 阅读 · 0 评论 -
Spark编程指引(三)-----------------RDD操作,shuffle和持久化
处理键-值对尽管Spark的大部操作支持包含所有对象类型的RDDs,但是还有一些操作只支持键-值对的的RDDs.最常见的是类似"洗牌"的操作,比如以键值来分组或聚合所有的元素。在Scala里,这些操作对包含2元组的RDD是自动可用的。(Scala语言内置的元组,通过(a,b)这样的形式创建)。对键-值对可用的操作在PairRDDFunctions类里,将自动包含在含有2元组的RDD里。原创 2015-06-20 21:51:08 · 17163 阅读 · 1 评论 -
Spark编程指引(二)---------------RDD介绍,闭包对RDD的影响,如何打印RDD。
RDD OperationsRDD支持两种操作类型:转换,从现有数据集创建一个新的数据集。动作:在数据集上进行计算,并对驱动程序返回一个值。比如,map是一个转换,它对数据集中的每个元素执行一个函数,然后返回一个新的RDD代表执行结果。reduce是一个动作,它通过一些函数聚合RDD中的所有元素,然后对驱动程序返回最后的结果。(虽然也有一个并行的reduceByKey函数返回一个分原创 2015-06-18 00:18:03 · 7985 阅读 · 0 评论 -
Spark流编程指引(六)-----------------------DStreams上的输出操作
DStreams上的输出操作通过输出操作,我们可以将DStream的数据存放到数据库或者文件系统这样的外部系统中。尽管实际上,输出操作允许经过转换后的数据被外部系统消耗,它们也会触发执行所有DStreams上的转换操作(与RDDs上的action操作类似)。目前,定义了如下的输出操作:Output OperationMeaningprint()Print原创 2015-07-16 15:37:05 · 2478 阅读 · 0 评论