摘要: 1、RDD基础 Spark中的RDD就是一个不可变的分布式对象集合。每个RDD都被分为多个分区,这些分区运行在分区的不同节点上。 用户可以通过两种方式创建RDD: (1)读取外部数据集 》 sc.textFile(inputfile) (2)驱动器程序中对一个集合进行并行化 》sc.parallel 阅读全文
posted @ 2018-08-03 22:32 流氓小伙子 阅读(195) 评论(0) 推荐(0)
摘要: 1、Spark中的Python和Scala的Shell (1): Python的Spark Shell 也就是我们常说的PySpark Shell进入我们的Spark目录中然后输入 bin/pyspark (2): Scala中的Shell bin/spark-shell 利用spark进行行数的统 阅读全文
posted @ 2018-08-03 21:35 流氓小伙子 阅读(204) 评论(0) 推荐(0)
摘要: 数据倾斜无非就是大量的相同key被partition分配到一个分区里,造成了’一个人累死,其他人闲死’的情况 解决办法 1.增加jvm内存,这适用于第一种情况(唯一值非常少,极少数值有非常多的记录值(唯一值少于几千)),这种情况下,往往只能通过硬件的手段来... 阅读全文
posted @ 2018-08-03 11:33 流氓小伙子 阅读(4016) 评论(1) 推荐(1)
摘要: Spark数据倾斜 产生原因 首先RDD的逻辑其实时表示一个对象集合。在物理执行期间,RDD会被分为一系列的分区,每个分区都是整个数据集的子集。当spark调度并运行任务的时候,Spark会为每一个分区中的数据创建一个任务。大部分的任务处理的数据量差不多,但是有少部分的任务处理的数据量很大,因而Sp 阅读全文
posted @ 2018-08-03 10:54 流氓小伙子 阅读(4971) 评论(0) 推荐(0)