
Spark
1024276449
这个作者很懒,什么都没留下…
展开
-
精准一次性消费
定义**精准一次性消费:**消费且仅消费一次数据,保证数据不丢不重;**最少一次消费:**主要是保证数据不丢,可能会产生数据的重复;**最多一次消费:**主要是保证数据不会重复,但有可能丢失数据问题如何产生**丢失数据:**在Kafka消费数据时我们的数据还没有处理完就提交了offect,如果此时我们宕机了在重新消费时就会产生数据丢失;**重复数据:**在Kafka消费数据时我们的数据处理过后此时宕机了因为我们还没有提交offect这时我们重新进行消费的话就会产生我们数据的重复如何解决方案一原创 2021-06-14 16:00:55 · 254 阅读 · 1 评论 -
Spark Shuffle两种ShuffleManager
在Spark的源码中,负责shuffle过程的执行、计算和处理的组件主要就是ShuffleManager,也即shuffle管理器。而随着Spark的版本的发展,ShuffleManager也在不断迭代,变得越来越先进。在Spark 1.2以前,默认的shuffle计算引擎是HashShuffleManager。该ShuffleManager而HashShuffleManager有着一个非常严重的弊端,就是会产生大量的中间磁盘文件,进而由大量的磁盘IO操作影响了性能。因此在Spark 1.2以后的版本中原创 2021-04-27 21:41:16 · 400 阅读 · 0 评论 -
RDD、DataFrame、DataSet
一、三者的共性1)RDD、DataFrame、DataSet全都是spark平台下的分布式弹性数据集,为处理超大型数据提供便利; 2)三者都有惰性机制,在进行创建、转换,如map方法时,不会立即执行,只有在遇到Action如foreach时,三者才会开始遍历运算; 3)三者有许多共同的函数,如filter,排序等;4)在对DataFrame和Dataset进行操作许多操作都需要这个包:import spark.implicits._(在创建好SparkSession对象后尽量直接导入)5)三者都会原创 2021-04-22 20:24:43 · 216 阅读 · 0 评论 -
为什么说Spark比Hadoop快
当被问到为什么Spark比Hadoop快时候,得到的答案往往是:Spark是基于内存的计算,而Hadoop是基于磁盘的计算;Spark是一种内存计算技术。事实上,不光Spark是内存计算,Hadoop其实也是内存计算。Spark和Hadoop的根本差异是多个任务之间的数据通信问题:Spark多个任务之间数据通信是基于内存,而Hadoop是基于磁盘。1、Spark vs MapReduce ≠ 内存 vs 磁盘其实Spark和MapReduce的计算都发生在内存中,区别在于:MapReduce通常需要将原创 2021-04-19 13:58:16 · 821 阅读 · 0 评论 -
Spark
RDD与DataFream使用场景:1)RDDa 你希望可以对你的数据集进行最基本的转换、处理和控制;b 你的数据是非结构化的,比如流媒体或者字符流;c 你想通过函数式编程而不是特定领域内的表达来处理你的数据;d 你不希望像进行列式处理一样定义一个模式,通过名字或字段来处理或访问数据属性;e 你并不在意通过 DataFrame 和 Dataset 进行结构化和半结构化数据处理所能获得的一些优化和性能上的好处;2)DataFream当读取的数据是结构化或半结构化的数据优先使用DataFre原创 2021-04-12 22:14:18 · 67 阅读 · 0 评论