一.分区的概念 分区是RDD内部并行计算的一个计算单元,RDD的数据集在逻辑上被划分为多个分片,每一个分片称为分区,分区的格式决定了并行计算的粒度,而每个分区的数值计算都是在一个任务中进行的,因此任务的个数,也是由RDD(准确来说是作业最后一个RDD)的分区数决定. 二.为什么要进行分区 数据分区,在分布式集群里,网络通信的代价很大,减少网络传输可以极大提升性能.mapreduce框架的性能开支主要在io和网络传输,io因为要大量读写文件,它是不可避免的,但是网络传输是可以避免的,把大文件压缩变…
分区的概念 分区是RDD内部并行计算的一个计算单元,RDD的数据集在逻辑上被划分为多个分片,每一个分片称为分区,分区的格式决定了并行计算的粒度,而每个分区的数值计算都是在一个任务中进行的,因此任务的个数,也是由RDD(准确来说是作业最后一个RDD)的分区数决定. 为什么要进行分区 数据分区,在分布式集群里,网络通信的代价很大,减少网络传输可以极大提升性能.mapreduce框架的性能开支主要在io和网络传输,io因为要大量读写文件,它是不可避免的,但是网络传输是可以避免的,把大文件压缩变小文件,…
之前讲的字符设备驱动程序,只要有一个主设备号,那么次设备号无论是什么都会和同一个 struct file_operations 结构体对应. 而本节课讲的是如何在设备号相同的情况下,让不同的次设备号对应不同的  struct file_operations 结构体. 在本次的驱动程序中,打开/dev/hello0 . /dev/hello1  调用的是hello_open函数.打开/dev/hello2 调用的是 hello2_open 函数.打开其他次设备号的文件,则是打开失败. 驱动程序代码…
Spark学习之路 (三)Spark之RDD   https://www.cnblogs.com/qingyunzong/p/8899715.html 目录 一.RDD的概述 1.1 什么是RDD? 1.2 RDD的属性 1.3 WordCount粗图解RDD 二.RDD的创建方式 2.1 通过读取文件生成的 2.2 通过并行化的方式创建RDD 2.3 其他方式 三.RDD编程API 3.1 Transformation 3.2 Action 3.3 Spark WordCount代码编写 3.…
一.引言 在了解GraphX之前,需要先了解关于通用的分布式图计算框架的两个常见问题:图存储模式和图计算模式. 二.图存储模式 巨型图的存储总体上有边分割和点分割两种存储方式.2013年,GraphLab2.0将其存储方式由边分割变为点分割,在性能上取得重大提升,目前基本上被业界广泛接受并使用. 2.1 边分割(Edge-Cut) 每个顶点都存储一次,但有的边会被打断分到两台机器上.这样做的好处是节省存储空间:坏处是对图进行基于边的计算时,对于一条两个顶点被分到不同机器上的边来说,要跨机器通信传…
系列文章: FastAPI 学习之路(一)fastapi--高性能web开发框架 FastAPI 学习之路(二) FastAPI 学习之路(三) FastAPI 学习之路(四) FastAPI 学习之路(五) FastAPI 学习之路(六)查询参数,字符串的校验 FastAPI 学习之路(七)字符串的校验   FastAPI 学习之路(八)路径参数和数值的校验 FastAPI 学习之路(九)请求体有多个参数如何处理? FastAPI 学习之路(十)请求体的字段 FastAPI 学习之路(十一)请…
上一章我们已经知道了如果启动redis服务器,现在我们来学习一下,以及如何用客户端连接服务器.接下来我们来学习一下查看操作服务器的命令. 服务器命令: 1.info——当前redis服务器信息   server:一般redis服务器信息,包含以下域:         redis_version:redis服务器版本号         redis_git_sha1:Git SHA1         redis_git_dirty:Git dirty flag         os:redis服务器…
前面介绍过二种复制/克隆方法:<Dynamic CRM 2013学习笔记(十四)复制/克隆记录> 和<Dynamic CRM 2013学习笔记(二十五)JS调用web service 实现多条记录复制(克隆)功能>. 第一种方法,是复制单个同类型实体:第二种方法是在list界面,复制多条记录到另一个实体:这二种方法都要coding. 下面介绍一种复制方法,无需代码,就可以在创建时,把另一实体的相关信息克隆出来.   一.需求 现有二个实体,一个RC, 一个RC Change(RC的…
一.图 1.1 基本概念 图是由顶点集合(vertex)及顶点间的关系集合(边edge)组成的一种数据结构. 这里的图并非指代数中的图.图可以对事物以及事物之间的关系建模,图可以用来表示自然发生的连接数据,如:社交网络.互联网web页面 常用的应用有:在地图应用中找到最短路径.基于与他人的相似度图,推荐产品.服务.人际关系或媒体 二.术语 2.1 顶点和边 一般关系图中,事物为顶点,关系为边 2.2 有向图和无向图 在有向图中,一条边的两个顶点一般扮演者不同的角色,比如父子关系.页面A连接向页面…
test test test test test test test test test 图 基本概念 图是由顶点集合(vertex)及顶点间的关系集合(边edge)组成的一种数据结构. 这里的图并非指代数中的图.图可以对事物以及事物之间的关系建模,图可以用来表示自然发生的连接数据,如:社交网络.互联网web页面 常用的应用有:在地图应用中找到最短路径.基于与他人的相似度图,推荐产品.服务.人际关系或媒体 术语 顶点和边 一般关系图中,事物为顶点,关系为边 有向图和无向图 在有向图中,一条边的两…
引言 在了解GraphX之前,需要先了解关于通用的分布式图计算框架的两个常见问题:图存储模式和图计算模式. 图存储模式 巨型图的存储总体上有边分割和点分割两种存储方式.2013年,GraphLab2.0将其存储方式由边分割变为点分割,在性能上取得重大提升,目前基本上被业界广泛接受并使用. 边分割(Edge-Cut) 每个顶点都存储一次,但有的边会被打断分到两台机器上.这样做的好处是节省存储空间:坏处是对图进行基于边的计算时,对于一条两个顶点被分到不同机器上的边来说,要跨机器通信传输数据,内网通信…
官网地址:http://spark.apache.org/docs/latest/streaming-programming-guide.html 一.简介 1.1 概述 Spark Streaming 是Spark核心API的一个扩展,可以实现高吞吐量的.具备容错机制的实时流数据的处理.支持从多种数据源获取数据,包括Kafk.Flume.Twitter.ZeroMQ.Kinesis 以及TCP sockets,从数据源获取数据之后,可以使用诸如map.reduce.join和window等高级…
一.简介 Spark于2009年诞生于加州大学伯克利分校AMPLab,2013年被捐赠给Apache软件基金会,2014年2月成为Apache的顶级项目.相对于MapReduce的批处理计算,Spark可以带来上百倍的性能提升,因此它成为继MapReduce之后,最为广泛使用的分布式计算框架. 二.特点 Apache Spark具有以下特点: 使用先进的DAG调度程序,查询优化器和物理执行引擎,以实现性能上的保证: 多语言支持,目前支持的有Java,Scala,Python和R: 提供了80多个…
一.SparkCore.SparkSQL和SparkStreaming的类似之处 二.SparkStreaming的运行流程 2.1 图解说明 2.2 文字解说 1.我们在集群中的其中一台机器上提交我们的Application Jar,然后就会产生一个Application,开启一个Driver,然后初始化SparkStreaming的程序入口StreamingContext: 2.Master会为这个Application的运行分配资源,在集群中的一台或者多台Worker上面开启Excuter…
一.概述 上一篇主要是介绍了spark启动的一些脚本,这篇主要分析一下Spark源码中提交任务脚本的处理逻辑,从spark-submit一步步深入进去看看任务提交的整体流程,首先看一下整体的流程概要图: 二.源码解读 2.1 spark-submit # -z是检查后面变量是否为空(空则真) shell可以在双引号之内引用变量,单引号不可 #这一步作用是检查SPARK_HOME变量是否为空,为空则执行then后面程序 #source命令: source filename作用在当前bash环境下读…
摘抄自:https://tech.meituan.com/spark-tuning-basic.html 一.概述 在开发完Spark作业之后,就该为作业配置合适的资源了.Spark的资源参数,基本都可以在spark-submit命令中作为参数设置.很多Spark初学者,通常不知道该设置哪些必要的参数,以及如何设置这些参数,最后就只能胡乱设置,甚至压根儿不设置.资源参数设置的不合理,可能会导致没有充分利用集群资源,作业运行会极其缓慢:或者设置的资源过大,队列没有足够的资源来提供,进而导致各种异常…
一.下载Spark安装包 1.从官网下载 http://spark.apache.org/downloads.html 2.从微软的镜像站下载 http://mirrors.hust.edu.cn/apache/ 3.从清华的镜像站下载 https://mirrors.tuna.tsinghua.edu.cn/apache/ 二.安装基础 1.Java8安装成功 2.zookeeper安装成功 3.hadoop2.7.5 HA安装成功 4.Scala安装成功(不安装进程也可以启动) 三.Spar…
一. 数据准备 本文主要介绍Spark SQL的多表连接,需要预先准备测试数据.分别创建员工和部门的Datafame,并注册为临时视图,代码如下: val spark = SparkSession.builder().appName("aggregations").master("local[2]").getOrCreate() val empDF = spark.read.json("/usr/file/json/emp.json") empD…
一.安装Spark 1.1 下载并解压 官方下载地址:http://spark.apache.org/downloads.html ,选择Spark版本和对应的Hadoop版本后再下载: 解压安装包: # tar -zxvf spark-2.2.3-bin-hadoop2.6.tgz 1.2 配置环境变量 # vim /etc/profile 添加环境变量: export SPARK_HOME=/usr/app/spark-2.2.3-bin-hadoop2.6 export PATH=${SP…
一.概述 SparkSQL 的元数据的状态有两种: 1.in_memory,用完了元数据也就丢了 2.hive , 通过hive去保存的,也就是说,hive的元数据存在哪儿,它的元数据也就存在哪儿. 换句话说,SparkSQL的数据仓库在建立在Hive之上实现的.我们要用SparkSQL去构建数据仓库的时候,必须依赖于Hive. 二.Spark-SQL脚本 如果用户直接运行bin/spark-sql命令.会导致我们的元数据有两种状态: 1.in-memory状态: 如果SPARK-HOME/co…
SparkCore.SparkSQL和SparkStreaming的类似之处 SparkStreaming的运行流程 1.我们在集群中的其中一台机器上提交我们的Application Jar,然后就会产生一个Application,开启一个Driver,然后初始化SparkStreaming的程序入口StreamingContext: 2.Master会为这个Application的运行分配资源,在集群中的一台或者多台Worker上面开启Excuter,executer会向Driver注册: 3…
概述 在开发完Spark作业之后,就该为作业配置合适的资源了.Spark的资源参数,基本都可以在spark-submit命令中作为参数设置.很多Spark初学者,通常不知道该设置哪些必要的参数,以及如何设置这些参数,最后就只能胡乱设置,甚至压根儿不设置.资源参数设置的不合理,可能会导致没有充分利用集群资源,作业运行会极其缓慢:或者设置的资源过大,队列没有足够的资源来提供,进而导致各种异常.总之,无论是哪种情况,都会导致Spark作业的运行效率低下,甚至根本无法运行.因此我们必须对Spark作业的…
下载Spark安装包 从官网下载 http://spark.apache.org/downloads.html 从微软的镜像站下载 http://mirrors.hust.edu.cn/apache/ 从清华的镜像站下载 https://mirrors.tuna.tsinghua.edu.cn/apache/ 安装基础 Java8安装成功 zookeeper安装成功 hadoop2.7.5 HA安装成功 Scala安装成功(不安装进程也可以启动) Spark安装过程 上传并解压缩 [hadoop…
序列操作类函数 all() 功能:判断可迭代对象的每个元素是否都为True值注意:If the iterable is empty, return True.(举例3) 回顾:None     ''      ()     {}       []    0 ==>False其余 ==>True 举例: print(all([1, 2, ()])) #执行结果:False print(all([1, 2, 3])) #执行结果:True print(all([])) #执行结果:True any…
概述 SparkSQL 的元数据的状态有两种: 1.in_memory,用完了元数据也就丢了 2.hive , 通过hive去保存的,也就是说,hive的元数据存在哪儿,它的元数据也就存在哪儿. 换句话说,SparkSQL的数据仓库在建立在Hive之上实现的.我们要用SparkSQL去构建数据仓库的时候,必须依赖于Hive. Spark-SQL脚本 如果用户直接运行bin/spark-sql命令.会导致我们的元数据有两种状态: 1.in-memory状态: 如果SPARK-HOME/conf目录…
一.SparkSQL的进化之路 1.0以前: Shark 1.1.x开始: SparkSQL(只是测试性的)  SQL 1.3.x: SparkSQL(正式版本)+Dataframe 1.5.x: SparkSQL 钨丝计划 1.6.x: SparkSQL+DataFrame+DataSet(测试版本) x: SparkSQL+DataFrame+DataSet(正式版本) SparkSQL:还有其他的优化 StructuredStreaming(DataSet) 二.认识SparkSQL 2.…
目录 一.statefulset简介 二.为什么要有headless?? 三.为什么要 有volumeClainTemplate?? 四.statefulSet使用演示 (1)查看statefulset的定义 (2)清单定义StatefulSet (3)删除前期的操作 (4)修改pv的大小为2Gi (5)创建statefulset 五.滚动更新.扩展伸缩.版本升级.修改更新策略 1.滚动更新 2.扩展伸缩 3.更新策略和版本升级 一.statefulset简介     从前面的学习我们知道使用D…
弹性式数据集RDDs 一.RDD简介 RDD全称为Resilient Distributed Datasets,是Spark最基本的数据抽象,它是只读的.分区记录的集合,支持并行操作,可以由外部数据集或其他RDD转换而来,它具有以下特性: 一个RDD由一个或者多个分区(Partitions)组成.对于RDD来说,每个分区会被一个计算任务所处理,用户可以在创建RDD时指定其分区个数,如果没有指定,则默认采用程序所分配到的CPU的核心数: RDD拥有一个用于计算分区的函数compute: RDD会保…
SparkSQL的进化之路 1.0以前: Shark 1.1.x开始: SparkSQL(只是测试性的) SQL 1.3.x: SparkSQL(正式版本)+Dataframe 1.5.x: SparkSQL 钨丝计划 1.6.x: SparkSQL+DataFrame+DataSet(测试版本) 1.x: SparkSQL+DataFrame+DataSet(正式版本) SparkSQL:还有其他的优化 StructuredStreaming(DataSet) 认识SparkSQL 什么是Sp…
目录 一.官网介绍 1.什么是Spark 二.Spark的四大特性 1.高效性 2.易用性 3.通用性 4.兼容性 三.Spark的组成 四.应用场景 正文 回到顶部 一.官网介绍 1.什么是Spark 官网地址:http://spark.apache.org/ Apache Spark™是用于大规模数据处理的统一分析引擎. 从右侧最后一条新闻看,Spark也用于AI人工智能 spark是一个实现快速通用的集群计算平台.它是由加州大学伯克利分校AMP实验室 开发的通用内存并行计算框架,用来构建大…