随笔分类 -  spark集群搭建及简单上手

摘要:问题描述 对于一个大型网站,用户访问量尝尝高达数十亿。对于数十亿是一个什么样的概念,我们这里可以简单的计算一下。对于一个用户,单次访问,我们通常会记录下哪些数据呢? 1、用户的id 2、用户访问的时间 3、用户逗留的时间 4、用户执行的操作 5、用户的其余数据(比如IP等等) 我们单单从用户id来说 阅读全文
posted @ 2020-01-12 00:24 阿布_alone 阅读(460) 评论(0) 推荐(0) 编辑
摘要:Spark的intersection intersection顾名思义,他是指交叉的。当两个RDD进行intersection后,将保留两者共有的。因此对于RDD1.intersection(RDD2) 和RDD2.intersection(RDD1) 。应该是一致的。 比如对于,List1 = { 阅读全文
posted @ 2020-01-12 00:23 阿布_alone 阅读(1590) 评论(0) 推荐(0) 编辑
摘要:spark的combineByKey combineByKey的特点 combineByKey的强大之处,在于提供了三个函数操作来操作一个函数。第一个函数,是对元数据处理,从而获得一个键值对。第二个函数,是对键值键值对进行一对一的操作,即一个键值对对应一个输出,且这里是根据key进行整合。第三个函数 阅读全文
posted @ 2020-01-12 00:21 阿布_alone 阅读(670) 评论(0) 推荐(0) 编辑
摘要:reduce和reduceByKey的区别 reduce和reduceByKey是spark中使用地非常频繁的,在字数统计中,可以看到reduceByKey的经典使用。那么reduce和reduceBykey的区别在哪呢?reduce处理数据时有着一对一的特性,而reduceByKey则有着多对一的 阅读全文
posted @ 2020-01-12 00:16 阿布_alone 阅读(11894) 评论(0) 推荐(1) 编辑
摘要:spark的RDD操作 在上一节Spark经典的单词统计中,了解了几个RDD操作,包括flatMap,map,reduceByKey,以及后面简化的方案,countByValue。那么这一节将介绍更多常用的RDD操作,并且为每一种RDD我们分解来看其运作的情况。 spark的flatMap flat 阅读全文
posted @ 2020-01-12 00:15 阿布_alone 阅读(8220) 评论(0) 推荐(1) 编辑
摘要:spark经典之单词统计 准备数据 既然要统计单词我们就需要一个包含一定数量的文本,我们这里选择了英文原著《GoneWithTheWind》(《飘》)的文本来做一个数据统计,看看文章中各个单词出现频次如何。为了便于大家下载文本。可以到GitHub上下载文本以及对应的代码。我将文本放在项目的目录下。 阅读全文
posted @ 2020-01-12 00:00 阿布_alone 阅读(4433) 评论(0) 推荐(0) 编辑
摘要:用Idea搭建我们的Spark环境 用IDEA搭建我们的环境有很多好处,其中最大的好处,就是我们甚至可以在工程当中直接运行、调试我们的代码,在控制台输出我们的结果。或者可以逐行跟踪代码,了解spark运行的机制。因此我们选择了idea,当然Idea不是首选,当然也可以用其他工具。因为我们的Spark 阅读全文
posted @ 2020-01-10 20:05 阿布_alone 阅读(8564) 评论(0) 推荐(1) 编辑
摘要:Spark-Shell的使用 执行scala命令的spark-shell 进入spark的sbin目录,打开键入 ./spark-shell 即可进入spark-shell的目录 spark-shell运行过程从上层来看,每一个spark应用都是由驱动器程序发起集群上的并行操作,在spark-she 阅读全文
posted @ 2020-01-10 20:03 阿布_alone 阅读(1058) 评论(0) 推荐(0) 编辑
摘要:Spark的分布式架构 如我们所知,spark之所以强大,除了强大的数据处理功能,另一个优势就在于良好的分布式架构。举一个例子在Spark实战--寻找5亿次访问中,访问次数最多的人中,我用四个spark节点去尝试寻找5亿次访问中,次数最频繁的ID。这一个过程耗时竟然超过40分钟,对一个程序来说,40 阅读全文
posted @ 2020-01-10 19:59 阿布_alone 阅读(1051) 评论(0) 推荐(0) 编辑

TOP
点击右上角即可分享
微信分享提示