1.本说明书一个或多个实施例涉及数据处理技术领域,尤其涉及一种多维键值对数据的生成方法及装置。
背景技术:2.随着技术的发展,各种服务平台能够提供越来越多的服务。服务平台可以记录大量的与业务相关的业务数据,对这些业务数据进行分析,能够进一步提高服务水平。业务数据的形式类似于日志数据,通常会记录多个方面的数据。例如,在银行借贷场景中,一个业务数据可以包括借款人名称、性别、年龄,借款城市,借款期限,借款额度,是否已还款,是否存在逾期等方面的数据。这样的业务数据能体现出一定的信息,但是存在表达能力弱的问题。目前,存在从这些业务数据中提取更深层信息的需求。
3.因此,希望能有改进的方案,可以从业务数据中提取更深层特征,提高数据的表达能力。
技术实现要素:4.本说明书一个或多个实施例描述了一种多维键值对数据的生成方法及装置,以从业务数据中提取更深层特征,提高数据的表达能力。具体的技术方案如下。
5.第一方面,实施例提供了一种多维键值对数据的生成方法,包括:
6.获取多个初始业务数据,一个初始业务数据包含若干个属性的属性值;
7.确定第一属性组及其包含的属性的指定属性值,以及基于所述第一属性组和对应的指定属性值确定的待生成的键值对数据中的键;
8.基于所述第一属性组和对应的指定属性值,对所述多个初始业务数据进行筛选,得到选定业务数据;
9.基于预设的数据处理方式,针对所述选定业务数据中的属性值进行数据处理,并基于数据处理结果确定所述键值对数据中的值。
10.在一种实施方式中,所述键包括字段部分和字段值部分,其中,一组字段值对应为一个子键;所述键采用以下方式确定:
11.将所述第一属性组中的属性确定为所述键包含的字段;
12.基于所述第一属性组中的属性的指定属性值,确定所述键包含的一组或多组字段值,并对应地作为所述键的一个或多个子键。
13.在一种实施方式中,所述第一属性组包含的属性为多个;所述第一属性组中的任意一个属性的指定属性值为一个或多个;
14.所述将所述第一属性组中的属性确定为所述键包含的字段的步骤,包括:
15.将所述第一属性组中的多个属性,分别确定为所述键包含的多个字段;
16.所述基于所述第一属性组中的属性的指定属性值,确定所述键包含的一组或多组字段值的步骤,包括:
17.针对所述第一属性组中的多个属性,当该多个属性中的每个属性的指定属性值均为一个时,将该多个属性的指定属性值分别确定为所述键包含的字段的对应字段值,得到一组字段值;
18.针对所述第一属性组中的多个属性,当该多个属性中的至少一个属性的指定属性值为多个时,对该多个属性的指定属性值进行组合,得到多个属性值组合;将所述多个属性值组合分别确定为所述键包含的字段的对应字段值,得到多组字段值。
19.在一种实施方式中,所述基于所述第一属性组和对应的指定属性值,对所述多个初始业务数据进行筛选的步骤,包括:
20.针对所述键包含的任意一个子键,利用与该子键对应的属性和指定属性值,对所述多个初始业务数据进行筛选,得到与该子键对应的一组选定业务数据。
21.在一种实施方式中,所述基于预设的数据处理方式,针对所述选定业务数据中的属性值进行数据处理,并基于数据处理结果确定所述键值对数据中的值的步骤,包括:
22.针对所述键包含的任意一个子键,基于预设的数据处理方式,对该子键对应的一组选定业务数据中的属性值进行数据处理,将得到的数据处理结果确定为与该子键对应的所述键值对数据中的值。
23.在一种实施方式中,针对所述选定业务数据中的属性值进行数据处理的步骤,包括:
24.确定第二属性组;
25.基于预设的数据处理方式,针对选定业务数据中第二属性组的属性值进行数据处理。
26.在一种实施方式中,所述值包括字段部分和字段值部分;所述数据处理方式包括一种或多种;任意的第一数据处理方式与所述值的第一字段对应;
27.所述基于预设的数据处理方式,针对所述选定业务数据中的属性值进行数据处理,并基于数据处理结果确定所述键值对数据中的值的步骤,包括:
28.基于所述第一数据处理方式,对所述选定业务数据中的属性值进行数据处理,将得到的数据处理结果确定为所述第一字段的字段值。
29.在一种实施方式中,所述数据处理方式包括以下方式中的至少一种:
30.求和,求平均值,对设定属性值进行统计,求方差,求标准差,求协方差。
31.在一种实施方式中,所述第一属性组为多个;所述方法还包括:
32.确定多个第一属性组包含的属性之间的关联关系;其中,所述关联关系用于标识不同的键值对数据之间的关系。
33.在一种实施方式中,在得到所述键值对数据之后,还包括:
34.将所述键值对数据存储至数据库中;
35.在需要进行数据检索时,使用若干个数据引擎从所述数据库中检索数据。
36.第二方面,实施例提供了一种多维键值对数据的生成装置,包括:
37.获取模块,配置为,获取多个初始业务数据,一个初始业务数据包含若干个属性的属性值;
38.确定模块,配置为,确定第一属性组及其包含的属性的指定属性值,以及基于所述第一属性组和对应的指定属性值确定的待生成的键值对数据中的键;
39.筛选模块,配置为,基于所述第一属性组和对应的指定属性值,对所述多个初始业务数据进行筛选,得到选定业务数据;
40.处理模块,配置为,基于预设的数据处理方式,针对所述选定业务数据中的属性值进行数据处理,并基于数据处理结果确定所述键值对数据中的值。
41.在一种实施方式中,所述键包括字段部分和字段值部分,其中,一组字段值对应为一个子键;所述确定模块,还配置为采用以下操作确定键:
42.将所述第一属性组中的属性确定为所述键包含的字段;
43.基于所述第一属性组中的属性的指定属性值,确定所述键包含的一组或多组字段值,并对应地作为所述键的一个或多个子键。
44.在一种实施方式中,所述第一属性组包含的属性为多个;所述第一属性组中的任意一个属性的指定属性值为一个或多个;
45.所述确定模块,将所述第一属性组中的属性确定为所述键包含的字段时,包括:
46.将所述第一属性组中的多个属性,分别确定为所述键包含的多个字段;
47.所述确定模块,基于所述第一属性组中的属性的指定属性值,确定所述键包含的一组或多组字段值时,包括:
48.针对所述第一属性组中的多个属性,当该多个属性中的每个属性的指定属性值均为一个时,将该多个属性的指定属性值分别确定为所述键包含的字段的对应字段值,得到一组字段值;
49.针对所述第一属性组中的多个属性,当该多个属性中的至少一个属性的指定属性值为多个时,对该多个属性的指定属性值进行组合,得到多个属性值组合;将所述多个属性值组合分别确定为所述键包含的字段的对应字段值,得到多组字段值。
50.在一种实施方式中,所述筛选模块,具体配置为:
51.针对所述键包含的任意一个子键,利用与该子键对应的属性和指定属性值,对所述多个初始业务数据进行筛选,得到与该子键对应的一组选定业务数据。
52.在一种实施方式中,所述处理模块,具体配置为:
53.针对所述键包含的任意一个子键,基于预设的数据处理方式,对该子键对应的一组选定业务数据中的属性值进行数据处理,将得到的数据处理结果确定为与该子键对应的所述键值对数据中的值。
54.在一种实施方式中,所述处理模块,具体配置为:
55.确定第二属性组;
56.基于预设的数据处理方式,针对选定业务数据中第二属性组的属性值进行数据处理。
57.在一种实施方式中,所述值包括字段部分和字段值部分;所述数据处理方式包括一种或多种;任意的第一数据处理方式与所述值的第一字段对应;
58.所述处理模块,具体配置为:
59.基于所述第一数据处理方式,对所述选定业务数据中的属性值进行数据处理,将得到的数据处理结果确定为所述第一字段的字段值。
60.第三方面,实施例提供了一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行第一方面中任一项所述的方法。
61.第四方面,实施例提供了一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现第一方面中任一项所述的方法。
62.本说明书实施例提供的方法及装置中,可以基于多个初始业务数据确定多维的键值对数据。其中,基于第一属性组和指定属性值对多个业务数据进行筛选,对筛选得到的选定业务数据进行数据处理,并基于数据处理结果确定键值对数据中的值,基于第一属性组和指定属性值确定键值对数据中的键,采用键值对数据的形式,对处理后的数据进行表达。本说明书实施例,通过筛选和数据处理实现从选定业务数据中提取深层特征,并使用多维键值对数据的形式,对提取的深层特征进行表达,能够提高数据的表达能力。
附图说明
63.为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单的介绍。显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
64.图1为本说明书披露的一个实施例的实施场景示意图;
65.图2为实施例提供的一种多维键值对数据的生成方法的流程示意图;
66.图3为键值对数据中键的一种示意图;
67.图4为实施例提供的一种多维键值对数据的生成装置的示意性框图。
具体实施方式
68.下面结合附图,对本说明书提供的方案进行描述。
69.图1为本说明书披露的一个实施例的实施场景示意图。在图1中,在服务平台(例如银行机构提供的平台、通信商提供的平台、购物平台以及其他机构平台)中,可以记录大量的业务数据,并且随着时间的推进,业务数据不断地产生。业务数据包含若干个属性的属性值。处理平台可以获取大量业务数据,并对这些业务数据进行深层的特征提取,将提取到的特征采用键值对数据的形式进行表示。所提取的特征能够体现多个业务数据更深层次、更丰富的信息,也容易存储、检索,后续可以供相关人员进行分析、决断,触发提高服务平台服务水平的解决方案。
70.其中,服务平台也可以实现处理平台的功能。业务数据可以从日志数据中获得。例如,在银行借贷场景中,业务数据可以是表1所列形式。
71.表1
[0072][0073]
上述表1仅列出6个业务数据作为示例。其中,第1行是各个属性,第2至7行分别为6个业务数据,每个业务数据包含多个属性的属性值。当然,在其他情况中,一个业务数据也可以仅包含一个属性。
[0074]
从表1可以看出,业务数据记录了与业务相关的基本信息,一个个的业务数据所能表达的信息有限。为了增强数据的表达能力,从业务数据中提取更深层特征,本说明书实施例提供了一种多维键值对数据的生成方法。其中包括:步骤s210,获取多个初始业务数据;步骤s220,确定第一属性组及其包含的属性的指定属性值,以及基于第一属性组和对应的指定属性值确定的待生成的键值对数据中的键;步骤s230,基于第一属性组和对应的指定属性值,对多个初始业务数据进行筛选,得到选定业务数据;步骤s240,基于预设的数据处理方式,针对选定业务数据中的属性值进行数据处理,并基于数据处理结果确定键值对数据中的值。其中,初始业务数据可以但不限于是表1中示例的业务数据。对初始业务数据进行筛选,能够得到包含第一属性组和指定属性值的选定业务数据,对选定业务数据的属性值进行数据处理,能够指向性地对特定范围内的数据进行处理、统计,从不同的维度得到不同的数据处理结果,使得数据信息更丰富。采用多维键值对的形式,能使得对该数据的表达力更好。下面采用具体实施例对本技术进行说明。
[0075]
图2为实施例提供的一种多维键值对数据的生成方法的流程示意图。该方法的执行主体可以是任何具有计算、处理能力的装置、设备、平台、设备集群等。该方法包括以下步骤s210~s240。
[0076]
步骤s210,获取多个初始业务数据,一个初始业务数据包含若干个属性的属性值。每个初始业务数据包含的属性可以是相同的。初始业务数据可以如表1所述,包含一个或多个属性的属性值。
[0077]
多个初始业务数据可以是作为执行主体的处理平台从服务平台中获取的,也可以是从用于存储数据的数据库所在设备中获取的。多个初始业务数据也可以是从日志数据中得到的。例如,可以直接将日志数据作为初始业务数据,也可以对日主数据进行初始化处理后得到。初始化处理,例如包括清洗、筛选等。
[0078]
获取的初始业务数据的数量可以是预先设定的,也可以是不确定的数量。步骤s210在执行时,可以是按照预设周期多次执行。例如,在监控场景中,日志数据不断地产生,可以将多次获得到的日志数据作为初始业务数据;也可以将每个预设周期内获取到的多个日志数据作为多个初始业务数据。
[0079]
步骤s220,确定第一属性组及其包含的属性的指定属性值,以及基于所述第一属性组和对应的指定属性值确定的待生成的键值对数据data1中的键key1。
[0080]
第一属性组包含一个或多个属性。每个属性存在对应的指定属性值,每个属性的对应指定属性值可以是一个或多个。在确定第一属性组和对应的指定属性值时,执行主体可以直接获取设定好的第一属性组和对应的指定属性值,也可以根据相关人员的输入操作确定第一属性组和对应的指定属性值。
[0081]
第一属性组中的属性和对应的指定属性值,可以是从步骤s210获取的多个初始业务数据中选择的。第一属性组中的属性可以是根据需要从初始业务数据的多个属性中选择的。第一属性组包含的属性(例如属性1)的指定属性值,可以是从多个初始业务数据的属性1对应的多个属性值中选择的。多个初始业务数据的属性可以包含第一属性组中的属性,多个初始业务数据的属性的属性值,可以包含第一属性组中对应属性的指定属性值。
[0082]
例如,第一属性组包括表1中的“所在城市”“借款用途”“借款额度”这3个属性,每个属性对应的指定属性值分别是,“所在城市”=北京,“借款用用途”=1,“借款额度”=5k、4k。详见下表2。
[0083]
表2
[0084]
所在城市借款用途借款额度北京15k,4k
[0085]
其中,属性“借款额度”对应的指定属性值的数量是2个。第一属性组和对应的指定属性值的设定,能够体现出具有重要意义的特定数据组,以及被关注的数据属性和属性值。
[0086]
键值对(key
‑
value)是一种数据表示形式,键与值是对应关联的关系。在步骤s220中,基于第一属性组和对应的指定属性值,可以确定待生成的键值对数据data1中的键key1。其中,键key1可以是预先基于第一属性组和对应的指定属性值确定的,在步骤s220中直接获取该键key1;也可以是,在步骤s220执行时基于第一属性组和对应的指定属性值确定的。
[0087]
在本实施例中,上述键key1可以包括字段部分和字段值部分。其中,一组字段值对应为一个子键。在基于第一属性组和对应的指定属性值确定键值对数据data1中的键key1时,可以采用以下步骤1a和2a进行。
[0088]
步骤1a,将第一属性组中的属性确定为键key1包含的字段。
[0089]
步骤2a,基于第一属性组中的属性的指定属性值,确定键key1包含的一组或多组字段值,并对应地作为键key1的一个或多个子键。
[0090]
在步骤1a中,当第一属性组包含一个属性时,可以直接将该属性作为键key1的字段。当第一属性组包含的属性为多个时,可以将第一属性组中的多个属性,分别确定为键key1包含的多个字段。
[0091]
在步骤2a中,第一属性组中的任意一个属性的指定属性值可以为一个或多个。
[0092]
针对第一属性组中的多个属性,当该多个属性中的每个属性的指定属性值均为一个时,将该多个属性的指定属性值分别确定为键key1包含的字段的对应字段值,得到一组字段值。
[0093]
例如,第一属性组包括“所在城市”“借款用途”“借款额度”这3个属性,每个属性对应的指定属性值分别是,“所在城市”=北京,“借款用用途”=1,“借款额度”=5k。那么,“所
在城市”“借款用途”“借款额度”可以分别作为键key1中的字段;“北京”“1”“5k”则分别确定为键key1中各个字段的对应字段值,构成一组字段值。详见下表3。
[0094]
表3
[0095]
所在城市借款用途借款额度北京15k
[0096]
其中,表中第1行是字段部分,包括键key1中的3个字段;第2行是字段值部分,包括3个字段的对应字段值,是一组字段值。“所在城市”=北京,“借款用用途”=1,“借款额度”=5k,则是键key1中的一个子键包含的内容。
[0097]
针对第一属性组中的多个属性,当该多个属性中的至少一个属性的指定属性值为多个时,对该多个属性的指定属性值进行组合,得到多个属性值组合,将多个属性值组合分别确定为键key1包含的字段的对应字段值,得到多组字段值。
[0098]
例如,以表2的第一属性组和指定属性值为例,属性“借款额度”的指定属性值包括5k和4k两个。在确定子键时,可以对3个属性的指定属性值进行组合,得到2组属性值组合,分别是“北京、1、5k”和“北京、1、4k”,这两个属性值组合可以作为两组字段值,分别对应2个子键。图3为键值对数据中键的一种示意图。其中标示出了键的字段部分和字段值部分,以及2个子键。
[0099]
在步骤s220中,第一属性组和对应的指定属性值,与键值对数据data1中的键key1,可以是一种数据,也可以是分开获取的两种数据。在前一情况中,确定了第一属性组、指定属性值以及键key1。在后一种情况中,确定第一属性组和指定属性值,以及第一属性组、指定属性值与键key1之间的对应关系;或者,确定键key1,以及第一属性组、指定属性值与键key1之间的对应关系。从表2和图3能够看出第一属性组、指定属性值与键key1之间的对应关系。
[0100]
步骤s230,基于第一属性组和对应的指定属性值,对多个初始业务数据进行筛选,得到选定业务数据。对多个初始业务数据进行筛选,即从多个初始业务数据中筛选出第一属性组中属性的属性值为指定属性值的初始业务数据,作为选定业务数据。
[0101]
例如,第一属性组和指定属性值为表2中数据时,可以从表1的多个初始业务数据中筛选出第2行、第5行和第6行所示的初始业务数据,作为选定业务数据。
[0102]
当键key1包含一个或多个子键时(参见图3所示),对多个初始业务数据进行筛选时,可以针对键key1包含的任意一个子键,利用与该子键对应的属性和指定属性值,对多个初始业务数据进行筛选,得到与该子键对应的一组选定业务数据。对于键key1中的每一个子键,都筛选出对应的一组选定业务数据。
[0103]
一个子键对应一组字段值,一组字段值可以作为一组筛选条件,从多个初始业务数据中筛选出对应的选定业务数据。例如,对于图3中的子键1,可以利用与该子键1对应的属性和指定属性值,从表1的初始业务数据中筛选出第2行和第5行,得到第1组选定业务数据;对于图3中的子键2,可以利用与该子键2对应的属性和指定属性值,从表1的初始业务数据中筛选出第6行,得到第2组选定业务数据。其中,与该子键1对应的属性和指定属性值包括:所在城市=北京,借款用途=1,借款额度=5k。与该子键1对应的属性和指定属性值包括:所在城市=北京,借款用途=1,借款额度=4k。
[0104]
步骤s240,基于预设的数据处理方式,针对选定业务数据中的属性值进行数据处
理,并基于数据处理结果确定键值对数据data1中的值value1。这里,选定业务数据中的属性值可以是一个或多个。
[0105]
当第一属性组中的属性为一个或多个,第一属性组包含的属性对应的指定属性值均为一个时,键key1包含一个子键,对应得到的选定业务数据为一组。该子键存在与其对应的值。在本实施方式中,直接根据对该组选定业务数据进行数据处理后的数据处理结果,确定键值对数据data1中的值value1即可。
[0106]
当第一属性组中的属性为一个或多个,第一属性组包含的至少一个属性对应的指定属性值为多个时,键key1包含多个子键,对应得到的选定业务数据为多组,每个子键都对应一组选定业务数据。多个子键,分别存在与每个子键对应的值。在本实施方式中,针对键key1包含的任意一个子键k1,基于预设的数据处理方式,对该子键k1对应的一组选定业务数据中的属性值进行数据处理,将得到的数据处理结果确定为与该子键k1对应的键值对数据data1中的值v1。也就是,在对选定业务数据进行数据处理时,按照不同组分别执行,得到的数据处理结果也分别用于确定该组(即该子键)对应的值。
[0107]
例如,与图3中的子键1对应的是第1组选定业务数据,与图3中的子键2对应的是第2组选定业务数据。在进行数据处理时,对于子键1,基于预设的数据处理方式,对第1组选定业务数据中的属性值进行数据处理,得到子键1的值;对于子键2,基于预设的数据处理方式,对第2组选定业务数据中的属性值进行数据处理,得到子键2的值。
[0108]
上述数据处理方式可以是根据需要预先设定的,其可以是一种或多种,例如可以包括以下方式中的至少一种:求和,求平均值,对设定属性值进行统计,求方差,求标准差,求协方差。设定属性值可以是根据需要预先设定的,其数量可以是一个或多个。设定属性值可以在初始业务数据包含的多个属性中选定。
[0109]
在步骤s240中,选定业务数据中的属性值可以是一个属性的属性值,也可以是多个属性的属性值。例如,当数据处理方式是求和时,这里的属性可以是一个,即针对选定业务数据中的一个属性的多个属性值求和;当数据处理方式是求协方差时,这里的属性可以是两个,即求两个属性对应的两组属性值之间的协方差。
[0110]
在本说明书的另一实施例中,步骤s240在执行时,可以包括以下步骤1b和2b。
[0111]
步骤1b,确定第二属性组。
[0112]
其中,第二属性组包含的属性可以为一个或多个。第二属性组可以是从初始业务数据包含的属性中选择的。在确定第二属性组时,执行主体可以获取设定好的第二属性组,也可以根据相关人员的输入操作确定第二属性组。
[0113]
第二属性组包含的属性可以与第一属性组包含的属性不同。本步骤1b可以与步骤s220同时执行,两者的执行顺序可以不分先后。
[0114]
步骤2b,基于预设的数据处理方式,针对选定业务数据中第二属性组的属性值进行数据处理。
[0115]
例如,对于表1所示的初始业务数据,选定业务数据包括第2行和第5行数据,在进行数据处理时,可以对该选定业务数据中的第二属性组“是否存在逾期”对应的属性值进行数据处理,得到键值对数据data1中的值value1。
[0116]
当键key1包括一个或多个子键时,针对键key1包含的任意一个子键k1,基于预设的数据处理方式,对该子键k1对应的一组选定业务数据中第二属性组的属性值进行数据处
理,将得到的数据处理结果确定为与该子键k1对应的键值对数据data1中的值v1。
[0117]
在本说明书的另一种实施例中,为了使得键值对数据的值中的信息更丰富,值value1可以包括字段部分和字段值部分。数据处理方式可以包括一种或多种。每种数据处理方式在值value1中存在对应的字段,例如任意的第一数据处理方式与值value1的第一字段对应。其中,第一数据处理方式的数据处理结果,可以作为第一字段对应的字段值。
[0118]
在执行步骤s240时,可以基于第一数据处理方式,对选定业务数据中的属性值进行数据处理,将得到的数据处理结果确定为第一字段的字段值。
[0119]
当键key1包括一个或多个子键时,针对键key1包含的任意一个子键k1,基于第一数据处理方式,对该子键k1对应的一组选定业务数据中第二属性组的属性值进行数据处理,将得到的数据处理结果,确定为与该子键k1对应的值v1中第一字段的字段值。
[0120]
具体的,当第一属性组中的属性为一个或多个,每个属性的指定属性值均为一个时,也就是当键key1中包含一个子键时,该子键对应的值也可以包括多个字段和对应的字段值。
[0121]
例如,数据处理方式1,是对属性“是否存在逾期”中“是”的设定属性值的比例进行统计,对应值value1中的字段“逾期率”;数据处理方式2,是对属性“是否存在逾期”中“否”的设定属性值的比例进行统计,对应值value1中的字段“未逾期率”。详见下表4。
[0122]
表4
[0123][0124]
当第一属性组中的至少一个属性的指定属性值为多个时,也就是当键key1中包含多个子键时,每个子键对应的值也可以分别包括多个字段和对应的字段值。
[0125]
当键key1中包括多个子键,可以分别针对每个子键,基于每一种数据处理方式,对该子键对应的一组选定业务数据进行数据处理,将其数据处理结果确定为该子键对应的值中,与该数据处理方式对应的字段的字段值。
[0126]
例如,以表1作为初始业务数据的部分数据,图3作为键key1包含的子键,以表4中的两个字段“逾期率”和“未逾期率”作为值value1的字段,两个字段对应数据处理方式1和数据处理方式2。针对子键1和子键2,基于数据处理方式1,对第1组和第2组选定业务数据中的属性“是否存在逾期”对应的属性值,分别进行数据处理,分别得到逾期率0.4%和1.0%;针对子键1和子键2,基于数据处理方式2,对第1组和第2组选定业务数据中的属性“是否存在逾期”对应的属性值,分别进行数据处理,分别得到逾期率99.6%和99.0%。详见下表5。
[0127]
表5
[0128][0129]
其中,表5中键key1部分可以称为分组,每一个子键可以称为一个分组,表5为多分
组的情况。第一个分组(即表5的第3行)表示,在多个初始业务数据(例如表1)中,满足“所在城市为北京,借款用途为1,借款额度为5k”的初始业务数据,其属性“是否存在逾期”的具体数据情况。可见,该键值对数据从初始业务数据中提取到了特定的更深层特征,这对于后续对数据的分析处理有更重要、更深远的意义,提高了数据的表达能力。
[0130]
在本实施例中,键值对数据的值包含字段部分和字段值部分,值中可以不再是只有一个数据,而是可以包括更丰富的value值。这样,能够进一步提高键值对数据的表达能力,使得数据成本更低。
[0131]
下面回顾步骤s210~s240,其中步骤s210可以按照预设周期获取多个初始业务数据,针对每个预设周期获取的多个初始业务数据,执行步骤s230和步骤s240,可以得到与该预设周期对应的键值对数据。
[0132]
对于不同的预设周期,步骤s230和步骤s240中的属性组(包括第一属性组和第二属性组)可以是不同的,以这种方式得到的键值对数据的具体形式也是不同的。具体的情况也可以根据业务需要进行灵活设置。这样,可以得到大量的多分组多周期多key多value的“多维”键值对数据。
[0133]
在得到键值对数据之后,还可以将该键值对数据存储至数据库中。
[0134]
在上述“多维”键值对数据的情况下,数据本身包含的信息丰富。在需要进行数据检索时,可以使用若干个数据引擎从数据库中检索数据,具体可以使用一个或多个数据引擎。当使用至少两个数据引擎时,这至少两个数据引擎检索到的数据可以不同,这样能够使得检索结果更丰富。例如,可以使用数据引擎opentsdb、promql和sql中的一个或多个进行数据检索。其中,opentsdb可以适用于黑白名单正则表达式的方式进行检索,promql能够提供灵活的后计算查询方式,可以对初始检索结果直接进行求和、求差等后计算处理,sql则实现了数据间的通用化查询。以上数据引擎也提供了不同的程序语言供选择。
[0135]
上述各个实施例中,第一属性组可以有多个,并且可以确定多个第一属性组包含的属性之间的关联关系,该关联关系用于标识不同的键值对数据之间的关系。例如,第一属性组1中包括属性“所在城市”,第一属性组2中包括属性“所在省份”,可以建立“所在城市”与“所在省份”之间的关联关系,并将关联关系记录在关联关系表中。建立不同属性之间的关联关系,也就建立了键值对数据之间的关联关系。
[0136]
上述关联关系也可以与键值对数据一起存储在数据库中。当对该数据库中的数据进行检索时,可以基于该关联关系,检索到相关的键值对数据。这样提高了键值对数据的可扩展性,也能提供检索效率。
[0137]
本说明书中,第一属性组、第一数据处理方式中的“第一”,以及文中相应的“第二”,仅仅是为了区分和描述方便,而不具有任何限定意义。
[0138]
上述内容对本说明书的特定实施例进行了描述,其他实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行,并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要按照示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的,或者可能是有利的。
[0139]
图4为实施例提供的一种多维键值对数据的生成装置的示意性框图。该装置400可以部署在任何具有计算、处理能力的装置、设备、平台、设备集群等中。该装置实施例与图2
所示方法实施例相对应。该装置400包括:
[0140]
获取模块410,配置为,获取多个初始业务数据,一个初始业务数据包含若干个属性的属性值;
[0141]
确定模块420,配置为,确定第一属性组及其包含的属性的指定属性值,以及基于所述第一属性组和对应的指定属性值确定的待生成的键值对数据中的键;
[0142]
筛选模块430,配置为,基于所述第一属性组和对应的指定属性值,对所述多个初始业务数据进行筛选,得到选定业务数据;
[0143]
处理模块440,配置为,基于预设的数据处理方式,针对所述选定业务数据中的属性值进行数据处理,并基于数据处理结果确定所述键值对数据中的值。
[0144]
在一种实施方式中,所述键包括字段部分和字段值部分,其中,一组字段值对应为一个子键;所述确定模块420,还配置为采用以下操作确定键:
[0145]
将所述第一属性组中的属性确定为所述键包含的字段;
[0146]
基于所述第一属性组中的属性的指定属性值,确定所述键包含的一组或多组字段值,并对应地作为所述键的一个或多个子键。
[0147]
在一种实施方式中,所述第一属性组包含的属性为多个;所述第一属性组中的任意一个属性的指定属性值为一个或多个;
[0148]
所述确定模块420,将所述第一属性组中的属性确定为所述键包含的字段时,包括:
[0149]
将所述第一属性组中的多个属性,分别确定为所述键包含的多个字段;
[0150]
所述确定模块420,基于所述第一属性组中的属性的指定属性值,确定所述键包含的一组或多组字段值时,包括:
[0151]
针对所述第一属性组中的多个属性,当该多个属性中的每个属性的指定属性值均为一个时,将该多个属性的指定属性值分别确定为所述键包含的字段的对应字段值,得到一组字段值;
[0152]
针对所述第一属性组中的多个属性,当该多个属性中的至少一个属性的指定属性值为多个时,对该多个属性的指定属性值进行组合,得到多个属性值组合;将所述多个属性值组合分别确定为所述键包含的字段的对应字段值,得到多组字段值。
[0153]
在一种实施方式中,筛选模块430具体配置为:
[0154]
针对所述键包含的任意一个子键,利用与该子键对应的属性和指定属性值,对所述多个初始业务数据进行筛选,得到与该子键对应的一组选定业务数据。
[0155]
在一种实施方式中,所述处理模块440具体配置为:
[0156]
针对所述键包含的任意一个子键,基于预设的数据处理方式,对该子键对应的一组选定业务数据中的属性值进行数据处理,将得到的数据处理结果确定为与该子键对应的所述键值对数据中的值。
[0157]
在一种实施方式中,所述处理模块440具体配置为:
[0158]
确定第二属性组;
[0159]
基于预设的数据处理方式,针对所述选定业务数据中第二属性组的属性值进行数据处理。
[0160]
在一种实施方式中,所述值包括字段部分和字段值部分;所述数据处理方式包括
一种或多种;任意的第一数据处理方式与所述值的第一字段对应;
[0161]
所述处理模块440具体配置为:
[0162]
基于所述第一数据处理方式,对所述选定业务数据中的属性值进行数据处理,将得到的数据处理结果确定为所述第一字段的字段值。
[0163]
在一种实施方式中,所述数据处理方式包括以下方式中的至少一种:求和,求平均值,对设定属性值进行统计,求方差,求标准差,求协方差。
[0164]
在一种实施方式中,所述第一属性组为多个;该装置400还包括:
[0165]
关联模块(图中未示出),配置为,确定多个第一属性组包含的属性之间的关联关系;其中,所述关联关系用于标识不同的键值对数据之间的关系。
[0166]
在一种实施方式中,该装置400还包括:
[0167]
存储模块(图中未示出),配置为,在得到所述键值对数据之后,将所述键值对数据存储至数据库中;
[0168]
检索模块(图中未示出),配置为,在需要进行数据检索时,使用若干个数据引擎从所述数据库中检索数据。
[0169]
上述装置实施例与方法实施例相对应,具体说明可以参见方法实施例部分的描述,此处不再赘述。装置实施例是基于对应的方法实施例得到,与对应的方法实施例具有同样的技术效果,具体说明可参见对应的方法实施例。
[0170]
本说明书实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行图1至图3任一项所述的方法。
[0171]
本说明书实施例还提供了一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现图1至图3任一项所述的方法。
[0172]
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于存储介质和计算设备实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。
[0173]
本领域技术人员应该可以意识到,在上述一个或多个示例中,本发明实施例所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。
[0174]
以上所述的具体实施方式,对本发明实施例的目的、技术方案和有益效果进行了进一步的详细说明。所应理解的是,以上所述仅为本发明实施例的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的技术方案的基础之上所做的任何修改、等同替换、改进等,均应包括在本发明的保护范围之内。