- 博客(19)
- 资源 (31)
- 收藏
- 关注
原创 Spark 从 Kafka 读数并发问题
经常使用 Apache Spark 从 Kafka 读数的同学肯定会遇到这样的问题:某些 Spark 分区已经处理完数据了,另一部分分区还在处理数据,从而导致这个批次的作业总消耗时间变长;甚至导致 Spark 作业无法及时消费 Kafka 中的数据。为了简便起见,本文讨论的 Spark Direct 方式读取 Kafka 中的数据,这种情况下 Spark RDD 中分区和 Kafka...
2018-12-24 01:05:03 420
原创 大数据项目实战之调优思路
session聚合统计之重构实现思路session聚合统计(统计出访问时长和访问步长,各个区间的session数量占总session数量的比例)的传统思路:1、actionRDD,映射成<sessionid,Row>的格式2、按sessionid聚合,计算出每个session的访问时长和访问步长,生成一个新的RDD3、遍历新生成的RDD,将每个session的访问时长和访问...
2018-12-22 21:06:00 497
原创 大数据项目实战之十五:15.session聚合统计之自定义Accumulator
Accumulator传统的实现方式,有如下缺点:1.在写后面的累加代码的时候,比如找到了一个4s~6s的区间的session,但是在代码里面不小心累加到7s~9s里面去了;2.当后期项目出现一些逻辑上的变更,比如说,session数量的计算逻辑,要改变,就得更改所有Accumulator对应的代码;或者说,又要增加几个范围,那么又要增加多个Accumulator,并且修改对应的累加代码;...
2018-12-21 01:28:44 266
原创 全局topN问题
import org.apache.spark.{SparkConf, SparkContext}object FavTeacher { def main(args: Array[String]): Unit = { val conf = new SparkConf() .setAppName("FavTeacher") .setMaster("local...
2018-12-14 00:25:05 301
原创 hive实现累计报表详解
业务场景:有如下访客每次金额统计表 t_access_times 访客 月份 金额 A 2015-01 5 A 2015-01 15 B 2015-01 ...
2018-12-14 00:13:36 1385 2
原创 Spark性能调优:调节并行度
并行度:其实就是Spark作业中,各个stage的task数量,也就代表了Spark作业的在各个阶段(stage)的并行度。如果不调节并行度,导致并行度过低,会怎么样?假设,现在已经在spark-submit脚本里面,给我们的spark作业分配了足够多的资源,比如50个executor,每个executor有10G内存,每个executor有3个cpu core。基本已经达到了集群或者...
2018-12-09 21:47:09 190
原创 Spark性能调优:如何分配更多资源
性能调优的王道,就是增加和分配更多的资源,性能和速度上的提升,是显而易见的;基本上,在一定范围之内,增加资源与性能的提升,是成正比的;写完了一个复杂的spark作业之后,进行性能调优的时候,首先第一步,就是要来调节最优的资源配置;在这个基础之上,如果说你的spark作业,能够分配的资源达到了你的能力范围的顶端之后,无法再分配更多的资源了,公司资源有限;那么才是考虑去做其他的调优工作。...
2018-12-09 20:53:15 392
原创 RDD分区概述
1.RDD是一个基本的抽象,操作RDD就像操作一个本地集合一样,降低了编程的复杂度RDD里面并不存储真正要计算的数据,你对RDD进行操作,他会在Driver端转换成task,下发到Executor计算分散在多台集群上的数据RDD的算子分为两类,一类是Transformation(lazy),一类是Action(触发任务执行)RDD不存真正要计算的数据,而是记录了RDD的转换关系(调用了什么...
2018-12-07 00:56:55 2097
原创 大数据项目实战之十四:14.按筛选参数对session粒度聚合数据进行过滤
import com.alibaba.fastjson.JSONObject;import com.ibeifeng.sparkproject.conf.ConfigurationManager;import com.ibeifeng.sparkproject.constant.Constants;import com.ibeifeng.sparkproject.dao.ITaskDAO;...
2018-12-06 23:39:20 245
原创 Hadoop中需要哪些配置文件,其作用是什么
1)core-site.xml:(1)fs.defaultFS:hdfs://cluster1(域名),这里的值指的是默认的HDFS路径 。(2)hadoop.tmp.dir:/export/data/hadoop_tmp,这里的路径默认是NameNode、DataNode、secondaryNamenode等存放数据的公共目录。用户也可以自己单独指定这三类节点的目录。(3)ha.zo...
2018-12-04 22:30:47 5853
原创 正常工作的Hadoop集群中Hadoop都分别需要启动哪些进程,它们的作用分别是什么?
1)NameNode它是hadoop中的主服务器,管理文件系统名称空间和对集群中存储的文件的访问,保存有metadate。2)SecondaryNameNode它不是namenode的冗余守护进程,而是提供周期检查点和清理任务。帮助NN合并editslog,减少NN启动时间。3)DataNode它负责管理连接到节点的存储(一个集群中可以有多个节点)。每个存储数据的节点运行一个datanod...
2018-12-04 22:28:57 19322
原创 Spark入门之JavaLambdaWordCount
import org.apache.spark.SparkConf;import org.apache.spark.api.java.JavaPairRDD;import org.apache.spark.api.java.JavaRDD;import org.apache.spark.api.java.JavaSparkContext;import scala.Tuple2;imp...
2018-12-04 15:07:47 248
原创 Spark入门之Java实现WordCount
import org.apache.spark.SparkConf;import org.apache.spark.api.java.JavaPairRDD;import org.apache.spark.api.java.JavaRDD;import org.apache.spark.api.java.JavaSparkContext;import org.apache.spark.a...
2018-12-04 13:45:38 480
原创 Scala入门案例---Wordcount
import org.apache.spark.rdd.RDDimport org.apache.spark.{SparkConf, SparkContext}object ScalaWordCount { def main(args: Array[String]): Unit = { if (args.size != 2) { println( ...
2018-12-04 01:29:03 465
原创 Yarn和Spark的StandAlone调度模式的对比
Yarn和Spark的StandAlone调度模式的对比:MapReduce中的maptask和reducetask都是在YarnChild中进行计算的,YarnChild是一个进程,使用jps命令可以看到1.yarn中的ResourceManager和Spark中的master作用:都是管理子节点,资源调度,接收任务请求2.yarn中的nodemanager和spark中的worker:管...
2018-12-02 00:25:14 2141
原创 大数据项目实战之十三:13.Spark上下文构建以及模拟数据生成
import com.ibeifeng.sparkproject.conf.ConfigurationManager;import com.ibeifeng.sparkproject.constant.Constants;import com.ibeifeng.sparkproject.util.MockData;import org.apache.spark.SparkConf;...
2018-12-01 22:51:19 624
原创 大数据项目实战之十二:12.JSON数据格式讲解以及fastjson介绍
什么是JSON?就是一种数据格式;比如说,我们现在规定,有一个txt文本文件,用来存放一个班级的成绩;这个文本文件里的学生成绩的格式,是第一行,就是一行列头(姓名 班级 年级 科目 成绩),接下来,每一行就是一个学生的成绩。那么,这个文本文件内的这种信息存放的格式,其实就是一种数据格式。学生 班级 年级 科目 成绩张三 一班 大一 高数 90李四 二班 大一 高数 80对应到JSO...
2018-12-01 11:57:18 302
原创 大数据项目实战之十一:11.工厂模式讲解以及DAOFactory开发
如果没有工厂模式,可能会出现的问题:ITaskDAO接口和TaskDAOImpl实现类;实现类是可能会更换的;那么,如果你就使用普通的方式来创建DAO,比如ITaskDAO taskDAO = new TaskDAOImpl(),那么后续,如果你的TaskDAO的实现类变更了,那么你就必须在你的程序中,所有出现过TaskDAOImpl的地方,去更换掉这个实现类。这是非常非常麻烦的。如果说,...
2018-12-01 11:40:48 459
原创 Spark任务执行过程简介
--executor-memory 每一个executor使用的内存大小--total-executor-cores 整个application使用的核数1.提交一个spark程序到spark集群,会产生哪些进程? SparkSubmit(也叫做Driver),主要作用是提交任务,也可以调度任务 Executor 用于执行需要计算的任务 2.在提交spa...
2018-12-01 01:48:41 804
【蓉荣】Flink在数据湖场景下的使用.pdf
2019-12-13
【06 计算平台 巴真】Flink-构建下一代大数据处理引擎.pdf
2019-12-03
面试 大数据 算法解析
2019-05-04
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人