`

spark implementation hadoop setup,cleanup

阅读更多

 

写道

 

def main(args: Array[String]) {
val sc = new SparkContext("local", "xxx")
val inputData = sc.textFile("hdfs://master:8020/data/spark/user-history-data")
val lines = inputData.map(line => (line, line.length))

val result = lines.mapPartitions { valueIterator =>
if (valueIterator.isEmpty) {
Iterator[String]()
} else {
val transformedItem = new ListBuffer[String]() //setup ListBuffer
val fs: FileSystem = FileSystem.get(new Configuration()) //setup FileSystem

valueIterator.map { item =>
transformedItem += item._1 +":"+item._2
val outputFile = fs.create(new Path("/home/xxx/opt/data/spark/" + item._1.substring(0,item._1.indexOf("\t")) + ".txt"))
outputFile.write((item._1 +":"+item._2).getBytes())
if (!valueIterator.hasNext) {
transformedItem.clear() //cleanup transformedItem
outputFile.close() //cleanup outputFile
fs.close() //cleanup fs
}
transformedItem
}
}
}

result.foreach(println(_))
sc.stop()

 


将hdfs数据:
zhangsan 1 2015-07-30 20:01:01 127.0.0.1
zhangsan 2 2015-07-30 20:01:01 127.0.0.1
zhangsan 3 2015-07-30 20:01:01 127.0.0.1
zhangsan 4 2015-07-31 20:01:01 127.0.0.1
zhangsan 5 2015-07-31 20:21:01 127.0.0.1
lisi 1 2015-07-30 21:01:01 127.0.0.1
lisi 2 2015-07-30 22:01:01 127.0.0.1
lisi 3 2015-07-31 23:31:01 127.0.0.1
lisi 4 2015-07-31 22:21:01 127.0.0.1
lisi 5 2015-07-31 23:11:01 127.0.0.1
wangwu 1 2015-07-30 21:01:01 127.0.0.1
wangwu 2 2015-07-30 22:01:01 127.0.0.1
wangwu 3 2015-07-31 23:31:01 127.0.0.1
wangwu 4 2015-07-31 22:21:01 127.0.0.1
wangwu 5 2015-07-31 23:11:01 127.0.0.1
读取到spark中,并统计每行长度,再将数据写到本地的文件中(文件名称以每行第一个单词)
最终实现hadoop中setup, cleanup
强烈阅读如下链接:
http://mail-archives.apache.org/mod_mbox/spark-user/201407.mbox/%3CCAPH-c_O9kQO6yJ4khXUVdO=+D4vj=JfG2tP9eqn5RPko=dRNAg@mail.gmail.com%3E
http://blog.cloudera.com/blog/2014/09/how-to-translate-from-mapreduce-to-apache-spark/
http://apache-spark-user-list.1001560.n3.nabble.com/how-to-split-RDD-by-key-and-save-to-different-path-td11887.html#a11983
http://stackoverflow.com/questions/24520225/writing-to-hadoop-distributed-file-system-multiple-times-with-spark

 

0
1
分享到:
评论

相关推荐

    Spark和Hadoop的集成

    Hadoop的框架最核心的设计就是:HDFS和MapReduce。HDFS为海量的数据提供了存储,则MapReduce为海量的数据提供了计算。Storm是一个分布式的、容错的实时计算系统。两者整合,优势互补。

    Python+Spark 2.0+Hadoop机器学习与大数据

    《Python+Spark 2.0+Hadoop机器学习与大数据》是一本深入探讨大数据处理与机器学习技术结合的著作。作者林大贵以其丰富的经验,详细介绍了如何利用Python、Spark 2.0以及Hadoop这一组合来构建高效的数据分析解决方案...

    Spark+Hadoop+IDE环境搭建

    在大数据处理领域,Spark和Hadoop是两个至关重要的框架。Spark以其高效的内存计算和易用性,成为数据处理的新宠,而Hadoop作为分布式存储和计算的基础,为大数据提供了基石。本文将详细介绍如何在IDE环境下搭建Spark...

    Big Data Analytics with Spark and Hadoop(Spark与Hadoop大数据分析)代码code

    Big Data Analytics with Spark and Hadoop(Spark与Hadoop大数据分析)代码code

    Big Data Analytics with Spark and Hadoop 无水印pdf 0分

    Big Data Analytics with Spark and Hadoop 英文无水印pdf pdf使用FoxitReader和PDF-XChangeViewer测试可以打开

    Spark、Hadoop大数据平台搭建.pdf

    对于使用PySpark,需要安装Python3,并在Spark的python目录下通过`python36 setup.py install`命令安装pyspark。同时,安装numpy库以支持数据处理,可以使用国内镜像源以提高安装速度。 7. **启动和停止服务**: ...

    spark-3.2.1 不集成hadoop安装包

    在标题"spark-3.2.1 不集成hadoop安装包"中,我们看到的是Spark的一个特定版本——3.2.1,而且特别强调了这个版本不包含Hadoop的集成。这意味着这个Spark发行版没有内置对Hadoop的支持,用户需要自己配置和管理与...

    Spark高清hadoop

    《Spark高清Hadoop》这本书是针对大数据处理领域的一份宝贵学习资料,主要聚焦于Apache Spark这一强大的分布式计算框架。Spark以其高效、易用和多用途的特点,在大数据处理领域备受推崇,尤其是在实时处理、机器学习...

    spark-3.1.3-bin-without-hadoop.tgz

    这个"spark-3.1.3-bin-without-hadoop.tgz"压缩包是Spark的3.1.3版本,不含Hadoop依赖的二进制发行版。这意味着在部署时,你需要自行配置Hadoop环境,或者在不依赖Hadoop的环境中运行Spark。 Spark的核心特性包括...

    spark/hadoop读取s3所需要的外部依赖包

    在大数据处理领域,Spark和Hadoop是两个非常重要的框架,它们广泛用于数据处理、分析以及存储。当需要从云存储服务如Amazon S3(Simple Storage Service)读取或写入数据时,这两个框架需要额外的依赖包来实现与S3的...

    Spark/Hadoop开发缺失插件-winutils.exe

    本地开发Spark/Hadoop报错“ERROR Shell: Failed to locate the winutils binary in the hadoop binary path java.io.IOException: Could not locate executable null\bin\winutils.exe in the Hadoop binaries.” ...

    spark+hadoop大数据处理学习笔记

    《Spark与Hadoop在大数据处理中的深度探索》 在当今数据爆炸的时代,大数据处理技术的重要性不言而喻。Spark和Hadoop作为两个重要的大数据处理框架,各具特色且相辅相成,共同构建了大数据生态的重要一环。本文将...

    Spark+hadoop+scala 完全分布式集群搭建过程及启动过程

    对于想学习 Spark 的人而言,如何构建 Spark 集群是其最大的难点之一, 为了解决大家构建 Spark 集群的一切困难,Spark 集群的构建分为了五个步骤,从 零起步,不需要任何前置知识,涵盖操作的每一个细节,构建完整...

    Spark是什么?Spark和Hadoop的区别

    Spark 是加州大学伯克利分校 AMP(Algorithms,Machines,People)实验室开发的通用内存并行计算...Spark 与 Hadoop Hadoop 已经成了大数据技术的事实标准,Hadoop MapReduce 也非常适合于对大规模数据集合进行批处理操

    spark_hadoop2.5assembly

    HADOOP SPARK 开发依赖包,对于第一个SPARK开发的例子,可以导入这个包去进行开发

    spark+hadoop+kafka+zookeeper 大数据平台搭建脚本

    spark+hadoop+zookeeper 大数据平台搭建脚本,亲测通过,适用于大数据初学者在虚拟机玩

    spark3.1.1和hadoop3.2.2对应的java依赖 pom文件

    为了把spark2.4.X和hadoop2.7.3升级为spark3.1.1和hadoop3.2.2找了半天资源,最后还是自己手动编写了一个。已经在集群上测试可用

    毕业设计基于Python+Spark+Hadoop大数据开发的用户画像电影推荐系统源码+数据库

    毕业设计基于Python+Spark+Hadoop大数据开发的用户画像电影推荐系统源码+数据库,含有代码注释,新手也可看懂,个人手打98分项目,导师非常认可的高分毕业设计项目,毕业设计、期末大作业和课程设计高分必看,下载...

    spark-3.2.0-bin-hadoop3-without-hive

    《Spark 3.2.0 与 Hadoop 3 的集成——无 Hive 版本解析》 Spark,作为大数据处理领域的重要工具,以其高效的内存计算和分布式数据处理能力备受青睐。Spark 3.2.0 是一个重要的版本更新,它在性能、稳定性和功能上...

Global site tag (gtag.js) - Google Analytics