spark
文章平均质量分 61
spark
宝哥大数据
大数据、机器学习、深度学习
展开
-
【SQL】Spark SQL 比较上下两条数据,多个字段多个条件,赋值一个结果字段成一个array,
比较上下两条数据,多个字段多个条件,赋值一个结果字段成一个array,原创 2023-10-10 10:03:51 · 289 阅读 · 0 评论 -
spark 读取 tar.gz 文件
一个json文件 压缩 成 tar.gzt.json生成 tar 包将 tar 包 在压缩为 gz。原创 2023-04-05 17:20:40 · 925 阅读 · 0 评论 -
Spark SQL 小文件问题处理
此外,Spark在处理任务时,一个分区分配一个task进行处理,多个分区并行处理,虽然并行处理能够提高处理效率,但不是意味着task数越多越好。如果数据量不大,过多的task运行反而会影响效率。上述只是给出3种常见的解决办法,并且要结合实际用到的技术和场景去具体处理,比如对于HDFS小文件过多,也可以通过生成HAR 文件或者Sequence File来解决。2.容易导致task数过多,如果超过参数spark.driver.maxResultSize的配置(默认1g),会抛出类似如下的异常,影响任务的处理。原创 2023-04-02 10:01:54 · 1085 阅读 · 0 评论 -
SparkSQL 读写 Mysql
参考: https://spark.apache.org/docs/latest/sql-data-sources-jdbc.html。原创 2023-04-02 07:51:39 · 963 阅读 · 0 评论 -
Spark-SQL问题-读取json文件
由于源数据只有一种结构,spark-sql字段推断结构,没有bc。取值不同,data中字段结构不同。有三种json文件, 根据字段。将三种数据同步到ods层。原创 2023-04-01 10:09:16 · 305 阅读 · 0 评论 -
Spark面试题:GC导致的 Shuffle文件拉取失败,报错 Shuffle file not found
Shuffle file not found原创 2022-11-28 08:35:58 · 521 阅读 · 0 评论 -
spark 参数调优
spark 参数调优原创 2022-11-24 17:15:45 · 597 阅读 · 0 评论 -
面试题:Flink反压机制及与Spark Streaming的区别
面试题: flink与 sparkstreamin的背压机制区别对比原创 2022-11-21 13:44:54 · 1102 阅读 · 0 评论 -
Flink中的Checkpoint和Spark中的Checkpoint区别
flink 与 spark 的 checkpoint 区别原创 2022-11-20 15:45:36 · 740 阅读 · 0 评论 -
大数据面试题系列一
spark 面试题原创 2022-11-20 10:03:04 · 661 阅读 · 1 评论 -
Spark: scala.MatchError (of class org.apache.spark.sql.catalyst.expressions.GenericRowWithSchema
spark scala原创 2022-10-15 08:57:10 · 634 阅读 · 0 评论 -
Spark SQL 与 Presto SQL 对比
一、Spark SQL 与 Presto 之间的差异二、三、SparkSQL/PrestoSQL 语法差异 id 分类项 Spark SQL Presto SQL 差异 date_add(start_date, num_days) SELECT date_add('2016-07-30', 1);date_add(unit, value, timestamp) unit = second,minute,hour,day,week,month,quarte原创 2021-08-24 14:28:49 · 4162 阅读 · 1 评论 -
spark 批量读写 ES
1、需要添加elasticsearch-hadoop-version.jar, version对应集群的版本,2、代码# encoding=UTF-8# -*-coding:UTF-8-*-import jsonfrom pyspark.sql import SparkSession# 设置doc_iddef addId(data): return (data['id'], json.dumps(data))if __name__ == '__main__': spa原创 2021-07-09 08:40:08 · 1053 阅读 · 0 评论 -
面试系列五 之 项目涉及技术Spark
一、Spark1.1 Spark有几种部署方式?请分别简要论述1)Local:运行在一台机器上,通常是练手或者测试环境。2)Standalone:构建一个基于Mster+Slaves的资源调度集群,Spark任务提交给Master运行。是Spark自身的一个调度系统。3)Yarn: Spark客户端直接连接Yarn,不需要额外构建Spark集群。有yarn-client和yarn-cluster两种模式,主要区别在于:Driver程序的运行节点。4)Mesos:国内大环境比较少用。原创 2021-06-20 22:33:54 · 177 阅读 · 0 评论 -
Hbase BulkLoad
在使用bulkload加载hfile时候总是报错hbase在hfile目录没有写权限,导致操作失败。Caused by: org.apache.hadoop.security.AccessControlException: Permission denied: user=hbase, access=WRITE, inode="/apps/hbase/data/data/hbaseCach...原创 2018-05-30 00:23:28 · 634 阅读 · 0 评论 -
Spark跨集群写入Hbase
Spark在集群AHbase在集群B参考: https://www.jianshu.com/p/fe1b26f424d3原创 2021-05-15 10:27:31 · 442 阅读 · 0 评论 -
标签开发:统计型标签
一、统计标签介绍 在 人口属性(用户特征)和商业属性(消费特征) 的标签中大部分是规则匹配类型标签和统计类型标签,选取3个统计类型标签开发模型:年龄段标签、消费周期标签和支付方式标签。统计型标签是需要使用 聚合函数计算 后得到标签,比如最近3个月的退单率,用户最常用的支付方式等等,主要开发三个统计类型标签:1.1、统计类型标签与规则匹配类型标签区别规则匹配类型标签,按照字段关联依据业务字段的值,获取对应标签值(tagName)基本上不涉及计算统计类型标签,需要对业务的数据需要计算原创 2021-04-25 09:03:55 · 2386 阅读 · 0 评论 -
SparkSQL自定义外部数据源
文章目录1.1、External DataSource 标签模型编码中需要从HBase表读写数据,编写 HBaseTools 工具类,其中提供 read 和write 方法,传递参数读写表的数据,但是能否实现类似SparkSQL读写MySQL数据库表数据时如下格式:1.1、External DataSource 自从Spark 1.3的发布,Spark SQL开始正式支持外部数据源。Spark SQL开放了一系列接入外部数据源的接口,来让开发者可以实现,接口在 org.apache.spark.原创 2021-04-23 17:50:39 · 1711 阅读 · 0 评论 -
SparkSQL中必须使用CaseClass
object Test1 { def main(args: Array[String]): Unit = { val spark = SparkSession.builder().master("local[*]").appName("test").getOrCreate() import spark.implicits._ val rdd = spark.sparkContext.parallelize(Seq(new Time(1, 2))) val df原创 2021-03-18 10:10:54 · 329 阅读 · 0 评论 -
spark与storm对比 待完善
其实是spark streaming与storm对比spark streaming 是毫秒级别 准实时storm 是 实时原创 2020-04-22 14:31:07 · 258 阅读 · 0 评论 -
Spark ML
Spark ML原创 2019-12-23 15:21:23 · 194 阅读 · 0 评论 -
Spark之WordCount
spark之WordCount, 使用scala, 和java原创 2017-04-29 08:29:47 · 624 阅读 · 0 评论 -
Spark之缓存策略
spark 缓存策略 cache checkpoint 血统 宽窄依赖原创 2017-04-29 09:37:14 · 3441 阅读 · 1 评论 -
Spark之任务流程和角色
一、各个角色解释Application 基于Spark的应用程序,包含了driver程序和 集群上的executorDriver Program 运⾏行main函数并且新建SparkContext的 程序Cluster Manager 在集群上获取资源的外部服务(例如 standalone,Mesos,Yarn )Worker Node 集群中任何可以运⾏行应⽤用代码的节点Executor是在⼀一个原创 2017-04-29 16:38:40 · 1944 阅读 · 1 评论 -
Spark之配置HA
配置Spark的HA一、修改spark-env.sh的配置文件1.1、每个结点添加如下配置#配置HA, 主要配置spark.deploy.recoveryMode指定zookeeper,及zookeeper.url#同时要配置 SPARK_MASTER_IP 为slave1, 为本机hostname或ipexport SPARK_DAEMON_JAVA_OPTS="-Dspark.deploy.原创 2017-05-01 18:35:29 · 4110 阅读 · 0 评论 -
Spark之SparkStreaming案例
一、Spark Streaming的介绍 Spark Streaming是Spark 核心API的扩展,可实现实时数据流的可扩展,高吞吐量,容错流处理。 数据可以从诸如Kafka,Flume,Kinesis或TCP套接字的许多来源中获取,并且可以使用由高级功能(如map,reduce,join和window)表达的复杂算法进行处理。 最后,处理后的数据可以推送到文件系统,数据库和实时仪表板。 事实原创 2017-05-02 08:31:52 · 2775 阅读 · 0 评论 -
Spark之SparkStreaming案例-kafka
sparkStreaming从kafka中拿取数据完整代码package com.chb.spark.streaming;import java.io.Serializable;import java.util.Arrays;import java.util.HashMap;import java.util.HashSet;import java.util.Map;import java.原创 2017-05-03 08:11:17 · 2382 阅读 · 1 评论 -
Spark之SparkStreaming案例-transform
Transform 操作transform操作允许将任意RDD到RDD函数应用于DStream。 它可用于应用任何未在DStream API中公开的RDD操作。 例如,将数据流中的每个批处理与其他数据集相结合的功能不会直接暴露在DStream API中。 但是,您可以轻松地使用transform来执行此操作。 这使得非常强大的可能性。 例如,可以通过将输入数据流与预先计算的垃圾信息(也可以用Spar原创 2017-05-03 13:32:58 · 8992 阅读 · 7 评论 -
Spark之SparkStreaming案例-UpdateStateByKey
UpdateStateByKey操作updateStateByKey操作允许您在使用新的信息持续更新时保持任意状态。 要使用这个,你将不得不做两个步骤。定义状态 - 状态可以是任意数据类型。 定义状态更新功能 - 使用函数指定如何使用上一个状态更新状态,并从输入流中指定新值。 在每个批处理中,Spark将对所有现有的密钥应用状态更新功能,无论它们是否具有批次中的新数据。 如果update函数返原创 2017-05-03 14:40:27 · 4229 阅读 · 1 评论 -
Spark之SparkStreaming案例-Window Operations
Window OperationsSpark Streaming还提供了窗口计算,允许您在数据的滑动窗口上应用转换。 下图说明了这个滑动窗口。 如图所示,每当窗口滑过源DStream时,落在窗口内的源RDD被组合并进行操作以产生窗口DStream的RDD。在这种具体情况下,操作应用于最近3个时间单位的数据,并以2个时间单位滑动。这表明任何窗口操作都需要指定两个参数。 窗口长度 - 窗口的持续时原创 2017-05-03 15:14:40 · 2819 阅读 · 0 评论 -
Spark之SparkStreaming-Input DStreams and Receivers
一、Input DStreams and Receivers Input DStreams是表示从源数据接收的数据流的DStream。 在wordcount案例中,lines是一个Input DStream,因为它表示从netcat的9999端口接收的数据流。 每个输入DStream(文件流除本节稍后讨论)与Receiver(Scala doc,Java doc)对象相关联,该对象从源接收数据并将原创 2017-05-04 15:33:37 · 838 阅读 · 0 评论 -
Speak之RDD介绍
参考: http://www.aboutyun.com/forum.php?mod=viewthread&tid=8371&extra=page%3D17一、RDD 是什么(Resilient Distributed Dataset.)RDD是弹性的分布式集合1、分片列表: 就是能够被切分, 和hadoop 一样, 能够切分的数据才可以进行并行计算 prot...转载 2017-04-27 10:21:09 · 923 阅读 · 2 评论 -
Spark---Broadcast变量&Accumulators
共享变量通常情况下,当向Spark操作(如map,reduce)传递一个函数时,它会在一个远程集群节点上执行,它会使用函数中所有变量的副本。 这些变量被复制到所有的机器上,远程机器上并没有被更新的变量会向驱动程序回传。在任务之间使用通用的,支持读写的共享变量是低效的。 尽管如此,Spark提供了两种有限类型的共享变量,广播变量和累加器一、Broadcast Variables(广播变量)广播变量原创 2017-05-30 08:55:20 · 1362 阅读 · 0 评论 -
Spark的高级排序(二次排序)
spark 二次排序原创 2017-05-30 11:20:56 · 6169 阅读 · 0 评论 -
Spark--TopN
前言为了获取一列值的前五个最值,我们需要对该列数据进行排序, 取前五个,但是sortByKey 是按照(key,value)格式,对key进行排序,所以我们需要将数据构建成(key, value)形式,然后按照前面Spark-二次排序,然后将key剔除, 剩下value为排序好的序列, 使用take获取前五个值。具体实现import org.apache.spark._ob...原创 2017-05-30 16:10:08 · 598 阅读 · 0 评论 -
Spark--分组TopN
为了获取每个分组的topN, 首先要进行分组, 再对每个分组进行排序,获取TopN。测试数据hadoop 23spark 45java 90spark 57spark 90hadoop 99hadoop 76spark 45spark 88spark 89hadoop 45hadoop 90java 78java 701.1、第一步, 将源数据转化为(key, value)原创 2017-05-30 23:09:08 · 2709 阅读 · 1 评论 -
spark的排错和调优
1、错误出现scala版本冲突问题The version of scala library found in the build path of TestSpark (2.10.5) is prior to the one provided by scala IDE (2.11.7). Setting a Scala Installation Choice to match. TestSpar原创 2017-04-29 08:31:36 · 2747 阅读 · 1 评论 -
spark算子---mapPartitions
mapPartitions算子 /** * Return a new RDD by applying a function to each partition of this RDD. * * `preservesPartitioning` indicates whether the input function preserves the partitioner, whi...原创 2018-05-11 12:28:19 · 11989 阅读 · 2 评论 -
spark算子---reduceByKeyAndWindow操作
reduceByKeyAndWindow积累窗口大小的数据, 进行计算, 对该窗口内的数据进行reduceByKey操作原创 2018-05-14 13:42:34 · 2149 阅读 · 0 评论 -
spark pi 原理解析
原理:数学原理,根据随机选择XY为-1到1的点落在半径为1的圆内的概率在一个边长为2的正方形内画个圆,正方形的面积 S1=4,圆的半径 r=1,面积 S2=πr^2=π现在只需要计算出S2就可以知道π,这里取圆心为坐标轴原点,在正方形中不断的随机选点,总共选n个点,计算在圆内的点的数目为count,则 S2=S1*count/n,然后就出来了package com.chb.scala...原创 2018-05-22 09:39:44 · 1576 阅读 · 0 评论