spark2.0.1 csv文件转换parquet文件

2017-10-19

读取HDFS上csv文件转化为parquet import org.apache.spark.sql.{SQLContext, SparkSession} import org.apache.spark.sql.types._ object Demo { def main(args: Array[String]): Unit = { ...

Hadoop中的Shuffle 与 Spark中的Shuffle得区别与联系

2017-02-15

MapReduce过程、Spark和Hadoop以Shuffle为中心的对比分析 mapreduce与Spark的map-Shuffle-reduce过程 mapreduce过程解析(mapreduce采用的是sort-based shuffle) 将获取到的数据分片partition进行解析,获得k/v对,之后交由map()进行...

董西成-2.1(2) 简易电影受众系统

2016-10-25

1、首先下载分析文件网址为:http://grouplens.org/datasets/movielens/(MovieLens 1M Dataset中的这个包ml-1m.zip) 2、部分文件如下: movies.dat: 1::Toy Story (1995)::Animation|Children's|Comedy ...

Spark获取mysql数据操作

2016-09-27

scala代码 Scala import org.apache.spark.sql.{DataFrame, SQLContext} import org.apache.spark.{SparkConf, SparkContext} /** * Created by zhangshuai on 2016/9/27. */ object Mysql_spa...

Spark分组TOPN排序

2016-09-22

Java /** * Created by zhangshuai on 2016/9/22. */ // 输入文件 // Spark 100 // Hadoop 65 // Spark 99 // Hadoop 61 // Spark 195 // ...

Apache Spark 的设计与实现(Broadcast功能)

2016-09-21

Broadcast 顾名思义,broadcast 就是将数据从一个节点发送到其他各个节点上去。这样的场景很多,比如 driver 上有一张表,其他节点上运行的 task 需要 lookup 这张表,那么 driver 可以先把这张表 copy 到这些节点,这样 task 就可以...

Apache Spark 的设计与实现(cache和checkpoint功能)

Cache 和 Checkpoint 作为区别于 Hadoop 的一个重要 feature,cache 机制保证了需要访问重复数据的应用(如迭代型算法和交互式应用)可以运行的更快。与 Hadoop MapReduce job 不同的是 Spark 的逻辑/物理执行图可能很庞大,task 中 c...

Apache Spark 的设计与实现(模块协调完成整个job)

架构 前三章从 job 的角度介绍了用户写的 program 如何一步步地被分解和执行。这一章主要从架构的角度来讨论 master,worker,driver 和 executor 之间怎么协调来完成整个 job 的运行。 实在不想在文档中贴过多的代码,这章贴这么多,...

Apache Spark 的设计与实现(shuffle过程)

Shuffle 过程 上一章里讨论了 job 的物理执行图,也讨论了流入 RDD 中的 records 是怎么被 compute() 后流到后续 RDD 的,同时也分析了 task 是怎么产生 result,以及 result 怎么被收集后计算出最终结果的。然而,我们还没有讨论数据...

Apache Spark 的设计与实现(job物理执行图)

Job 物理执行图 在 Overview 里我们初步介绍了 DAG 型的物理执行图,里面包含 stages 和 tasks。这一章主要解决的问题是: 给定 job 的逻辑执行图,如何生成物理执行图(也就是 stages 和 tasks)? 一个复杂 job 的逻辑执行图 代码...