spark
文章平均质量分 71
wjl7813
这个作者很懒,什么都没留下…
展开
-
spark 物理执行之 job、stage、taskset
物理图的作用是什么?问题一: 物理图的意义是什么?物理图解决的其实就是RDD流程生成以后, 如何计算和运行的问题, 也就是如何把 RDD 放在集群中执行的问题问题二: 如果要确定如何运行的问题, 则需要先确定集群中有什么组件 首先集群中物理元件就是一台一台的机器 其次这些机器上跑的守护进程有两种:Master,Worker 每个守护进程其实就代表了一台机器, 代表这台机器的角色, 代表这台机器和外界通信 例如我们常说一台机器是Master,...原创 2020-09-12 09:43:51 · 783 阅读 · 0 评论 -
spark core之 RDD 之间的依赖关系
什么是RDD之间的依赖关系? 什么是关系(依赖关系) ? 从算子视角上来看,splitRDD通过map算子得到了tupleRDD, 所以splitRDD和tupleRDD之间的关系是map 但是仅仅这样说, 会不够全面, 从细节上来看,RDD只是数据和关于数据的计算, 而具体执行这种计算得出结果的是一个神秘的其它组件, 所以, 这两个RDD的关系可以表示为splitRDD的数据通过map操作, 被传入tupleRDD, 这是它们之间更细...原创 2020-09-10 23:24:09 · 297 阅读 · 0 评论 -
sparksession wordcount
package com.wjl7813.spark.core.rdd.transformationsimport org.apache.spark.sql.SparkSessionobject WordCount { def main(args: Array[String]): Unit = { val spark =SparkSession.builder().appName("WordCountexample").master("local[4]").getOrCreate(.原创 2020-09-05 17:19:41 · 389 阅读 · 0 评论 -
基于Spark Shuffle Block的优化
org.apache.spark.storage.DiskStore if(length<minMemoryMapBytes){ valbuf=ByteBuffer.allocate(length.toInt) channel.position(offset) while(buf.remaining()!=0){ if(channel.read(buf)==-1){ thrown...原创 2018-04-18 00:11:45 · 874 阅读 · 0 评论 -
Centos 6 安装superset 及遇到的一些坑
参考文档见官网;地址如下连接https://superset.incubator.apache.org/installation.htmlsudo yum upgrade python-setuptools -y sudo yum install gcc gcc-c++ libffi-devel python-devel python-pip python-wheel openssl-devel ...原创 2018-04-18 01:17:02 · 2085 阅读 · 0 评论 -
idea 中用spark 2.x 实现 不同数据源join (hive join MySQL )
pom文件中 添加如下 相关依赖 <dependency> <groupId>org.apache.spark</groupId> <artifactId>spark-hive_2.11</artifactId> <version>${spark.version}</version>&am原创 2018-04-05 22:37:42 · 579 阅读 · 0 评论 -
idea中 spark 2.x 操作 hive表
pom文件中 添加如下 相关依赖 <dependency> <groupId>org.apache.spark</groupId> <artifactId>spark-hive_2.11</artifactId> <version>${spark.version}</version>&am原创 2018-04-05 22:54:50 · 3905 阅读 · 0 评论 -
idea中 spark 2.x 操作 Oracle 11g 表
由于Oracle授权问题,Maven3不提供Oracle JDBC driver,为了在Maven项目中应用Oracle JDBC driver,必须手动添加到本地仓库。二.手动安装命令如下:(首先电脑安装maven,并配置maven环境 ,windows -cmd/powershell)mvn install:install-file -Dfile=F:\ruanjian\data-integr...原创 2018-04-05 23:23:26 · 615 阅读 · 0 评论 -
idea 中用spark 2.x 实现 不同数据源join (hive join oracle )
pom文件中 添加如下 相关依赖 <dependency> <groupId>org.apache.spark</groupId> <artifactId>spark-hive_2.11</artifactId> <version>${spark.version}</version>&am原创 2018-04-05 23:40:04 · 223 阅读 · 0 评论 -
spark 算子之 reduceByKey与groupByKey的区别
补充:reduceByKey与groupByKey的区别? [优化代码的最基本思路](1)当采用reduceByKeyt时,Spark可以在每个分区移动数据之前将待输出数据与一个共用的key结合。借助下图可以理解在reduceByKey里究竟发生了什么。 注意在数据对被搬移前同一机器上同样的key是怎样被组合的(reduceByKey中的lamdba函数)。然后lamdba函数在每个区上被再次调用...原创 2018-04-30 16:16:04 · 1692 阅读 · 0 评论 -
spark算子
简单来说,Spark 算子大致可以分为以下两类:Transformation 变换/转换算子:这种变换并不触发提交作业,完成作业中间过程处理。Transformation 操作是延迟计算的,也就是说从一个RDD 转换生成另一个 RDD 的转换操作不是马上执行,需要等到有 Action 操作的时候才会真正触发运算。Action 行动算子:这类算子会触发 SparkContext 提交 Job 作业。...原创 2018-04-30 22:50:50 · 260 阅读 · 0 评论 -
spark RDD 之间得依赖关系
RDD中不同的操作会使得不同RDD中的分区会产生不同的依赖。RDD中的依赖关系分为窄依赖(Narrow Dependency)与宽依赖(Wide Dependency),图9-10展示了两种依赖之间的区别。窄依赖表现为一个父RDD的分区对应于一个子RDD的分区,或多个父RDD的分区对应于一个子RDD的分区;比如图9-10(a)中,RDD1是RDD2的父RDD,RDD2是子RDD,RDD1的分区1,...原创 2018-04-30 23:12:44 · 1383 阅读 · 0 评论 -
spark 处理小文件问题
coalesce与repartition 解决小文件问题repartition(numPartitions: Int) 返回numPartitions分区个数的新RDD(或DataFrame)。 可以增加或减少此RDD中的并行性级别,内部使用shuffle来重新分配数据。 如果要减少partition数量,可考虑使用`coalesce`,这可以避免执行shuffle。 ...原创 2018-04-18 00:04:44 · 8135 阅读 · 0 评论 -
Spark on YARN占用资源分析 - Spark 内存模型
Spark的Excutor的Container内存有两大部分组成:堆外内存和Excutor内存A) 堆外内存(spark.yarn.executor.memoryOverhead) 主要用于JVM自身的开销。默认:MAX(executorMemory*0.10,384m)B) Excutor内存(spark.executor.memory) Execution:shuffle、排序、...原创 2018-04-17 11:26:17 · 2446 阅读 · 0 评论 -
Apache Spark 内存管理详解
本文援引自IBM知识库,链接如下https://www.ibm.com/developerworks/cn/analytics/library/ba-cn-apache-spark-memory-management/index.htmlSpark 作为一个基于内存的分布式计算引擎,其内存管理模块在整个系统中扮演着非常重要的角色。理解 Spark 内存管理的基本原理,有助于更好地开发 Spark ...转载 2018-04-16 23:47:33 · 149 阅读 · 0 评论 -
spark 1.6.x 编译安装
编译准备工作[root@node1 ~]# mkdir -p /usr/java/^C[root@node1 ~]# tar xf jdk-7u79-linux-x64.tar.gz -C /usr/java/^C[root@node1 ~]# cat /etc/profile | grep JAVA###JAVA_HOME export JAVA_HOME=/usr/java原创 2018-01-25 01:10:34 · 585 阅读 · 0 评论 -
spark 2.2.0 编译 及遇到的一些坑 以及解决方式
前期准备工作参考 http://blog.csdn.net/wjl7813/article/details/79157148 spark官方文档 编译参考 http://spark.apache.org/docs/2.2.0/building-spark.html tar xf spark-2.2.0 tar xf spark-2.2.0.tgz cd spark-2原创 2018-01-25 01:24:34 · 5575 阅读 · 1 评论 -
spark 1.6.x 操作 MySQL的几种方式
(1)方式一 package com.wjl7813import org.apache.spark.{SparkConf, SparkContext}import org.apache.spark.sql.SQLContextimport java.util.Properties/** * Created by 92421 on 2018/3/2. */object Ope...原创 2018-02-01 22:14:04 · 827 阅读 · 0 评论 -
spark 1.6.x 读取操作 CSV文件
package demo.sparksqlimport org.apache.spark.sql.types.{IntegerType, StringType, StructField, StructType}import org.apache.spark.{SparkConf, SparkContext}/** * Created by joy on 2017/8/25. */...原创 2018-02-11 16:03:19 · 2444 阅读 · 0 评论 -
spark external DataSource API (外部数据源)
1) 外部数据源产生的背景每一个spark的app开始于加载数据结束于保存数据,那这个数据保存到哪里?可以是MySQL可以是Hive等等一些数据存储的地方。用户想要的是方便快速从不同的数据源(json、parquet、rdbms),经过混合处理(json join parquet),再将处理结果以特定的格式(json、parquet)写回到指定的系统(HDFS、S3)上面去。基于这样的需求spa...原创 2018-03-08 23:00:36 · 1602 阅读 · 0 评论 -
spark 2.x 外部数据源综合案例
先在 MySQL中创建 一个数据库 create database spark;use spark;CREATE TABLE DEPT(DEPTNO int(2) PRIMARY KEY,DNAME VARCHAR(14) ,LOC VARCHAR(13) ) ;INSERT INTO DEPT VALUES(10,'ACCOUNTING','NEW YORK');INSERT INTO DEPT...原创 2018-03-08 23:25:04 · 340 阅读 · 0 评论 -
IDEA 中 用spark 1.6.x 实现 不同数据源join (hive join MySQL )
hive 服务端配置 [hadoop@node1 conf]$ pwd/home/hadoop/app/hive-1.1.0-cdh5.7.0/conf[hadoop@node1 conf]$ cat hive-site.xml <?xml version="1.0" encoding="UTF-8" standalone="no"?><?xml-stylesheet type=...原创 2018-03-09 18:04:13 · 822 阅读 · 0 评论 -
spark RDD的相关特性
spark CORE RDD 是spark的基石 https://github.com/apache/spark/blob/master/core/src/main/scala/org/apache/spark/rdd/RDD.scalaresilient distributed dataset(RDD) A Resilient Distributed Dataset (RDD), the bas...原创 2018-03-25 15:47:47 · 397 阅读 · 0 评论 -
spark 通过 phoenix 操作hbase 表
参考文档http://phoenix.apache.org/phoenix_spark.html原创 2018-04-16 00:28:41 · 3266 阅读 · 0 评论 -
Spark on YARN-Cluster和YARN-Client的区别
YARN-Cluster和YARN-Client的区别(1)SparkContext初始化不同,这也导致了Driver所在位置的不同,YarnCluster的Driver是在集群的某一台NM上,但是Yarn-Client就是在driver所在的机器上;(2)而Driver会和Executors进行通信,这也导致了Yarn_cluster在提交Ap...原创 2018-04-16 23:29:37 · 9360 阅读 · 2 评论