CN116842050A - 多维度状态数据处理方法、装置、计算机设备及存储介质 - Google Patents
多维度状态数据处理方法、装置、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN116842050A CN116842050A CN202310742245.0A CN202310742245A CN116842050A CN 116842050 A CN116842050 A CN 116842050A CN 202310742245 A CN202310742245 A CN 202310742245A CN 116842050 A CN116842050 A CN 116842050A
- Authority
- CN
- China
- Prior art keywords
- state
- state change
- dimension
- data
- record
- 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
- 238000003672 processing method Methods 0.000 title claims abstract description 21
- 230000008859 change Effects 0.000 claims abstract description 198
- 238000012545 processing Methods 0.000 claims abstract description 35
- 238000000034 method Methods 0.000 claims abstract description 16
- 238000004458 analytical method Methods 0.000 claims description 17
- 238000011156 evaluation Methods 0.000 claims description 14
- 230000000295 complement effect Effects 0.000 claims description 2
- 238000005516 engineering process Methods 0.000 abstract description 4
- 238000004364 calculation method Methods 0.000 description 6
- 230000000694 effects Effects 0.000 description 5
- 238000004891 communication Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 239000008186 active pharmaceutical agent Substances 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 235000019800 disodium phosphate Nutrition 0.000 description 1
- 229920001971 elastomer Polymers 0.000 description 1
- 239000000806 elastomer Substances 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 230000003068 static effect Effects 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/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
-
- 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
-
- 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/24—Querying
- G06F16/245—Query processing
- G06F16/2453—Query optimisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/546—Message passing systems or structures, e.g. queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/54—Indexing scheme relating to G06F9/54
- G06F2209/548—Queue
Abstract
本申请实施例属于大数据以及金融科技领域,涉及一种多维度状态数据处理方法、装置、计算机设备及存储介质,方法包括:通过数据消费服务获取目标对象的多维度状态数据;对于每个维度,通过数据消费服务确定维度的状态数据中的状态变化点,并根据识别到的状态变化点生成状态变化记录;将各维度的状态变化记录存储到redis数据库;接收针对目标对象的查询指令,并根据查询指令对redis数据库中的状态变化记录进行查询,得到状态查询结果。此外,本申请还涉及区块链技术,状态变化记录可存储于区块链中。本申请降低了多维度状态数据带来的存储压力,并提高了相应的数据处理速度。
Description
技术领域
本申请涉及大数据技术以及金融科技领域,尤其涉及一种多维度状态数据处理方法、装置、计算机设备及存储介质。
背景技术
由于业务的复杂性,进行中的业务会产生多维度的状态数据。例如,在一些特定的商业活动中,需要对网约车司机的上下线时间进行采集与监控,以对司机进行时长奖励;对司机的位置进行采集与监控,以判断司机是否在预设的围栏区域内;对司机的活动模式进行采集与监控。对这些状态数据需要进行存储、计算等处理。
在过去,通常采用ES数据库(Elasticsearch,简写为ES,是位于Elastic Stack核心的分布式搜索和分析引擎)对多维度状态数据进行实时存储与查询。当被检测对象数量较多时,会产生大量状态数据,增大存储压力;并且,ES的异步查询机制会导致状态数据的查询速度变慢,影响状态数据的计算处理。
发明内容
本申请实施例的目的在于提出一种多维度状态数据处理方法、装置、计算机设备及存储介质,以解决大量的多维度状态数据带来的存储和查询计算压力。
为了解决上述技术问题,本申请实施例提供一种多维度状态数据处理方法,采用了如下所述的技术方案:
通过数据消费服务获取目标对象的多维度状态数据;
对于每个维度,通过所述数据消费服务确定所述维度的状态数据中的状态变化点,并根据识别到的状态变化点生成状态变化记录;
将各维度的状态变化记录存储到redis数据库;
接收针对所述目标对象的查询指令,并根据所述查询指令对所述redis数据库中的状态变化记录进行查询,得到状态查询结果。
为了解决上述技术问题,本申请实施例还提供一种多维度状态数据处理装置,采用了如下所述的技术方案:
数据获取模块,用于通过数据消费服务获取目标对象的多维度状态数据;
记录生成模块,用于对于每个维度,通过所述数据消费服务确定所述维度的状态数据中的状态变化点,并根据识别到的状态变化点生成状态变化记录;
记录存储模块,用于将各维度的状态变化记录存储到redis数据库;
记录查询模块,用于接收针对所述目标对象的查询指令,并根据所述查询指令对所述redis数据库中的状态变化记录进行查询,得到状态查询结果。
为了解决上述技术问题,本申请实施例还提供一种计算机设备,采用了如下所述的技术方案:
通过数据消费服务获取目标对象的多维度状态数据;
对于每个维度,通过所述数据消费服务确定所述维度的状态数据中的状态变化点,并根据识别到的状态变化点生成状态变化记录;
将各维度的状态变化记录存储到redis数据库;
接收针对所述目标对象的查询指令,并根据所述查询指令对所述redis数据库中的状态变化记录进行查询,得到状态查询结果。
为了解决上述技术问题,本申请实施例还提供一种计算机可读存储介质,采用了如下所述的技术方案:
通过数据消费服务获取目标对象的多维度状态数据;
对于每个维度,通过所述数据消费服务确定所述维度的状态数据中的状态变化点,并根据识别到的状态变化点生成状态变化记录;
将各维度的状态变化记录存储到redis数据库;
接收针对所述目标对象的查询指令,并根据所述查询指令对所述redis数据库中的状态变化记录进行查询,得到状态查询结果。
与现有技术相比,本申请实施例主要有以下有益效果:通过数据消费服务获取目标对象的多维度状态数据;对于每个维度,确定维度的状态数据中的状态变化点,状态变化点是目标对象在该维度下发生状态变化的时间点,是较为关键的时间点;根据识别到的状态变化点生成状态变化记录,并将各维度的状态变化记录存储到redis数据库,仅保存多维度状态数据中的关键数据,减少了存储压力;接收针对目标对象的查询指令,根据查询指令对redis数据库中的状态变化记录进行查询,得到状态查询结果,从而获取到目标对象在某维度下的状态分布,基于redis的查询与处理,提高了查询速度,从而提高了对多维度状态数据的处理速度。
附图说明
为了更清楚地说明本申请中的方案,下面将对本申请实施例描述中所需要使用的附图作一个简单介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请可以应用于其中的示例性系统架构图;
图2是根据本申请的多维度状态数据处理方法的一个实施例的流程图;
图3是根据本申请的多维度状态数据处理装置的一个实施例的结构示意图;
图4是根据本申请的计算机设备的一个实施例的结构示意图。
具体实施方式
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同;本文中在申请的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本申请;本申请的说明书和权利要求书及上述附图说明中的术语“包括”和“具有”以及它们的任何变形,意图在于覆盖不排他的包含。本申请的说明书和权利要求书或上述附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
为了使本技术领域的人员更好地理解本申请方案,下面将结合附图,对本申请实施例中的技术方案进行清楚、完整地描述。
如图1所示,系统架构100可以包括终端设备101、102、103,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用终端设备101、102、103通过网络104与服务器105交互,以接收或发送消息等。终端设备101、102、103上可以安装有各种通讯客户端应用,例如网页浏览器应用、购物类应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件等。
终端设备101、102、103可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、电子书阅读器、MP3播放器(Moving Picture ExpertsGroup Audio Layer III,动态影像专家压缩标准音频层面3)、MP4(Moving PictureExperts Group Audio Layer IV,动态影像专家压缩标准音频层面4)播放器、膝上型便携计算机和台式计算机等等。
服务器105可以是提供各种服务的服务器,例如对终端设备101、102、103上显示的页面提供支持的后台服务器。
需要说明的是,本申请实施例所提供的多维度状态数据处理方法一般由服务器执行,相应地,多维度状态数据处理装置一般设置于服务器中。
应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
继续参考图2,示出了根据本申请的多维度状态数据处理方法的一个实施例的流程图。所述的多维度状态数据处理方法,包括以下步骤:
步骤S201,通过数据消费服务获取目标对象的多维度状态数据。
在本实施例中,多维度状态数据处理方法运行于其上的电子设备(例如图1所示的服务器)可以通过有线连接方式或者无线连接方式与终端设备进行通信。需要指出的是,上述无线连接方式可以包括但不限于3G/4G/5G连接、WiFi连接、蓝牙连接、WiMAX连接、Zigbee连接、UWB(ultra wideband)连接、以及其他现在已知或将来开发的无线连接方式。
具体地,数据消费服务是处理数据的服务,可以通过数据消费服务获取目标对象的多维度状态数据。目标对象是业务活动中,例如一些商业活动中,需要被监测的对象,目标对象具有被监测的维度,每个维度都具有状态数据;例如,在网约车业务中,目标对象可以是司机,司机的上下线时间、司机驾驶车辆的位置以及司机采用的活动模式,都可以是对司机进行监测与考评的维度。
进一步的,上述步骤S201可以包括:通过数据消费服务访问各消息队列,其中,数据消费服务基于spring服务构建,消息队列与状态维度一一对应;从各消息队列中分别获取目标对象的状态数据,并基于获取到的状态数据得到多维度状态数据。
具体地,本申请设置了多个消息队列,消息队列与状态维度一一对应,即,每个消息队列存储一种维度下的状态数据。例如,位置队列locate_MQ存放位置信息,上下线队列online/offline_MQ存放上下线时间,听单队列listen_type_MQ存放司机的听单模式。
数据消费服务基于spring服务构建,spring服务可以运行在多个节点上。可以由spring服务对消息队列中的消息进行消费,从各消息队列中分别获取目标对象的状态数据,并基于获取到的状态数据可以组成目标对象的多维度状态数据。
本实施例中,通过数据消费服务访问各消息队列,数据消费服务基于spring服务构建,可以运行在多个节点上,提高了数据处理效率;消息队列与状态维度一一对应,从而从各消息队列中获取到目标对象各维度的状态数据,完成多维度状态数据的获取。
步骤S202,对于每个维度,通过数据消费服务确定维度的状态数据中的状态变化点,并根据识别到的状态变化点生成状态变化记录。
具体地,每个维度下的状态数据都可以包含多个时间点,每个时间点具有一个状态,例如,在司机的上下线维度中,每个时间点的状态为司机上线或者下线。
由于目标对象在每个维度下具有多于一种状态,因此,目标对象在某维度下可以具有状态变化。状态变化点是指相较于前一个时间点,自身状态发生变化的时间点。例如,司机的上下线状态在时间点101062之前为上线,在下一个相邻的时间点101063变为下线,则在时间点101063发生状态变化,将时间点101063记为上下线维度中的一个状态变化点。可以理解,某维度下的状态变化点可以有多个,也可以只有一个,也可以没有。
根据识别到的状态变化点生成状态变化记录。状态变化记录包含状态变化点的时间戳以及状态码,其中,状态码用于对状态进行标识。例如,在上下线维度中,状态码1表示司机上线,状态码0表示司机下线。
步骤S203,将各维度的状态变化记录存储到redis数据库。
具体地,状态变化记录中的状态变化点是各时间点中的关键点,为了节约存储空间,本申请可以仅将目标对象在各维度下的状态变化记录存储到redis数据库,而不是对多维度状态数据进行全量存储。
Redis(Remote Dictionary Server),即远程字典服务,是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API,它具有很高的性能。
步骤S204,接收针对目标对象的查询指令,并根据查询指令对redis数据库中的状态变化记录进行查询,得到状态查询结果。
具体地,本申请设置有查询服务query_service,用户(例如业务人员)可以通过查询服务发起针对目标对象的查询指令,以获取目标对象在各维度下的状态分布。
数据消费服务根据查询指令对redis数据库中的状态变化记录进行查询,可以查询目标对象在指定维度下的状态变化记录,并生成状态查询结果。由于redis是基于缓存的,将各维度的状态变化记录存储到redis数据库,并对redis数据库进行查询,提高了查询速度,进而提高了对多维度状态数据的处理速度和处理效率。
本实施例中,通过数据消费服务获取目标对象的多维度状态数据;对于每个维度,确定维度的状态数据中的状态变化点,状态变化点是目标对象在该维度下发生状态变化的时间点,是较为关键的时间点;根据识别到的状态变化点生成状态变化记录,并将各维度的状态变化记录存储到redis数据库,仅保存多维度状态数据中的关键数据,减少了存储压力;接收针对目标对象的查询指令,根据查询指令对redis数据库中的状态变化记录进行查询,得到状态查询结果,从而获取到目标对象在某维度下的状态分布,基于redis的查询与处理,提高了查询速度,从而提高了对多维度状态数据的处理速度。
进一步的,上述步骤S202可以包括:对于每个维度,获取与维度相对应的状态评估标准;根据状态评估标准,通过数据消费服务确定维度的状态数据中每个时间点的状态;根据各时间点的状态,在各时间点中确定发生状态变化的时间点;将发生状态变化的时间点确定为状态变化点,并根据确定的状态变化点生成状态变化记录,状态变化记录包含状态变化点的时间戳以及状态码。
具体地,对于每个维度,获取与维度相对应的状态评估标准,状态评估标准用于对原始的状态数据进行状态确定。例如,在位置维度下的状态数据中,每个时间点记录的是车辆的位置信息,位置维度下的状态评估标准是围栏坐标,如果位置信息处于围栏之内,则位置状态是有效/进圈,否则位置状态是无效/出圈。
根据状态评估标准,通过数据消费服务确定状态数据中每个时间点的状态;然后根据各时间点的状态,在各时间点中确定发生状态变化的时间点,将发生状态变化的时间点确定为状态变化点,并根据各状态变化点生成状态变化记录,状态变化记录包含状态变化点的时间戳以及状态码,时间戳用于表示状态变化点。
本实施例中,对于每个维度,获取相应的状态评估标准;根据状态评估标准,对状态数据中每个时间点的数据进行解析和转化,得到每个时间点简单易读的状态;根据各时间点的状态,在各时间点中确定发生状态变化的时间点,得到状态变化点,并根据状态变化点生成状态变化记录,状态变化记录包含状态变化点的时间戳以及状态码,从而对状态数据中的关键信息进行筛选与记录。
进一步的,上述根据查询指令对redis数据库中的状态变化记录进行查询,得到状态查询结果的步骤可以包括:根据查询指令中的对象标识、至少一个目标维度和时间信息,对redis数据库进行查询,得到各目标维度的状态变化记录;对各目标维度的状态变化记录进行合并计算,得到整体状态记录,并根据整体状态记录生成查询结果。
具体地,redis数据库是Key-Value数据库,其中存储的状态变化记录的key的形式为:对象标识_维度_日期,value的形式为:时间戳_状态码。
查询指令中具有对象标识、至少一个目标维度和时间信息(以日期表示),从而可以根据查询指令,从redis数据库中查询得到目标对象在目标日期、目标维度下的状态变化记录。
用户除了查询redis数据库中存储的状态变化记录,还可以对查询到的各目标维度的状态变化记录进行合并计算,得到整体状态记录;整体状态记录是指综合考虑多个目标维度时目标对象的状态。例如,当用户需要根据上下线维度和位置维度对司机的状态进行判断,只有司机上线且处于围栏区域内时,司机的状态才有效,此时,需要对查询指令进行配置,使得先查询司机在上下线维度的状态变化记录以及位置维度的状态变化记录,然后再对上下线维度的状态变化记录和位置维度的状态变化记录进行合并计算,得到整体状态记录。最后根据整体状态记录生成查询结果。
本实施例中,根据查询指令对redis数据库进行查询,得到各目标维度的状态变化记录;对各目标维度的状态变化记录进行合并计算,得到整体状态记录,根据整体状态记录生成查询结果,实现了从多个维度对目标对象进行状态处理。
进一步的,上述对各目标维度的状态变化记录进行合并计算,得到整体状态记录的步骤可以包括:为每个目标维度的状态变化记录分配遍历指针;通过各遍历指针同时遍历各目标维度的状态变化记录,并根据各遍历指针遍历到的状态码生成整体状态记录。
具体地,为每个目标维度的状态变化记录分配遍历指针,指针用于读取各目标维度的状态变化记录。
通过各遍历指针同时遍历各目标维度的状态变化记录,每个指针遍历到状态码,根据状态码判断目标对象当前状态是否有效(状态码判断状态是否有效属于业务范畴,并且可以灵活配置,例如在上下线维度,当司机上线时为有效,状态码记为1,否则记为0;在位置维度,当司机处于围栏区域内时为有效,状态码记为1,否则记为0;在听单维度,当司机处于实时单模式为有效,状态码记为1,否则记为0)。
遍历指针遍历状态变化记录,可以理解为将状态变化记录视作一条线段,线段上有的子线段为有效,有的子线段为无效。遍历指针在线段上移动,可以得出在当前位置状态是否有效。
根据各遍历指针遍历到的状态码生成整体状态记录,通常,当各目标维度的状态码均表示有效时,整体状态为有效;否则,整体状态为无效;即,统一状态码为0或1,将各目标维度的状态合并到一维进行计算,得到整体状态记录。需要指出的是,判断整体状态时使用的状态码,应具有相同的时间戳。
本实施例中,为每个目标维度的状态变化记录分配遍历指针;通过各遍历指针同时遍历各目标维度的状态变化记录,并根据各遍历指针遍历到的状态码生成整体状态记录,从多个维度对目标对象的状态进行判断,满足了更复杂的业务需求。
进一步的,在上述为每个目标维度的状态变化记录分配遍历指针的步骤之前,还可以包括:判断各目标维度的状态变化记录是否存在截断时间点;当存在截断时间点时,从各目标维度的状态变化记录中,获取截断时间点所对应相邻时间点的状态;根据获取到的相邻时间点的状态,确定各目标维度的状态变化记录在截断时间点处的状态,以对各目标维度的状态变化记录进行补全。
具体地,redis数据库按天存储,如果各目标维度的状态变化记录跨天,则存在截断时间点,需要进行状态的延续和补全。
从各目标维度的状态变化记录中,获取截断时间点所对应相邻时间点的状态;相邻时间点是指截断时间点的前后两个时间点,通过状态变化记录可以获取到各目标维度下两个相邻时间点的状态,从而可以通过两个相邻时间点在各目标维度下的状态,推出截断时间点在各目标维度下的状态,从而对各目标维度的状态变化记录进行补全。例如,在上下线维度中,两个相邻时间点均为上线状态,则截断时间点也为上线状态。
本实施例中,当各目标维度的状态变化记录存在截断时间点时,根据各目标维度的状态变化记录中截断时间点所对应相邻时间点的状态,确定各目标维度的状态变化记录在截断时间点处的状态,从而对各目标维度的状态变化记录进行补全,避免了对状态变化记录遍历时出错。
进一步的,上述根据整体状态记录生成查询结果的步骤可以包括:基于整体状态记录生成目标对象的业务分析结果;根据整体状态记录和业务分析结果生成状态查询结果;将状态查询结果发送至目标账号所登录的终端。
具体地,基于整体状态记录生成目标对象的业务分析结果,业务分析结果可以基于业务规则生成,例如,当司机在某天的有效状态超过8小时,则生成表示司机非常优秀的业务分析结果。
根据整体状态记录和业务分析结果生成状态查询结果,并将状态查询结果发送至目标账号所登录的终端,其中,目标账号可以是用户例如业务人员所使用的账号,以便对目标对象的状态进行反馈。
本实施例中,基于整体状态记录生成业务层面的业务分析结果;根据整体状态记录和业务分析结果生成状态查询结果,将状态查询结果发送至目标账号所登录的终端,实现了多维度状态数据的完整处理。
需要强调的是,为进一步保证上述各维度的状态变化记录的私密和安全性,上述各维度的状态变化记录还可以存储于一区块链的节点中。
本申请所指区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层等。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机可读指令来指令相关的硬件来完成,该计算机可读指令可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,前述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)等非易失性存储介质,或随机存储记忆体(Random Access Memory,RAM)等。
应该理解的是,虽然附图的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,附图的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
进一步参考图3,作为对上述图2所示方法的实现,本申请提供了一种多维度状态数据处理装置的一个实施例,该装置实施例与图2所示的方法实施例相对应,该装置具体可以应用于各种电子设备中。
如图3所示,本实施例所述的多维度状态数据处理装置300包括:数据获取模块301、记录生成模块302、记录存储模块303以及记录查询模块304,其中:
数据获取模块301,用于通过数据消费服务获取目标对象的多维度状态数据。
记录生成模块302,用于对于每个维度,通过数据消费服务确定维度的状态数据中的状态变化点,并根据识别到的状态变化点生成状态变化记录。
记录存储模块303,用于将各维度的状态变化记录存储到redis数据库。
记录查询模块304,用于接收针对目标对象的查询指令,并根据查询指令对redis数据库中的状态变化记录进行查询,得到状态查询结果。
本实施例中,通过数据消费服务获取目标对象的多维度状态数据;对于每个维度,确定维度的状态数据中的状态变化点,状态变化点是目标对象在该维度下发生状态变化的时间点,是较为关键的时间点;根据识别到的状态变化点生成状态变化记录,并将各维度的状态变化记录存储到redis数据库,仅保存多维度状态数据中的关键数据,减少了存储压力;接收针对目标对象的查询指令,根据查询指令对redis数据库中的状态变化记录进行查询,得到状态查询结果,从而获取到目标对象在某维度下的状态分布,基于redis的查询与处理,提高了查询速度,从而提高了对多维度状态数据的处理速度。
在本实施例的一些可选的实现方式中,数据获取模块301可以包括:队列访问子模块以及数据获取子模块,其中:
队列访问子模块,用于通过数据消费服务访问各消息队列,其中,数据消费服务基于spring服务构建,消息队列与状态维度一一对应。
数据获取子模块,用于从各消息队列中分别获取目标对象的状态数据,并基于获取到的状态数据得到多维度状态数据。
本实施例中,通过数据消费服务访问各消息队列,数据消费服务基于spring服务构建,可以运行在多个节点上,提高了数据处理效率;消息队列与状态维度一一对应,从而从各消息队列中获取到目标对象各维度的状态数据,完成多维度状态数据的获取。
在本实施例的一些可选的实现方式中,记录生成模块302可以包括:标准获取子模块、状态确定子模块、变化确定子模块以及记录生成子模块,其中:
标准获取子模块,用于对于每个维度,获取与维度相对应的状态评估标准。
状态确定子模块,用于根据状态评估标准,通过数据消费服务确定维度的状态数据中每个时间点的状态。
变化确定子模块,用于根据各时间点的状态,在各时间点中确定发生状态变化的时间点。
记录生成子模块,用于将发生状态变化的时间点确定为状态变化点,并根据确定的状态变化点生成状态变化记录,状态变化记录包含状态变化点的时间戳以及状态码。
本实施例中,对于每个维度,获取相应的状态评估标准;根据状态评估标准,对状态数据中每个时间点的数据进行解析和转化,得到每个时间点简单易读的状态;根据各时间点的状态,在各时间点中确定发生状态变化的时间点,得到状态变化点,并根据状态变化点生成状态变化记录,状态变化记录包含状态变化点的时间戳以及状态码,从而对状态数据中的关键信息进行筛选与记录。
在本实施例的一些可选的实现方式中,记录查询模块304可以包括:查询子模块以及结果生成子模块,其中:
查询子模块,用于根据查询指令中的对象标识、至少一个目标维度和时间信息,对redis数据库进行查询,得到各目标维度的状态变化记录。
结果生成子模块,用于对各目标维度的状态变化记录进行合并计算,得到整体状态记录,并根据整体状态记录生成查询结果。
本实施例中,根据查询指令对redis数据库进行查询,得到各目标维度的状态变化记录;对各目标维度的状态变化记录进行合并计算,得到整体状态记录,根据整体状态记录生成查询结果,实现了从多个维度对目标对象进行状态处理。
在本实施例的一些可选的实现方式中,结果生成子模块可以包括:指针分配单元以及记录生成单元,其中:
指针分配单元,用于为每个目标维度的状态变化记录分配遍历指针。
记录生成单元,用于通过各遍历指针同时遍历各目标维度的状态变化记录,并根据各遍历指针遍历到的状态码生成整体状态记录。
本实施例中,为每个目标维度的状态变化记录分配遍历指针;通过各遍历指针同时遍历各目标维度的状态变化记录,并根据各遍历指针遍历到的状态码生成整体状态记录,从多个维度对目标对象的状态进行判断,满足了更复杂的业务需求。
在本实施例的另一些可选的实现方式中,结果生成子模块可以包括:截断判断单元、状态获取单元以及记录补全单元,其中:
截断判断单元,用于判断各目标维度的状态变化记录是否存在截断时间点;
状态获取单元,用于当存在截断时间点时,从各目标维度的状态变化记录中,获取截断时间点所对应相邻时间点的状态;
记录补全单元,用于根据获取到的相邻时间点的状态,确定各目标维度的状态变化记录在截断时间点处的状态,以对各目标维度的状态变化记录进行补全。
本实施例中,当各目标维度的状态变化记录存在截断时间点时,根据各目标维度的状态变化记录中截断时间点所对应相邻时间点的状态,确定各目标维度的状态变化记录在截断时间点处的状态,从而对各目标维度的状态变化记录进行补全,避免了对状态变化记录遍历时出错。
在本实施例的又一些可选的实现方式中,结果生成子模块还可以包括:分析生成单元、结果生成单元以及结果发送单元,其中:
分析生成单元,用于基于整体状态记录生成目标对象的业务分析结果。
结果生成单元,用于根据整体状态记录和业务分析结果生成状态查询结果。
结果发送单元,用于将状态查询结果发送至目标账号所登录的终端。
本实施例中,基于整体状态记录生成业务层面的业务分析结果;根据整体状态记录和业务分析结果生成状态查询结果,将状态查询结果发送至目标账号所登录的终端,实现了多维度状态数据的完整处理。
为解决上述技术问题,本申请实施例还提供计算机设备。具体请参阅图4,图4为本实施例计算机设备基本结构框图。
所述计算机设备4包括通过系统总线相互通信连接存储器41、处理器42、网络接口43。需要指出的是,图中仅示出了具有组件41-43的计算机设备4,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。其中,本技术领域技术人员可以理解,这里的计算机设备是一种能够按照事先设定或存储的指令,自动进行数值计算和/或信息处理的设备,其硬件包括但不限于微处理器、专用集成电路(ApplicationSpecific Integrated Circuit,ASIC)、可编程门阵列(Field-Programmable GateArray,FPGA)、数字处理器(Digital Signal Processor,DSP)、嵌入式设备等。
所述计算机设备可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述计算机设备可以与用户通过键盘、鼠标、遥控器、触摸板或声控设备等方式进行人机交互。
所述存储器41至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等。在一些实施例中,所述存储器41可以是所述计算机设备4的内部存储单元,例如该计算机设备4的硬盘或内存。在另一些实施例中,所述存储器41也可以是所述计算机设备4的外部存储设备,例如该计算机设备4上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(FlashCard)等。当然,所述存储器41还可以既包括所述计算机设备4的内部存储单元也包括其外部存储设备。本实施例中,所述存储器41通常用于存储安装于所述计算机设备4的操作系统和各类应用软件,例如多维度状态数据处理方法的计算机可读指令等。此外,所述存储器41还可以用于暂时地存储已经输出或者将要输出的各类数据。
所述处理器42在一些实施例中可以是中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器42通常用于控制所述计算机设备4的总体操作。本实施例中,所述处理器42用于运行所述存储器41中存储的计算机可读指令或者处理数据,例如运行所述多维度状态数据处理方法的计算机可读指令。
所述网络接口43可包括无线网络接口或有线网络接口,该网络接口43通常用于在所述计算机设备4与其他电子设备之间建立通信连接。
本实施例中提供的计算机设备可以执行上述多维度状态数据处理方法。此处多维度状态数据处理方法可以是上述各个实施例的多维度状态数据处理方法。
本实施例中,通过数据消费服务获取目标对象的多维度状态数据;对于每个维度,确定维度的状态数据中的状态变化点,状态变化点是目标对象在该维度下发生状态变化的时间点,是较为关键的时间点;根据识别到的状态变化点生成状态变化记录,并将各维度的状态变化记录存储到redis数据库,仅保存多维度状态数据中的关键数据,减少了存储压力;接收针对目标对象的查询指令,根据查询指令对redis数据库中的状态变化记录进行查询,得到状态查询结果,从而获取到目标对象在某维度下的状态分布,基于redis的查询与处理,提高了查询速度,从而提高了对多维度状态数据的处理速度。
本申请还提供了另一种实施方式,即提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可读指令,所述计算机可读指令可被至少一个处理器执行,以使所述至少一个处理器执行如上述的多维度状态数据处理方法的步骤。
本实施例中,通过数据消费服务获取目标对象的多维度状态数据;对于每个维度,确定维度的状态数据中的状态变化点,状态变化点是目标对象在该维度下发生状态变化的时间点,是较为关键的时间点;根据识别到的状态变化点生成状态变化记录,并将各维度的状态变化记录存储到redis数据库,仅保存多维度状态数据中的关键数据,减少了存储压力;接收针对目标对象的查询指令,根据查询指令对redis数据库中的状态变化记录进行查询,得到状态查询结果,从而获取到目标对象在某维度下的状态分布,基于redis的查询与处理,提高了查询速度,从而提高了对多维度状态数据的处理速度。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本申请各个实施例所述的方法。
显然,以上所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例,附图中给出了本申请的较佳实施例,但并不限制本申请的专利范围。本申请可以以许多不同的形式来实现,相反地,提供这些实施例的目的是使对本申请的公开内容的理解更加透彻全面。尽管参照前述实施例对本申请进行了详细的说明,对于本领域的技术人员来而言,其依然可以对前述各具体实施方式所记载的技术方案进行修改,或者对其中部分技术特征进行等效替换。凡是利用本申请说明书及附图内容所做的等效结构,直接或间接运用在其他相关的技术领域,均同理在本申请专利保护范围之内。
Claims (10)
1.一种多维度状态数据处理方法,其特征在于,包括下述步骤:
通过数据消费服务获取目标对象的多维度状态数据;
对于每个维度,通过所述数据消费服务确定所述维度的状态数据中的状态变化点,并根据识别到的状态变化点生成状态变化记录;
将各维度的状态变化记录存储到redis数据库;
接收针对所述目标对象的查询指令,并根据所述查询指令对所述redis数据库中的状态变化记录进行查询,得到状态查询结果。
2.根据权利要求1所述的多维度状态数据处理方法,其特征在于,所述通过数据消费服务获取目标对象的多维度状态数据的步骤包括:
通过数据消费服务访问各消息队列,其中,所述数据消费服务基于spring服务构建,消息队列与状态维度一一对应;
从所述各消息队列中分别获取目标对象的状态数据,并基于获取到的状态数据得到多维度状态数据。
3.根据权利要求1所述的多维度状态数据处理方法,其特征在于,所述对于每个维度,通过所述数据消费服务确定所述维度的状态数据中的状态变化点,并根据识别到的状态变化点生成状态变化记录的步骤包括:
对于每个维度,获取与所述维度相对应的状态评估标准;
根据所述状态评估标准,通过所述数据消费服务确定所述维度的状态数据中每个时间点的状态;
根据各时间点的状态,在所述各时间点中确定发生状态变化的时间点;
将所述发生状态变化的时间点确定为状态变化点,并根据确定的状态变化点生成状态变化记录,所述状态变化记录包含所述状态变化点的时间戳以及状态码。
4.根据权利要求3所述的多维度状态数据处理方法,其特征在于,所述根据所述查询指令对所述redis数据库中的状态变化记录进行查询,得到状态查询结果的步骤包括:
根据所述查询指令中的对象标识、至少一个目标维度和时间信息,对所述redis数据库进行查询,得到各目标维度的状态变化记录;
对所述各目标维度的状态变化记录进行合并计算,得到整体状态记录,并根据所述整体状态记录生成查询结果。
5.根据权利要求4所述的多维度状态数据处理方法,其特征在于,所述对所述各目标维度的状态变化记录进行合并计算,得到整体状态记录的步骤包括:
为每个目标维度的状态变化记录分配遍历指针;
通过各遍历指针同时遍历所述各目标维度的状态变化记录,并根据所述各遍历指针遍历到的状态码生成整体状态记录。
6.根据权利要求5所述的多维度状态数据处理方法,其特征在于,在所述为每个目标维度的状态变化记录分配遍历指针的步骤之前,还包括:
判断各目标维度的状态变化记录是否存在截断时间点;
当存在截断时间点时,从所述各目标维度的状态变化记录中,获取所述截断时间点所对应相邻时间点的状态;
根据获取到的相邻时间点的状态,确定所述各目标维度的状态变化记录在所述截断时间点处的状态,以对所述各目标维度的状态变化记录进行补全。
7.根据权利要求5所述的多维度状态数据处理方法,其特征在于,所述根据所述整体状态记录生成查询结果的步骤包括:
基于所述整体状态记录生成所述目标对象的业务分析结果;
根据所述整体状态记录和所述业务分析结果生成状态查询结果;
将所述状态查询结果发送至目标账号所登录的终端。
8.一种多维度状态数据处理装置,其特征在于,包括:
数据获取模块,用于通过数据消费服务获取目标对象的多维度状态数据;
记录生成模块,用于对于每个维度,通过所述数据消费服务确定所述维度的状态数据中的状态变化点,并根据识别到的状态变化点生成状态变化记录;
记录存储模块,用于将各维度的状态变化记录存储到redis数据库;
记录查询模块,用于接收针对所述目标对象的查询指令,并根据所述查询指令对所述redis数据库中的状态变化记录进行查询,得到状态查询结果。
9.一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机可读指令,所述处理器执行所述计算机可读指令时实现如权利要求1至7中任一项所述的多维度状态数据处理方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机可读指令,所述计算机可读指令被处理器执行时实现如权利要求1至7中任一项所述的多维度状态数据处理方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310742245.0A CN116842050A (zh) | 2023-06-20 | 2023-06-20 | 多维度状态数据处理方法、装置、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310742245.0A CN116842050A (zh) | 2023-06-20 | 2023-06-20 | 多维度状态数据处理方法、装置、计算机设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116842050A true CN116842050A (zh) | 2023-10-03 |
Family
ID=88168122
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310742245.0A Pending CN116842050A (zh) | 2023-06-20 | 2023-06-20 | 多维度状态数据处理方法、装置、计算机设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116842050A (zh) |
-
2023
- 2023-06-20 CN CN202310742245.0A patent/CN116842050A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112162965B (zh) | 一种日志数据处理的方法、装置、计算机设备及存储介质 | |
CN111339073A (zh) | 实时数据处理方法、装置、电子设备及可读存储介质 | |
CN112182004A (zh) | 实时查看数据方法、装置、计算机设备及存储介质 | |
CN111752944A (zh) | 数据分摊方法、装置、计算机设备及存储介质 | |
CN113010542A (zh) | 业务数据处理方法、装置、计算机设备及存储介质 | |
CN116450723A (zh) | 数据提取方法、装置、计算机设备及存储介质 | |
CN116842050A (zh) | 多维度状态数据处理方法、装置、计算机设备及存储介质 | |
CN115016890A (zh) | 虚拟机资源分配方法、装置、电子设备及存储介质 | |
CN111143328A (zh) | 一种敏捷商业智能数据构建方法、系统、设备、存储介质 | |
CN112416699A (zh) | 指标数据收集方法及系统 | |
CN112328960B (zh) | 数据运算的优化方法、装置、电子设备及存储介质 | |
CN114650252B (zh) | 基于企业服务总线的路由方法、装置及计算机设备 | |
CN111221817B (zh) | 业务信息数据存储方法、装置、计算机设备及存储介质 | |
CN117851476A (zh) | 查询请求的处理方法、装置、计算机设备及存储介质 | |
CN113590372A (zh) | 基于日志的链路追踪方法、装置、计算机设备及存储介质 | |
CN116611936A (zh) | 数据分析方法、装置、计算机设备及存储介质 | |
CN117390230A (zh) | 数据存储方法、装置、计算机设备及存储介质 | |
CN117785832A (zh) | 日志处理方法、装置、计算机设备及存储介质 | |
CN116821493A (zh) | 消息推送方法、装置、计算机设备及存储介质 | |
CN117743291A (zh) | 数据处理方法、装置、计算机设备及存储介质 | |
CN117827988A (zh) | 一种数据仓库优化方法、装置、设备及其存储介质 | |
CN116401061A (zh) | 资源数据的处理方法、装置、计算机设备及存储介质 | |
CN117272077A (zh) | 数据处理方法、装置、计算机设备及存储介质 | |
CN116028446A (zh) | 时序数据文件化管理方法、装置、设备及其存储介质 | |
CN117251490A (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 |