![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Spark基础与提高
文章平均质量分 67
BackToMeNow
时间记录在2017-01-20............
展开
-
关于spark RESTFUL API 的使用注意事项
Spark 监控信息 API 地址https://spark.apache.org/docs/latest/monitoring.html#rest-api要注意的是,当任务是运行在yarn集群上时,网址不再是localhost:4040,而是active-rm-address:port后面的地址信息页不再是/api/v1,而是要加上代理路径/proxy/application_id/api/v1/…给一个在yarn上获取StreamingBatch信息的使用示例:http://<ac原创 2022-01-07 11:10:08 · 866 阅读 · 0 评论 -
近期在写SQL时得到的一些经验
这阵子写SQL得到的一些经验,有些可能比较实用,有些可能比较笨重,但是总的来说都是减少了资源使用率,加快处理进程1、在登录日志中拿到近n日日活想法:当时的想法很简单啦,就是日期锁定在近n天然后采用row_number或者直接distinct进行去重计算uid即可问题:但是当做的时候发现还是有点小问题,因为给出的模板是要有四列,日期、日活、七日活、三十日活,这四列数据都要围绕其中的日期这一条件进行对应,那怎么把n日活归并到当前日期来呢,也就是说把上周的周活数据放到昨天(T+1)的行中。。实现:其实这里原创 2020-11-17 18:56:15 · 342 阅读 · 1 评论 -
spark通过降低cores数量来提高成功率,错误记录之memory limit
错误信息在执行一条sparkSQL时,出现以下报错,看起来像是函数或者倾斜问题RROR executor.Executor: Exception in task 14.1 in stage 1638.0 (TID 21893)java.lang.RuntimeException: org.apache.hadoop.hive.ql.metadata.HiveException: Error while processing row (tag=0) {"key":{"reducesinkkey0":70原创 2020-10-16 15:27:26 · 357 阅读 · 0 评论 -
HIve修改字段或者增加字段后,Spark访问不生效问题
问题重现(例)当我将数据存储格式改变,或者增加一列的时候,我习惯使用了alter table add …来实现原来的表:ALTER TABLE test ADD COLUMNS (weight STRING) CASCADE加上一列weight字段后(这里使用cascade就是为了同步到hivemetastore),我用spark向表插入一个带有weight字段的表,此时抛出异常Exception in thread "main" org.apache.spark.sql.AnalysisEx原创 2020-05-28 14:59:42 · 2544 阅读 · 7 评论 -
spark.rdd.MapPartitionsRDD cannot be cast to streaming.kafka010.HasOffsetRange
1.问题重现当我想通过redis去维护offset的时候,习惯性的写上了以下程序 inputDS.map(log => log.value()).foreachRDD { rdd => //redis管理offset val ranges: Array[OffsetRange] = rdd.asInstanceOf[HasOffsetRanges].o...原创 2019-12-26 18:57:08 · 1025 阅读 · 3 评论 -
SparkStreaming简单总结一下和几个小案例,整合kafka
1. SparkStreaming是什么SparkStreaming对于Spark核心API的拓展,从而支持对于实时数据流的可拓展,高吞吐量和容错性流处理。数据可以由多个源取得,例如:Kafka,Flume,Twitter,ZeroMQ,Kinesis或者TCP接口,同时可以使用由如map,reduce,join和window这样的高层接口描述的复杂算法进行处理。最终,处理过的数据可以被推送到...原创 2019-11-21 10:29:19 · 685 阅读 · 0 评论 -
SparkSQL 简单总结一下和一个WC案例
SparkSQL总结:一、Spark SQL是Spark用来处理结构化数据的一个模块,它提供了一个编程抽象叫做DataFrame,并且作为分布式SQL查询引擎的作用二、什么是DataFrames??与RDD类似,DataFrames也是一个分布式数据容器;然而DataFrame更像传统数据库的二维表格,除了数据以外,还记录数据的结构信息,即schema;同时与Hive类似,DataFra...原创 2019-11-21 09:51:16 · 195 阅读 · 0 评论 -
SparkCore 简单总结一下
三大数据结构:—RDD:弹性分布式数据集------定义:---------数据集:存数的数据的计算逻辑---------分布式:数据的来源&计算&数据的存储,都可以是分布式的---------弹性:------------1.血缘(依赖关系):spark可以通过特殊的处理方案减少依赖关系(checkpoint)------------2.计算:Spark的计算是基于...原创 2019-11-16 09:01:35 · 188 阅读 · 3 评论 -
Spark第二天的RDD概念
3.25.15 RDD概念(重要)RDD(Resilient Distributed Dataset)叫做弹性分布式数据集,是Spark中最基本的数据抽象,它代表一个不可变、可分区、里面的元素可并行计算的集合。RDD具有数据流模型的特点:自动容错、位置感知性调度和可伸缩性。RDD允许用户在执行多个查询时显式地将工作集缓存在内存中,后续的查询能够重用工作集,这极大地提升了查询速度。在之前学习MR...原创 2019-11-04 21:35:12 · 123 阅读 · 0 评论 -
Spark第一天的小概念
1、什么是RDDRDD(Resilient Distributed Dataset)叫做弹性分布式数据集,是Spark中最基本的数据抽象,它代表一个不可变、可分区、里面的元素可并行计算的集合.Dataset:一个数据集,简单的理解为集合,用于存放数据的Distributed:它的数据分布式存储,并且可以做分布式的计算Resilient:弹性的它表示的是数据可以保存在磁盘,也可以保存在内...原创 2019-11-04 21:02:28 · 153 阅读 · 0 评论 -
Spark32种常用的算子(第三天练习)
官方文档上列举共有32种常见算子,包括Transformation的20种操作和Action的12种操作。(注:以下截图为windows下运行结果)Transformation:1.mapmap的输入变换函数应用于RDD中所有元素,而mapPartitions应用于所有分区。区别于mapPartitions主要在于调用粒度不同。如parallelize(1 to 10, 3),map函数执...转载 2019-11-04 14:32:44 · 349 阅读 · 0 评论 -
浅探scala闭包
维基百科----闭包In programming languages, a closure (also lexical closure or function closure) is a technique for implementing lexically scoped name binding in a language with first-class functions.从概念角度...原创 2019-10-30 21:11:58 · 120 阅读 · 0 评论