![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
spark
zerone-f
这个作者很懒,什么都没留下…
展开
-
学习【Spark SQL内核解析】笔记
目录DataFrame与DataSetSQL执行全过程概览逻辑计划的3个阶段物理计划概述DataFrame与DataSetSQL执行全过程概览逻辑计划的3个阶段物理计划概述不同Join类型...原创 2019-11-26 16:29:50 · 147 阅读 · 0 评论 -
SparkSQL官网Java示例ERROR CodeGenerator: failed to compile问题
Table of Contents问题代码定位问题没完呢?定位问题正确的代码总结问题代码SparkSessionJavaTest.javapackage sparkSQL.apachedemo;import org.apache.log4j.Level;import org.apache.log4j.Logger;import org.apa...原创 2019-11-15 15:08:15 · 2123 阅读 · 0 评论 -
解决HDFS和spark-shell启动的警告:Unable to load native-hadoop library for your platform... using builtin-java
一、问题在启动hadoop和spark-shell的时候会有警告:start-dfs.sh2018-10-03 09:43:31,795 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applic...原创 2018-10-03 10:15:41 · 44403 阅读 · 6 评论 -
maven项目管理
1.实际项目工程是由不同独立的模块构成的,模块与模块这间需要完成协调工作才能够最终完成功能,这就必然涉及模块之间的依赖关系,当以来管理复杂的时候就会非常难于管理,此时maven就是为了管理模块之间的依赖而生的。 2.常见的具体的pom.xml的内容写法:http://search.maven.org 3. <dependency> ...原创 2018-10-04 11:43:22 · 147 阅读 · 0 评论 -
第37课:Task执行内幕与结果处理解密
Task执行原理流程图 1.当Driver中的CoarseGrainedSchedulerBackend给CoarseGrainedExecutorBackend发送LaunchTask之后,CoarseGrainedExecutorBackend在收到LaunchTask消息后,首先会反序列化TaskDescription: val taskDesc = ser.dese...原创 2018-10-04 22:25:06 · 249 阅读 · 0 评论 -
第36课:TaskScheduler内幕天机解密
内容:TaskScheduler与SchedulerBackendFIFO与FAIR两种调度模式Task数据本地性资源分配网上笔记详细笔记:[Spark内核] 第36课:TaskScheduler内幕天机解密:Spark shell案例运行日志详解、TaskScheduler和SchedulerBackend、FIFO与FAIR、Task运行时本地性算法详解等TaskScheduler...原创 2018-10-04 22:36:00 · 207 阅读 · 0 评论 -
第64课:Spark SQL下Parquet的数据切分和压缩内幕详解
内容: 1.SparkSQL下的Parquet数据切分 2.SparkSQL下的Parquet数据压缩一、SparkSQL下的Parquet数据切分 Table partitioning (表分区)是在像 Hive 这样的系统中使用的常见的优化方法. 在 partitioned table (分区表)中, 数据通常存储在不同的目录中, partitioning co...原创 2018-11-06 19:23:59 · 1977 阅读 · 0 评论 -
第68课:Spark SQL通过JDBC操作MySQL
内容: 1.SparkSQL操作关系数据库意义 2.SparkSQL操作关系数据库一、通过SparkSQL操作关系数据库意义 1.SparkSQL可以通过jdbc从传统关系型数据库中读写数据,读取数据后直接生成DataFrame,然后在加上借助于Spark内核的丰富的API来进行各种操作; 2.关于JDBC的驱动jar可以使用在Spark的jars目录中,也...原创 2018-11-09 10:45:55 · 5835 阅读 · 1 评论 -
第69课:Spark SQL通过Hive数据源实战
内容: 1.Spark SQL操作Hive解析 2.SparkSQL操作Hive实战一、Spark SQL操作Hive解析 1.在目前企业级大数据Spark开发的时候,绝大多数是采用Hive作为数据仓库的spark提供Hive的支持功能,Spark通过HiveContex可以操作Hive中的数据,基于HiveContext可以使用sql/hsql两种方式编写SQL语...原创 2018-11-09 16:47:55 · 843 阅读 · 0 评论 -
第70课:Spark SQL内置函数解密与实战
内容: 1.SparkSQL内置函数解析 2.SparkSQL内置函数实战一、SparkSQL内置函数解析 使用Spark SQL中的内置函数对数据进行分析,Spark SQL API不同的是,DataFrame中的内置函数操作的结果是返回一个Column对象,而DataFrame天生就是"A distributed collection of data organ...原创 2018-11-09 22:16:36 · 341 阅读 · 0 评论 -
第76课:Spark SQL实战用户日志的输入导入Hive及SQL计算PV实战
内容: 1.Hive数据导入操作 2.SparkSQL对数据操作实战一、Hive数据导入操作create table userLogs(date String,timestamp bigint,userID bigint,pageID bigint,channel String,action String);load data local inpath '/home/h...原创 2018-11-12 23:21:09 · 250 阅读 · 0 评论 -
第71课:Spark SQL窗口函数解密与实战
内容: 1.SparkSQL窗口函数解析 2.SparkSQL窗口函数实战一、SparkSQL窗口函数解析 1.spark支持两种方式使用窗口函数: 在SQL语句中的支持的函数中添加OVER语句。例如avg(revenue) OVER (…) 使用DataFrame API在支持的函数调用over()方法。例如rank().over(...原创 2018-11-10 09:55:02 · 924 阅读 · 0 评论 -
第72课:Spark SQL UDF和UDAF解密与实战
内容: 1.SparkSQL UDF 2.SparkSQL UDAF一、SparkSQL UDF和SparkSQL UDAF 1.解决SparkSQL内置函数不足问题,自定义内置函数, 2.UDF:User Define Function,用户自定义的函数,函数的输入是一个具体的数据记录,实现上讲就是简单的scala代码 3.UDAF:User De...原创 2018-11-10 13:55:16 · 446 阅读 · 0 评论 -
第65课:Spark SQL下Parquet深入进阶
内容: Spark SQl下的Parquet的序列化 SparkSQL下的Parquet源码解析 SparkSQL的Parquet总结一、Spark SQl下的Parquet的序列化 1.block:parquet层面和row group是一个意思 2.row group:逻辑概念,用于对row进行分区。由数据集中每个column的column ch...原创 2018-11-07 20:45:59 · 499 阅读 · 0 评论 -
第66课:Spark SQL下Parquet中PushDown的实现
内容: 1.SparkSQL下的PushDown的价值 2.SparkSQL下的Parquet下的pushDown的实现一、SparkSQL下的PushDown的价值 1.假设通过DataFrame,df.select(a,b,c).filter(by a).filter(by b).select(c).filter(by c)这样的查询,在optimizer阶段,...原创 2018-11-07 22:52:32 · 352 阅读 · 0 评论 -
林第3课:在IDE下开发第一个Scala程序纯傻瓜式彻底透彻解析
内容: 1.控制结构 2.Scala的基础语法/** * FileName: HelloScala * Author: hadoop * Email: 3165845957@qq.com * Date: 18-11-5 上午9:32 * Description: */object HelloScala { def main...原创 2018-11-05 13:09:43 · 236 阅读 · 0 评论 -
第73课:Spark SQL Thrift Server实战
内容: 1.SparkSQL Thrift解析与测试 2.SparkSQL Thrift Server JDBC编程一、SparkSQL Thrift解析与测试 ThriftServer是一个JDBC/ODBC接口,用户可以通过JDBC/ODBC连接ThriftServer来访问SparkSQL的数据。ThriftServer在启动的时候,会启动了一个sparkSQ...原创 2018-11-11 11:11:46 · 601 阅读 · 0 评论 -
第74课:Hive on Spark大揭秘 完整版
内容: 1.Hive On Spark内幕 2.Hive on Spark实战一、Hive On Spark内幕 1.Hive on spark 是hive 的一个子项目,它是指不通过mapReduce 作为唯一的查询引擎,而是将spark 作为底层的查询引擎。hive on spark 只适用于hive 在可预见的未来,很有可能Hive默认的底层引擎就从MapR...原创 2018-11-11 19:53:09 · 648 阅读 · 0 评论 -
第75课:Spark SQL基于网站Log的综合案例实战
内容: 1.案例概述 2.数据来源和分析一、案例概述 PV:页面访问数 UV:独立访问数二、数据来源和分析package SparkSQL;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.OutputStreamWrit...原创 2018-11-11 22:02:51 · 632 阅读 · 0 评论 -
第67课:Spark SQL下采用Java和Scala实现Join的案例综合实战(巩固前面学习的Spark SQL知识)
内容: 1.SparkSQL案例分析 2.SparkSQL下采用Java和Scala实现案例一、SparkSQL下采用Java和Scala实现案例学生成绩:{"name":"Michael","score":98}{"name":"Andy", "score":95}{"name":"Justin", "原创 2018-11-08 21:59:31 · 1079 阅读 · 0 评论 -
第79课:Spark SQL基于网站Log的综合案例综合代码和实际运行测试
内容: 1.热门论坛板块排名 2.综合代码实战和测试一、热门论坛板块排版创建表: spark.sql("createtable userlogs(date string, timestamp bigint, userID bigint, pageID bigint, channel string, action string) ROW FORMAT DELIMI...原创 2018-11-18 21:56:40 · 180 阅读 · 0 评论 -
25.Spark大型电商项目-用户访问session分析-DAO模式讲解以及TaskDAO开发
目录DAO模式编写业务代码 Task.javaITaskDAO.javaTaskDAOImpl.java本篇文章将介绍DAO模式。DAO模式Data Access Object:数据访问对象首先,你的应用程序,肯定会有业务逻辑的代码。在三层架构的web系统中,业务逻辑的代码,就是在你的Service组件里面;在我们的spark作业中,业务逻辑代码就是在我们的sp...原创 2019-02-27 17:04:18 · 266 阅读 · 0 评论 -
26.Spark大型电商项目-用户访问session分析-工厂模式讲解以及DAOFactory开发
目录工厂模式如果没有工厂模式,可能会出现的问题工厂设计模式测试工厂模式DAOFactory.javaTaskDAOTest.java 本篇文章将介绍工厂模式以及DAOFactory开发。工厂模式如果没有工厂模式,可能会出现的问题ITaskDAO接口和TaskDAOImpl实现类;实现类是可能会更换的;那么,如果你就使用普通的方式来创建DAO,比如ITas...原创 2019-02-27 17:52:21 · 328 阅读 · 0 评论 -
1.Spark大型电商项目-电商用户行为分析简介
目录项目简介项目模块用户访问session分析页面单跳转化率统计热门商品离线统计广告流量实时统计环境搭建项目简介本项目主要用于互联网电商企业中,使用Spark技术开发的大数据统计分析平台,对电商网站的各种用户行为(访问行为、购物行为、广告点击行为等)进行复杂的分析。用统计分析出来的数据,辅助公司中的PM(产品经理)、数据分析师以及管理人员分析现有产品的情况,并根...原创 2019-02-23 10:42:23 · 935 阅读 · 0 评论 -
2.Spark大型电商项目-大数据环境搭建之CentOS 6.4集群
目录实验环境 创建虚拟机安装CentOS设置ip获取动态ip设置静态ip配置hosts使用Xshell连接虚拟机 关闭防火墙 安装jdk 安装三节点虚拟机配置集群Ssh免密码登陆(由于本人的设备局限,并未使用这篇博文的方法搭建Linux集群,将本文转过来是保持博文的完整性。)转载地址:2.环境搭建-CentOS集群搭建本文主要介绍在 Wi...转载 2019-02-23 11:26:38 · 265 阅读 · 0 评论 -
27.Spark大型电商项目-用户访问session分析-JSON数据格式讲解以及fastjson介绍
目录什么是JSON?测试FastjonTest.java本篇文章将介绍JSON格式。什么是JSON?就是一种数据格式;比如说,我们现在规定,有一个txt文本文件,用来存放一个班级的成绩;然后呢,我们规定,这个文本文件里的学生成绩的格式,是第一行,就是一行列头(姓名 班级 年级 科目 成绩),接下来,每一行就是一个学生的成绩。那么,这个文本文件内的这种信息存放的格式,其...原创 2019-02-27 20:36:12 · 252 阅读 · 0 评论 -
3.Spark大型电商项目-大数据环境搭建之-Hadoop(CDH)集群搭建
目录实验环境安装 Hadoop配置文件在另外两台虚拟机上搭建hadoop启动hdfs集群启动yarn集群(由于本人的设备局限,hadoop环境是项目之前就搭建好的,将本文转过来是保持博文的完整性。)转载地址:3.环境搭建-Hadoop(CDH)集群搭建本文主要是在上节CentOS集群基础上搭建Hadoop集群。实验环境 *本实验项目所需软件均可在百...转载 2019-02-23 16:05:26 · 409 阅读 · 0 评论 -
4.Spark大型电商项目-大数据环境搭建之数据仓库hive安装
目录实验环境安装hive安装mysql配置文件测试hive是否安装成功本文主要介绍在之前搭建的集群基础上安装hive的详细过程。实验环境hive版本:hive 3.1.1版本可以从hive官网上下载需要的版本:https://hive.apache.org/downloads.html安装hive本人安装包是下载到了/下载这个文件夹下加压缩到/u...原创 2019-02-23 17:42:08 · 486 阅读 · 0 评论 -
5.Spark大型电商项目-大数据环境搭建之zookeeper集群
目录实验环境安装zookeeper修改配置文件 设置zookeeper节点标识搭建zookeeper集群启动zookeeper集群本文将主要介绍在之前集群环境的基础上安装zookeeper的详细过程。实验环境zookeeper版本:zookeeper-3.4.10可以到官网下载自己需要的版本:https://zookeeper.apache....原创 2019-02-23 20:06:28 · 299 阅读 · 0 评论 -
6.Spark大型电商项目-大数据环境搭建之kafka集群
目录实验环境安装scala安装kafka搭建kafka集群启动kafka集群本文主要介绍安装kafka集群实验环境scala版本:scala-2.11.6kafka版本 : kafka_2.11-2.1.1.tgzkafka可以到官网下载自己需要的版本:http://kafka.apache.org/安装scala在三台机器上分别用一下命令行安装...原创 2019-02-23 20:46:28 · 1891 阅读 · 0 评论 -
7.Spark大型电商项目-大数据环境搭建之flume安装
目录实验环境安装flume配置文件 创建需要的文件夹本文将主要介绍flume安装。实验环境flume版本:apache-flume-1.9.0可以根据自己的需要到官网下载自己需要的版本:http://flume.apache.org/安装flume将flume安装到Master目录/usr/local/下解压sudo tar apache-fl...原创 2019-02-23 21:05:46 · 2332 阅读 · 5 评论 -
8.Spark大型电商项目-大数据环境搭建之Spark集群安装
目录实验环境安装spark配置文件 搭建集群本文将主要介绍spark集群的安装。实验环境Spark版本:spark-2.3.0-bin-without-hadoop.tgz可以访问官网下载自己需要的spark版本:http://spark.apache.org/ 安装spark将spark安装到目录/usr/local/下解压安装包sudo...原创 2019-02-24 16:23:35 · 367 阅读 · 0 评论 -
9.Spark大型电商项目-离线日志采集流程介绍
本篇文章主要是介绍离线日志采集系统。原创 2019-02-24 17:11:44 · 477 阅读 · 1 评论 -
10.Spark大型电商项目-大实时数据采集流程介绍
原创 2019-02-24 20:10:00 · 699 阅读 · 0 评论 -
11.Spark大型电商项目-用户访问session分析-模块介绍
目录主要内容模块的目标对用户访问session进行分析在实际企业项目中的使用架构用户访问session介绍本篇文章主要介绍用户访问session的模块简介主要内容1 对用户访问session进行分析 2 JDBC辅助类封装 3 用户访问session聚合统计 4 按时间比例随机抽取session 5 获取点击、下单和支付次数排名前10的品类 6 获取top...原创 2019-02-24 21:02:27 · 383 阅读 · 0 评论 -
12.Spark大型电商项目-用户访问session分析-基础数据结构以及大数据平台架构介绍
目录使用到的表分析Hive表user_visit_action表user_info表MySQL表task表模块的业务逻辑说明本篇文章将主要介绍用户访问session分析模块中的基础数据结构。使用到的表分析Hive表user_visit_action表date:日期,代表这个用户点击行为是在哪一天发生的 user_id:代表这个点击行为是哪一个用...原创 2019-02-25 10:39:15 · 561 阅读 · 0 评论 -
13.Spark大型电商项目-用户访问session分析-需求分析
目录需求概述需求分析本篇文章主要介绍用户访问session的需求分析。需求概述1、按条件筛选session2、统计出符合条件的session中,访问时长在1s~3s、4s~6s、7s~9s、10s~30s、30s~60s、1m~3m、3m~10m、10m~30m、30m以上各个范围内的session占比;访问步长在1~3、4~6、7~9、10~30、30~60、60以上各个...原创 2019-02-25 11:14:22 · 303 阅读 · 0 评论 -
在spark-shell中解决error: not found: value StructType/StructField/StringType问题
问题描述在Spark-shell中运行官方文档提供的例子时,出现error: not found: value StructType/StructField/StringType的错误解决方案将相关的类导入即可import org.apache.spark.sql.types.{StructType, StructField, StringType, IntegerType...原创 2019-02-25 11:25:47 · 2182 阅读 · 0 评论 -
Spark性能优化第一季
Spark性能优化第一季 Spark性能优化需要思考的基本问题 CPU和Memory 并行度和Task 网络一、Spark性能优化核心基石 1.Spark是采用Master-Slaves的模式进行资源管理和任务执行的管理 a)资源管理:Master-Worker,在一台机器上可以有多个Workers; b)任务执行:Driver-Exec...原创 2019-02-25 11:29:43 · 148 阅读 · 0 评论 -
Spark性能优化第二季
Spark性能优化第二季Task性能优化数据倾斜性能优化网络性能优化一、Task性能优化 1.慢任务的性能优化:可以考虑减少每个Partition处理的数据量,同时建议开启spark.speculation; 2.尽量减少Shuffle,例如我们要尽量减少groupByKey的操作,因为groupByKey要求进行网络拷贝(Shuffle)所有的数据,优先考虑使用reduc...原创 2019-02-25 11:31:06 · 120 阅读 · 0 评论