![](https://img-blog.csdnimg.cn/2019092715111047.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
spark
spark原理剖析
htfenght
这个作者很懒,什么都没留下…
展开
-
Spark基本工作原理
Spark基本工作原理Spark基本工作原理分布式首先我们在本地上编写spark程序,然后必须在某台能够链接spark的机器上提交该spark程序然后spark集群从hadoop:HDFS、Hive上面读取数据,分布在spark的节点上对节点上的数据进行处理,处理后的数据,可能会移动到其他节点中主要基于内存数据都是存到各个节点的内存中所有的计算操作都是针对多个节点上的数据,进...原创 2018-11-29 16:57:03 · 406 阅读 · 0 评论 -
Spark Standalone集群架构
Spark Standalone集群架构SparkStandalone集群集群管理器,cluster manager:Master进程,工作节点:Worker进程搭建了一套Hadoop集群(HDFS+YARN)HDFS:NameNode、DataNode、SecondaryNameNodeYARN:ResourceManager、NodeManagerSpark集群(Spark St...原创 2019-01-10 11:13:43 · 344 阅读 · 0 评论 -
standalone部署细节以及相关参数
北风网spark学习笔记standalone部署细节以及相关参数配置集群中的worker节点如果想将某台机器部署成standalone集群架构中的worker节点(会运行worker daemon进程)那么你就必须在那台机器上部署spark安装包配置conf/slaves文件在conf/salves文件中,哪些机器是作为worker节点的,可以配置你要在哪些机器上启动worker进...原创 2019-01-10 11:18:25 · 1412 阅读 · 0 评论 -
SparkStreaming缓存、持久化机制、Checkpoint机制
缓存、持久化机制与RDD类似,Spark Streaming也可以让开发人员手动控制,将数据流中的数据持久化到内存中。对DStream调用persist()方法,就可以让Spark Streaming自动将该数据流中的所有产生的RDD,都持久化到内存中。如果要对一个DStream多次执行操作,那么,对DStream持久化是非常有用的。因为多次操作,可以共享使用内存中的一份缓存数据。对于基于窗...原创 2019-01-21 15:36:12 · 460 阅读 · 0 评论 -
Spark Streaming 部署、升级和监控应用程序
部署应用程序有一个集群资源管理器,比如standalone模式下的Spark集群,Yarn模式下的Yarn集群等。打包应用程序为一个jar包,课程中一直都有演示。为executor配置充足的内存,因为Receiver接受到的数据,是要存储在Executor的内存中的,所以Executor必须配置足够的内存来保存接受到的数据。要注意的是,如果你要执行窗口长度为10分钟的窗口操作,那么Exec...原创 2019-01-21 15:39:24 · 651 阅读 · 0 评论 -
Spark Streaming容错机制以及事务语义详解
北风网spark学习笔记容错机制的背景要理解Spark Streaming提供的容错机制,先回忆一下Spark RDD的基础容错语义:RDD,Ressilient Distributed Dataset,是不可变的、确定的、可重新计算的、分布式的数据集。每个RDD都会记住确定好的计算操作的血缘关系,(val lines = sc.textFile(hdfs file); val word...原创 2019-01-21 15:44:10 · 328 阅读 · 0 评论 -
Spark Streaming性能调优
北风网spark学习笔记数据接收并行度调优通过网络接收数据时(比如Kafka、Flume),会将数据反序列化,并存储在Spark的内存中。如果数据接收称为系统的瓶颈,那么可以考虑并行化数据接收。每一个输入DStream都会在某个Worker的Executor上启动一个Receiver,该Receiver接收一个数据流。因此可以通过创建多个输入DStream,并且配置它们接收数据源不同的分区...原创 2019-01-21 15:46:09 · 285 阅读 · 0 评论 -
spark 基于ZooKeeper实现HA高可用性以及自动主备切换
北风网spark学习笔记默认情况下,standalone cluster manager对于worker节点的失败是具有容错性的(迄今为止,Spark自身而言对于丢失部分计算工作是有容错性的,它会将丢失的计算工作迁移到其他worker节点上执行)。然而,调度器是依托于master进程来做出调度决策的,这就会造成单点故障:如果master挂掉了,就没法提交新的应用程序了。为了解决这个问题,spar...原创 2019-01-23 10:52:55 · 2045 阅读 · 0 评论 -
Spark 作业监控
北风网spark学习笔记对于Spark作业的监控,Spark给我们提供了很多种方式:Spark Web UI,Spark History Web UI,RESTFUL API以及Metrics。SparkWebUI以及监控实验每提交一个Spark作业,并且启动SparkContext之后,都会启动一个对应的Spark Web UI服务。默认情况下Spark Web UI的访问地址是driv...原创 2019-01-23 10:54:30 · 1311 阅读 · 0 评论 -
Spark术语
Spark术语术语介绍Applicationspark应用程序,说白了,就是用户基于spark api开发的程序,一定是通过一个有main方法的类执行的,比如java开发spark,就是在eclipse中,建立的一个工程Application Jar这个就是把写好的spark工程,打包成一个jar包,其中包括了所有的第三方jar依赖包,比如java中,就用maven...原创 2019-01-10 11:13:01 · 242 阅读 · 0 评论 -
Spark集群概览
Spark集群概览Spark集群架构spark程序每次提交就是一个作业,提交到多个executor进程上去,多个进程并行运行作业第一步一段程序,spark代码,里面肯定是有main方法的,比如说是java/scala,运行这个代码,代码一旦跑起来,一定是运行在一个进程里面的进程会去执行main方法中的代码进程,程序跑起来的进程,通常来说就是jvm进程,java虚拟机进程,就是我们...原创 2019-01-10 11:12:28 · 202 阅读 · 0 评论 -
SparkSQL
SparkSQLSpark 1.0版本开始,推出了Spark SQL。其实最早使用的,都是Hadoop自己的Hive查询引擎;但是后来Spark提供了Shark;再后来Shark被淘汰,推出了Spark SQL。Shark的性能比Hive就要高出一个数量级,而Spark SQL的性能又比Shark高出一个数量级。最早来说,Hive的诞生,主要是因为要让那些不熟悉Java,无法深入进行M...原创 2018-11-29 16:57:34 · 181 阅读 · 0 评论 -
Spark内核架构深度剖析
Spark内核架构深度剖析Spark内核架构Application提交的Spark程序的机器spark-submitspark-submit提交Spark程序Spark-submit使用之前一直使用的那种提交模式提交,叫做Standalone,其实会通过反射的方式,创建和构造一个DriverActor进行Driver启动一个进程执行Application应用程序执行构...原创 2018-11-29 16:58:40 · 152 阅读 · 0 评论 -
SparkStreaming
SparkStreaming大数据实时计算大数据实时计算介绍Spark Streaming,其实就是一种Spark提供的,对于大数据,进行实时计算的一种框架。它的底层,其实,也是基于我们之前讲解的Spark Core的。基本的计算模型,还是基于内存的大数据实时计算模型。而且,它的底层的组件或者叫做概念,其实还是最核心的RDD。只不多,针对实时计算的特点,在RDD之上,进行了一层封装,叫做D...原创 2018-11-29 17:00:38 · 122 阅读 · 0 评论 -
spark实战-移动端app访问流量日志分析
综合案例-移动端app访问流量日志分析移动端app访问流量日志分析背景如果你是在一个互联网公司,然后你的公司现在也在做移动互联网,做了一个手机app,那么你的手机app的用户,每次进行点击,或者是一些搜索操作的时候,都会跟你的远程的后端服务器做一次交互,也就是说,你的手机app,首先会往后端服务器发送一个请求,然后你的后端服务器会给你的手机app返回一个响应,响应的内容可能是图片、或者文字...原创 2018-12-06 16:50:26 · 1535 阅读 · 0 评论 -
Spark作业三种模式提交
北风网spark学习笔记Spark作业三种模式提交local模式提交spark作业spark作业运行集群,有两种部署方式,一种是Spark Standalone集群,还有一种是YARN集群+Spark客户端提交spark作业的两种主要方式,就是Spark Standalone和YARN,这两种方式,分别还分为两种模式,分别是client mode和cluster mode在体验stan...原创 2019-01-10 15:42:45 · 1764 阅读 · 0 评论 -
standalone多作业资源调度
北风网spark学习笔记standalone多作业资源调度standalone集群对于同时提交上来的多个作业,仅仅支持FIFO调度策略,也就是先入先出默认情况下,集群对多个作业同时执行的支持是不好的,没有办法同时执行多个作业,因为先提交上来的每一个作业都会尝试使用集群中所有可用的cpu资源,此时相当于就是只能支持作业串行起来,一个一个运行了如果希望能够支持多作业同时运行,那么就需要调整一...原创 2019-01-10 15:54:40 · 220 阅读 · 0 评论 -
Spark Maven项目打包后找不到主类
项目配置:IDEA + Maven + spark2.2 + scala 2.11.4 + java8问题:使用IDEA,Maven创建java和scala项目,写完代码本地运行没有问题,打包后,java程序没有问题,scala程序总是找不到主类java.lang.ClassNotFoundException: cn.spark.sql.SparkSQLDemo at java...原创 2019-01-24 12:50:52 · 5627 阅读 · 1 评论 -
SparkConf、spark-submit以及spark-defaults.conf
北风网spark学习笔记SparkConf、spark-submit以及spark-defaults.confspark-submit脚本会自动加载conf/spark-defaults.conf文件中的配置属性,并传递给我们的spark应用程序加载默认的配置属性,一大好处就在于,我们不需要在spark-submit脚本中设置所有的属性比如说,默认属性中有一个spark.master属性...原创 2019-01-14 16:05:47 · 8213 阅读 · 0 评论 -
Spark 作业资源调度
北风网spark学习笔记静态资源分配原理spark提供了许多功能用来在集群中同时调度多个作业。首先,回想一下,每个spark作业都会运行自己独立的一批executor进程,此时集群管理器会为我们提供同时调度多个作业的功能。第二,在每个spark作业内部,多个job也可以并行执行,比如说spark-shell就是一个spark application,但是随着我们输入scala rdd acti...原创 2019-01-23 10:58:29 · 668 阅读 · 1 评论