CN116467315A - 行为数据的分析方法、装置、设备及存储介质 - Google Patents
行为数据的分析方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN116467315A CN116467315A CN202310449367.0A CN202310449367A CN116467315A CN 116467315 A CN116467315 A CN 116467315A CN 202310449367 A CN202310449367 A CN 202310449367A CN 116467315 A CN116467315 A CN 116467315A
- Authority
- CN
- China
- Prior art keywords
- behavior data
- target
- bitmap
- bit
- determining
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000004458 analytical method Methods 0.000 title claims description 50
- 238000000034 method Methods 0.000 claims abstract description 61
- 238000007405 data analysis Methods 0.000 claims abstract description 44
- 230000006399 behavior Effects 0.000 claims description 248
- 230000003542 behavioural effect Effects 0.000 claims description 34
- 230000000737 periodic effect Effects 0.000 claims description 10
- 238000004891 communication Methods 0.000 claims description 6
- 238000013461 design Methods 0.000 description 20
- 230000006870 function Effects 0.000 description 15
- 238000012545 processing Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 230000003287 optical effect Effects 0.000 description 5
- 238000013500 data storage Methods 0.000 description 4
- 230000001960 triggered effect Effects 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 238000010276 construction Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000009825 accumulation Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000000802 evaporation-induced self-assembly Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000007619 statistical method Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2228—Indexing structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3438—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment monitoring of user actions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
- G06F16/215—Improving data quality; Data cleansing, e.g. de-duplication, removing invalid entries or correcting typographical errors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/901—Indexing; Data structures therefor; Storage structures
- G06F16/9024—Graphs; Linked lists
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Software Systems (AREA)
- Quality & Reliability (AREA)
- Computer Hardware Design (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本申请公开了一种行为数据的分析方法、装置、设备及存储介质,涉及计算机技术领域,该方案通过调整位图中的比特位中存储的数值,可以实现对用户行为数据的记录,可以大量节省存储资源和计算资源。该方法包括:获取行为数据字段;行为数据字段中至少包括目标用户标识;基于位图索引信息,确定目标用户标识在目标行为数据位图的各比特位中对应的目标比特位,并将目标比特位当前存储的数值置为第一预设数值;在检测到行为数据分析指令的情况下,根据目标行为数据位图的各比特位当前分别存储的数值,确定行为数据分析结果。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及一种行为数据的分析方法、装置、设备及存储介质。
背景技术
随着互联网技术的快速发展,产生了海量的用户行为数据,根据这些海量的用户行为数据,可以分析出互联网产品提供的各项业务中,多数用户所偏好的业务。这样,有利于产品供应商对业务的改进和新业务的推出。
现有技术中,针对某一互联网产品,产品供应商可以向用户提供与该互联网产品对应的产品应用程序(Application,APP),并且可以预先在产品APP中设置埋点。用户在使用产品APP期间,预先设置的埋点可以获取到与用户在产品APP进行的操作所对应的用户行为数据,并且可以将获取到的用户行为数据上报至该互联网产品的服务端进行存储。之后,可以对服务端存储的数据进行数据清理,然后可以采用大数据工具对服务端存储的数据进行离线数据分析,得到分析结果。
然而,上述对用户行为数据进行分析并确定分析结果的过程,需要占用大量的存储资源和计算资源。
发明内容
本申请提供一种行为数据的分析方法、装置、设备及存储介质,可以节省存储资源和计算资源。
为达到上述目的,本申请采用如下技术方案:
第一方面,本申请提供一种行为数据的分析方法,包括:获取行为数据字段;行为数据字段中至少包括目标用户标识;基于位图索引信息,确定目标用户标识在目标行为数据位图的各比特位中对应的目标比特位,并将目标比特位当前存储的数值置为第一预设数值;在检测到行为数据分析指令的情况下,根据目标行为数据位图的各比特位当前分别存储的数值,确定行为数据分析结果。
本申请提供的技术方案中,可以预先创建一个用于实现对当前业务产生的用户行为数据进行存储的目标行为数据位图。并且,可以预先将各用户标识与目标行为数据位图中的各比特位进行关联,得到位图索引信息,在位图索引信息中,每个用户标识均可以唯一对应目标行为数据位图中的一个目标比特位。当某个用户对当前业务进行了点击操作(也即是某个用户使用了当前业务的业务功能)时,可以获取到包括该用户的目标用户标识的行为数据字段,然后可以基于预先得到的位图索引信息,确定目标用户标识在目标行为数据位图的各比特位中对应的目标比特位,并将目标比特位当前存储的数值置为第一预设数值。之后,可以在检测到行为数据分析指令的情况下,根据目标行为数据位图的各比特位当前分别存储的数值,确定行为数据分析结果。由于本申请是在获取到包括目标用户标识的行为数据字段的情况下,才将目标用户标识在目标行为数据位图中对应的目标比特位置为第一预设数值的,并且,行为数据字段也是在用户使用当前业务的业务功能时获取到的,所以,目标行为数据位图中各比特位分别存储的数值的变化情况,可以记录用户对当前业务是否进行了点击行为。而采用位图中的比特位存储数值的这种数据存储结构,相比其他数据存储结构,可以节省大量的内存空间。并且,在根据目标行为数据位图的各比特位当前分别存储的数值确定行为数据分析结果时,位运算相比其他运算方式,也可以极大的提高运算速度。可以看出,本申请提供的技术方案中,通过调整位图中的比特位中存储的数值,可以实现对用户行为数据的记录,可以大量节省存储资源和计算资源。
可选的,在一种可能的设计方式中,行为数据字段中还包括目标业务标识,上述“基于位图索引信息,确定目标用户标识在目标行为数据位图的各比特位中对应的目标比特位”之前,还包括:
基于目标业务标识,从各候选行为数据位图中确定目标行为数据位图。
可选的,在另一种可能的设计方式中,本申请提供的行为数据的分析方法还可以包括:
在获取到行为数据位图配置请求的情况下,基于行为数据位图配置请求中携带的待配置业务标识,构建待配置行为数据位图;
将待配置行为数据位图添加至各候选行为数据位图中,并对待配置行为数据位图和待配置业务标识进行关联。
可选的,在另一种可能的设计方式中,上述“确定行为数据分析结果”之后,还可以包括:
对目标行为数据位图进行初始化操作,将目标行为数据位图的各比特位当前分别存储的数值均置为第二预设数值。
可选的,在另一种可能的设计方式中,本申请提供的行为数据的分析方法还可以包括:
在获取到索引配置请求的情况下,基于索引配置请求中携带有待配置用户标识,在目标行为数据位图中确定待配置比特位,并根据待配置用户标识和待配置比特位的对应关系对位图索引信息进行更新。
可选的,在另一种可能的设计方式中,本申请提供的行为数据的分析方法还可以包括:
创建周期任务;周期任务的任务内容包括:每间隔预设时长触发一次行为数据分析指令。
可选的,在另一种可能的设计方式中,上述“基于位图索引信息,确定目标用户标识在目标行为数据位图的各比特位中对应的目标比特位”之后,还可以包括:
确定目标比特位当前存储的数值是否为第二预设数值;
在确定目标比特位当前存储的数值为第二预设数值的情况下,触发执行将目标比特位当前存储的数值置为第一预设数值的操作;
在确定目标比特位当前存储的数值不是第二预设数值的情况下,将目标比特位当前存储的数值置为第三预设数值。
第二方面,本申请提供一种行为数据的分析装置,包括:获取模块、赋值模块以及确定模块;
获取模块,用于获取行为数据字段;行为数据字段中至少包括目标用户标识;
赋值模块,用于基于位图索引信息,确定目标用户标识在目标行为数据位图的各比特位中对应的目标比特位,并将目标比特位当前存储的数值置为第一预设数值;
确定模块,用于在检测到行为数据分析指令的情况下,根据目标行为数据位图的各比特位当前分别存储的数值,确定行为数据分析结果。
可选的,在一种可能的设计方式中,行为数据字段中还包括目标业务标识,确定模块还用于,在赋值模块基于位图索引信息,确定目标用户标识在目标行为数据位图的各比特位中对应的目标比特位之前,基于目标业务标识,从各候选行为数据位图中确定目标行为数据位图。
可选的,在另一种可能的设计方式中,本申请提供的行为数据的分析装置还可以包括:构建模块和关联模块;
构建模块,用于在获取到行为数据位图配置请求的情况下,基于行为数据位图配置请求中携带的待配置业务标识,构建待配置行为数据位图;
关联模块,用于将待配置行为数据位图添加至各候选行为数据位图中,并对待配置行为数据位图和待配置业务标识进行关联。
可选的,在另一种可能的设计方式中,本申请提供的行为数据的分析装置还可以包括:初始化模块;
初始化模块,用于在确定模块确定行为数据分析结果之后,对目标行为数据位图进行初始化操作,将目标行为数据位图的各比特位当前分别存储的数值均置为第二预设数值。
可选的,在另一种可能的设计方式中,本申请提供的行为数据的分析装置还可以包括:配置模块;
配置模块,用于在获取到索引配置请求的情况下,基于索引配置请求中携带有待配置用户标识,在目标行为数据位图中确定待配置比特位,并根据待配置用户标识和待配置比特位的对应关系对位图索引信息进行更新。
可选的,在另一种可能的设计方式中,本申请提供的行为数据的分析装置还可以包括:创建模块;
创建模块,用于创建周期任务;周期任务的任务内容包括:每间隔预设时长触发一次行为数据分析指令。
可选的,在另一种可能的设计方式中,确定模块还用于:
在赋值模块基于位图索引信息,确定目标用户标识在目标行为数据位图的各比特位中对应的目标比特位之后,确定目标比特位当前存储的数值是否为第二预设数值;
在确定目标比特位当前存储的数值为第二预设数值的情况下,触发执行将目标比特位当前存储的数值置为第一预设数值的操作;
在确定目标比特位当前存储的数值不是第二预设数值的情况下,将目标比特位当前存储的数值置为第三预设数值。
第三方面,本申请提供一种行为数据的分析设备,包括存储器、处理器、总线和通信接口;存储器用于存储计算机执行指令,处理器与存储器通过总线连接;当行为数据的分析设备运行时,处理器执行存储器存储的计算机执行指令,以使行为数据的分析设备执行如上述第一方面提供的行为数据的分析方法。
第四方面,本申请提供一种计算机可读存储介质,计算机可读存储介质中存储有指令,当计算机执行指令时,使得计算机执行如第一方面提供的行为数据的分析方法。
第五方面,本申请提供一种计算机程序产品,该计算机程序产品包括计算机指令,当计算机指令在计算机上运行时,使得计算机执行如第一方面提供的行为数据的分析方法。
需要说明的是,上述计算机指令可以全部或者部分存储在计算机可读存储介质上。其中,计算机可读存储介质可以与行为数据的分析设备的处理器封装在一起的,也可以与行为数据的分析设备的处理器单独封装,本申请对此不做限定。
本申请中第二方面、第三方面、第四方面以及第五方面的描述,可以参考第一方面的详细描述;并且,第二方面、第三方面、第四方面以及第五方面的描述的有益效果,可以参考第一方面的有益效果分析,此处不再赘述。
在本申请中,对于上述涉及到的设备或功能模块的名称不构成限定,在实际实现中,这些设备或功能模块可以以其他名称出现。只要各个设备或功能模块的功能和本申请类似,均属于本申请权利要求及其等同技术的范围之内。
本申请的这些方面或其他方面在以下的描述中会更加简明易懂。
附图说明
图1为本申请实施例提供的一种行为数据的分析方法的流程示意图;
图2为本申请实施例提供的一种目标行为数据位图的示意图;
图3为本申请实施例提供的另一种目标行为数据位图的示意图;
图4为本申请实施例提供的另一种行为数据的分析方法的流程示意图;
图5为本申请实施例提供的一种行为数据的分析装置的结构示意图;
图6为本申请实施例提供的一种行为数据的分析设备的结构示意图。
具体实施方式
下面结合附图对本申请实施例提供的行为数据的分析方法、装置、设备及存储介质进行详细地描述。
本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。
本申请的说明书以及附图中的术语“第一”和“第二”等是用于区别不同的对象,或者用于区别对同一对象的不同处理,而不是用于描述对象的特定顺序。
此外,本申请的描述中所提到的术语“包括”和“具有”以及它们的任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选的还包括其他没有列出的步骤或单元,或可选的还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
需要说明的是,本申请实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本申请实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
在本申请的描述中,除非另有说明,“多个”的含义是指两个或两个以上。
另外,本申请技术方案中对数据的获取、存储、使用、处理等均符合国家法律法规的相关规定。
现有技术中,针对某一互联网产品,产品供应商可以向用户提供与该互联网产品对应的产品APP,并且可以预先在产品APP中设置埋点。用户在使用产品APP期间,预先设置的埋点可以获取到与用户在产品APP进行的操作所对应的用户行为数据,并且可以将获取到的用户行为数据上报至该互联网产品的服务端进行存储。之后,可以对服务端存储的数据进行数据清理,然后可以采用大数据工具对服务端存储的数据进行离线数据分析,得到分析结果。然而,上述对用户行为数据进行分析并确定分析结果的过程,需要占用大量的存储资源和计算资源。
针对上述现有技术中存在的问题,本申请实施例提供了一种行为数据的分析方法,该方法通过调整位图(Bitmap)中的比特位中存储的数值,可以实现对用户行为数据的记录,这样,可以大量节省存储资源和计算资源。
本申请实施例提供的一种行为数据的分析方法可以由本申请实施例提供的行为数据的分析装置来执行,该装置可以通过软件和/或硬件的方式实现,并集成在执行本方法的行为数据的分析设备中。
下面结合附图对本申请实施例提供的行为数据的分析方法进行说明。
参照图1,本申请实施例提供的行为数据的分析方法包括S101-S103:
S101、获取行为数据字段。
其中,行为数据字段中至少包括目标用户标识。目标用户标识可以是预先生成的编号,可以唯一表示一个用户。
示例性的,本申请实施例提供的行为数据的分析方法可以应用于包括用户端和服务端的行为数据的分析系统,具体的,本申请实施例中涉及的行为数据的分析设备可以是服务端的对应设备,比如,可以是服务端对应的服务器或服务器集群。
以行为数据的分析方法应用于服务端为例,本申请实施例可以通过在服务端处设置埋点来获取行为数据字段。在一种可能的实现方式中,当用户有使用当前业务的需求时,可以在用户端对当前业务的相关控件进行点击操作,触发用户端向服务端发起访问请求,此时,预先设置的埋点可以通过拦截器对访问请求进行拦截,获取到访问请求中携带的访问信息,该访问信息中包括行为数据字段。在另一种可能的实现方式中,当用户有使用当前业务的需求时,可以在用户端对当前业务的相关控件进行点击操作,触发用户端向服务端发起访问请求,服务端对该访问请求进行处理之后,可以向用户端发送访问反馈信息,此时,预先设置的埋点可以通过拦截器对访问反馈信息进行拦截,获取到访问反馈信息中的行为数据字段。
可以理解的是,在实际应用中,服务端还可以通过其他方式获取行为数据字段,本申请实施例对此不做限定。示例性的,本申请实施例还可以通过Spring(一种开源框架)中的面向切面编程技术(Aspect Oriented Programming,AOP)进行埋点,以获取更为准确的行为数据字段。
S102、基于位图索引信息,确定目标用户标识在目标行为数据位图的各比特位中对应的目标比特位,并将目标比特位当前存储的数值置为第一预设数值。
其中,第一预设数值可以是事先确定的数值。比如,第一预设数值可以是1。
在一种可能的实现方式中,位图索引信息可以是预先创建的用于表征各用户标识和目标行为数据位图的各比特位的映射关系的位图索引列表。
目标行为数据位图可以包括多个字节,一个字节可以包括8个比特位。示例性的,若当前业务的注册用户共有24个,则目标行为数据位图可以包括3个已用字节。参照图2,为本申请实施例提供的一种目标行为数据位图的示意图。如图2所示,各用户标识均可以唯一对应目标行为数据位图中的一个目标比特位。示例性的,若目标用户标识为A8,可以确定目标比特位是图2中字节1中的最右侧的一个比特位,则可以将该比特位当前存储的数值0置为第一预设数值1。
可选的,行为数据字段中还可以包括目标业务标识;基于位图索引信息,确定目标用户标识在目标行为数据位图的各比特位中对应的目标比特位之前,本申请实施例提供的行为数据的分析方法还可以包括:基于目标业务标识,从各候选行为数据位图中确定目标行为数据位图。
示例性的,本申请实施例可以事先确定出当前产品所提供的业务的数量,然后可以为每个业务分别创建对应的行为数据位图,得到各候选行为数据位图。
由于一个产品可能会提供有多个业务,若为每个业务单独创建位图索引信息,会影响确定目标比特位的速率,且多个位图索引信息会占用较大内存空间。基于此,本申请实施例中,多个业务可以共用同一位图索引信息,也即是目标用户标识在不同业务的行为数据位图中对应的比特位的位置相同。这样,可以进一步节省计算资源和存储资源。
示例性的,本申请实施例提供的行为数据的分析方法可以应用于包括用户端、总服务端、以及各业务的子服务端的行为数据的分析系统。具体的,本申请实施例中涉及的行为数据的分析设备可以是总服务端的对应设备,比如,可以是总服务端对应的服务器或服务器集群。其中,总服务端为行为数据的分析系统的流量入口。
以行为数据的分析方法应用于总服务端为例,本申请实施例也可以通过在总服务端处设置埋点来获取行为数据字段。在一种可能的实现方式中,当用户有使用当前业务的需求时,可以在用户端对当前业务的相关控件进行点击操作,触发用户端向总服务端发起用于访问当前业务的访问请求,此时,预先设置的埋点可以通过拦截器对访问请求进行拦截,获取到访问请求中携带的访问信息,该访问信息中包括有用户端需要访问的子服务端的域名和用户标识,总服务端可以根据子服务端的域名确定目标业务标识,并且可以确定出包括目标业务标识和用户标识的行为数据字段。
另外,本申请实施例中,在行为数据的分析系统中可以采用远程字典服务(RemoteDictionary Server,Redis)作为中间件。Redis支持基于Bitmap数据类型的存储方式。服务端/总服务端获取到行为数据字段后,可以访问Redis,实现对Redis中存储的目标行为数据位图中的目标比特位存储的数值的重置。示例性的,服务端/总服务端获取到行为数据字段后,可以通过Redis远程工具的setbit指令(Redis提供的一种指令)对Redis中存储的目标行为数据位图中的目标比特位存储的数值进行重置。示例性的,setbit指令可以包括如下字段:Setbit;Bitmap;id;k;1。其中,“id”表示用户标识,“k”表示目标比特位的位置信息。
此外,本申请实施例中,每个用户标识在Bitmap(可以是本申请实施例中的任一行为数据位图)中唯一对应一个目标比特位,所以在未对Bitmap加锁的情况下,多线程处理(同时处理多个行为数据字段)也不会产生线程冲突。这样,可以提高处理效率。
可选的,本申请实施例提供的行为数据的分析方法还可以包括:在获取到行为数据位图配置请求的情况下,基于行为数据位图配置请求中携带的待配置业务标识,构建待配置行为数据位图;将待配置行为数据位图添加至各候选行为数据位图中,并对待配置行为数据位图和待配置业务标识进行关联。
由于在实际应用中,产品可能会出现业务变更,推出新业务,所以,为了保证在推出新业务后不改变原有的存储结构,本申请实施例可以支持在保证位图索引信息不变的情况下,由产品开发人员自主配置新业务的行为数据位图。可以看出,本申请实施例提供的技术方案的可扩展性很高。
可选的,本申请实施例提供的行为数据的分析方法还可以包括:在获取到索引配置请求的情况下,基于索引配置请求中携带有待配置用户标识,在目标行为数据位图中确定待配置比特位,并根据待配置用户标识和待配置比特位的对应关系对位图索引信息进行更新。
由于在实际应用中,产品的注册用户会逐渐增多,所以,为了保证在出现新用户的情况下不改变原有的存储结构,本申请实施例可以支持在原目标行为数据位图的基础上,为新用户确定一个新的比特位。这样,可以进一步提高方案的可扩展性。
示例性的,若目标行为数据位图的已用字节中的最后一个字节中仍有可用比特位,则可以将已用字节中的最后一个字节中的最后一个已用比特位的下一个可用比特位确定为待配置比特位。比如,若图2中字节3为已用字节中的最后一个字节,字节3中A23对应的比特位为字节3中的最后一个已用比特位,A23右侧的比特位还未启用,那么,在待配置用户标识为A24的情况下,可以将图2中A24对应的比特位确定为待配置比特位。若已用字节中的最后一个字节中没有可用比特位,则可以将已用字节中的最后一个字节的下一个可用字节中的首个比特位确定为待配置比特位。比如,若图2中字节3为已用字节中的最后一个字节,且字节3中没有可用比特位,则可以重新确定一个新的字节4,并将字节4的首个比特位确定为待配置比特位。
可选的,基于位图索引信息,确定目标用户标识在目标行为数据位图的各比特位中对应的目标比特位之后,本申请实施例提供的行为数据的分析方法还可以包括:确定目标比特位当前存储的数值是否为第二预设数值;在确定目标比特位当前存储的数值为第二预设数值的情况下,触发执行将目标比特位当前存储的数值置为第一预设数值的操作;在确定目标比特位当前存储的数值不是第二预设数值的情况下,将目标比特位当前存储的数值置为第三预设数值。
在另一种可能的实现方式中,本申请实施例中涉及的目标比特位可以包括两个比特位,也即是包括两个二进制位。第二预设数值和第三预设数值可以是事先确定的数值。示例性的,第二预设数值可以是00,第三预设数值可以是10,第一预设数值可以是01。
参照图3,为本申请实施例提供的另一种目标行为数据位图的示意图。如图3所示,各用户标识均可以唯一对应目标行为数据位图中的两个二进制位。示例性的,若目标用户标识为A4,可以确定目标比特位是图3中字节1中的最右侧的两个二进制位,该两个二进制位当前存储的数值为第二预设数值00,则标识该用户首次访问当前业务,可以将该两个二进制位当前存储的数值置为第一预设数值01;若目标用户标识为A5,可以确定目标比特位是图3中字节2中的最左侧的两个二进制位,该两个二进制位当前存储的数值不是第二预设数值00,而是第一预设数值01,则表示该用户不是首次访问当前业务,可以将该两个二进制位当前存储的数值置为第三预设数值10。
本申请实施例中,可以通过不同的数值对用户访问当前业务的次数进行记录,具体的,可以用第一预设数值表示用户访问了一次当前业务,用第三预设数值表示用户访问了多次当前业务。这样,更有利于对用户行为数据的分析,便于分析出多数用户所偏好的业务,从而有利于产品供应商对业务的改进和新业务的推出。
S103、在检测到行为数据分析指令的情况下,根据目标行为数据位图的各比特位当前分别存储的数值,确定行为数据分析结果。
示例性的,以第一预设数值是1为例,可以对目标行为数据位图的各比特位当前分别存储的数值进行累加操作,累加得到的累计值也即是该统计周期内,访问当前业务的用户数量。
在另一种可能的实现方式中,当需要确定某一指定用户在该统计周期内是否访问当前业务时,可以通过Redis远程工具的bitcount指令(Redis提供的一种指令)获取Redis中存储的目标行为数据位图中的目标比特位存储的数值。示例性的,bitcount指令可以包括如下字段:bitcount;Bitmap;id。其中,“id”表示用户标识,“Bitmap”表示目标比特位的位置信息。
在获取到访问当前业务的用户数量(也即是获取到行为数据分析结果)之后,可以采用字符串形式将行为数据分析结果持久化存储至数据库中。示例性的,本申请实施例可以采用linux bash脚本或者java程序,批量调起各业务对应的行为数据位图的统计脚本,即可快速统计到该统计周期内各业务的活跃用户数量,并对统计结果进行持久化存储。另外,还可以通过图表工具脚本,将统计结果转化为图表形式,进行服务、产品使用情况分析。
可选的,本申请实施例提供的行为数据的分析方法还可以包括:创建周期任务;周期任务的任务内容包括:每间隔预设时长触发一次行为数据分析指令。
其中,预设时长可以是事先确定的时长,比如可以是24小时。
本申请实施例提供的技术方案中,可以每间隔预设时长统计一次行为数据分析结果,这样,更有利于分析出各项业务中多数用户所偏好的业务,从而更有利于产品供应商对业务的改进和新业务的推出。
可选的,确定行为数据分析结果之后,本申请实施例提供的行为数据的分析方法还可以包括:对目标行为数据位图进行初始化操作,将目标行为数据位图的各比特位当前分别存储的数值均置为第二预设数值。
为了确保每个统计周期的统计结果是相互独立互不影响的,本申请实施例中,在确定出当前周期的行为数据分析结果后,可以对目标行为数据位图进行初始化操作,以便于开始下一个周期的统计分析。
综合以上描述,本申请实施例提供的行为数据的分析方法中,可以预先创建一个用于实现对当前业务产生的用户行为数据进行存储的目标行为数据位图。并且,可以预先将各用户标识与目标行为数据位图中的各比特位进行关联,得到位图索引信息,在位图索引信息中,每个用户标识均可以唯一对应目标行为数据位图中的一个目标比特位。当某个用户对当前业务进行了点击操作(也即是某个用户使用了当前业务的业务功能)时,可以获取到包括该用户的目标用户标识的行为数据字段,然后可以基于预先得到的位图索引信息,确定目标用户标识在目标行为数据位图的各比特位中对应的目标比特位,并将目标比特位当前存储的数值置为第一预设数值。之后,可以在检测到行为数据分析指令的情况下,根据目标行为数据位图的各比特位当前分别存储的数值,确定行为数据分析结果。由于本申请实施例是在获取到包括目标用户标识的行为数据字段的情况下,才将目标用户标识在目标行为数据位图中对应的目标比特位置为第一预设数值的,并且,行为数据字段也是在用户使用当前业务的业务功能时获取到的,所以,目标行为数据位图中各比特位分别存储的数值的变化情况,可以记录用户对当前业务是否进行了点击行为。而采用位图中的比特位存储数值的这种数据存储结构,相比其他数据存储结构,可以节省大量的内存空间。并且,在根据目标行为数据位图的各比特位当前分别存储的数值确定行为数据分析结果时,位运算相比其他运算方式,也可以极大的提高运算速度。可以看出,本申请实施例提供的技术方案中,通过调整位图中的比特位中存储的数值,可以实现对用户行为数据的记录,可以大量节省存储资源和计算资源。
可选的,如图4所示,本申请实施例还提供了一种行为数据的分析方法,包括S401-S406:
S401、获取包括有目标业务标识和目标用户标识的行为数据字段。
S402、基于目标业务标识,从各候选行为数据位图中确定目标行为数据位图。
S403、基于位图索引信息,确定目标用户标识在目标行为数据位图的各比特位中对应的目标比特位。
S404、确定目标比特位当前存储的数值是否为第二预设数值;在确定目标比特位当前存储的数值为第二预设数值的情况下,将目标比特位当前存储的数值置为第一预设数值;在确定目标比特位当前存储的数值不是第二预设数值的情况下,将目标比特位当前存储的数值置为第三预设数值。
S405、在检测到行为数据分析指令的情况下,根据目标行为数据位图的各比特位当前分别存储的数值,确定行为数据分析结果。
S406、对目标行为数据位图进行初始化操作,将目标行为数据位图的各比特位当前分别存储的数值均置为第二预设数值。
如图5所示,本申请实施例还提供了一种行为数据的分析装置,该装置可以包括:获取模块11、赋值模块21以及确定模块31。
其中,获取模块11执行上述方法实施例中的S101,赋值模块21执行上述方法实施例中的S102,确定模块31执行上述方法实施例中的S103。
具体地,获取模块11,用于获取行为数据字段;行为数据字段中至少包括目标用户标识;赋值模块21,用于基于位图索引信息,确定目标用户标识在目标行为数据位图的各比特位中对应的目标比特位,并将目标比特位当前存储的数值置为第一预设数值;确定模块31,用于在检测到行为数据分析指令的情况下,根据目标行为数据位图的各比特位当前分别存储的数值,确定行为数据分析结果。
可选的,在一种可能的设计方式中,行为数据字段中还包括目标业务标识,确定模块31还用于,在赋值模块21基于位图索引信息,确定目标用户标识在目标行为数据位图的各比特位中对应的目标比特位之前,基于目标业务标识,从各候选行为数据位图中确定目标行为数据位图。
可选的,在另一种可能的设计方式中,本申请提供的行为数据的分析装置还可以包括:构建模块和关联模块;
构建模块,用于在获取到行为数据位图配置请求的情况下,基于行为数据位图配置请求中携带的待配置业务标识,构建待配置行为数据位图;关联模块,用于将待配置行为数据位图添加至各候选行为数据位图中,并对待配置行为数据位图和待配置业务标识进行关联。
可选的,在另一种可能的设计方式中,本申请提供的行为数据的分析装置还可以包括:初始化模块;初始化模块,用于在确定模块31确定行为数据分析结果之后,对目标行为数据位图进行初始化操作,将目标行为数据位图的各比特位当前分别存储的数值均置为第二预设数值。
可选的,在另一种可能的设计方式中,本申请提供的行为数据的分析装置还可以包括:配置模块;配置模块,用于在获取到索引配置请求的情况下,基于索引配置请求中携带有待配置用户标识,在目标行为数据位图中确定待配置比特位,并根据待配置用户标识和待配置比特位的对应关系对位图索引信息进行更新。
可选的,在另一种可能的设计方式中,本申请提供的行为数据的分析装置还可以包括:创建模块;创建模块,用于创建周期任务;周期任务的任务内容包括:每间隔预设时长触发一次行为数据分析指令。
可选的,在另一种可能的设计方式中,确定模块31还用于:
在赋值模块21基于位图索引信息,确定目标用户标识在目标行为数据位图的各比特位中对应的目标比特位之后,确定目标比特位当前存储的数值是否为第二预设数值;在确定目标比特位当前存储的数值为第二预设数值的情况下,触发执行将目标比特位当前存储的数值置为第一预设数值的操作;在确定目标比特位当前存储的数值不是第二预设数值的情况下,将目标比特位当前存储的数值置为第三预设数值。
可选的,行为数据的分析装置还可以包括存储模块,存储模块用于存储该行为数据的分析装置的程序代码等。
如图6所示,本申请实施例还提供一种行为数据的分析设备,包括存储器41、处理器(比如图6中的42-1和42-2)、总线43和通信接口44;存储器41用于存储计算机执行指令,处理器与存储器41通过总线43连接;当行为数据的分析设备运行时,处理器执行存储器41存储的计算机执行指令,以使行为数据的分析设备执行如上述实施例提供的行为数据的分析方法。
在具体的实现中,作为一种实施例,处理器可以包括一个或多个中央处理器(central processing unit,CPU),例如图6中所示的CPU0和CPU1。且作为一种实施例,行为数据的分析设备可以包括多个处理器,例如图6中所示的处理器42-1和处理器42-2。这些处理器中的每一个CPU可以是一个单核处理器(single-CPU),也可以是一个多核处理器(multi-CPU)。这里的处理器可以指一个或多个设备、电路、和/或用于处理数据(例如计算机程序指令)的处理核。
存储器41可以是只读存储器41(read-only memory,ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,RAM)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(electrically erasable programmable read-only memory,EEPROM)、只读光盘(compactdisc read-only memory,CD-ROM)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器41可以是独立存在,通过总线43与处理器相连接。存储器41也可以和处理器集成在一起。
在具体的实现中,存储器41,用于存储本申请中的数据和执行本申请的软件程序对应的计算机执行指令。处理器可以通过运行或执行存储在存储器41内的软件程序,以及调用存储在存储器41内的数据,行为数据的分析设备的各种功能。
通信接口44,使用任何收发器一类的设备,用于与其他设备或通信网络通信,如控制系统、无线接入网(radio access network,RAN),无线局域网(wireless local areanetworks,WLAN)等。通信接口44可以包括接收单元实现接收功能,以及发送单元实现发送功能。
总线43,可以是工业标准体系结构(industry standard architecture,ISA)总线、外部设备互连(peripheral component interconnect,PCI)总线或扩展工业标准体系结构(extended industry standard architecture,EISA)总线等。该总线43可以分为地址总线、数据总线、控制总线等。为便于表示,图6中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
作为一个示例,结合图5,行为数据的分析装置中的获取模块实现的功能与图6中的接收单元实现的功能相同,行为数据的分析装置中的赋值模块实现的功能与图6中的处理器实现的功能相同。当行为数据的分析装置包括有存储模块时,存储模块实现的功能与图6中的存储器实现的功能相同。
本实施例中相关内容的解释可参考上述方法实施例,此处不再赘述。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述的系统,设备和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
本申请实施例还提供一种计算机可读存储介质,计算机可读存储介质中存储有指令,当计算机执行该指令时,使得计算机执行上述实施例提供的行为数据的分析方法。
其中,计算机可读存储介质,例如可以是但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、RAM、ROM、可擦式可编程只读存储器(erasable programmable read only memory,EPROM)、寄存器、硬盘、光纤、CD-ROM、光存储器件、磁存储器件、或者上述的任意合适的组合、或者本领域熟知的任何其它形式的计算机可读存储介质。一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于特定用途集成电路(application specificintegrated circuit,ASIC)中。在本申请实施例中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何在本申请揭露的技术范围内的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应该以权利要求的保护范围为准。
Claims (10)
1.一种行为数据的分析方法,其特征在于,包括:
获取行为数据字段;所述行为数据字段中至少包括目标用户标识;
基于位图索引信息,确定所述目标用户标识在目标行为数据位图的各比特位中对应的目标比特位,并将所述目标比特位当前存储的数值置为第一预设数值;
在检测到行为数据分析指令的情况下,根据所述目标行为数据位图的各比特位当前分别存储的数值,确定行为数据分析结果。
2.根据权利要求1所述的行为数据的分析方法,其特征在于,所述行为数据字段中还包括目标业务标识;所述基于位图索引信息,确定所述目标用户标识在目标行为数据位图的各比特位中对应的目标比特位之前,所述方法还包括:
基于所述目标业务标识,从各候选行为数据位图中确定所述目标行为数据位图。
3.根据权利要求2所述的行为数据的分析方法,其特征在于,所述方法还包括:
在获取到行为数据位图配置请求的情况下,基于所述行为数据位图配置请求中携带的待配置业务标识,构建待配置行为数据位图;
将所述待配置行为数据位图添加至所述各候选行为数据位图中,并对所述待配置行为数据位图和所述待配置业务标识进行关联。
4.根据权利要求1所述的行为数据的分析方法,其特征在于,所述确定行为数据分析结果之后,所述方法还包括:
对所述目标行为数据位图进行初始化操作,将所述目标行为数据位图的各比特位当前分别存储的数值均置为第二预设数值。
5.根据权利要求1所述的行为数据的分析方法,其特征在于,所述方法还包括:
在获取到索引配置请求的情况下,基于所述索引配置请求中携带有待配置用户标识,在所述目标行为数据位图中确定待配置比特位,并根据所述待配置用户标识和所述待配置比特位的对应关系对所述位图索引信息进行更新。
6.根据权利要求1所述的行为数据的分析方法,其特征在于,所述方法还包括:
创建周期任务;所述周期任务的任务内容包括:每间隔预设时长触发一次所述行为数据分析指令。
7.根据权利要求1-6任意一项所述的行为数据的分析方法,其特征在于,所述基于位图索引信息,确定所述目标用户标识在目标行为数据位图的各比特位中对应的目标比特位之后,所述方法还包括:
确定所述目标比特位当前存储的数值是否为第二预设数值;
在确定所述目标比特位当前存储的数值为所述第二预设数值的情况下,触发执行将所述目标比特位当前存储的数值置为所述第一预设数值的操作;
在确定所述目标比特位当前存储的数值不是所述第二预设数值的情况下,将所述目标比特位当前存储的数值置为第三预设数值。
8.一种行为数据的分析装置,其特征在于,包括:
获取模块,用于获取行为数据字段;所述行为数据字段中至少包括目标用户标识;
赋值模块,用于基于位图索引信息,确定所述目标用户标识在目标行为数据位图的各比特位中对应的目标比特位,并将所述目标比特位当前存储的数值置为第一预设数值;
确定模块,用于在检测到行为数据分析指令的情况下,根据所述目标行为数据位图的各比特位当前分别存储的数值,确定行为数据分析结果。
9.一种行为数据的分析设备,其特征在于,包括存储器、处理器、总线和通信接口;所述存储器用于存储计算机执行指令,所述处理器与所述存储器通过所述总线连接;
当所述行为数据的分析设备运行时,处理器执行所述存储器存储的所述计算机执行指令,以使所述行为数据的分析设备执行如权利要求1-7任意一项所述的行为数据的分析方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有指令,当计算机执行所述指令时,使得所述计算机执行如权利要求1-7任意一项所述的行为数据的分析方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310449367.0A CN116467315A (zh) | 2023-04-24 | 2023-04-24 | 行为数据的分析方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310449367.0A CN116467315A (zh) | 2023-04-24 | 2023-04-24 | 行为数据的分析方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116467315A true CN116467315A (zh) | 2023-07-21 |
Family
ID=87173248
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310449367.0A Pending CN116467315A (zh) | 2023-04-24 | 2023-04-24 | 行为数据的分析方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116467315A (zh) |
-
2023
- 2023-04-24 CN CN202310449367.0A patent/CN116467315A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11853779B2 (en) | System and method for distributed security forensics | |
CN110297689B (zh) | 智能合约执行方法、装置、设备及介质 | |
CN108776934B (zh) | 分布式数据计算方法、装置、计算机设备及可读存储介质 | |
US9626224B2 (en) | Optimizing available computing resources within a virtual environment | |
CN113243005A (zh) | 按需网络代码执行系统中的基于性能的硬件仿真 | |
US8782635B2 (en) | Reconfiguration of computer system to allow application installation | |
CN111767143A (zh) | 交易数据处理方法、装置、设备及系统 | |
US20170116244A1 (en) | Bloom filter index for device discovery | |
CN109672722B (zh) | 数据部署方法及装置、计算机存储介质和电子设备 | |
CN111857539A (zh) | 用于管理存储系统的方法、设备和计算机程序产品 | |
US20150278543A1 (en) | System and Method for Optimizing Storage of File System Access Control Lists | |
CN115599448A (zh) | 一种基于linux内核ko模块的加载方法及装置 | |
CN111885184A (zh) | 高并发场景下热点访问关键字处理方法和装置 | |
CN109586970B (zh) | 资源分配方法、装置及系统 | |
CN110389817B (zh) | 多云系统的调度方法、装置和计算机可读介质 | |
CN112052144B (zh) | 信息管理方法、装置、电子设备及存储介质 | |
US11023156B2 (en) | Dynamic API allocation based on data-tagging | |
CN111475424B (zh) | 用于管理存储系统的方法、设备和计算机可读存储介质 | |
CN111338958A (zh) | 一种测试用例的参数生成方法、装置及终端设备 | |
CN109495432B (zh) | 一种匿名账户的鉴权方法及服务器 | |
CN116467315A (zh) | 行为数据的分析方法、装置、设备及存储介质 | |
CN109992468B (zh) | 一种进程性能分析方法、装置、系统及计算机存储介质 | |
CN116185492A (zh) | 多平台sdk构建方法、装置、设备、系统及计算机可读介质 | |
CN113132241B (zh) | Acl模板动态配置方法及装置 | |
CN114637969A (zh) | 目标对象的鉴权方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |