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

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

开发者学堂课程【大数据实战项目:反爬虫系统(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,然后去正则四种情况,匹配上哪个就是哪个场景,以上就是数据分类的需求以及实现的大概思路。

相关文章
|
2月前
|
存储 机器学习/深度学习 数据可视化
数据集中存在大量的重复值,会对后续的数据分析和处理产生什么影响?
数据集中存在大量重复值可能会对后续的数据分析和处理产生多方面的负面影响
128 56
|
8月前
第六章 利用数组处理批量数据
第六章 利用数组处理批量数据
42 0
|
8月前
|
数据采集 SQL 监控
分析重复数据通常涉及以下步骤,以确保对重复项的来源和性质有深入理解
【4月更文挑战第2天】分析重复数据通常涉及以下步骤,以确保对重复项的来源和性质有深入理解
83 1
|
数据采集 机器学习/深度学习 算法
②数据预处理之数据清理,数据集成,数据规约,数据变化和离散化
数据预处理之数据清理,数据集成,数据规约,数据变化和离散化
869 0
②数据预处理之数据清理,数据集成,数据规约,数据变化和离散化
|
8月前
|
C++
【SPSS】两独立样本T检验分析详细操作教程(附案例实战)
【SPSS】两独立样本T检验分析详细操作教程(附案例实战)
1419 0
|
存储 数据可视化 数据挖掘
知识点丨重测序数据进行kinship亲缘关系分析、构建IBS矩阵的方法与介绍
知识点丨重测序数据进行kinship亲缘关系分析、构建IBS矩阵的方法与介绍
知识点丨重测序数据进行kinship亲缘关系分析、构建IBS矩阵的方法与介绍
|
数据采集 机器学习/深度学习 自然语言处理
实现文本数据数值化、方便后续进行回归分析等目的,需要对文本数据进行多标签分类和关系抽取
实现文本数据数值化、方便后续进行回归分析等目的,需要对文本数据进行多标签分类和关系抽取
215 0
|
C++ 计算机视觉 数据格式
C/C++主调函数从被调函数中获取(各种类型)数据内容方式的梳理归纳
C/C++主调函数从被调函数中获取(各种类型)数据内容方式的梳理归纳
232 1
C/C++主调函数从被调函数中获取(各种类型)数据内容方式的梳理归纳
|
算法 C++
详细实例说明+典型案例实现 对枚举法进行全面分析 | C++
简单的来说,算法就是用计算机程序代码来实现数学思想的一种方法。学习算法就是为了了解它们在计算机中如何演算,以及在当今的信息时代,它们是如何在各个层面上影响我们的日常生活的,从而提高我们的逻辑思维能力和处理实际问题的能力。善用算法、巧用算法,是培养程序设计逻辑的重中之重,许多实际的问题都可用多个可行的算法来解决, 但是要从中找出最优的解决算法却是一项挑战。
225 0
详细实例说明+典型案例实现 对枚举法进行全面分析 | C++
|
SQL 数据采集 NoSQL
数据预处理-航线类型操作类型-读取规则到程序|学习笔记
快速学习数据预处理-航线类型操作类型-读取规则到程序
317 0
数据预处理-航线类型操作类型-读取规则到程序|学习笔记

热门文章

最新文章