spark
挖矿的小强
我失败过,但我从未放弃过
展开
-
基于Hbase的Spark Sql示例 一
package enn.cn.dataimportimport java.io.Serializableimport java.util.logging.Loggerimport enn.cn.util.{CommonContent, KerberosUtil}import o原创 2017-10-26 10:20:43 · 1018 阅读 · 0 评论 -
Spark性能优化之数据倾斜调优与shuffle调优
一、数据倾斜发生的原理原理:在进行shuffle的时候,必须将各个节点上相同的key拉取到某个节点上的一个task来进行处理,比如按照key进行聚合或join等操作。此时如果某个key对应的数据量特别大的话,就会发生数据倾斜。数据倾斜只会发生在shuffle过程中。常用的并且可能会触发shuffle操作的算子:distinct、groupByKey、reduceByKey、aggregateB...原创 2018-12-11 18:06:32 · 206 阅读 · 0 评论 -
spark读取HDFS多个文件配置
情况说明:数据以parquet文件形式保存在HDFS上,数据中的某一列包含了日期(例如:2017-12-12)属性,根据日期对数据分区存储,如下图所示: 项目需求: 在项目中想要读取某一个月的数据,肿么办? 解决方法: spark中读取本地文件的方法如下:sparkSession.read.parquet("hdfs://path")1方法一: 要读取多个文件,文件的路径中有一...原创 2018-12-14 09:59:33 · 11530 阅读 · 0 评论 -
Spark常用函数讲解之Action操作+实例
RDD:弹性分布式数据集,是一种特殊集合 ‚ 支持多种来源 ‚ 有容错机制 ‚ 可以被缓存 ‚ 支持并行操作,一个RDD代表一个分区里的数据集RDD有两种操作算子: Transformation(转换):Transformation属于延迟计算,当一个RDD转换成另一个RDD时并没有立即进行转换,仅仅是记住 了数据集的逻辑操作 Ation(执行):触发...原创 2018-12-12 14:48:48 · 583 阅读 · 0 评论 -
spark算子:滑动窗口函数reduceByKeyAndWindow的使用
1.reduceByKeyAndWindow这个算子也是lazy的,它用来计算一个区间里面的数据,如下图:截图自官网,例如每个方块代表5秒钟,上面的虚线框住的是3个窗口就是15秒钟,这里的15秒钟就是窗口的长度,其中虚线到实线移动了2个方块表示10秒钟,这里的10秒钟就表示每隔10秒计算一次窗口长度的数据举个例子: 如下图我是这样理解的:如果这里是使用窗口函数计算wordcount 在第一个窗口(...转载 2018-05-07 09:14:59 · 5630 阅读 · 0 评论 -
第15课:RDD创建内幕彻底解密
内容:1.RDD创建的几个方式2.RDD创建实战3.RDD内幕 第一个RDD:代表了Spark应用程序输入数据的来源通过Transformation来对RDD进行各种算子的转换实现算法RDD的3种基本的创建方式1,使用程序中的集合创建RDD;2,使用本地文件系统创建RDD;3,使用HDS创建RDD其他:4,基于DB创建RDD5,基于NoSQL,例如HBase6,基于S3创建RDD7,基于数据流创建...原创 2018-05-13 17:32:08 · 399 阅读 · 0 评论 -
第14课:spark RDD弹性表现和来源,容错
hadoop 的MapReduce是基于数据集的,位置感知,容错 负载均衡 基于数据集的处理:从物理存储上加载数据,然后操作数据,然后写入物理存储设备; 基于数据集的操作不适应的场景: 1,不适合于大量的迭代 2,交互式查询 重点是:基于数据流的方式 不能够复用曾经的结果或者中间计算结果; spark RDD是基于工作集的 工作流和工作集的共同特点:位置感知,自动容错,负载均衡等。 spark的位...原创 2018-05-06 16:14:37 · 2004 阅读 · 0 评论 -
第13课:spark内核结构
原创 2018-04-21 18:05:16 · 173 阅读 · 0 评论 -
第12课:spark高可用(HA)框架
worker管理资源:内存,cpu只有standby模式的master变成active模式时才能想集群提交任务,master切换过程不会影响程序的运行原因:程序在具体运行之前已经向集群申请过资源,这些资源已经提交给driver了,也就是说已经分配好资源了,这是粗粒度分配,一次性分配资源后不需要再关心资源分配,在运行时让executor和driver自动交互,弊端是如果资源分配太多,任务运行完不会很...原创 2018-04-21 15:49:19 · 212 阅读 · 0 评论 -
第11课:java开发spark,统计单词量
原创 2018-04-21 15:00:39 · 287 阅读 · 1 评论 -
第8课:使用ide开发spark程序
原创 2018-04-06 15:42:06 · 168 阅读 · 0 评论 -
第7课:实战解析spark运行原理和rdd解密
1.spark运行优势善于使用内存,磁盘,迭代式计算是其核心2.现在为什么很多公司都是使用java开发sparka.scala高手较少,java高手较多b.项目对接比较容易c.系统运维方便3.spark只能取代hive的存储引擎,不能取代hive的数仓部分4.数据输出可以把数据输出到hdfs,hive,s3,hbase5.RDD弹性表现:a.rdd分片默认保存在内存,如果数据存储不了,则放到磁盘中...原创 2018-04-06 14:12:48 · 795 阅读 · 0 评论 -
Spark的算子操作列表
Action 操作1、 collect() ,返回值是一个数组,返回dataframe集合所有的行2、 collectAsList() 返回值是一个java类型的数组,返回dataframe集合所有的行3、 count() 返回一个number类型的,返回dataframe集合的行数4、 describe(cols: String*) 返回一个通过数学计算的类表值(count, m原创 2018-03-08 14:42:51 · 2458 阅读 · 0 评论 -
Spark配置log4j日志输出
################################################################################ #①配置根Logger,其语法为: # #log4j.rootLogger = [level],appenderName,appenderName2,... #level是日志记录的优先级,分为OFF,TRACE,DEBU转载 2017-11-22 10:22:50 · 5993 阅读 · 0 评论 -
SparkSQL读取HBase数据,通过自定义外部数据源(hbase的Hive外关联表)
关键字:SparkSQL读取HBase、SparkSQL自定义外部数据源前面文章介绍了SparSQL通过Hive操作HBase表。SparkSQL从1.2开始支持自定义外部数据源(External DataSource),这样就可以通过API接口来实现自己的外部数据源。这里基于Spark1.4.0,简单介绍SparkSQL自定义外部数据源,访问HBase表。在HBase中表原创 2017-10-26 10:44:16 · 2383 阅读 · 0 评论 -
Spark常用函数之键-值RDD转换+实例
摘要:RDD:弹性分布式数据集,是一种特殊集合 ‚ 支持多种来源 ‚ 有容错机制 ‚ 可以被缓存 ‚ 支持并行操作,一个RDD代表一个分区里的数据集RDD有两种操作算子: Transformation(转换):Transformation属于延迟计算,当一个RDD转换成另一个RDD时并没有立即进行转换,仅仅是记住 了数据集的逻辑操作 Ation(执...原创 2019-02-17 18:57:35 · 550 阅读 · 0 评论