Spark
isOllie
一只菜鸡
展开
-
Spark ETL日志数据到HBase表中,代码优化
(1)创建表的时候 设置表的数据压缩 创建与分区 设置读取表中的数据不缓存 (2)Spark程序的优化 .filter(tuple =>eventTypeList.contains(EventEnum.valueOfAlias(tuple._1)))(ps : eventTypeList是Driver里面,filter是在Executor里面task运行) ...原创 2019-08-06 22:38:12 · 293 阅读 · 0 评论 -
Spark sparkSQL介绍 及 自定义 RDD集合数据转换DataFrame
SparkSQL是什么? SparkSQL 是 Spark 的一个模块 相当于Hive框架(提供SQL,使用户不需要编写MapReduce程序),功能远远大于Hive Hive 2.x版本,底层推荐使用Spark(1) 功能,前世今生 取代Hive框架,提供SQL语句,将SQL语句转成SparkCore程序,提交运行前世今生: hive ->shark(spark o...原创 2019-08-08 21:23:57 · 589 阅读 · 0 评论 -
Spark spark的安装和配置过程
上传文件上传可以使用一些远程工具,也可已使用Linux自带的上传工具sudo yum install -y lrzsz(yum安装Linux自带的上传工具)rz(将文件上传到当前目录下)解压文件tar -zxvf spark-2.2.0-bin-2.6.0-cdh5.7.6.tgz -C …/cdh5.7.6(-x 解压.tar文件,-C 指定解压目录,-v显示压缩 / 解压时的详细过...原创 2019-08-01 20:30:12 · 310 阅读 · 0 评论 -
Spark spark分析数据的过程,案例网站日志统计用户访问时间
第一步、数据的读取(输入) 将要处理的数据读取封装到一个集合RDD中(类别Scala中List列表) val inputRDD = sc.textFile(‘…”)第二步、数据处理(分析) 调用集合RDD中函数(高阶函数)进行处理分析 RDD –>函数 ->另外一个RDD :transformation函数 val outpuRDD = inputRDD.#(#:...原创 2019-08-01 20:14:39 · 1793 阅读 · 0 评论 -
Spark启动报错 WARN conf.HiveConf: HiveConf of name hive.metastore.local does not exist
/opt/cdh5.7.6/hadoop-2.6.0-cdh5.7.6/etc/hadoop在我的这个目录下配置过hive的配置文件,所以Spark认为是要和Hive集成(之前使用Sqoop时配置过这个)解决报错的办法有两个: 方法一:启动MetaStore进程 方法二:将这个软连接删除Spark默认是从HDFS上读取数据的,所以如果HDFS的两个进程没开也会报错...原创 2019-08-01 19:29:37 · 4085 阅读 · 0 评论 -
Spark序列化问题 java.io.NotSerializableException:org.apache.hadoop.hbase.io.ImmutableBytesWritable
java.io.NotSerializableException: org.apache.hadoop.hbase.io.ImmutableBytesWritable文件再经过网络传输应经过序列化,网络传输是二进制传输val sparkConf = new SparkConf() .setAppName("ReadHBaseTableDataSpark") .set...原创 2019-08-05 21:08:23 · 1407 阅读 · 0 评论 -
大数据 ETL日志数据到HBase表中代码思路
思路:1. Spark App 配置: 应用的名字 Master运行的位置 序列化的格式(在后续的代码中 ImmutableBytesWritable 需要)2. 创建SparkContext对象 主要用于读取需要处理的数据,封装在RDD集合中,调度Jobs执行2.1 读取日志 从哪读,路径2.2 解析日志数据2.2.1 map解析每条数据 (1)调度工具,进行...原创 2019-08-06 23:44:08 · 414 阅读 · 0 评论 -
Spark 程序优化所需要关注的几个关键点
spark 设置相关参数问题1:reduce task数目不合适解决方法:需根据实际情况调节默认配置,调整方式是修改参数spark.default.parallelism。通常,reduce数目设置为core数目的2到3倍。数量太大,造成很多小任务,增加启动任务的开销;数目太少,任务运行缓慢。问题2:shuffle磁盘IO时间长解决方法:设置spark.local.dir为多个磁盘,并设置磁盘为I...原创 2019-08-12 22:26:46 · 444 阅读 · 0 评论 -
Spark sparkStreaming 集成 Kafka
sparkStreaming从Kafka读取数据的2种方式官方文档:http://spark.apache.org/docs/2.2.0/streaming-kafka-0-8-integration.html kafka存数据是在磁盘中,所以,使用时间越长文件越大,如果使用API,通过producer往Kafka中写入数据,一个死循环就会产生几个G+的文件方式一:Receiver-ba...原创 2019-08-11 23:07:34 · 176 阅读 · 0 评论 -
Spark sparkStreaming窗口函数的使用及性能优化
窗口函数实现时间段内累加object WindowOrderTotalStreaming { //批次时间,Bat val STREAMING_BATCH_INTERVAL = Seconds(5) val STREAMING_WINDOW_INTERVAL = STREAMING_BATCH_INTERVAL * 3 def main(args: Array[String...原创 2019-08-11 22:44:11 · 884 阅读 · 0 评论 -
Spark sparkStreaming介绍、工作原理及性能优化
Spark Streaming运行架构原创 2019-08-10 23:25:19 · 292 阅读 · 0 评论 -
Spark sparkStreaming流式处理数据并存储到数据库
import java.sql.{Connection, DriverManager}import java.text.SimpleDateFormatimport java.util.Dateimport org.apache.spark.SparkConfimport org.apache.spark.streaming.{Seconds, StreamingContext}ob...原创 2019-08-10 22:58:27 · 1024 阅读 · 0 评论 -
Spark ---------- 大数据框架,spark简介及架构图示
Spark是什么Spark,是一种通用的大数据计算框架,正如传统大数据技术Hadoop的MapReduce、Hive引擎,以及Storm流式实时计算引擎等。Spark包含了大数据领域常见的各种计算框架:比如Spark Core用于离线计算,Spark SQL用于交互式查询,Spark Streaming用于实时流式计算,Spark MLlib用于机器学习,Spark GraphX用于图计...转载 2019-08-04 21:34:06 · 1719 阅读 · 0 评论 -
Spark RDD依赖问题,RDD的高阶函数分类
数据结构RDD(类比于Scala中List)数据存储在内存中,分区存储(partition)对数据的处理:调用集合中高阶函数shuffleRDD之间是有依赖的 宽依赖:产生shuffle,数据会存储在磁盘中 reduceByKey,groupByKey 窄依赖:不会产生shuffle map,filter,union 这里所讲的shuffle和我们的MapRed...原创 2019-08-02 20:10:16 · 211 阅读 · 0 评论 -
Spark spark持久化(persisitent),什么情况下需要持久化
Spark持久化在StorageLevel这个类中,我们能看到Spark是如何持久化的def persist(newLevel: StorageLevel)def unpersist(blocking: Boolean = true)在StorageLevel中定义的变量分别为class StorageLevel private( private var _useDisk: ...原创 2019-08-02 20:09:26 · 794 阅读 · 0 评论 -
Spark Spark性能优化:RDD方法优化
对于RDD中某些函数使用注意(1)能不使用groupByKey函数就不使用,除非不得已redcueByKey(combiner) = groupBy+ map(变量值相加)redcueByKey可以先进行本地聚合操作(2)尽量使用XXPartition函数代替XX函数xx:map/foreach/zipdef foreach(f: T => Unit): Unitf:针对RD...原创 2019-08-02 20:08:57 · 580 阅读 · 0 评论