自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

happy-vicky的博客

走出自己的舒适区,你会发现外面比原来还TM安逸!

  • 博客(78)
  • 问答 (1)
  • 收藏
  • 关注

原创 阿里云安装RocketMQ,异常sendDefaultImpl call timeout

阿里云安装RocketMQ,异常sendDefaultImpl call timeout解决办法

2021-12-23 10:33:07 1485

原创 IDEA几个插件

IDEA几个插件.ignore 过滤一些不需要提交的文件http://www.cnblogs.com/suizhikuo/p/9804864.html 修改代码不用重启 JRebel 控制台颜色修改 Grep Console 自动生成set get Lombok mybatis 引导接口和xml文件 Free Mybatis plugin git相关 ...

2021-01-12 09:17:52 187

原创 决策树算法

一.决策树算法引入 决策树算法是一种监督学习算法,利用分类的思想,来根据数据的特征构建数模型,从而达到数据的筛选,打标签,决策的目标1.1 通过简单的案例来说明决策树的基本概念 现在有一批用户购买商品的统计表,其中包含了年龄、收入,是否学生,信誉等字段,以及其购买结果 对数据进行分析后,我们可以构造出如下的树:以上这个例子,我们依次通过年龄、收入、是否学生、...

2020-03-25 17:05:16 6154

原创 mysql-行转列

现要求将图1的数据,使用sql查询后,得到图2的结果图1:图2:构造数据:CREATE TABLE `t_score` ( `id` int(11) NOT NULL, `name` varchar(255) DEFAULT NULL, `course` varchar(255) DEFAULT NULL, `score` int(10) DEFAULT ...

2020-01-22 16:24:17 233

原创 Hive-开窗函数的使用案例

题目一 :表t_user_event结构及数据如下:请写出sql (hive sql)语句得到:目标字段DIFF_TS: 是同一用户id之间相邻EVENT_TS 时间间隔GROUP_ID: 同一用户id,相邻时间间隔>50的时候,分成一个小组构建数据样本:create table t_order(oid int ,uid int ,otim...

2020-01-07 11:18:17 609

原创 Kudu(三)- 操作相关

1.使用 Scala 操作 Kudu未完待续....

2019-10-29 10:06:38 146

原创 Kudu(二)- 安装(二) - 软件安装

目录1.创建本地 Yum 仓库1.1 下载CDH的安装包1.2 创建本地Yum仓库服务器2. 安装 Zookeeper3.安装 Hadoop3.1 安装Hadoop软件包3.2 配置HDFS3.3 配置Yarn和MapReduce4.安装 MySQL4.1 安装4.2 启动和配置5. 安装 Hive5.1 安装Hive软...

2019-10-29 10:05:01 598

原创 Kudu(二)- 安装(一) - 准备初始环境

目录1.初始化环境1.1 安装虚拟机1.2 安装CentOS 6.91.3 集群规划1.4 配置时间同步服务1.5 配置主机名1.6 关闭SELinux1.7 关闭防火墙1.8 配置三台节点的免密登录1.9 安装JDK1.10 重启导读因为Kudu经常和Impala配合使用, 所以我们也要安装Impala但是又因为Impa...

2019-10-29 09:44:17 417

原创 Kudu(一)-- 什么是Kudu

目录1.Kudu 的应用场景1.1 现代大数据的应用场景1.1.1 项目特点1.1.2 对存储层的要求1.2 使用Spark Streaming配合HDFS存储1.3 HDFS+compaction1.4 方案三:HBase+HDFS1.5 Kudu1.6 总结2.Kudu 和其它存储工具的对比2.1 OLAP和OLTP2.2 ...

2019-10-28 16:30:49 2906

原创 Spark(五)--Structured Streaming(六) - 有状态算子

目录6. 有状态算子6.1 状态6.2 常规算子6.2.1 案例6.2.2 总结6.3 分组算子6.3.1 案例6.3.2 总结6. 有状态算子目标了解常见的Structured Streaming算子, 能够完成常见的流式计算需求步骤 常规算子 分组算子 输出模式 6.1 状态6.1.1 无状态算子...

2019-10-22 11:25:30 886

原创 Spark(五)--Structured Streaming(五) - Sink

目录5.1 HDFS Sink5.1.1 场景和需求5.1.2 代码实现5.2 Kafka Sink5.2.1 场景5.2.2 代码5.3 Foreach Writer5.3.1 需求5.3.2 代码5.4 自定义 Sink5.4.1 Spark 加载 Sink 流程分析5.4.2 自定义 Sink5.5 Tigger5.5.1 微批次处理...

2019-10-22 11:15:45 1319 1

原创 Spark(五)--Structured Streaming(四) - Source - Kafka

5. 从 Kafka 中读取数据目标通过本章节的学习, 便可以理解流式系统和队列间的关系, 同时能够编写代码从Kafka以流的方式读取数据步骤 Kafka回顾 Structured Streaming整合Kafka 读取JSON格式的内容 读取多个Topic的数据 5.1 Kafka 的场景和结构目标通过这一个小...

2019-10-22 10:10:08 554 1

原创 Spark(五)--Structured Streaming(四) - Source - HDFS

目录4. 从 HDFS 中读取数据4.1 案例结构介绍4.1.1 场景介绍4.1.2 案例介绍4.1.3 实现步骤4.1.4 难点和易错点4.1.5 总结4.2 产生小文件并推送到 HDFS4.3 流式计算统计 HDFS 上的小文件4.4 运行和流程总结4.4.1 运行 Python 程序4.4.2 运行 Spark 程序4.5 总结4. 从...

2019-10-22 09:36:49 598 1

原创 Spark(五)--Structured Streaming(三) - 体系和结构

3. Stuctured Streaming 的体系和结构目标了解 Structured Streaming 的体系结构和核心原理, 有两点好处, 一是需要了解原理才好进行性能调优, 二是了解原理后, 才能理解代码执行流程, 从而更好的记忆, 也做到知其然更知其所以然步骤WordCount 的执行原理Structured Streaming 的体系结构3.1 无限扩展的表格...

2019-10-21 16:49:15 456

原创 Spark(五)--Structured Streaming(二) - 入门案例

2. Structured Streaming 入门案例目标了解Structured Streaming的编程模型, 为理解Structured Streaming时候是什么, 以及核心体系原理打下基础步骤 需求梳理 Structured Streaming代码实现 运行 验证结果 2.1 需求梳理目标理解接下来要做的案...

2019-10-21 16:34:55 326

原创 Spark(五)-- Structured Streaming(一) - 回顾

目录1. Spark 编程模型的进化过程1.1 Spark 编程模型的进化过程1.2 Spark 的 序列化 的进化过程Step 1: 什么是序列化和序列化Step 2: 在Spark中的序列化和反序列化的应用场景Step 3:RDD的序列化Step 4:DataFrame和Dataset中的序列化1.3 总结1. Spark 编程模型的进化过程...

2019-10-21 16:26:54 314 1

原创 Spark(四)-- SparkStreaming操作 (三)

导读这一小节主要目的是为了了解Spark Streaming一些特别特殊和重要的操作, 一些基本操作基本类似RDD1.updateStateByKey1.1 需求: 统计整个流中, 所有出现的单词数量, 而不是一个批中的数量使用中间状态实现统计功能 统计总数 入门案例中, 只能统计某个时间段内的单词数量, 因为reduceByKey只能作用于某一个RDD,...

2019-10-21 15:37:44 198

原创 Spark(四)-- SparkStreaming原理 (二)

目录1.总章1.1 Spark Streaming的特点1.2 Spark Streaming是按照时间切分小批量1.2.1 如何小批量?1.2.2 如何处理数据?1.3 Spark Streaming是流计算, 流计算的数据是无限的1.4 总结2.DAG的定义2.1 RDD和DStream的DAG(有向无环图)2.2 RDD和DStre...

2019-10-21 15:29:31 223

原创 Spark(四)-- SparkStreaming入门 (一)

1.简介SaprkStreaming是一种微批次的流计算框架,主要用于近实时计算特点 说明 Spark Streaming是Spark Core API的扩展 Spark Streaming具有类似RDD的API, 易于使用, 并可和现有系统共用相似代码 一个非常重要的特点是,Spark Stre...

2019-10-21 14:48:59 293

原创 Spark(三)-- SparkSQL项目练习

导读本项目是 SparkSQL 阶段的练习项目, 主要目的是夯实同学们对于 SparkSQL 的理解和使用数据集2013年纽约市出租车乘车记录需求统计出租车利用率, 到某个目的地后, 出租车等待下一个客人的间隔1.项目说明现在有2013年纽约市出租车乘车记录表,表中字段如下:字段 示例 示意 hack_license ...

2019-10-21 13:55:06 1000 1

原创 Spark(三)-- SparkSQL扩展(数据操作) -- 窗口函数(六)

目录12. 窗口函数12.1 第一名和第二名案例12.1.1 需求介绍12.1.2 需求分析12.1.3 代码编写12.1.4 总结12.2 窗口函数12.2.1 窗口函数的逻辑12.2.2 窗口定义部分12.2.3 函数部分12.2.4 总结12.3 最优差值案例12.3.1 需求介绍12.3.2 代码实现12. 窗口函数目标...

2019-10-21 09:57:44 462

原创 Spark(三)-- SparkSQL扩展(数据操作) -- 连接(五)

目录11.连接11.1 无类型连接算子join的API11.2 连接类型11.2.1 交叉连接 - cross交叉11.2.2 内连接 - inner11.2.3 全外连接11.2.4 左外连接11.2.5 LeftAnti - 只包含左边集合中没连接上的数据11.2.6 LeftSemi - 只包含左侧集合中连接上的数据11.2.7 右外连接11...

2019-10-21 09:02:19 857

原创 Spark(三)-- SparkSQL扩展(数据操作) -- 聚合(四)

10. 聚合导读 groupBy rollup cube pivot RelationalGroupedDataset上的聚合操作 10.1 groupBygroupBy算子会按照列将Dataset分组, 并返回一个RelationalGroupedDataset对象, 通过RelationalGroupedDatase...

2019-10-18 11:13:25 1088

原创 Spark(三)-- SparkSQL扩展(数据操作) -- 缺失值处理(三)

9.缺失值的处理导读 DataFrame中什么时候会有无效值 DataFrame如何处理无效的值 DataFrame如何处理null 9.1 缺失值的处理思路如果想探究如何处理无效值, 首先要知道无效值从哪来, 从而分析可能产生的无效值有哪些类型, 在分别去看如何处理无效值什么是缺失值一个值本身的含义是这个值不存在则称之为缺失值, 也就是...

2019-10-18 10:36:50 3584

原创 Spark(三)-- SparkSQL扩展(数据操作) -- Column(二)

目录8.3 Column 对象8.3.1 列的创建8.3.2 列的别名和转换8.3.3 添加列8.3.4 其它8.3 Column 对象导读Column 表示了 Dataset 中的一个列, 并且可以持有一个表达式, 这个表达式作用于每一条数据, 对每条数据都生成一个值, 之所以有单独这样的一个章节是因为列的操作属于细节, 但是又比较常见, 会在很多算子中配合出现...

2019-09-30 16:41:04 2396

原创 Spark(三)-- SparkSQL扩展(数据操作) -- 转换操作(一)

目录8. Dataset (DataFrame) 的基础操作8.1 有类型操作8.1.1 转换类型的操作8.1.2 过滤类型的操作8.1.3 集合类型的操作8.1.4 切分类型的操作8.1.5 排序类型的操作8.1.6 分区类型的操作8.1.7 去重类型的操作8.1.8 集合类型的操作8.2 无类型操作8.2.1 选择类型的操作8.2.2 剪切类...

2019-09-30 16:09:31 636

原创 Spark(三)-- SparkSQL扩展(数据读写) -- JDBC(四)

7.6 JDBC导读 通过SQL操作MySQL的表 将数据写入MySQL的表中 (1)准备MySQL环境在使用SparkSQL访问MySQL之前, 要对MySQL进行一些操作, 例如说创建用户, 表和库等 Step 1: 连接MySQL数据库 在MySQL所在的主机上执行如下命令 mysql -u root -p...

2019-09-26 10:31:57 832

原创 Spark(三)-- SparkSQL扩展(数据读写) -- 访问Hive(三)

7.5 访问 Hive导读 整合SparkSQL和Hive, 使用Hive的MetaStore元信息库 使用SparkSQL查询Hive表 案例, 使用常见HiveSQL 写入内容到Hive表 7.5.1 SparkSQL 整合 Hive导读 开启Hive的MetaStore独立进程 整合...

2019-09-26 09:42:57 504

原创 Spark(三)-- SparkSQL扩展(数据读写) -- 读写 Parquet、Json 格式文件(二)

7.3 读写 Parquet 格式文件目标 理解Spark读写Parquet文件的语法 理解Spark读写Parquet文件的时候对于分区的处理 什么时候会用到Parquet?在ETL中,Spark经常扮演T的职务, 也就是进行数据清洗和数据转换.为了能够保存比较复杂的数据, 并且保证性能和压缩率, 通常使用Parquet...

2019-09-26 09:30:15 1425

原创 Spark(三)-- SparkSQL扩展(数据读写) --DataFrameReader和DataFrameWriter(一)

7.1 初识 DataFrameReader目标理解DataFrameReader的整体结构和组成SparkSQL的一个非常重要的目标就是完善数据读取, 所以SparkSQL中增加了一个新的框架, 专门用于读取外部数据源, 叫做DataFrameReader @Test def reader1() : Unit = { //1.创建SparkSess...

2019-09-26 09:05:51 4108 1

原创 Spark(三)-- SparkSQL(三) -- Dataset和DataFrame

目录4. Dataset 的特点4.1 Dataset是什么?4.2 即使使用Dataset的命令式API, 执行计划也依然会被优化4.3 Dataset的底层是什么?4.4 可以获取Dataset对应的RDD表示5. DataFrame 的作用和常见操作5.1 DataFrame是什么?5.2 通过隐式转换创建DataFrame5.3 通...

2019-09-23 10:09:52 424

原创 Spark(三)-- SparkSQL(二) -- Catalyst 优化器

目录3. Catalyst 优化器3.1 RDD 和 SparkSQL 运行时的区别3.2 Catalyst3. Catalyst 优化器目标 理解SparkSQL和以RDD为代表的SparkCore最大的区别 理解优化器的运行原理和作用 3.1 RDD 和 SparkSQL 运行时的区别RDD的运行流程大致运行步骤先将...

2019-09-23 09:51:12 671

原创 Spark(三)-- SparkSQL(一) -- 初识

目录1. SparkSQL 是什么1.1 SparkSQL 的出现契机数据分析的方式HiveSharkSparkSQL1.2 SparkSQL 的适用场景结构化数据半结构化数据2. SparkSQL 初体验2.1 RDD 版本的 WordCount2.2 命令式 API 的入门案例SparkSessionDataFrame & Dat...

2019-09-23 09:15:23 653

原创 Spark(二)-- RDD 的分布式共享变量(八) -- 广播变量(二)

目录7.2 广播变量7.2.1 广播变量的作用7.2.2 广播变量的API7.2.2.1 使用广播变量的一般套路7.2.2.2 使用value方法的注意点7.2.2.3 使用destroy方法的注意点7.2.3 广播变量的使用场景7.2.4 扩展7.2 广播变量目标 理解为什么需要广播变量, 以及其应用场景 能够通过代码使用广播变量...

2019-09-19 09:31:32 397

原创 Spark(二)-- RDD 的分布式共享变量(八) -- 累加器(一)

7.1. 累加器一个小问题var count = 0val config = new SparkConf().setAppName("ip_ana").setMaster("local[6]")val sc = new SparkContext(config)sc.parallelize(Seq(1, 2, 3, 4, 5)) .foreach(count += _)p...

2019-09-19 09:28:10 397

原创 Spark(二)-- 闭包(七)

什么是闭包?闭包是一个必须要理解, 但是又不太好理解的知识点, 先看一个小例子/** * 闭包相关 */class Closure { /** * 编写一个高阶函数,在函数内要有一个变量,返回一个函数,用过这个变量完成一个计算 */ @Test def test():Unit ={ val f: Int => Double = clo...

2019-09-19 09:20:55 181

原创 Spark(二)-- Spark 底层逻辑 (六) -- Shuffle 过程(四)

目录6.4 Shuffle 过程6.4.1 Shuffle过程的组件结构6.4.2 有哪些ShuffleWriter?6.4.3 SortShuffleWriter的执行过程6.4 Shuffle 过程导读本章节重点是介绍Shuffle的流程, 因为根据ShuffleWriter的实现不同, 其过程也不同, 所以前半部分根据默认的存储引擎SortSh...

2019-09-19 09:14:11 208

原创 Spark(二)-- Spark 底层逻辑 (六) -- 调度过程(三)

目录6.3 调度过程6.3.1 逻辑图(1)逻辑图如何生成(2)逻辑图是什么, 干啥用6.3.2 物理图6.3.3 Job是什么 ?(1)Job什么时候生成 ?(2)Job是什么 ?6.3.4 Job和Stage的关系(1)为什么Job需要切分 ?(2)如何切分 ?(3)问题一: 执行顺序(4)问题二: 串行还是并行(5)总结...

2019-09-19 08:59:01 125

原创 Spark(二)-- Spark 底层逻辑 (六) -- 物理执行图生成(二)

目录6.2 物理执行图生成6.2.1 物理图的作用是什么?问题一: 物理图的意义是什么?问题二: 如果要确定如何运行的问题, 则需要先确定集群中有什么组件?问题三: 物理图的生成需要考虑什么问题?6.2.2 谁来计算 RDD ?问题一: RDD 是什么, 用来做什么 ?问题二: 谁来计算 ?问题三: Task 该如何设计 ?6.2.3 如何划分阶段 ?6...

2019-09-18 09:34:06 260

原创 Spark(二)-- Spark 底层逻辑 (六) -- 逻辑执行图生成(一)

目录6.1 逻辑执行图生成6.1.1 RDD 的生成textFile算子的背后map算子的背后flatMap算子的背后6.1.2 RDD 之间的依赖关系什么是RDD之间的依赖关系?reduceByKey算子会生成ShuffledRDD整体上的流程图6.1.3 RDD 之间的依赖关系详解窄依赖宽依赖如何分辨宽窄依赖 ?6.1.4 ...

2019-09-17 16:22:30 377 1

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除