掌桥专利:专业的专利平台
掌桥专利
首页

增强数据扩展性的处理方法、系统、计算机设备及存储介质

文献发布时间:2024-01-17 01:26:37


增强数据扩展性的处理方法、系统、计算机设备及存储介质

技术领域

本发明涉及数据分析系统领域,具体讲是一种增强数据扩展性的处理方法、系统、计算机设备及存储介质。

背景技术

目前对车辆信号数据的存储策略是:车端数据通过云端上传到消息队列(例如Kafka),通过程序消费消息队列所需要的数据将其存储到数据库(OLTP/OLAP)的目标表中。

但是这样的数据存储策略主要是存储业务所需要的信号字段,由于消息队列中的信号字段数量是不确定的并且数量庞大,因此把需要的业务字段在消费程序中写为固定式,若后续需要更多的字段信息则需要修改消费程序的代码,重新部署,如果业务改动频繁,则大大加大了开发人员的开发与部署的工作量。

发明内容

因此,为了解决上述不足,本发明在此提供一种增强数据扩展性的处理方法、系统、计算机设备及存储介质,将数据的全部字段信息作为一个字段放到转化表中,再通过转换函数将所需字段信息插入到数据库的目标表中,以此达到不需要更改与重新部署消费程序就能够到对所需字段信息进行即需即取的目的;减少了人工修改消费程序代码和重新部署程序的人力成本。

第一方面,本发明提供了一种增强数据扩展性的处理方法,包括

应用程序消费消息队列数据;

保留消费到的数据的全部字段信息;

将保留消费到的数据的全部字段信息存为设定格式的一个字段,存储到数据库的转化表;

筛选转化表中的目标字段信息,将所述目标字段信息存入数据库的目标表中。

为了向目标表中增加字段信息,所述方法还包括,当目标表需要增加字段信息时,从转化表中的全部字段信息中查找新的目标字段信息,并插入数据库的目标中。

可选的,所述设定格式为是JSON格式。

可选的,所述SQL转化语句的解析函数是json解析函数get_json_object。

通过上述技术手段,能够实现将数据的全部字段信息作为一个字段放到转化表中,再通过转换函数将所需字段信息插入到数据库的目标表中,以此达到不需要更改与重新部署消费程序就能够到对所需字段信息进行即需即取的目的,减少了人工修改消费程序代码和重新部署程序的人力成本,对所需要字段的高效快捷利用。

并且在增加字段时通过写SQL语言的方式将所需要的字段进行转换,就可向数据库中目标表增加字段信息,也不需要重新修改消费程序代码,减少了人工修改消费程序代码和重新部署程序的人力成本。

并且在增加字段时,只需要通过写SQL语言的方式,将转化表中存储的待增加字段信息转换为一个指定格式的字段并插入到目标表中即可,也不需要重新修改消费程序代码,大大减少了人工修改消费程序代码和重新部署程序的人力成本,相较于现有技术效率更好,成本更低。

第二方面,本发明提供了增强数据扩展性的处理系统,包括数据处理单元,用于应用程序消费消息队列数据;保留数据单元,用于保留消费到的数据的全部字段信息;数据库转化表单元,用于将保留消费到的数据的全部字段信息存为设定格式的一个字段,存储到数据库的转化表;以及数据库目标表单元,用于筛选转化表中的目标字段信息,将所述目标字段信息存入数据库的目标表中。

可选的,增强数据扩展性的处理系统,还包括,添加字段信息单元,用于当目标表需要增加字段信息时,从转化表中的全部字段信息中查找新的目标字段信息,并插入数据库的目标中。

第三方面,本发明提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述任一项所述增强数据扩展性的处理方法。

第四方面,本发明提供了一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有执行上述任一项所述增强数据扩展性的处理方法的计算机程序。

本发明具有如下优点:

本发明将数据的全部字段信息作为一个字段放到转化表中,再通过转换函数将所需字段信息插入到数据库的目标表中,以此达到不需要更改与重新部署消费程序就能够到对所需字段信息进行即需即取的目的,以减少了大量人工更改代码与重新部署任务的人力成本,对所需要字段的高效快捷利用。

在本发明中,转化表的作用是存储,将数据的所有字段信息作为一个字段进行存储;所述目标表的作用是使用,存储的是多个所需要使用的目标字段,在获取数据时,只有能够被使用的目标字段才会被获取。

本发明在增加字段时,相较于现有技术效率更好,成本更低,因为在增加字段信息时,只需要通过写SQL语言的方式,将转化表中存储的待增加字段信息转换为一个指定格式的字段并插入到目标表中即可,也不需要重新修改消费程序代码,大大减少了人工修改消费程序代码和重新部署程序的人力成本。

附图说明

图1是本发明所述增强数据扩展性的处理方法的流程示意性框图;

图2是本发明所述增强数据扩展性的处理系统的示意性结构框图。

具体实施方式

下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本申请,而不能理解为对本申请的限制。

在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。

下面参考附图描述本申请实施例增强数据扩展性的处理方法、系统、计算机设备及存储介质在上述背景技术中提到,目前数据存储策略主要是存储业务所需要的信号字段,由于消息队列中的信号字段数量是不确定的并且数量庞大,因此把需要的业务字段在消费程序中写为固定式,若后续需要更多的字段信息则需要修改消费程序的代码,重新部署,如果业务改动频繁,则大大加大了开发人员的开发与部署的工作量。基于该问题,本发明提供了一种增强数据扩展性的处理方法、系统、计算机设备及存储介质,将数据的全部字段信息作为一个字段放到转化表中,再通过转换函数将所需字段信息插入到数据库的目标表中,以此达到不需要更改与重新部署消费程序就能够到对所需字段信息进行即需即取的目的;减少了人工修改消费程序代码和重新部署程序的人力成本。

如图1是本发明所述增强数据扩展性的处理方法的流程示意性框图,本发明提供了一种增强数据扩展性的处理方法。

为了更好的说明本发明所述增强数据扩展性的处理方法,以目前对车辆信号数据的存储策略为例,目前的逻辑是:创建以A信号,B信号为字段名,dt与hour为分区的二级分区表。

而本发明所述增强数据扩展性的处理方法,在步骤S100中、利用Flink应用程序消费Kafka数据,被消费的原始数据是通过云端上传的车端数据。

在步骤S200中、保留消费到的数据的全部字段信息,形成的是一个JSON结构的KEY :VALU E 形式数据;

在步骤S300中、将保留消费到的数据的全部字段信息存为设定为JSON格式的一个字段,存储到数据库的转化表;

在步骤S400中、筛选转化表中的目标字段信息,将所述目标字段信息存入数据库的目标表中;

示例性的,利用SQL转化语句的json解析函数get_json_object将转化表中的目标字段信息插入到数据库的目标表。

上述步骤S100至S400具体的建表语句思想是:创建以data为字段名,dt与hour为分区键的二级分区表。

再编写ETL语句将转化表中的data字段所存储的信号值通过解析函数取出输出到目标表中。

在SQL转化语句为将转换表中的存储全部信号的字段data使用json解析函数get_json_object 将实际使用到的信号字段取出来再插入到目标表中。

为了实现向目标表中增加字段信息,在一些实施例中,增强数据扩展性的处理方法还包括,当目标表需要增加字段信息时,从转化表中的全部字段信息中查找新的目标字段信息,并插入数据库的目标中。

示例性的,通过更改转化表到目标表的SQL语言,向目标表增加字段信息,例如原始的目标表需要额外的车辆信号 C时,只需要在原始表与进行转换的SQL语句中加入该字段即可,即不需要更改消费程序代码。

该实施例提供的增强数据扩展性的处理方法,将数据的全部字段信息作为一个字段放到转化表中,再通过转换函数将所需字段信息插入到数据库的目标表中,以此达到不需要更改与重新部署消费程序就能够到对所需字段信息进行即需即取的目的,以减少了大量人工更改代码与重新部署任务的人力成本,对所需要字段的高效快捷利用。

另一实施例,如图2是本发明所述增强数据扩展性的处理系统的示意性结构框图,提供了一种述增强数据扩展性的处理系统,包括数据处理单元100、保留数据单元200、数据库转化表单元400和数据库目标表单元500,

所述数据处理单元100用于Flink应用程序消费Kafka数据;所述保留数据单元200用于保留消费到的数据的全部字段信息;所述数据库转化表单元400用于将保留消费到的数据的全部字段信息存为设定格式的一个字段,存储到数据库的转化表;所述数据库目标表单元500用于筛选转化表中的目标字段信息,将所述目标字段信息存入数据库的目标表中。

所述增强数据扩展性的处理系统,在实施时,数据处理单元100用于Flink应用程序消费Kafka数据;保留数据单元200保留消费到的数据的全部字段信息;再通过数据库转化表单元400将保留消费到的数据的全部字段信息存为设定格式的一个字段,存储到数据库的转化表;再通过数据库目标表单元500筛选转化表中的目标字段信息,将所述目标字段信息存入数据库的目标表中,从而将数据的全部字段信息作为一个字段放到转化表中,再通过转换函数将所需字段信息插入到数据库的目标表中,以此达到不需要更改与重新部署消费程序就能够到对所需字段信息进行即需即取的目的,以减少了大量人工更改代码与重新部署任务的人力成本,对所需要字段的高效快捷利用。

为了实现向目标表中增加字段信息,所述增强数据扩展性的处理系统还包括添加字段信息单元300,当目标表需要增加字段信息时,从转化表中的全部字段信息中查找新的目标字段信息,并插入数据库的目标中;具体的,所述添加字段信息单元300通过更改转化表到目标表的ETL语言,向目标表增加字段信息,相较于现有技术效率更好,成本更低。

在另一实施例中,本发明还提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述任一项所述增强数据扩展性的处理方法。

示例性的,计算机程序可以被分割成一个或多个模块/单元,一个或者多个模块/单元被存储在存储器中,并由处理器执行,以完成本发明的数据处理过程。一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序段,该指令段用于描述计算机程序在计算机设备中的执行过程。

所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。

本申请实施例还提供一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行,以用于实现如上的述增强数据扩展性的处理方法。

所述增强数据扩展性的处理系统/终端设备集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。

其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random AccessMemory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。

在本申请所提供的几个实施例中,应该理解到,所揭露的设备,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分﹐实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例方法的全部或部分步骤。以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。

对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

技术分类

06120116213860