Spark2
11号车厢
生活就是熬
展开
-
SparkCore:RDD Persistence持久化策略, persist和cache算子
文章目录1、RDD Persistence介绍2、persist()和cache()算子2.1 cache底层源码2.2 StorageLevel2.2 StorageLevel使用2.3 StorageLevel如何选择2.4 RDD.unpersist()移除缓存数据官网:RDD Persistencehttp://spark.apache.org/docs/latest/rdd-prog...原创 2019-08-02 20:02:41 · 493 阅读 · 0 评论 -
SparkSQL外部数据源/Data Sources
文章目录1、Data Sources2、读取Json文件3、读取Parquet数据4、读取Hive中的数据5、读取、保存MySQL中的数据1、Data SourcesSpark SQL支持通过DataFrame接口对各种数据源进行操作。DataFrame可以使用关系转换进行操作,也可以用于创建临时视图。将DataFrame注册为临时视图允许您对其数据运行SQL查询。本节描述使用Spark数据源...原创 2019-08-08 01:05:12 · 195 阅读 · 0 评论 -
SparkSQL内置函数、UDF函数、Catalog
文章目录1、foreachPartition写数据到MySQL1、foreachPartition写数据到MySQL原创 2019-08-08 09:03:52 · 570 阅读 · 0 评论 -
SparkSQL任务提交、执行计划
文章目录原创 2019-08-08 09:30:50 · 957 阅读 · 0 评论 -
SparkSQL之ShuffleManager介绍
文章目录转载 2019-08-08 09:45:03 · 763 阅读 · 0 评论 -
SparkSQL之RDD调优、资源调优、数据倾斜、Shuffle调优
文章目录转载 2019-08-08 09:54:09 · 136 阅读 · 0 评论 -
SparkSQL入门、Hive和Spark整合、SparkSession入口
文章目录1、SparkSQL入门1.1 SparkSQL特性1.2 Spark SQL, DataFrames and Datasets Guide2、Hive和Spark整合2.1 把`hive-site.xml` 复制到spark conf目录2.2 Spark-shell访问Hive库1、SparkSQL入门1.1 SparkSQL特性以前的老版本1.0开始出现SparkSQL,在官...原创 2019-08-06 09:45:33 · 13202 阅读 · 0 评论 -
SparkCore:RDD的Transformations、Actions算子
文章目录官网:RDD Operationshttp://spark.apache.org/docs/2.4.2/rdd-programming-guide.html#rdd-operations原创 2019-08-01 23:30:14 · 655 阅读 · 0 评论 -
SparkCore:IDEA开发Spark程序打包--上传--提交
文章目录1、IDEA的pom.xml文件添加依赖1、IDEA的pom.xml文件添加依赖//将版本好添加到这里,后面引用版本变量即可 <properties> <scala.version>2.11.8</scala.version> <spark.version>2.4.0</spark.version> ...原创 2019-08-02 04:30:33 · 363 阅读 · 0 评论 -
SparkCore:Spark术语和运行架构
文章目录1、Glossary术语2、Components组成官网Deploying–>Overviewhttp://spark.apache.org/docs/2.4.2/cluster-overview.html1、Glossary术语Application User program built on Spark. Consists of a driver program ...原创 2019-08-02 06:45:00 · 336 阅读 · 0 评论 -
SparkSQL之RDD转换DataFrame
文章目录1 、SparkSQL读取Json文件2、RDD转换成DataFrame2.1 用toDF()方式2.2 把原生RDD转换成RDD[Row],再和定义好的StructType匹配1 、SparkSQL读取Json文件先随便造两份Json格式数据。[hadoop@vm01 data]$ vi stu1.json {"id":"1","name":"zhangsan","phone":...原创 2019-08-06 21:57:23 · 565 阅读 · 0 评论 -
SparkStreaming入门介绍和运行架构
文章目录1、概述2、Basic Concepts2.1 Maven 添加依赖2.2 StreamingContext2.3 Discretized Streams (DStreams)2.4 Input DStreams、 Receiver2.5 Transformations on DStreams2.6 Output Operations on DStreams3、运行过程4、官网案例Word...原创 2019-08-11 19:17:44 · 346 阅读 · 0 评论 -
SparkStreaming之foreachRDD写数据到MySQL、连接池、Window/窗口
文章目录1、MySQL连接2、foreachRDD=>foreachPartition=>foreach3、验证4、Window/窗口1、MySQL连接 def getConnection()={ Class.forName("com.mysql.jdbc.Driver") DriverManager.getConnection("jdbc:mysql://192...原创 2019-08-11 19:49:33 · 1058 阅读 · 0 评论 -
SparkStreaming之Transform操作RDD到RDD的转换、结合Kafka0.10.x的使用
1、Transform操作RDD到RDD的转换这里的Transform可不是前面的Transformations算子。transform 操作允许在DStream上应用任意的RDD-to-RDD函数。它可以用于应用DStream API中没有公开的任何RDD操作。例如,DStream API中没有直接公开将数据流中的每个批处理与另一个数据集连接起来的功能。但是,您可以很容易地使用transfo...原创 2019-08-11 20:24:28 · 531 阅读 · 0 评论 -
SparkCore:RDD两种创建方式及一些注意事项
文章目录1 parallelize创建RDD2 Patition和Task关系3 基于External Datasets创建RDD4 关于Spark读取文件的一些注意事项5 支持的其他几种数据格式1 parallelize创建RDD官网:Resilient Distributed Datasets (RDDs)http://spark.apache.org/docs/2.4.2/rdd-pr...原创 2019-07-31 22:55:13 · 455 阅读 · 0 评论 -
SparkCore:map与mapPartition、foreach和foreachPartition通过连接数据库对比结果
源码 // Actions (launch a job to return a value to the user program) /** * Applies a function f to all elements of this RDD. * 作用一个函数到RDD的所有元素。 */ def foreach(f: T => Unit): Unit = wit...原创 2019-08-04 16:25:11 · 692 阅读 · 0 评论 -
Spark2.4.2源码编译集成hadoop-2.6.0-cdh5.7.0
文章目录1、编译环境2、解压并配置环境变量3、配置mvn仓库地址4、配置Spark源码下pom.xml文件5、配置Spark源码下`make-distribution.sh` 文件6、编译Spark1、编译环境首先创建以下目录[root@hadoop001 ~]# lltotal 24drwxr-xr-x 5 root root 4096 Jul 30 15:47 appdrwxr-x...原创 2019-07-31 06:44:13 · 358 阅读 · 0 评论 -
SparkCore:Spark中窄依赖和宽依赖+K-V Pairs
文章目录1、窄依赖和宽依赖2、Key-Value Pairs1、窄依赖和宽依赖Narrow: 窄依赖:一个父RDD的partition只能被子RDD的某个partition使用一次Wide(shuffle):宽依赖是有shuffle的: 一个父RDD的partition被子RDD的partition使用多次特列:join,如果父RDD的partion被子RDD的partion只使用了一次,...转载 2019-08-03 11:02:41 · 135 阅读 · 0 评论 -
SparkCore:Spark on Yarn运行模式和过程、Client模式新增进程、参数配置
文章目录1、Spark on YARN如何配置2、Cluster和Client两种模式2.1 Cluster和Client对比2.2 Cluster模式2.3 Client模式3、测试,查看运行结果3.1 cluster模式提交程序3.2 client模式提交程序,或者通过spark-shell进入client模式4、参数配置,调优4.1 启动方式4.2 spark.yarn.jars参数4.3 ...转载 2019-08-03 11:04:06 · 788 阅读 · 0 评论 -
SparkCore:RDD Shuffle operations、coalesce和repartition算子、reduceByKey和groupByKey对比
文章目录1、Shuffle operations2、Performance Impact3、coalesce和repartition算子4、reduceByKey、groupByKey对比官网:Shuffle operationshttp://spark.apache.org/docs/2.4.2/rdd-programming-guide.html#shuffle-operations1、...转载 2019-08-03 14:09:28 · 475 阅读 · 0 评论 -
Spark概述和特点
文章目录1、产生背景,MR和Spark对比2、Spark特点,官网解读3、Spark版本1、产生背景,MR和Spark对比1)编程 MR有局限性,编程繁杂,只提供了map和reduce方法,而spark是High-Level,提供了80多个算子2)进程级别 MR中maptask和reducetask有很多的进程,进程启动和销毁要花大量的时间。 spark的task基于线程,在每...原创 2019-07-31 06:35:47 · 483 阅读 · 0 评论 -
SparkCore:RDD特性详细解读
文章目录1、RDD源码定义2、RDD五大特性2.1 each RDD is characterized by five main properties:2.2 RDD五大特性和RDD源码的对应关系3、RDD图解1、RDD源码定义RDD源码地址:https://github.com/apache/spark/tree/master/core/src/main/scala/org/apache/...原创 2019-07-31 08:15:23 · 345 阅读 · 0 评论 -
SparkCore:History-Server/监控,查看程序历史运行日志
文章目录1、History-Server介绍2、History-Server配置3、验证4、History-Server参数5、REST API官网:Monitoring and Instrumentationhttp://spark.apache.org/docs/2.4.2/monitoring.html1、History-Server介绍当你执行spark-shell --maste...原创 2019-08-04 08:38:34 · 1037 阅读 · 0 评论 -
SparkCore:Shared Variables、Broadcast Variables
文章目录原创 2019-08-04 09:12:50 · 276 阅读 · 0 评论 -
SparkCore:SparkContext/spark-shell详解,IDEA构建第一个Spark程序
文章目录1、SparkContext详解2、IDEA构建Spark应用程序2.1 安装JDK1.8和Maven3.6.12.2 打开IDEA新建Project2.3 修改pom.xml文件2.3 开发第一个Spark应用程序WordCount3、spark-shell详解1、SparkContext详解打开官网:查看对应版本详细spark信息入口Documentation -->ol...原创 2019-07-31 15:41:28 · 860 阅读 · 0 评论 -
SparkCore:数据序列化,内存调优
文章目录1、Data Serialization1.1 Java和Kryo序列化1.2 Kryo序列化注册1.3 Storage-Level和Kryo序列综合使用对比1.4 SizeEstimator评估2、Memory Tuning2.1 Memory Tuning方面2.2 Memory Management官网:Tuning Sparkhttp://spark.apache.org/do...原创 2019-08-04 15:21:11 · 255 阅读 · 0 评论 -
SparkCore:Spark内存调优二
一、概述Spark 作为一个基于内存的分布式计算引擎,其内存管理模块在整个系统中扮演着非常重要的角色。理解 Spark 内存管理的基本原理,有助于更好地开发 Spark 应用程序和进行性能调优。本文旨在梳理出 Spark 内存管理的脉络,抛砖引玉,引出读者对这个话题的深入探讨。本文中阐述的原理基于 Spark 2.1 版本,阅读本文需要读者有一定的 Spark 和 Java 基础,了解 RDD、...转载 2019-08-04 15:41:22 · 164 阅读 · 0 评论 -
SparkStreaming之Offset管理、胖包和瘦包提交
1、Offset管理Kafka从0.10.x开始Offset偏移量就自从维护在Kafka内部中,看下面代码。注意,我们使用的是earliest从头开始消费,也就是说如果你的SparkStreaming刚开始启动,那么会从Kafka对应的Topic从第一条数据开始消费到当前。下面模拟,第一次消费后DStream停止了,但是Kafka依然在生产数据,再次启动DStream会从什么位置消费。pa...原创 2019-08-11 21:16:59 · 421 阅读 · 0 评论