Spark
文章平均质量分 90
Spark
逐风正在敲代码
这个作者很懒,什么都没留下…
展开
-
Structured Streaming state store分享
Structured Streaming中的查询与面向批处理的Spark SQL中的查询不同。在批处理中,查询是针对有限数量的数据进行的,因此计算结果可以是最终的。但这种情况不适用于流处理,因为其结果是不断增长的。因此,不断增长的结果存储在容错的State Store中。State Store的目的是提供一个可靠的地方,引擎可以从那里读取Structured Streaming聚合的中间结果。因此,即使driver出现故障,Spark也能将状态恢复到故障前的状态。原创 2023-07-25 14:19:20 · 228 阅读 · 1 评论 -
Yarn上Streaming流自动调节资源设计
DAG运行之后,会先进行数据源数据的处理,从Variables中获取到上次消费的offset位置,从kafka中获取当前最后数据的offset,然后消费两个offset之前的数据,数据处理完之后将Variables的offset位置置为当前最后数据的offset。 2.2. Kafka数据处理:从1中获取到的数据源Kafka数据能够获取到具体的offset信息,将startOffset作为消费标识,然后将相同数据源的数据的消费标识组合成。来采集数据输入信息,并将数据输入到指定的Kafka的Topic中。原创 2023-07-25 14:17:48 · 1331 阅读 · 0 评论 -
Spark内存管理再探
Spark内存管理再探之前写过一篇Spark on yarn的内存管理分配,初探,这次再来深入了解它更加底层的一些东西,之前博客的连接 Spark on yarn 内存管理分配初探1. 静态内存管理1.1存储内存分配通过代码可以看出,存储空间可用内存 = 运行时最大内存 x 分配给存储空间的比例 x 安全系数// 默认最小内存为32M,单位为字节private val MIN_MEM...原创 2019-06-14 15:40:53 · 282 阅读 · 0 评论 -
Spark-Core(MapPartitions内存优化)
Spark-Core(MapPartitions/内存优化)1.mapmap是对RDD中的每个一元素作用一个函数或者是算子,简单理解就是对每个元素进行一个f(x)的操作Return a new RDD by applying a function to all elements of this RDD.2.mapPartitionRDD:n Partition :N RecordR...原创 2019-06-05 00:39:53 · 629 阅读 · 0 评论 -
Spark-Core(共享变量)
Spark-Core(共享变量)1.Shared Variables 当在远程集群节点上执行传递给Spark操作(例如map或reduce)的函数时,它将在函数中使用的所有变量的单独副本上工作。这些变量将复制到每台计算机,并且远程计算机上的变量的更新不会传播回驱动程序。支持跨任务的通用,读写共享变量效率低下。但是,Spark确实为两种常见的使用模式提供了两种有限类型的共享变量:广播变量和...原创 2019-06-05 00:39:17 · 183 阅读 · 0 评论 -
Spark on Yarn
Spark on Yarn1.Yarn的产生背景HadoopSpark StandaloneMPI…等分布式的框架集群的资源利用率不够,就需要统一的资源管理和调度。使用Yarn的话,多种计算框架可以共享集群资源,按需分配,这样可以提升集群资源的利用率。2.Yarn架构各自的职责以及重试的机制(挂了之后如何重新执行)RM:NM:AM:Container:3.Yarn的执行...原创 2019-06-05 00:37:06 · 308 阅读 · 0 评论 -
IDEA本地Spark开发读取云主机Hive异常剖析
IDEA本地Spark操作云主机Hive异常剖析1.问题背景1.Hive是搭建在云主机上的伪分布式 公网 IP:47.101.xxx.xxx 内网 IP:172.19.35.154 主机名:hadoop0012.Spark开发在本地的IDEA开发 本地的的hive-site.xml配置如下:<?xml version="1.0"?><?xml-style...原创 2019-05-27 17:35:49 · 475 阅读 · 0 评论 -
Spark on yarn 内存管理分配初探
Spark on yarn 内存管理分配初探简介:按照Spark应用程序中的driver分布方式不同,Spark on YARN有两种模式: yarn-client模式、yarn-cluster模式。当在YARN上运行Spark作业,每个Spark executor作为一个YARN容器运行。Spark可以使得多个Tasks在同一个容器里面运行。Spark版本不同,计算值可能会存在差异1...原创 2019-05-23 14:31:19 · 555 阅读 · 0 评论 -
Spark闭包初探
Spark闭包初探1.什么是闭包闭包的大致作用就是:函数可以访问函数外面的变量,但是函数内对变量的修改,在函数外是不可见的.2.Spark官网对闭包的描述One of the harder things about Spark is understanding the scope and life cycle of variables and methods when executi...原创 2019-05-16 16:01:16 · 431 阅读 · 0 评论 -
Spark-Core_Shuffle详解
Spark-Core_Shuffle详解1.Shuffle operationsCertain operations within Spark trigger an event known as the shuffle. The shuffle is Spark’s mechanism for re-distributing data so that it’s grouped differe...原创 2019-05-15 18:51:12 · 297 阅读 · 0 评论 -
Spark-Core深入理解
Spark-Core深入理解1.Spark Stage理解Each job gets divided into smaller sets of tasks called stages that depend on each other (similar to the map and reduce stages in MapReduce); you’ll see this term used ...原创 2019-05-13 16:24:27 · 355 阅读 · 0 评论 -
IDEA开发Spark应用程序
IDEA开发Spark应用程序1.maven构建项目使用maven构建项目就不多赘述了,网上教程超多,构建的时候选择简单的scala项目,后边的gav就不用多说了2.pom文件的依赖添加scala Spark-core hadoop-client的依赖以及cdh的repository,这点尤其重要. <!--Spark跟Scala版本指定,便于后续版本升级--> <...原创 2019-05-07 18:23:49 · 236 阅读 · 0 评论 -
Spark5-RDD操作
RDD Operations(操作)1.定义1.1 transformations主要做转换操作,可以从一个已经存在的数据集,创建一个新的数据集(RDD是不可变的),例如从RDDA => RDDBtransformation是lazy形式的,比如rdd.map().filter().map().filter(),map()跟filter()都是lazy操作,并不会产生计算,仅仅是记录...原创 2019-05-07 16:33:51 · 296 阅读 · 0 评论 -
Spark4-RDD使用
如何创建RDD1.创建方式1.parallelizing an existing collection in your driver program通过并行化存在的一个集合,将集合转换成RDD2.referencing a dataset in an external storage system, such as a shared filesystem, HDFS, HBase, ...原创 2019-05-06 17:41:14 · 281 阅读 · 0 评论 -
Spark3_SparkContext
SparkContext1.简介1.1.tells Spark how to access a cluster (告诉Spark如何去连接集群)开发过程中使用的运行模式包括local statdalone yarn mesos,设置完之后,spark就知道job作业运行在什么模式之上.1.2.create a SparkConf(key-value pairs)SparkConf包含了A...原创 2019-05-06 17:40:55 · 818 阅读 · 0 评论 -
Spark2_RDD定义
Spark2什么是RDD1.RDD1.1RDD定义让开发者大大降低开发分布式应用程序的门槛以及提高执行效率Resilient Distributed Dataset(RDD) 也就是弹性分布数据集弹性体现在计算之上,代表的是spark可以做到在做分布式计算的时候可以容错,比如说某个节点挂了,或者是某个节点数据丢失了,可以用RDD的机制进行数据修复,这是计算层面得.分布式也就是数据可以...原创 2019-05-06 17:40:39 · 292 阅读 · 0 评论 -
Spark1_简介
Spark11.MapReduce局限性1.1开发繁杂:本身只提供了map/reduce两个算子,并没有groupby跟join这类的聚合操作的算子,如果要实现groupby跟join操作,则是借助于map跟reduce来实现,同时在mapreduce中可能会出现没有reduce仅仅只有map的场景,比如说mapjoin;同时mapreduce的测试环节也很繁杂1.2效率:mapr...原创 2019-05-06 17:40:22 · 372 阅读 · 0 评论 -
Spark2.4.2编译集成cdh5.7.0
Spark2.4.2编译集成cdh5.7.0 在生产环境中经常会对spark源码进行改造或者是编译源码支持不同的版本的hadoop,下面是我在编译spark2.4.2版本源码的详细步骤,其中编译依赖的hadoop为2.6.0-cdh5.7.0版本。1.版本环境JDK最低要求是1.8,maven最低要求是3.5.4,scala最低要求是2.11.122.编译依赖软件安装2.1 JDK...原创 2019-05-04 20:58:41 · 559 阅读 · 0 评论