数仓工具—Hive实战之事件序列匹配/复杂事件处理(17)

其实这个名字是我随意起的,开始之前我们先看一下描述,我们知道用户会在平台上有一些列的操作,这些操作构成一个序列,例如操作A->操作B->操作C ,这就是一个序列,现在我们就统计一下这样的序列有多少个,其实看到这里你就明白了,其实这就是CEP(复杂事件处理),只是我们这里的场景比较简单。

我们再看一下统计这些东西有什么意义吗,其实主要还是用在优化用户体验上面,例如我们有一个业务流程,我们可以将这个业务设计成A->B-C->D 也可以将其设计为A->C->B->D 那这个时候,这两个流程到底哪个更容易被用户接受呢,其实这个时候我们就可以分别统计这两个序列的数量多少加以判断。

数据准备

下面就是我们的数据,主要有用户uid,action,time 模拟了我们的基本的日志数据格式

uid	action	time
+----+-------+-----+
1	A	2021-07-19 00:00:00
1	A	2021-07-19 00:00:01
1	B	2021-07-19 00:00:02
1	C	2021-07-19 00:00:03
1	C	2021-07-19 00:00:04
1	D	2021-07-19 00:00:05
1	B	2021-07-19 00:00:06
1	C	2021-07-19 00:00:07
1	C	2021-07-19 00:00:08
1	D	2021-07-19 00:00:09
2	A	2021-07-19 00:00:00
2	A	2021-07-19 00:01:01
2	A	2021-07-19 00:01:02
2	C	2021-07-19 00:01:03
2	C	2021-07-19 00:01:04
2	D	2021

猜你喜欢

转载自blog.csdn.net/king14bhhb/article/details/118916590