CN114003568A - 数据处理的方法及相关装置 - Google Patents
数据处理的方法及相关装置 Download PDFInfo
- Publication number
- CN114003568A CN114003568A CN202111232250.4A CN202111232250A CN114003568A CN 114003568 A CN114003568 A CN 114003568A CN 202111232250 A CN202111232250 A CN 202111232250A CN 114003568 A CN114003568 A CN 114003568A
- Authority
- CN
- China
- Prior art keywords
- data
- database
- log
- binary log
- service
- 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 22
- 238000000034 method Methods 0.000 claims abstract description 69
- 230000008569 process Effects 0.000 claims abstract description 24
- 238000012545 processing Methods 0.000 claims description 53
- 230000015654 memory Effects 0.000 claims description 24
- 238000004590 computer program Methods 0.000 claims description 19
- 238000004891 communication Methods 0.000 claims description 15
- 238000013507 mapping Methods 0.000 claims description 11
- 238000013500 data storage Methods 0.000 claims description 7
- 238000004140 cleaning Methods 0.000 claims description 6
- 238000004806 packaging method and process Methods 0.000 claims description 6
- 238000003860 storage Methods 0.000 claims description 6
- 238000012217 deletion Methods 0.000 claims description 3
- 230000037430 deletion Effects 0.000 claims description 3
- 230000002776 aggregation Effects 0.000 claims description 2
- 238000004220 aggregation Methods 0.000 claims description 2
- 238000001914 filtration Methods 0.000 claims description 2
- 238000003780 insertion Methods 0.000 claims description 2
- 230000037431 insertion Effects 0.000 claims description 2
- 230000003362 replicative effect Effects 0.000 claims description 2
- 238000000638 solvent extraction Methods 0.000 claims description 2
- 238000004458 analytical method Methods 0.000 abstract description 15
- 238000011161 development Methods 0.000 abstract description 11
- 230000007246 mechanism Effects 0.000 abstract description 11
- 238000004141 dimensional analysis Methods 0.000 abstract description 6
- 238000010586 diagram Methods 0.000 description 16
- 230000006399 behavior Effects 0.000 description 10
- 230000018109 developmental process Effects 0.000 description 10
- 230000006870 function Effects 0.000 description 8
- 238000012216 screening Methods 0.000 description 7
- 238000007405 data analysis Methods 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 3
- 230000000007 visual effect Effects 0.000 description 3
- 230000003542 behavioural effect Effects 0.000 description 2
- 238000005034 decoration Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000002085 persistent effect Effects 0.000 description 2
- 230000010076 replication Effects 0.000 description 2
- 238000012800 visualization Methods 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 238000007792 addition Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000012512 characterization method Methods 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000005206 flow analysis Methods 0.000 description 1
- 238000011010 flushing procedure Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000003550 marker Substances 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000036651 mood Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 238000012502 risk assessment Methods 0.000 description 1
- 239000004984 smart glass Substances 0.000 description 1
- 230000033772 system development Effects 0.000 description 1
Images
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/10—File systems; File servers
- G06F16/17—Details of further file system functions
- G06F16/1734—Details of monitoring file system events, e.g. by the use of hooks, filter drivers, logs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/16—File or folder operations, e.g. details of user interfaces specifically adapted to file systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/1805—Append-only file systems, e.g. using logs or journals to store data
- G06F16/1815—Journaling file systems
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Debugging And Monitoring (AREA)
Abstract
本申请实施例公开了一种数据处理的方法及相关装置,其中方法的实现包括:数据库把业务操作记录到二进制日志中;数据引擎从数据库中复制二进制日志;数据引擎对二进制日志进行处理,得到目标业务数据;数据引擎将目标业务数据存入数据库的宽表中;服务器根据业务需求对宽表进行封装,得到供用户设备调用的应用软件接口API。采用本申请实施例的方法,数据引擎可以基于主从机制直接从数据库复制业务操作的二进制日志,经过解析得到业务数据,降低了因不同端产生的数据差异性导致的额外开发成本;同时,服务器将报表封装为API供用户设备调用,不仅可以实现将数据可视化的展示给用户,还可以方便业务人员对用户进行多维度分析。
Description
技术领域
本申请涉及数据处理与分析领域,特别是涉及一种数据处理的方法及相关装置。
背景技术
现阶段的客户端相关设计中,实现对来自不同端用户数据分析处理的方式为:开发者收集不同端的用户数据并持久化保存;然后对所采集到的用户数据进行数据处理;开发者需要针对不同端的用户数据抽取共同性及差异性,将其编码到系统中,实现对不同端的用户数据的可视化和数据分析等各项功能。
现阶段的方式中,所获取的不同端的用户数据每接入一个新的平台就需要对其进行兼容处理,且每一项数据处理工作都需要进行侵入式的代码开发和增加新的判断规则,极大地增加了开发人员的工作量。
发明内容
本申请实施例提供了一种数据处理的方法及相关装置,以期实现对数据库中的原始业务数据的有效清洗得到目标业务数据,并且将目标业务数据存入到数据库的宽表中,有服务器进行封装为应用接口,更方便用户或开发人员的远程调用。
第一方面,本申请实施例提供了一种数据处理的方法,其特征在于,所述数据处理方法用于服务器,所述服务器包括数据库和数据引擎;所述方法包括:
所述数据库把业务操作记录到二进制日志中,所述二进制日志用于记录所述业务操作产生的业务数据;
所述数据引擎从所述数据库中复制所述二进制日志;
所述数据引擎对所述二进制日志进行处理,得到目标业务数据;
所述数据引擎将所述目标业务数据存入所述数据库的宽表中,所述宽表是一张将所述目标业务数据相关的数据指标、维度、属性关联在一起的数据库表;
所述服务器根据业务需求对所述宽表进行封装,得到供用户设备调用的应用软件接口API。
第二方面,本申请实施例提供了一种数据处理的装置,其特征在于,包括:
数据处理单元,所述采集单元用于采集不同用户端的用户数据;
数据存储单元,所述数据存储单元用于将业务操作记录到二进制日志中,所述二进制日志用于记录所述业务操作产生的业务数据;
数据引擎单元,所述数据引擎单元用于从所述数据库中复制所述二进制日志;对所述二进制日志进行处理,得到目标业务数据;将所述目标业务数据存入所述数据存储单元的宽表中,所述宽表是一张将所述目标业务数据相关的数据指标、维度、属性关联在一起的数据库表;
数据封装单元,所述数据封装单元用于根据业务需求对所述宽表进行封装,得到供用户设备调用的应用软件接口API。
第三方面,本申请实施例提供了一种电子设备,上述设备包括:
一个或多个处理器;
一个或多个存储器,用于存储程序,
一个或多个通信接口,所述通信接口用于进行无线通信,所述存储器和所述通信接口相互连接,并且完成相互间的通信工作;
一个或多个存储器和程序被配置为,由一个或多个处理器控制所述设备执行如本申请实施例第一方面任一方法中所描述的部分或全部步骤。
第四方面,本申请实施例提供了一种计算机可读存储介质,计算机可读存储介质中存储有用于电子数据交换的计算机程序,计算机程序包括执行指令,执行指令用于执行如本申请实施例第一方面任一方法中所描述的部分或全部步骤。
第五方面,本申请实施例提供了一种计算机程序产品,其中,计算机程序产品包括计算机程序,计算机程序可操作来使计算机执行如本申请实施例第一方面任一方法中所描述的部分或全部步骤。该计算机程序产品可以为一个软件安装包。
可以看出,本申请实施例中,通过数据库把业务操作记录到二进制日志中;数据引擎从数据库中复制二进制日志;数据引擎对二进制日志进行处理,得到目标业务数据;数据引擎将目标业务数据存入数据库的宽表中;服务器根据业务需求对宽表进行封装,得到供用户设备调用的应用软件接口API。采用本申请实施例的方法,数据引擎可以基于主从机制直接从数据库复制业务操作的二进制日志,经过解析得到业务数据,降低了因不同端产生的数据差异性导致的额外开发成本;同时,服务器将报表封装为API供用户设备调用,不仅可以实现将数据可视化的展示给用户,还可以方便业务人员对用户进行多维度分析。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种系统架构的结构示意图;
图2是本申请实施例提供的一种数据处理的方法的流程示意图;
图3是本申请实施例提供的一种数据库主从机制实现数据复制的流程示意图;
图4是本申请实施例提供的一种数据清洗的流程示意图;
图5是本申请实施例提供的一种消息队列数据处理系统的结构示意图;
图6是本申请实施例提供的一种消息队列进行数据处理的流程示意图;
图7是本申请实施例提供的一种数据处理装置的结构示意图;
图8是本申请实施例提供的另一种数据处理装置的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤的过程、方法、系统、产品或设备没有限定于已列出的步骤,而是可选地还包括没有列出的步骤,或可选地还包括对于这些过程、方法、产品或设备固有的其他步骤。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
相关设计中,实现对来自不同端用户数据处理的方式为:开发者收集不同端的用户数据并持久化保存;然后对所采集到的用户数据进行数据处理;开发者需要针对不同端的用户数据抽取共同性及差异性,将其编码到系统中,实现对不同端的用户数据的可视化和数据分析等各项功能。这种方式中,所获取的不同端的用户数据每接入一个新的平台就需要对其进行兼容处理,且每一项数据处理工作都需要进行侵入式的代码开发和增加新的判断规则,极大地增加了开发人员的工作量。
针对上述问题,本申请实施例提出了一种数据处理的方法及装置,通过数据库把业务操作记录到二进制日志中;数据引擎从数据库中复制二进制日志;数据引擎对二进制日志进行处理,得到目标业务数据;数据引擎将目标业务数据存入数据库的宽表中;服务器根据业务需求对宽表进行封装,得到供用户设备调用的应用软件接口API。采用本申请实施例的方法,数据引擎可以基于主从机制直接从数据库复制业务操作的二进制日志,经过解析得到业务数据,降低了因不同端产生的数据差异性导致的额外开发成本;同时,数据引擎针对业务需求从业务数据中获取目标业务数据并制定数据报表存入数据库中,服务器将报表封装为API供业务系统调用,不仅可以实现将数据可视化的展示给用户,还极大地方便了业务人员对用户进行多维度分析。
为了更好理解本发明实施例公开的一种数据处理的方法及装置,下面对本发明实施例进行详细介绍。
下面先对本发明实施例适用的系统架构进行描述。请参阅图1,图1是本发明实施例公开的一种系统架构的结构示意图。如图1所示,该系统架构示意图可以包括服务器设备和终端,其中,服务器设备可以包括但不限于数据库、数据引擎、服务系统以及服务平台等,而终端包括但不限于移动电话、移动电脑、平板电脑、个人数字助理(personal digitalassistant,PDA)、媒体播放器、智能电视、智能手表、智能眼镜、智能手环等用户设备。其中,服务器设备可以通过互联网与终端进行通信连接。
基于此,本申请实施例提供的一种数据处理的方法,请参阅图2,图2是本申请实施例提供的一种数据处理的方法的流程示意图,所述数据处理方法用于服务器,所述服务器包括数据库和数据引擎。如图2所示,该方法包括以下步骤:
步骤201:数据库把业务操作记录到二进制日志中。
具体的,上述二进制日志(binary log,binlog)用于记录业务操作产生的业务数据。
在实际应用中,用户通过在终端选择如应用软件APP、小程序或网页等平台,进行相关操作。具体地,这些操作可以包括但是不限于以下内容:房屋信息浏览、业务人员信息查看、房地产信息检索等。用户在不同端的操作会与服务器端产生信息交互。因此服务器中负责数据采集工作的模块会将采集到的用户的行为数据上传至上述数据库。数据采集是为了获取用户的行为数据,将采集到的行为数据用于用户特征的提取和用户业务风险控制的参考数据源。
进一步地,数据库会对接收到的数据进行相关业务操作,包括但不限于:创建数据表(create)、插入操作(insert)、更新操作(update)、删除操作(insert)等,每个业务操作都以一条记录的形式写入二进制日志文件中,每条记录中都包含了当前记录更新的时间戳、该记录在当前二进制日志文件中的位置点,即偏移量以及与数据库更改操作相关的其他信息,例如:执行时长、操作数据等其它额外信息。
步骤202:数据引擎从数据库中复制二进制日志。
示例性地,数据引擎向数据库发送针对二进制日志的请求消息,该请求消息中包含了目标需求的时间戳。数据库根据该时间戳对应到相应的二进制日志,并将该二进制日志发送至数据引擎。
步骤203:数据引擎对二进制日志进行处理,得到目标业务数据。
示例性地,在步骤202中,数据引擎所获取得二进制日志中记录了当前时间戳,数据库针对用户数据执行的操作。binlog是以二进制形式存储的日志,每个binlog文件头部都是4个字节的标记,值为0xfe0x620x690x6e,即:0xfe后面加上二进制bin表示。文件头之后就是一系列的日志事件,日志事件是binlog文件中的基本单位,即正常情况下binlog按照追加日志事件的形式增长。每个日志事件都是独立单元,没有互相引用的关系。日志事件的事件类型有很多种,其中用于记录数据库业务操作的log_event的事件类型为查询事件。具体地,二进制日志在数据库中的存储形式如表1所示:
表1
文件 | 位置点 | 时间 |
Mysql-bin.003567 | 1000 | 2021-10-19 16:00:00 |
Mysql-bin.004567 | 1200 | 2021-10-19 16:05:00 |
具体地,数据引擎需要对所获取的二进制日志进行解析,得到二进制日志中的业务数据,根据当前的业务需求进行数据清洗处理得到目标业务数据。
步骤204:数据引擎将目标业务数据存入数据库的宽表中。
具体的,上述宽表是一张将目标业务数据相关的数据指标、维度、属性关联在一起的数据库表。根据目标业务数据的不同,也会产生不同的宽表类型。
具体的,每个用户可以用例如:姓名、年龄、工作单位、年收入、购房目标、购房意向地址等等属性来描述,每个属性就是一个维度,每个维度具备自己的取值范围和数据类型。这种按照固定模式描述和储存的数据称为结构化数据。结构化数据的储存方式各有不同。
示例性地,根据上述结构化数据表征的内容不同,可以设置有多个宽表,例如:月活跃用户人数(monthlyactiveuser,MAU)报表、数据报表等类型的宽表。
具体地,上述MAU报表是用于统计一个月内,登录或使用所述数据业务系统的用户数量,其中每个用户的登录次数不重复计算;上述数据报表中至少包含:用户的访问记录、交易记录、以及风险交易数据中的一种或多种,该数据报表可用于地产销售人员对用户进行多维度分析,根据分析结果来为不同的用户提供精确的服务,从而提高服务的质量和效率。
具体地,上述的多维度分析包括以下至少一种:客流分析、成交率分析、风险分析。
步骤205:服务器根据业务需求对宽表进行封装,得到供用户设备调用的应用软件接口API。
具体地,在步骤204中提到,因结构化数据的不同,会有多种类型的宽表。数据引擎将这些不同类型的宽表返回到数据库中。服务器将不同类型的宽表进行封装为应用软件接口,提供给用户或者销售业务人员远程调用。用户或销售人员可通过API接口,实现数据的可视化查询,或通过目标业务数据检索进行客户购房意向分析,从而针对不同用户提供相应的服务。
可以看出,本申请实施例中,通过数据库把业务操作记录到二进制日志中;数据引擎从数据库中复制二进制日志;数据引擎对二进制日志进行处理,得到目标业务数据;数据引擎将目标业务数据存入数据库的宽表中;服务器根据业务需求对宽表进行封装,得到供用户设备调用的应用软件接口API。采用本申请实施例的方法,数据引擎可以基于主从机制直接从数据库复制业务操作的二进制日志,经过解析得到业务数据,降低了因不同端产生的数据差异性导致的额外开发成本;同时,服务器将报表封装为API供用户设备调用,不仅可以实现将数据可视化的展示给用户,还可以方便业务人员对用户进行多维度分析。
在一个可能的示例中,所述业务操作包括以下至少一种:数据表创建、数据插入、数据更新、数据删除;所述业务操作以日志事件的形式写入所述二进制日志中,所述二进制日志包括所述业务操作发生的时间戳、所述日志事件在所述二进制日志中的位置点以及所述业务操作产生的所述业务数据。
示例性地,数据库在对接收到的采集装置采集到的用户数据后,会进行相关业务操作,包括但不限于:创建数据表(create)、插入操作(insert)、更新操作(update)、删除操作(insert)等。
进一步地,业务操作以日志事件的形式写入二进制日志中,二进制日志中记录的内容包括但不限于:执行语句发生时间、执行时长、操作数据等其它额外信息。因此,二进制日志中包含一条或多条日志事件,二进制日志中包含了当前日志事件发生的时间戳、当前日志事件在二进制日志中的偏移量和日志事件对应的业务操作过程所产生的业务数据等信息。
可以看出,在本实施例中,通过二进制日志以记录的形式对数据库在执行业务操作过程中产生的相关信息进行记录,实际应用中,二进制日志可以作为当前数据库的一个备份文件,在数据库出现错误时,可通过二进制日志进行数据恢复;同时,还可以将二进制日志用于从数据库中复制数据,只需利用时间戳查找对应的二进制日志,然后对其解析便可得到数据库在当前时间戳执行的业务操作记录和用户业务数据。有利于数据库的安全性和减少数据查找和复制的工作量。
在一种可能的示例中,所述数据引擎从所述数据库中复制所述二进制日志,所述方法包括:所述数据引擎向所述数据库发送针对所述二进制日志的请求信息,所述请求信息中包含所述时间戳;所述数据库根据所述时间戳确定所述位置点;所述数据库将所述位置点处的所述二进制日志发送至所述数据引擎;所述数据引擎将所述二进制日志复制到中继日志中。
具体地,可以将数据引擎从数据库中复制二进制日志的过程视为数据库主从机制的方式。如图3所示,图3是一种数据库主从机制实现数据复制的流程示意图:
步骤301:主数据库进行业务操作。
具体地,主数据库所执行的业务操作同步骤201中的描述相同,在此不做重复描述。
步骤302:主数据库的日志线程将业务操作写入二进制日志。
步骤303:从数据库利用I/O线程读取主数据库中的二进制日志。
具体地,从数据库通过I/O线程发送请求信息,请求主数据库中的二进制日志。在建立与主数据库的连接后,主数据库会创建一个logdump线程,用于发送二进制日志的内容。在读取二进制日志的操作时,当前线程会对主数据库的二进制日志加锁,读取完成后,当前锁会被释放,以保证数据库的安全性。
步骤304:从数据库把二进制日志复制到中继日志中。
进一步地,I/O线程在接收到来自主数据库的logdump进程发送的二进制日志后,将其保存在本地的中继日志中。
步骤305:从数据库通过数据库线程获取中继日志中的数据。
进一步地,从数据库检测到中继日志中有内容更新后,从中继日志中获取内容并进行解析。
具体地,在本申请的实施例中,将数据库视为主数据库,数据引擎作为从数据库,数据引擎基于主从机制从数据库中获取二进制日志。
可以看出,在本申请实施例中,数据引擎可以基于主从机制直接从数据库复制业务操作的二进制日志,经过解析得到业务数据,降低了因不同端产生的数据差异性导致的额外开发成本。
在一个可能的示例中,所述数据引擎将所述二进制日志复制到中继日志中之后,所述方法还包括:所述数据引擎解析所述中继日志中的所述业务数据。
具体地,业务数据中不仅包含有用户信息包括用户的属性信息和行为信息。其中,属性信息包括但不限于:姓名、性别、年龄、学历等;行为信息包括但不限于:房屋信息浏览、房屋信息检索、意向填写等。
具体地,用户在进行房屋信息浏览时可以查看房屋的详细信息,包括房屋内容、价格、装修、户型、总楼层、所在楼层、朝向、楼龄、备注、对应的置业顾问等信息;进行房屋信息检索可获取的相关信息包括但不限于:面积、小区、地址、类型等信息;在进行相关信息检索后,用户会根据自己的需求进行意向填写,例如:心仪楼层、目标价位、房屋朝向等信息。
进一步地,首先根据属性信息筛选出目标用户以及获得目标用户对应的行为信息;将用户的行为信息进行分类。
示例性地,可以利用证据权重(weight ofevidence,WOE)来对用户的属性信息进行特征分类。通常,一个用户会具有多个不同的特征,每个特征有其对应的特征值,用户是否有购买意向的标签包括有购买意向的客户也即好客户和没有购买意向的客户也即坏客户,可以用0或1来表征好客户或坏客户。将属性特征经过WOE过程转化成数值表示,然后根据数值量化当前特征的关键程度。
具体地,实际应用中可能会出现,将数值型属性转换成类别呈现更有意义,同时能使算法减少噪声的干扰,通过将一定范围内的数值划分成确定的块。例如,对于同一个变量如学历,如果学历为大学本科的群体其购房意愿对应的WOE值是0.2,而学历为硕士的群体其购房意愿对应的WOE值是0.5,则意味着学历为硕士的用户相对于学历为硕士的用户有购买意向的概率更高。需要说明的是,实际应用中对用户数据的分析会融合多种维度去计算,因此,在根据用户属性信息进行WOE分类处理室,需要结合多种数据维度综合计算,然后进行数据筛选可以获得更准确的用户类别。进一步地,针对每一种分类下的用户群进行行为特征分析,得到更加细化的用户分类表。
进一步地,二进制日志中还包括数据库针对用据信息进行的业务操作,例如:数据增加、删除、修改等。数据引擎解析的得到的业务数据可以保持与数据库中的原始数据的结构一致性。
可以看出,本申请实施例中,数据引擎可通过对来自数据库中的二进制日志进行解析,得到与原数据库一致的数据结构类型的业务数据,降低了因不同端产生的数据差异性导致的额外开发成本。同时,综合多种数据维度进行数据的分类和筛选,更加有利于数据分类的准确性。
在一个可能的示例中,所述数据引擎检测到所述中继日志的内容更新,解析所述中继日志中的所述业务数据之前,所述方法还包括:所述数据引擎根据所述业务需求进行规则参数配置,所述规则参数包括:数据来源、数据连接条件、数据过滤条件、数据聚合条件、数据清洗条件以及所述宽表的字段映射配置;所述字段映射配置包括:字段来源、映射规则、分区规则以及字段属性。
具体地,上述规则参数配置是指提供可视化界面供开发人员填写数据处理的规则配置参数或SQL语句,并根据预设的编译规则自动将开发人员填写的规则配置参数编译成配置程序,或解析开发人员填写的SQL语句获取规则配置参数,再将规则配置参数编译成配置程序,并将配置程序写入规则库。
可以看出,本申请实施例中,通过预先设置规则参数,可方便开发人员进行数据的获取和处理,降低开发成本,提高开发效率。
在一个可能的示例中,所述数据引擎对所述二进制日志进行处理,所述方法包括:所述数据引擎根据所述规则参数对所述业务数据进行数据清洗,得到所述目标业务数据。
示例性地,二进制日志中记录了数据库在采集到用户数据后的业务操作,需要将其进行数据清洗,并筛选出我们所需要的目标业务数据后,将其按照一定的规则整理为算法要求的格式。具体过程如图4所示,图4为一种数据清洗的流程示意图:
步骤401:解析业务数据的内容进行用户筛选。
具体地,从内容中得到用户信息,其中,用户信息包括用户的属性信息和行为信息。其中,属性信息包括但不限于:姓名、性别、年龄、学历等;行为信息包括但不限于:房屋信息浏览、房屋信息检索、意向填写等。首先根据属性信息筛选出目标用户以及获得目标用户对应的行为信息;将用户的行为信息进行分类。
具体地,用户在进行房屋信息浏览时可以查看房屋的详细信息,包括房屋内容、价格、装修、朝向、对应的置业顾问等信息;进行房屋信息检索可获取的相关信息包括但不限于:面积、小区、地址、类型等信息;在进行相关信息检索后,用户会根据自己的需求进行意向填写,例如:心仪楼层、目标价位、房屋朝向等信息。
在进行用户数据的筛选过程中,可采用目标群体指数(target group index,TGI)表征。其中,TGI用于指示研究所述特征和目标人群的关联度。
示例性地,TGI的计算方式为:
TGI=[目标群体中具有某一特征的群体所占比例/总体中具有相同特征的群体所占比例]*标准数100。
具体的,TGI指数等于100表示平均水平,若计算结果高于100则代表该类用户对某类特征的关注程度高于整体水平。
在一个可能的示例中,若用户终端采集到的数据中用户男女比例为:3:7,在这些用户中,检索“房屋朝向”的男女比例是6:4,检索“心仪楼层”的男女比是4:6。则检索“房屋朝向”在男性中的TGI是30%/60%*100=50,在女性中的TGI是:70%/40%*100=175,该结果表明女性在购房过程中比男性更关注房屋的朝向;同理,检索“心仪楼层”在男性中的TGI是175,女性是50,表明男性在购房过程中比女性更关注楼层问题。需要说明的是,实际应用中对用户数据的分析会融合多种维度去计算,因此,在进行用户筛选时在不同的数据维度,结合相关的计算结果进行数据筛选可以获得更准确的用户数据。
步骤402:剔除重复值、异常值、未知值。
具体地,在数据采集过程中会出现用户重复登录、信息填写非真实或未填写,造成该用户信息的重复采集或无法使用,对于此类信息要进行剔除。
步骤403:数据合并与信息填充。
具体地,给用户信息按时间顺序进行编号,多条数据合并为一条,空白字段进行填充。
步骤404:生成算法格式。
可以看出,本申请实施例中,数据引擎通过对业务数据的清洗处理得到目标用户数据,可以去除无效数据或无用数据,有效的降低了数据的冗余存储,同时经过处理后的目标数据可以用于数据的分析中,提高数据分析的准确性。
在另一种可能实施例中,可以通过消息队列的方式实现数据清洗。如图5所示,图5是一种消息队列数据处理系统的结构示意图:
具体地,该系统架构50包括:
数据库510:用于存储来自不同端的用户数据。
消息队列组件520:用于存储消息请求队列和工作任务处理结果消息队列,消息队列在分布式系统开发中应用非常广泛。
工作器530:是该系统架构50中用于创建所述工作任务的组件。
具体地,该系统架构进行数据处理的过程如图6所示,图6是一种消息队列进行数据处理的流程示意图:
步骤601:数据库向消息队列组件发送数据处理请求信息。
步骤602:消息队列组件存储数据处理请求消息,形成第一消息队列。
示例性的,处理请求消息在消息队列组件中形成第一消息队列,数据库可通过在消息队列组件中注册,获取与第一消息队列中每一个请求对应的监听标识。
进一步地,每一个工作实例的处理结果在存入消息队列组件时,也携带有与第一消息队列对应的标识信息。
步骤603:工作器监听第一消息队列,创建与数据处理请求消息对应的工作任务,工作器将处理结果推送到消息队列组件中。
步骤604:消息队列组件存储第二请求消息,形成第二消息队列。
具体地,上述第二消息队列是用于表征第一请求消息的处理结果。
步骤605:消息队列组件将处理结果回传至数据库中存储。
进一步地,当数据库每接收到一个工作实例对应的标识信息,即将当前任务的处理结果提供给用户回调服务。
可以看出,本申请实施例中,通过引入消息队列组件实现数据存储和数据处理的解耦,消息队列提供了异步处理机制,允许数据库把一个消息放入队列,但无须立即处理它。同时,还可以根据业务数据中表征的不同的业务操作来配置不同的参数,实现灵活的数据处理。
在一个可能的示例中,所述服务器根据不同业务需求对所述宽表进行封装之前,所述方法还包括:所述服务器从所述数据引擎中获取所述映射规则,根据所述映射规则生成对应的所述API。
具体地,映射规则内具有多个业务的处理规则。在实际应用中,根据每个处理规则生成对应一个Http请求数据包,将上述不同类型的宽表封装在Http请求数据包中,每个请求数据包会对应一个第三方应用软件接口API,用户端可根据不同的需求调用对应的API接口。
可以看出,本申请实施例中,通过封装成远程调用服务或HTTP接口供业务系统调用,实现了操作的简化,同时,可以很大幅度的改进数据业务系统为了获取各类数据指标导致的性能低下问题。
与上述图2所示的实施例一致的,请参阅图7,图7是本申请实施例提供的一种数据处理装置的结构示意图,如图7所示:
一种数据处理装置,上述装置包括:
701:数据采集单元,所述采集单元用于采集不同用户端的用户数据。
702:数据存储单元,所述数据存储单元用于将业务操作记录到二进制日志中,所述二进制日志用于记录所述业务操作产生的业务数据。
703:数据引擎单元,所述数据引擎单元用于从所述数据库中复制所述二进制日志;对所述二进制日志进行处理,得到目标业务数据;将所述目标业务数据存入所述数据存储单元的宽表中,所述宽表是一张将所述目标业务数据相关的数据指标、维度、属性关联在一起的数据库表。
704:数据封装单元,所述数据封装单元用于根据业务需求对所述宽表进行封装,得到供用户设备调用的应用软件接口API。
705:数据查询单元,所述数据查询单元用于实现所述上下文数据的自由查询。
可以看出,本申请实施例中,通过数据库把业务操作记录到二进制日志中;数据引擎从数据库中复制二进制日志;数据引擎对二进制日志进行处理,得到目标业务数据;数据引擎将目标业务数据存入数据库的宽表中;服务器根据业务需求对宽表进行封装,得到供用户设备调用的应用软件接口API。采用本申请实施例的方法,数据引擎可以基于主从机制直接从数据库复制业务操作的二进制日志,经过解析得到业务数据,降低了因不同端产生的数据差异性导致的额外开发成本;同时,服务器将报表封装为API供用户设备调用,不仅可以实现将数据可视化的展示给用户,还可以方便业务人员对用户进行多维度分析。
具体地,本申请实施例可以根据上述方法示例对数据处理的装置进行功能单元的划分,例如,可以对应各个功能划分各个功能单元,也可以将两个或两个以上的功能集成在一个处理单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。需要说明的是,本申请实施例中对单元的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
与上述图2所示的实施例一致的,请参阅图8,图8是本申请实施例提供的另一种数据处理装置的结构示意图,如图8所示:
一种电子设备,包括:
一个或多个处理器;一个或多个存储器,用于存储程序,一个或多个通信接口,所述通信接口用于进行无线通信,所述存储器和所述通信接口相互连接,并且完成相互间的通信工作;一个或多个存储器和程序被配置为,由一个或多个处理器控制所述设备执行如本申请实施例第一方面任一方法中所描述的部分或全部步骤。
其中,存储器可以是易失性存储器如动态随机存储器DRAM,也可以是非易失性存储器如机械硬盘。上述存储器用于存储一组可执行程序代码,上述处理器用于调用存储器中存储的可执行程序代码,可以执行如上述数据处理的方法实施例中记载的任何一种数据处理的方法的部分或全部步骤。
上述无线通信可以使用任一通信标准或协议,包括但不限于GSM(Global Systemof Mobile communication,全球移动通讯系统)、GPRS(General Packet Radio Service,通用分组无线服务)、CDMA2000(CodeDivision Multiple Access2000,码分多址2000)、WCDMA(Wideband Code DivisionMultiple Access,宽带码分多址)、TD-SCDMA(TimeDivision-Synchronous CodeDivision Multiple Access,时分同步码分多址)、FDD-LTE(Frequency DivisionDuplexing-Long Term Evolution,频分双工长期演进)和TDD-LTE(Time DivisionDuplexing-Long Term Evolution,分时双工长期演进)等。
本申请实施例提供了一种计算机可读存储介质,计算机可读存储介质中存储有用于电子数据交换的计算机程序,计算机程序包括执行指令,执行指令用于执行如上述数据处理的方法实施例中记载的任何一种数据处理的方法的部分或全部步骤,上述计算机包括电子终端设备。
本申请实施例提供了一种计算机程序产品,其中,计算机程序产品包括计算机程序,计算机程序可操作来使计算机如上述方法实施例中记载的任何一种数据处理的方法的部分或全部步骤,该计算机程序产品可以是一个软件安装包。
需要说明的是,对于前述的任一种数据处理的方法的实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本申请所必须的。
以上对本申请实施例进行了详细介绍,本文中应用了具体个例对本申请一种数据处理的方法及装置的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请一种数据处理的方法及装置的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
本申请是参照本申请实施例的方法、硬件产品和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。存储器可以包括:闪存盘、只读存储器(英文:Read-Only Memory,简称:ROM)、随机存取器(英文:Random Access Memory,简称:RAM)、磁盘或光盘等。
尽管在此结合各实施例对本申请进行了描述,然而,在实施所要求保护的本申请过程中,本领域技术人员通过查看附图、公开内容、以及所附权利要求书,可理解并实现所公开实施例的其他变化。在权利要求中,“包括”(comprising)一词不排除其他组成部分或步骤,“一”或“一个”不排除多个的情况。相互不同的从属权利要求中记载了某些措施,但这并不表示这些措施不能组合起来产生良好的效果。
本领域普通技术人员可以理解上述任一种数据处理的方法实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于计算机可读存储器中,存储器可以包括:闪存盘、只读存储器(英文:Read-Only Memory,简称:ROM)、随机存取器(英文:Random Access Memory,简称:RAM)、磁盘或光盘等。
可以理解的是,凡是被控制或者被配置以用于执行本申请一种数据处理的方法实施例所描述的流程图的处理方法的产品,如上述流程图的装置以及计算机程序产品,均属于本申请所描述的相关产品的范畴。
显然,本领域的技术人员可以对本申请提供的一种数据处理的方法及装置进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (10)
1.一种数据处理的方法,其特征在于,所述数据处理方法用于服务器,所述服务器包括数据库和数据引擎;所述方法包括:
所述数据库把业务操作记录到二进制日志中,所述二进制日志用于记录所述业务操作产生的业务数据;
所述数据引擎从所述数据库中复制所述二进制日志;
所述数据引擎对所述二进制日志进行处理,得到目标业务数据;
所述数据引擎将所述目标业务数据存入所述数据库的宽表中,所述宽表是一张将所述目标业务数据相关的数据指标、维度、属性关联在一起的数据库表;
所述服务器根据业务需求对所述宽表进行封装,得到供用户设备调用的应用软件接口API。
2.根据权利要求1所述的方法,其特征在于,所述业务操作包括以下至少一种:
数据表创建、数据插入、数据更新、数据删除;
所述业务操作以日志事件的形式写入所述二进制日志中,所述二进制日志包括所述业务操作发生的时间戳、所述日志事件在所述二进制日志中的位置点以及所述业务操作产生的所述业务数据。
3.根据权利要求1所述的方法,其特征在于,所述数据引擎从所述数据库中复制所述二进制日志,所述方法包括:
所述数据引擎向所述数据库发送针对所述二进制日志的请求信息,所述请求信息中包含所述时间戳;
所述数据库根据所述时间戳确定所述位置点;
所述数据库将所述位置点处的所述二进制日志发送至所述数据引擎;
所述数据引擎将所述二进制日志复制到中继日志中。
4.根据权利要求3所述的方法,其特征在于,所述数据引擎将所述二进制日志复制到中继日志中之后,所述方法还包括:
所述数据引擎解析所述中继日志中的所述业务数据。
5.根据权利要求3所述的方法,其特征在于,所述数据引擎检测到所述中继日志的内容更新,解析所述中继日志中的所述业务数据之前,所述方法还包括:
所述数据引擎根据所述业务需求进行规则参数配置,所述规则参数包括:数据来源、数据连接条件、数据过滤条件、数据聚合条件、数据清洗条件以及所述宽表的字段映射配置;
所述字段映射配置包括:字段来源、映射规则、分区规则以及字段属性。
6.根据权利要求1所述的方法,其特征在于,所述数据引擎对所述二进制日志进行处理,所述方法包括:
所述数据引擎根据所述规则参数对所述业务数据进行数据清洗,得到所述目标业务数据。
7.根据权利要求1所述的方法,其特征在于,所述服务器根据不同业务需求对所述宽表进行封装之前,所述方法还包括:
所述服务器从所述数据引擎中获取所述映射规则,根据所述映射规则生成对应的所述API。
8.一种数据处理的装置,其特征在于,包括:
数据采集单元,所述采集单元用于采集不同用户端的用户数据;
数据存储单元,所述数据存储单元用于将业务操作记录到二进制日志中,所述二进制日志用于记录所述业务操作产生的业务数据;
数据引擎单元,所述数据引擎单元用于从所述数据库中复制所述二进制日志;对所述二进制日志进行处理,得到目标业务数据;将所述目标业务数据存入所述数据存储单元的宽表中,所述宽表是一张将所述目标业务数据相关的数据指标、维度、属性关联在一起的数据库表;
数据封装单元,所述数据封装单元用于根据业务需求对所述宽表进行封装,得到供用户设备调用的应用软件接口API;
数据查询单元,所述数据查询单元用于实现所述上下文数据的自由查询。
9.一种电子设备,其特征在于,包括:
一个或多个处理器;
一个或多个通信接口,所述通信接口用于进行无线通信,
一个或多个存储器,用于存储程序,
所述存储器和所述通信接口相互连接,并且完成相互间的通信工作;
所述一个或多个存储器和所述程序被配置为,由所述一个或多个处理器控制所述设备执行如权利要求1-7任一项所述的方法中的步骤。
10.一种计算机可读存储介质,其特征在于,存储用于电子数据交换的计算机程序,其中,所述计算机程序使得计算机执行如权利要求1-7任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111232250.4A CN114003568A (zh) | 2021-10-22 | 2021-10-22 | 数据处理的方法及相关装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111232250.4A CN114003568A (zh) | 2021-10-22 | 2021-10-22 | 数据处理的方法及相关装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114003568A true CN114003568A (zh) | 2022-02-01 |
Family
ID=79923980
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111232250.4A Pending CN114003568A (zh) | 2021-10-22 | 2021-10-22 | 数据处理的方法及相关装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114003568A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114841570A (zh) * | 2022-05-07 | 2022-08-02 | 金腾科技信息(深圳)有限公司 | 用于客户关系管理系统的数据处理方法、装置、设备及介质 |
CN115062028A (zh) * | 2022-07-27 | 2022-09-16 | 中建电子商务有限责任公司 | 一种OLTP领域多表join查询的方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104408170A (zh) * | 2014-12-09 | 2015-03-11 | 广州大乘信息科技有限公司 | 一种业务数据分析系统 |
CN110781203A (zh) * | 2019-09-09 | 2020-02-11 | 国网电子商务有限公司 | 一种数据宽表的确定方法及装置 |
CN112860710A (zh) * | 2021-03-18 | 2021-05-28 | 杭州云灵科技有限公司 | 数据处理方法、装置及系统、数据查询方法及系统 |
CN113064906A (zh) * | 2021-04-21 | 2021-07-02 | 杭州天谷信息科技有限公司 | 一种Binlog日志数据适配迁移方法和系统 |
-
2021
- 2021-10-22 CN CN202111232250.4A patent/CN114003568A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104408170A (zh) * | 2014-12-09 | 2015-03-11 | 广州大乘信息科技有限公司 | 一种业务数据分析系统 |
CN110781203A (zh) * | 2019-09-09 | 2020-02-11 | 国网电子商务有限公司 | 一种数据宽表的确定方法及装置 |
CN112860710A (zh) * | 2021-03-18 | 2021-05-28 | 杭州云灵科技有限公司 | 数据处理方法、装置及系统、数据查询方法及系统 |
CN113064906A (zh) * | 2021-04-21 | 2021-07-02 | 杭州天谷信息科技有限公司 | 一种Binlog日志数据适配迁移方法和系统 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114841570A (zh) * | 2022-05-07 | 2022-08-02 | 金腾科技信息(深圳)有限公司 | 用于客户关系管理系统的数据处理方法、装置、设备及介质 |
CN115062028A (zh) * | 2022-07-27 | 2022-09-16 | 中建电子商务有限责任公司 | 一种OLTP领域多表join查询的方法 |
CN115062028B (zh) * | 2022-07-27 | 2023-01-06 | 中建电子商务有限责任公司 | 一种OLTP领域多表join查询的方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11580680B2 (en) | Systems and interactive user interfaces for dynamic retrieval, analysis, and triage of data items | |
US9031992B1 (en) | Analyzing big data | |
US9361320B1 (en) | Modeling big data | |
US20120072435A1 (en) | Multidimensional tags | |
KR101137087B1 (ko) | 비지니스 애플리케이션 엔티티 서브스크립션 싱크 동작관리 | |
US7966603B2 (en) | Systems and methods for context-based content management | |
CN114003568A (zh) | 数据处理的方法及相关装置 | |
US10353782B2 (en) | Non-destructive data storage | |
CN110414259B (zh) | 一种构建数据类目、实现数据共享的方法及设备 | |
US12117981B2 (en) | Automatic discovery of executed processes | |
CN111753141B (zh) | 一种数据管理方法及相关设备 | |
CN103426050B (zh) | 业务课题分析支持系统 | |
US20140143248A1 (en) | Integration to central analytics systems | |
CN113495978A (zh) | 一种数据检索方法及装置 | |
US8504552B2 (en) | Query based paging through a collection of values | |
CN115766527A (zh) | 信创环境下基于api网关进出流量的业务化分析系统及其方法 | |
CN112667149B (zh) | 一种数据热度感知方法、装置、设备及介质 | |
CN113778996A (zh) | 一种大数据流数据处理方法、装置、电子设备及存储介质 | |
CN111858779A (zh) | 数据分析方法、装置、电子设备及存储介质 | |
CN111309623A (zh) | 一种坐标类数据分类测试方法及装置 | |
CN115423595B (zh) | 文件信息处理方法、装置、计算机设备和存储介质 | |
JP5402000B2 (ja) | データ蓄積システムおよびデータ管理方法 | |
JP2010250567A (ja) | 環境情報集計分析システム | |
CN114138605A (zh) | 用户行为数据采集方法、装置、计算机设备和存储介质 | |
CN118277409A (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 |