Spark
文章平均质量分 80
jin6872115
这个作者很懒,什么都没留下…
展开
-
Spark底层执行原理详细解析(深度好文,建议收藏)
Apache Spark是用于大规模数据处理的统一分析引擎,基于内存计算,提高了在大数据环境下数据处理的实时性,同时保证了高容错性和高可伸缩性,允许用户将Spark部署在大量硬件之上,形成集群。Spark源码从1.x的40w行发展到现在的超过100w行,有1400多位大牛贡献了代码。整个Spark框架源码是一个巨大的工程。下面我们一起来看下spark的底层执行原理。...转载 2022-08-17 13:56:50 · 805 阅读 · 0 评论 -
转载spark异地读取hive(亲测有效)
https://segmentfault.com/a/1190000019456175本文适用有入门spark基础的同学,一些最基础知识不再赘述通过阅读本文即可掌握使用Spark跨集群同步Hive数据的技巧!众所周知,业界比较成熟的同步数据工具是Sqoop,它是连接关系型数据库和Hadoop的桥梁比较常用的场景是从MySQL等RDB同步到Hive、Hbase或者将Hive、Hbase的数据导出到MySQL但是在公司项目技术选型时选用了用Spark来从一个集群同步数据到另一个集群下原创 2021-11-16 15:16:22 · 1518 阅读 · 0 评论 -
spark(scala)并行程序
实验多次,选择了可运行的程序方法。应用场景,50张维表数据需要更新到hbase,数据来源mysql,更新频率,无限循环。初识应用串行方式,执行一轮时间大约30分钟,完全不满足需求。需要实现50个程序段并行执行。为什么要把mysql数据写入hbase使用,别问。问了就是需求规定。使用的scala.actors.Actor,maven依赖如下:<!--<dependency>--> <!--<groupId>org.scala-lang&l原创 2021-07-09 16:06:19 · 564 阅读 · 0 评论 -
大文件切分小文件
用户日志数量:5千万,用户数目5000需求:按照用户id将文件拆分成5000个小文件,文件已用户id作为文件名称scala代码如下:可以快速得出结果package cn.cslc.sdwd.log_AHimport org.apache.hadoop.mapred.lib.MultipleTextOutputFormatimport org.apache.log4j.{Level, Logg...原创 2018-06-22 18:43:15 · 2291 阅读 · 0 评论 -
Spark与HBase的整合
前言之前因为仅仅是把HBase当成一个可横向扩展并且具有持久化能力的KV数据库,所以只用在了指标存储上,参看很早之前的一篇文章基于HBase做Storm 实时计算指标存储。这次将HBase用在了用户行为存储上,因为Rowkey的过滤功能也很不错,可以很方便的把按人或者内容的维度过滤出所有的行为。从某种意义上,HBase的是一个有且仅有一个多字段复合索引的存储引擎。虽然我比较推崇实时计算,不过补数据...转载 2018-06-25 19:22:34 · 3571 阅读 · 0 评论 -
Spark整合Hive
2017年10月23日 16:35:03阅读数:154安装hive 解压hive到指定的目录中,一般解压在/usr/local/hivetar -zxvf hive-xxx.tar.gz1配置系统环境 配置hive-env.sh的环境 配置hadoop的家目录,配置hive的家目录,已及配置hive配置文件的目录配置hive-site.xml<property> <nam...转载 2018-06-25 19:32:12 · 6266 阅读 · 0 评论 -
Spark开发代码优化点
案例1:大量终端号码去重统计采用方式val arr = Array((1,Set(1,2)),(2,Set(2,3)),(2,Set(3,4))) sc.parallelize(arr) .reduceByKey(_++_) .foreach(println(_))将终端号放入set中,然后分段去重统计测试:对比全局变量 sc.collec...原创 2018-08-02 09:02:14 · 223 阅读 · 0 评论 -
spark-sql 控制台修改日志级别
spark-sql 控制台修改日志级别这个我找了好久的解决方法修改文件 conf/log4j.properties# Set everything to be logged to the consolelog4j.rootCategory=WARN, consolelog4j.appender.console=org.apache.log4j.ConsoleAppenderlog4j...原创 2018-08-07 16:55:35 · 1679 阅读 · 0 评论 -
spark读写hive的注意点
可以直接使用 val conf = new SparkConf().setMaster("local").setAppName("sdf") val sc = new SparkContext(conf) val hiveContext = new HiveContext(sc) val df = hiveContext.sql("drop table myhive....原创 2018-09-07 16:41:53 · 860 阅读 · 0 评论 -
spark 分区 提交 调优
转自:https://blog.csdn.net/u014384314/article/details/80797385一 spark RDD分区原则在Spark的Rdd中,Rdd默认是分区的。有时候需要重新设置Rdd的分区数量,比如Rdd的分区中,Rdd分区比较多,但是每个Rdd的数据量比较小,则需要重新设置一个比较合理的分区数。或者需要把Rdd的分区数量调大。还有就是通过设置一个R...转载 2018-10-11 17:03:28 · 1975 阅读 · 0 评论 -
spark将数据写入hbase以及从hbase读取数据
1、spark如何利用saveAsHadoopDataset和saveAsNewAPIHadoopDataset将RDD写入hbase2、spark从hbase中读取数据并转化为RDD操作方式为在eclipse本地运行spark连接到远程的hbase。java版本:1.7.0scala版本:2.10.4zookeeper版本:3.4.5(禁用了hbase自带zookeeper,选择自己部署的)ha...原创 2018-05-21 11:41:26 · 8579 阅读 · 2 评论 -
Spark案例分析——不同区域热点商品分析
数据来源有三张表:user_visit_action,描述用户点击信息,存储在hive中模拟数据如下:有效信息date,点击时间,city_id城市,order_product_id用户点击商品的iddate,user_id,session_id,page_id,action,city_id,search_keywords,order_product_id2018/5/1,,,,,010,,10...原创 2018-05-06 17:27:51 · 2007 阅读 · 0 评论 -
Spark性能优化指南学习(四)——spark内存模型及shuffle调优
一、内存模型spark运行使用内存主要包含driver和executor,通过driver-memory和executor-memory进行设置,通过运行机制得知,driver负责提交注册,接受executor反向注册,stage划分和task任务分发等工作,默认内存大小为1G,在使用collect算子时,需要注意oom,因为collect算子将数据拉取到driver,spark的主要作业发生在e...原创 2018-04-27 22:01:29 · 551 阅读 · 0 评论 -
Scala RPC模拟实现集群连接
需求:模式匹配类package day5_rpc_newcase class RegisterMes(var hostname:String,var cpunum:Int, var memorey:Int){ var LastHeartBeatTime:Long = _}case class RegisteredMes(var hostna...原创 2018-04-19 23:13:21 · 233 阅读 · 0 评论 -
Spark学习-周志湖Spark系列
本人本着十分尊重的态度来学习周老师的博文,特此为方便好找,在此做一个目录。方便学习。Scala-IDE Eclipse(Windows)中开发Spark应用程序,在Ubuntu Spark集群上运行Spark-1.4.0集群搭建Spark国内外书籍推荐Spark修炼之道——Spark学习路线、课程大纲Spark修炼之道系列教程预告Spark修炼之道(基础篇)——Linux大数据开发基础:第一节、L...转载 2018-04-20 08:42:12 · 863 阅读 · 0 评论 -
高可用Spark集群配置HistoryServer
为了方便管理日志,,记录spark程序运行结果,需要进行historyServer配置1、常规单节点配置第一步:mv spark-defaults.conf.template spark-defaults.conf在文件里面添加如下内容: spark.eventLog.enabled true spark.eventLog.dir hdfs...原创 2018-04-24 20:34:57 · 628 阅读 · 0 评论 -
Spark性能优化指南学习(一)——开发调优
结合官网以及两篇高质量博客学习Spark性能调优,摘要几点加深理解原文:Spark性能优化指南——基础篇Spark性能优化指南——高级篇官方文档1、Spark开发调优有以下十大原则:<1>尽量避免创建重复的RDD<2>尽可能复用同一个RDD<3>对多次使用的RDD进行持久化以上3条原则基本讲述一个问题,就是对多次使用的RDD进行持久化,防止重复创建,并且尽可能多...原创 2018-04-25 09:35:54 · 340 阅读 · 0 评论 -
Spark性能优化指南学习(二)——spark运行流程及资源调优
结合官网以及两篇高质量博客学习Spark性能调优,摘要几点加深理解原文:Spark性能优化指南——基础篇Spark性能优化指南——高级篇官方文档了解资源调优,需要首先知道spark的运行流程,要了解运行流程需要了解一些相关概念1、Spark相关概念宽依赖和窄依赖rdd具有依赖性在RDD中将依赖分为了两种类型:窄依赖和宽依赖。窄依赖:指父RDD的每个分区都只被子RDD的一个分区所依赖。宽依赖:指父R...原创 2018-04-25 09:43:10 · 304 阅读 · 0 评论 -
高可用spark集群搭建
spark有多种模式:主要有以下几种Standalone Deploy Mode: simplest way to deploy Spark on a private clusterApache MesosHadoop YARNKubernetes下面介绍在高可用(HA)集群上搭建standalone的spark集群搭建前提你已经有了一个高可用的HA集群,如果没有可以参考高可用集群搭建第一步...原创 2018-04-21 10:29:52 · 1777 阅读 · 0 评论 -
Spark-SQL之DataFrame操作大全
原文来自这里Spark SQL中的DataFrame类似于一张关系型数据表。在关系型数据库中对单表或进行的查询操作,在DataFrame中都可以通过调用其API接口来实现。可以参考,Scala提供的DataFrame API。 本文中的代码基于Spark-1.6.2的文档实现。一、DataFrame对象的生成 Spark-SQL可以以其他RDD对象、parquet文件、json文件、hive表...转载 2018-05-03 18:56:47 · 164 阅读 · 0 评论 -
Spark性能优化指南学习(三)——spark数据倾斜调优
结合官网以及两篇高质量博客学习Spark性能调优,摘要几点加深理解原文:Spark性能优化指南——基础篇Spark性能优化指南——高级篇官方文档数据倾斜发生时的现象绝大多数task执行得都非常快,但个别task执行极慢。比如,总共有1000个task,997个task都在1分钟之内执行完了,但是剩余两三个task却要一两个小时。这种情况很常见。原本能够正常执行的Spark作业,某天突然报出OOM(...原创 2018-04-26 21:51:29 · 466 阅读 · 0 评论 -
Spark使用图计算解决用户id重复问题
此问题类似于MapReduce做过寻找共同好友(使用scala)package tagsimport beans.Logsimport org.apache.log4j.{Level, Logger}import org.apache.spark.graphx.{Edge, Graph, VertexId, VertexRDD}import org.apache.spark.rdd.R...原创 2018-05-17 21:41:03 · 1454 阅读 · 3 评论 -
spark内置Transformations函数合集
以官方文档中提供的函数为主,简单介绍其使用,使用scala语言编写,合集20个函数package spark_day2import org.apache.spark.rdd.RDDimport org.apache.spark._object TransformationsTest { val conf = new SparkConf().setMaster("local").set...原创 2018-04-23 23:05:32 · 182 阅读 · 0 评论