数据预处理-航线类型操作类型目标与思路|学习笔记

简介: 快速学习数据预处理-航线类型操作类型目标与思路

开发者学堂课程【大数据实战项目:反爬虫系统(Lua+Spark+Redis+Hadoop 框架搭建)第三阶段数据预处理-航线类型操作类型目标与思路】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址https://developer.aliyun.com/learning/course/671/detail/11652


数据预处理-航线类型操作类型目标与思路


内容介绍:

一、航线类型操作类型目标

二、航线类型操作类型实现思路


一、航线类型操作类型目标

1.概述

前面的课程中将数据拆分的流程进行了讲述,接下来学习数据的分类,也就是数据的打标签,可以分为是单程与往返以及飞行类型与操作类型。首先讲解如何进行飞行类型和操作类型的分类。

2.目的

确定一条数据的业务场景(国内查询、国际查询、国内预定、国际预定)。在数据采集的时候,第一步是采集数据,第二步是发送数据到 Kafka,采集的数据包括日期、request 以及 request method、connect type 等,但这些数据里并没有记录该数据是哪种业务场景,无法确定是国内查询还是国际查询,国内预定还是国际预定,即数据本身没有体现但是要给数据打上标签,需要根据数据里的内容判断出到底是哪种业务场景。之所以要判断业务场景的类型,是因为后续的数据解析等过程中会应用到飞行类型的数据,不对业务场景进行判断后续的功能就无法继续进行。

3.需求

在业务上,企业数据可以在操作类型维度分为“查询操作”和“预定操作”,例如南京航天航空官网首页,默认从广州到北京,点击查询,该业务场景属于查询操作。

image.png

选择日期和票价后,网页会给立即预订的按钮,点击跳转到添加乘客信息的界面,该业务场景属于预定操作。在航线类型维度可以分为国际航线和国内航线,例如从广州出发,出发地选择后到达地可以选择为国内或国际,

image.png

到达地选为亚洲的巴厘岛,点击查询,该业务场景也是查询操作,而该查询属于国际查询。在这两个维度下有四种可能,两两组合后分别是国内查询、国际查询、国内预定、国际预定。在数据采集时获得的实际数据中并没有信息表示这四种场景,然而在后续的模块中需要使用到这些信息。所以一条数据属于四种场景中的哪一种需要分析计算出来。

根据数据库中配置的规则(四种场景),与前面所解析出的url进行匹配,该 url与哪个规则匹配成功,表示该数据就是哪种规则类型的数据。


二、航线类型操作类型实现思路

1、现已经通过 DataSplit.dataSplit()方法将数据进行了拆分,获得到的数据是一个个独立的数据。RequestUrl 字段中存储着查询的 url。

2、读取数据库的 url 正则表达式(四种)到程序

3、遍历四种规则,使用 RequestUrl 中的 url 匹配四种规则,该规则在数据库里面,重复之前的流程,从数据库把规则读出,然后再把数据读出并进行匹配。判断数据是哪种操作哪种航线,并封装到对应的 RequestType 中。

4、分类数据的规则表 itcast_classify_rule

id

flight_type

operation_type

expression

1

0

0

^.*query.ao.*$

2

1

0

^.*ita/intl/zh/shop.*$

3

0

0

^.*postFlight.ao.*$

4

1

1

^.*/ita/intl/zh/passengers

5

0

1

^.*createOrder.xsql.*$

6

1

1

^.*ita/rest/intl/b/order.*$

7

0

1

^.*getRuleFromSuccessPa

8

0

1

^.*cancelOrder.*5

规则表如上所示,expression 列为四种业务场景的正则表达式,需求当中的四种情为 flight_type 列以及operation_type 的内容。右键选择设计表,了解各自的含义,数据中 flight_type 和 operation_type 是非零即一的。flight_type 中的0代表的是国内,1代表的是国外,operation_type 中0代表的是查询,1代表的是预定,它们四个两两组合出的结果就是国内查询、国际查询、国内预定和国际预定,例如 flight_type operation_type 均是0,代表的含义是国内查询;flight_type 为1,operation_type 为0,代表的是国际查询;flight_type operation_type均是1,代表队是国际预定。

操作类型中0代表查询,1代表预定;航班类型中0代表国内,1代表国外。组合类型如下表所示:

0

0

国内查询

0

1

国际查询

1

0

国内预定

1

1

国际预定

数据一条条流过的时候,前面已经把 URL 确定了,四种场景的规则也已经确定了,需求是要确定一条数据的业务场景,即确定业务场景为国内查询、国际查询、国内预定、国际预定四种情况中的哪一个。数据当中的 url 确定了,而且数据库也已经明确规定了00是国内查询,10是国际查询,现在要该规则读到程序里面,然后用 url 去与四种情况相匹配,实现思路即匹配出 url,然后去正则四种情况,匹配上哪个就是哪个场景,以上就是数据分类的需求以及实现的大概思路。

相关文章
|
5月前
|
数据采集 数据挖掘 数据处理
数据清洗的主要步骤包括**理解数据、处理重复值、处理空缺值、处理异常值、数据标准化和数据收集
【4月更文挑战第3天】数据清洗的主要步骤包括**理解数据、处理重复值、处理空缺值、处理异常值、数据标准化和数据收集
237 2
|
5月前
|
数据采集 SQL 监控
分析重复数据通常涉及以下步骤,以确保对重复项的来源和性质有深入理解
【4月更文挑战第2天】分析重复数据通常涉及以下步骤,以确保对重复项的来源和性质有深入理解
37 1
|
5月前
|
C++
【SPSS】两配对样本T检验分析详细操作教程(附案例实战)
【SPSS】两配对样本T检验分析详细操作教程(附案例实战)
554 0
【SPSS】两配对样本T检验分析详细操作教程(附案例实战)
|
数据采集 机器学习/深度学习 算法
②数据预处理之数据清理,数据集成,数据规约,数据变化和离散化
数据预处理之数据清理,数据集成,数据规约,数据变化和离散化
713 0
②数据预处理之数据清理,数据集成,数据规约,数据变化和离散化
|
存储 数据可视化 数据挖掘
知识点丨重测序数据进行kinship亲缘关系分析、构建IBS矩阵的方法与介绍
知识点丨重测序数据进行kinship亲缘关系分析、构建IBS矩阵的方法与介绍
知识点丨重测序数据进行kinship亲缘关系分析、构建IBS矩阵的方法与介绍
|
机器学习/深度学习 算法 计算机视觉
舌体胖瘦的自动分析-曲线拟合-或许是最简单判断舌形的方案(六)
舌体胖瘦的自动分析-曲线拟合-或许是最简单判断舌形的方案(六)
129 0
|
数据采集 机器学习/深度学习 自然语言处理
实现文本数据数值化、方便后续进行回归分析等目的,需要对文本数据进行多标签分类和关系抽取
实现文本数据数值化、方便后续进行回归分析等目的,需要对文本数据进行多标签分类和关系抽取
187 0
|
SQL 数据采集 NoSQL
数据预处理-航线类型操作类型-读取规则到程序|学习笔记
快速学习数据预处理-航线类型操作类型-读取规则到程序
306 0
数据预处理-航线类型操作类型-读取规则到程序|学习笔记
|
Rust 自然语言处理 算法
【算法】1389. 按既定顺序创建目标数组(多语言实现)
给你两个整数数组 nums 和 index。你需要按照以下规则创建目标数组: 目标数组 target 最初为空。 按从左到右的顺序依次读取 nums[i] 和 index[i],在 target 数组中的下标 index[i] 处插入值 nums[i] 。 重复上一步,直到在 nums 和 index 中都没有要读取的元素。 请你返回目标数组。 题目保证数字插入位置总是存在。
【算法】1389. 按既定顺序创建目标数组(多语言实现)
|
数据采集 NoSQL 大数据
数据预处理-航线类型操作类型实现详细思路|学习笔记
快速学习数据预处理-航线类型操作类型实现详细思路