Spark
文章平均质量分 58
大数据老人家i
大数据应用开发
展开
-
Flink原理之TaskSlot And Slot Sharing
文章目录TaskSlot(任务槽)Slot Sharing(槽共享)TaskSlot(任务槽)每个TaskManager是一个JVM的进程,TaskSlot是TaskManager中资源分配的最小单位,每个TaskManager能够处理的最大任务数由TaskSlot决定。Flink将每个进程的内存划分到了slot中,内存被划分到不同的slot有以下好处:TaskManager最多能同时并发执行的子任务(Subtask)可以通过TaskSolt数量来控制每个TaskSolt都独占一个内存空间原创 2021-05-12 10:50:04 · 748 阅读 · 0 评论 -
Flink原理之角色分工
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录前言一、pandas是什么?二、使用步骤1.引入库2.读入数据总结前言提示:这里可以添加本文要记录的大概内容:例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。提示:以下是本篇文章正文内容,下面案例可供参考一、pandas是什么?示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。二、使用步骤1.引入库代码原创 2021-05-11 23:51:44 · 448 阅读 · 1 评论 -
数据结构之队列
文章目录概念特点队列的实现方式概念队列是一种首受限的线性表,它是一种先进先出,后进后出的数据结构。特点只允许在一端进行插入(入队)操作,在另一段进行删除(出队)操作插入的一端叫队尾,删除的一段叫队首队列的实现方式使用顺序表实现队列使用链表实现队列’...原创 2021-04-29 17:51:28 · 117 阅读 · 0 评论 -
StructedStreaming-基于事件时间的窗口计算
时间分类事件时间:事件产生的时间摄入时间:事件到达流系统的时间处理时间:事件被流系统处理的时间注:在实际开发中一般都要基于事件时间进行窗口计算,因为事件时间更能代表事件的本质。例如:2021.10.1 23:59:50的订单,到2021.10.2 00:00:10 才被系统处理,如果不支持事件时间那么会出现统计错误。API基于事件时间进行窗口计算import spark.implicits._val words = ... // streaming DataFrame of原创 2021-05-05 14:29:53 · 585 阅读 · 0 评论 -
StructuredSreaming-operation
文章目录概述分类DSLSQL概述StructuredSreaming它支持数据帧/数据集上的大多数常见操作,我们之前学到的对RDD、对DataFram、对DataSet的操作都可以在StructuredSreaming上使用分类DSLimport org.apache.spark.SparkContextimport org.apache.spark.sql.{DataFrame, Dataset, Row, SparkSession}object wordCount_DSL { def原创 2021-05-03 15:19:29 · 111 阅读 · 0 评论 -
StructuredStreaming-File
文章目录准备工作代码准备工作在项目下创建目录input/persons创建文件:file1.csv、file2.csv、file3.csv、file4.csv添加以下内容:file1.csv:添加以下内容jack1;23;runningjack2;23;runningjack3;23;runningbob1;20;swimmingbob2;20;swimmingtom1;28;footballtom2;28;footballtom3;28;footballtom4;28;fo原创 2021-05-03 15:14:27 · 120 阅读 · 0 评论 -
StructuredStreaming-Rate(测试学习使用)
import org.apache.spark.SparkContextimport org.apache.spark.sql.{DataFrame, Dataset, Row, SparkSession}/** * Author itcast * Desc 演示StructuredStreaming的Source-Rate */object Demo02_Source_Rate { def main(args: Array[String]): Unit = { //TODO 0.原创 2021-05-03 15:08:51 · 188 阅读 · 0 评论 -
StructuredStreaming-Socket
文章目录概述Socket通常用于日常学习时作为数据源使用,需要在linux系统上安装nc端口数据发送工具,并输入:nc -lk 9999向9999端口发送数据。代码import org.apache.spark.SparkContextimport org.apache.spark.sql.{DataFrame, Dataset, Row, SparkSession}object Socket { /** * Author itcast * Desc 演示StructuredS原创 2021-05-02 15:26:58 · 161 阅读 · 0 评论 -
StructedStreaming概述
文章目录SparkStreaming的不足SparkStreaming的不足基于微批处理,延迟高不能做到真正的实时计算DStream基于RDD,不直接支持SQL流批处理的API应用层不统一流用的是DSteam,底层是RDD批用的是DataFram、DataSet、RDD不支持EventTime(事件时间)EventTime:事件真正发生的时间PorcessTime处理时间:事件被流系统处理的时间IngestionTime摄入事件:事件到达流系统的时间列举不适用的场景原创 2021-05-02 14:59:53 · 580 阅读 · 0 评论 -
SparkStreaming之状态更新
文章目录概念案例概念状态更新指的是从socket中接收的数据做WordCount后得到的结果能对历史结果进行累加的一种操作。batch:指的是一个批次的数据updateFn:用于对最新数据与历史数据进行操作的函数案例编写代码监听node1节点中的9999端口,并对端口中拉取到的单词进行wordcountimport org.apache.spark.streaming.dstream.{DStream, ReceiverInputDStream}import org.apache.spar原创 2021-04-27 22:38:47 · 353 阅读 · 0 评论 -
分布式SQL引擎之ThriftServer服务和beeline
文章目录概述启动ThriftServer服务使用Beeline连接(类似Hive中beeline客户端)测试概述Spark Thrift Server将Spark Applicaiton当做一个服务运行,提供Beeline客户端和JDBC方式访问,与Hive中HiveServer2服务一样的。注:Spark Thrift JDBC/ODBC Server 依赖于HiveServer2服务(依赖JAR包),所有要想使用此功能,在编译Spark源码时,支持Hive Thrift。启动Thrift原创 2021-04-27 21:39:16 · 241 阅读 · 0 评论 -
SparkSQL的基本数据存储格式
文章目录Spark中所有组件的数据格式DataFrame和DataSet详解DataFrameDataSetSpark中所有组件的数据格式SparkCore的数据格式:RDDSparkStreaming的数据格式:DStream,底层是RDDSparkSQL的数据格式:DataFrame和DataSet,底层是RDDDataFrame和DataSet详解DataFrameDataFrame = RDD - 泛型 + Schema约束(指定了字段名和类型) + SQL操作 + 优化Dat原创 2021-04-25 21:25:53 · 608 阅读 · 0 评论 -
SparkSQL基本概述
文章目录基本概述SparkSQL与SparkCore数据对比基本概述SparkSQL与SparkCore数据对比SparkCore优缺点:优点:灵活,可以使用底层的API完成很复杂的业务缺点:有一定的学习成本/入门门槛SparkSQL对于一些数据科学家/数据库管理员/DBA,要求他们为了做一个非常简单的查询,写一大堆代码,明显是一件非常麻烦的事情,所以使用常见的SQL很方便。优缺点:优点:入门门槛低,只要会英文单词/简单语法规则就可以写缺点:只能做一些简单的业务,复杂业务实现原创 2021-04-25 20:47:13 · 380 阅读 · 0 评论 -
Spark操作外部数据源之Hbase数据源
文章目录HBase Sink(下沉)概述Spark可以从HBase表中读写(Read/Write)数据,底层采用TableInputFormat和TableOutputFormat方式,与MapReduce与HBase集成完全一样,使用输入格式InputFormat和输出格式OutputFoamt。HBase Sink(下沉)概述将Spark中计算的结果数据下沉到Hbase中注:回 顾 MapReduce 向 HBase 表 中 写 入 数 据 , 使 用 TableReducer转载 2021-04-24 20:33:10 · 469 阅读 · 0 评论 -
Spark Streaming基本概述
文章目录概述SparkStreaming在Spark框架中的位置特点数据处理流程核心计算思想常见流式计算模式Spark Streaming 核心计算思想概述它是构建可伸缩的容错流应用程序的一种Spark流SparkStreaming在Spark框架中的位置SparkStreaming是Spark生态系统当中一个重要的框架,它建立在Spark Core之上(依赖Spark Core)特点使用简单容错性好和spark无缝集成数据处理流程SparkStreaming是一个基于Spa原创 2021-04-21 23:46:01 · 428 阅读 · 0 评论 -
Spark内核原理之standalone集群的Job提交执行流程
文章目录流程图流程图解释Driver启动创建scsc向CM注册申请资源CM找Worker分配资源,启动ExecutorExecutor等待Task提交构建DAGDAG Scheduler划分StageTask Scheduler提交Task/TaskSet注销原创 2021-04-21 20:32:00 · 78 阅读 · 0 评论 -
Spark内核之基本名词
文章目录目标你需要理解每个名词对应的组件或程序是用来干嘛的,有什么意义。基本名词Application:应用,就是程序员编写的Spark代码,如WordCount代码Driver:驱动程序,就是用来执行main方法的JVM进程,里面会执行一些Drive端的代码,如创建SparkContext,设置应用名,设置日志级别…SparkContext:Spark运行时的上下文环境,用来和ClusterManager进行通信的,并进行资源的申请、任务的分配和监控等ClusterManag原创 2021-04-21 18:49:50 · 135 阅读 · 0 评论 -
Spark内核原理之DAG和Stage
文章目录DAGStageDAG概述有一个有向图无法从任意顶点出发经过若干条边回到该点,则这个图是一个有向无环图(DAG图)。Spark的DAG:就是spark任务/程序执行的流程图DAG的开始:从创建RDD开始DAG的结束:到Action结束注:一个Spark程序中有几个Action操作就有几个DAG在Spark中,由于计算会有先后顺序则就会受制于某些任务比另一些任务较早执行的限制那就必须对任务进行排队,形成一个队列的任务集合,消除限制这个队列的任务集合就是DAG图,每一个顶点就原创 2021-04-21 09:26:13 · 508 阅读 · 0 评论 -
Spark内核原理之RDD之间的依赖关系
文章目录宽窄依赖宽依赖窄依赖为什么需要宽窄依赖宽窄依赖ShuffleDependency:宽依赖NarrowDependency:窄依赖宽依赖概述父RDD的一个分区会被子RDD的多个分区所依赖特点一对多:一个父RDD对应多个子RDD应用场景例如:RDD的reduceByke()、join()窄依赖概述父RDD的一个分区只会被子RDD的一个分区所依赖特点一对一:一个父RDD对应一个子RDD应用场景例如RDD的map()、union()、join()注:一个原创 2021-04-20 23:16:43 · 242 阅读 · 0 评论 -
Spark之RDD创建
文章目录RDD中的数据可以来源于2个地方:本地集合或者外部数据源本地集合:自定义的Scala集合外部数据源:文件或文件夹将 本地集合/外部数据源 转化为RDDsc.parallelize(本地集合,分区数)注:若不指定分区数,则该方法会占用 集群/本地机器 全部资源sc.makeRDD(本地集合,分区数)注:该方法底层使用parallelizesc.textFile(本地文件/HDFS文件/文件夹,分区数)注:不要用它读取大量小文件若不指定分区数,读取文件原创 2021-03-22 17:53:06 · 123 阅读 · 0 评论 -
Spark之RDD概念详解
文章目录概述五大属性WordCount中RDD的五大属性概述RDD(A Resilient Distributed Dataset):弹性分布式数据集,是Spark中最基本的数据抽象,用来表示分布式集合,支持分布式操作。诞生背景没有RDD/Dataset之前做 Wordcount(大数据计算)可以使用:原生集合:Java/Scala中的List但是只支持单机版!不支持分布式,如果要做分布式的计算需要做很多额外工作,例如线程/进程通信,容错,自动均衡等,麻烦,所有就诞生了解决这些问题的框架。M原创 2021-03-20 16:35:03 · 413 阅读 · 1 评论 -
Spark-On-Yarn的两种模式(DeployMode)
文章目录Client(了解)Cluster模式(开发使用)Client(了解)Spark的Driver驱动程序运行在提交任务的客户端上。优点因为Driver在客户端,所有在Driver中的程序结果输出可以客户端控制台看到缺点和集群的通信成本高当驱动进程挂掉,需要手动启动Cluster模式(开发使用)Spark的Driver驱动程序,运行在Yarn集群上优点1.因为Driver是交给Yarn管理的,如果失败会有Yarn重启2. 和集群的通信成本低缺原创 2021-03-17 20:07:20 · 738 阅读 · 0 评论 -
Spark环境搭建之Spark-On-Yarn
文章目录原理安装原理注意:在实际开发中, 大数据任务都有统一的资源管理和任务调度工具来进行管理! —Yarn使用的最多。因为它成熟稳定, 支持多种调度策略:FIFO/Capcity/Fair可以使用Yarn调度管理MR/Hive/Spark/Flink安装关闭之前的Spark-Standalone集群/export/server/spark/sbin/stop-all.sh配置Yarn历史服务器并关闭资源检查vim /export/servers/hadoop/etc/ha原创 2021-03-17 11:15:44 · 300 阅读 · 0 评论 -
Spark环境搭建之Standalone-HA
文章目录原理操作测试原理操作启动zk修改配置vim /export/server/spark/conf/spark-env.sh注释:#SPARK_MASTER_HOST=node1增加:SPARK_DAEMON_JAVA_OPTS="-Dspark.deploy.recoveryMode=ZOOKEEPER -Dspark.deploy.zookeeper.url=node1:2181,node2:2181,node3:2181 -Dspark.deploy.zookeeper.d原创 2021-03-16 16:17:45 · 88 阅读 · 0 评论 -
Spark环境搭建之Standalone独立集群
文章目录原理操作测试1.集群启动和停止2.jps查看进程3.http://node01:8080/4.启动spark-shell5.提交WordCount任务6.查看结果7.查看spark任务web-ui原理操作集群规划node01:masterndoe02:worker/slave配置slaves/workers进入配置目录:cd /export/servers/spark/conf修改配置文件名称:mv slaves.template slavesvim slaves原创 2021-03-10 21:07:27 · 199 阅读 · 0 评论 -
Spark基本概述及其环境搭建之本地模式(开箱即用无需配置)
文章目录下载安装包原创 2021-03-10 18:05:27 · 332 阅读 · 0 评论