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

数据处理方法以及装置

文献发布时间:2023-06-19 12:19:35


数据处理方法以及装置

技术领域

本说明书实施例涉及计算机技术领域,特别涉及一种数据处理方法。本说明书一个或者多个实施例同时涉及一种数据处理装置,一种计算设备,以及一种计算机可读存储介质。

背景技术

随着互联网或者物联网的应用越来越广泛,互联网中的检测系统或者物联网设备等,产生越来越多的基于时间序列的数据,这些数据被称为时序数据。时序数据虽然来源不同,但由于采集设备版本升级或者系统升级等原因,导致时序数据的数据类型多种多样,随着数据类型的增多,会导致时序数据库因设置的存储数据类型单一而无法进行存储,使得数据丢失,数据的安全性不高,并且也为后续的数据查询带来不便,使得数据查询效率降低。

发明内容

有鉴于此,本说明书施例提供了一种数据处理方法。本说明书一个或者多个实施例同时涉及一种数据处理装置,一种计算设备,以及一种计算机可读存储介质,以解决现有技术中存在的技术缺陷。

根据本说明书实施例的第一方面,提供了一种数据处理方法,包括:

接收数据存储请求,其中,所述数据存储请求中携带有待存储数据、所述待存储数据的属性信息以及待存储数据的数据类型;

基于所述待存储数据的属性信息确定所述待存储数据的数据标签;

基于所述数据标签创建数据分区,并确定所述数据标签对应的待存储数据的数据类型;

基于所述数据标签对应的待存储数据的数据类型,将所述数据标签对应的数据分区划分为与所述数据类型对应的子分区;

基于所述数据标签对应的待存储数据的数据类型,将所述数据标签对应的待存储数据存储至所述数据类型对应的子分区。

根据本说明书实施例的第二方面,提供了一种数据处理装置,包括:

接收模块,被配置为接收数据存储请求,其中,所述数据存储请求中携带有待存储数据、所述待存储数据的属性信息以及待存储数据的数据类型;

确定模块,被配置为基于所述待存储数据的属性信息确定所述待存储数据的数据标签;

创建模块,被配置为基于所述数据标签创建数据分区,并确定所述数据标签对应的待存储数据的数据类型;

划分模块,被配置为基于所述数据标签对应的待存储数据的数据类型,将所述数据标签对应的数据分区划分为与所述数据类型对应的子分区;

存储模块,被配置为基于所述数据标签对应的待存储数据的数据类型,将所述数据标签对应的待存储数据存储至所述数据类型对应的子分区。

根据本说明书实施例的第三方面,提供了一种计算设备,包括:

存储器和处理器;

所述存储器用于存储计算机可执行指令,所述处理器用于执行所述计算机可执行指令时实现所述数据处理方法的步骤。

根据本说明书实施例的第四方面,提供了一种计算机可读存储介质,其存储有计算机可执行指令,该指令被处理器执行时实现任意一项所述数据处理方法的步骤。

本说明书一个实施例,通过待存储数据的属性信息确定待存储数据的数据标签,根据待存储数据的数据标签创建数据分区,并确定数据标签对应的待存储数据的数据类型,进而将数据分区按照待存储数据的数据类型划分对应的子分区,并将待存储数据存储至数据类型对应的子分区中,实现了将待存储数据按照数据类型进行存储,避免了数据库中因待存储数据的数据类型而无法将待存储数据进行存储,导致的数据丢失,不仅提高了数据存储是安全性,也满足了对海量时序数据的快速存储,提高存储效率,进而后续也可提高数据的查询效率。

附图说明

图1是本说明书一个实施例提供的一种数据处理方法的时序数据库模型示意图;

图2是本说明书一个实施例提供的一种数据处理方法的流程图;

图3是本说明书一个实施例提供的一种数据处理方法应用于记录温度数值的结构示意图;

图4是本说明书一个实施例提供的一种数据处理方法的处理过程流程图;

图5是本说明书一个实施例提供的一种数据处理装置的结构示意图;

图6是本说明书一个实施例提供的一种计算设备的结构框图。

具体实施方式

在下面的描述中阐述了很多具体细节以便于充分理解本说明书。但是本说明书能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本说明书内涵的情况下做类似推广,因此本说明书不受下面公开的具体实施的限制。

在本说明书一个或多个实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本说明书一个或多个实施例。在本说明书一个或多个实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本说明书一个或多个实施例中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。

应当理解,尽管在本说明书一个或多个实施例中可能采用术语第一、第二等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本说明书一个或多个实施例范围的情况下,第一也可以被称为第二,类似地,第二也可以被称为第一。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。

首先,对本说明书一个或多个实施例涉及的名词术语进行解释。

度量(Metric):代表一系列同类时序数据的集合。

标签(Tag):描述数据源的特征,通常不随时间变化。

字段(Field):描述数据源的量测指标,通常随着时间不断变化。

时间线(Time Series):数据源的某个指标随时间变化,形成的时间线,比如,Metric+Tags+Field为一条时间线。

数据点(Data Point):数据源在某个时间产生的某个量测指标值(Field Value)。

时间戳(Timestamp):数据产生的时间点。

动态数据类型:支持写入的数据点指标值的数据类型是动态的。

时序数据库用于描述事物随时间的变化,广泛应用于应用性能检测、物联网设备检测系统、工业互联网等行业场景。时序数据库由于其数据模型不同于通用数据库,需要支持秒级数据点写入,同时要高压缩比低成本存储、预降采样、插值、多维聚合计算等功能,满足海量时序数据存储与处理,要高效地管理时间序列数据绝非易事。

如图1所示,图1示出了本说明书一个实施例提供的数据处理方法的时序数据库模型示意图。

图1为业界时序模型视图,也是指时序数据库中存储时序数据的时序模型视图,其中,图1中A部分为时间戳序列,用于记录时序数据存储的时间,比如,2020-10-24 10:01、2020-10-24 10:02、2020-10-24 10:03等,需要说明的是,时间戳数据可根据实际应用设置一定时间间隔的连续的时间戳;图1中B部分为标签序列,其中,可以包括设备号以及区域等信息,需要说明的是,标签可以表示记录该条时序数据的设备,以及设备所在区域等信息,可根据实际应用设置不同的标签信息,在本说明书实施例中不做任何限定;图1中C部分为字段序列,其中,可以包括温度字段、描述字段等信息,需要说明的是,字段数据序列可以为存储实际数据的序列。

实际应用中,对于时序数据的存储方式可参见上述图1的时序数据存储模型,其中,时序数据的字段序列可以有多个,每个字段序列写入的值的类型是固定的,比如图1中,温度字段写入的数据为浮点型数据,描述字段写入的数据为字符串型数据。基于此,在数据库写入的数据类型为整数型数据时,则无法写入数据库中,也就是说,由于在时序数据库中温度字段的数据类型为浮点型数据,那么在写入的温度字段数据为整数型数据的情况下,则相应的时序数据库是不支持数据写入的。

为了解决上述的时序数据库无法支持数据类型转换后的数据写入,本说明书实施例提供的数据处理方法,在同一个字段序列中设置不同的数据类型的分区,以支持字段数据动态类型变化,也为适应更多项目场景的灵活性提供了极大的帮助。

需要说明的是,时间序列数据具有数据类型灵活的特点,不仅不同时间线数据点类型不一致,而且同一时间线的数据类型往往也会动态变化;基于此,同一时间线的时序数据的多种数据类型的写入可应用于任何存储多种类型的时序数据的场景,本说明书对此不做任何限定。

在本说明书中,提供了一种数据处理方法,本说明书同时涉及一种数据处理装置,一种计算设备,以及一种计算机可读存储介质,在下面的实施例中逐一进行详细说明。

图2示出了根据本说明书一个实施例提供的一种数据处理方法的流程图,具体包括以下步骤。

步骤202:接收数据存储请求,其中,所述数据存储请求中携带有待存储数据、所述待存储数据的属性信息以及待存储数据的数据类型。

其中,待存储数据的属性信息可以理解为待存储数据的存储时间戳、待存储数据的度量信息等。

其中,待存储数据的数据类型可以理解为待存储数据的数据形式或者类型,比如,整数型数据、浮点型数据、数值型字符串数据等等。

具体的,服务器接收用户的数据存储请求,其中,该数据存储请求中携带有待存储数据、待存储数据的属性信息以及待存储数据的数据类型,例如,服务器接收了一个t时刻温度数据的数据存储请求,该数据存储请求中携带的待存储数据可以为实际的温度数据15度、待存储数据的属性信息可以为t时刻以及温度标签、待存储数据的数据类型可以为整数型。

需要说明的是,本说明书实施例中均以记录北京市的气象数据为例进行详细说明,其中,气象数据包括温度数据、湿度数据、气压数据等。

步骤204:基于所述待存储数据的属性信息确定所述待存储数据的数据标签。

其中,待存储数据的数据标签可以理解为待存储数据的度量标签,比如,数据标签可以为温度、湿度、空气质量等任何可以表示数据属性的标签信息。

需要说明的是,本说明书实施例提供的数据标签以温度或者湿度为例,进行详细说明,但对此不做任何限制。

具体的,根据待存储数据的属性信息确定待存储数据的数据标签,比如,根据待存储数据的属性为t时刻以及温度标签,即可确定待存储数据的数据标签为温度,那么待存储数据在时序数据库的字段可以表示为温度。

步骤206:基于所述数据标签创建数据分区,并确定所述数据标签对应的待存储数据的数据类型。

其中,数据分区可以理解为存储时序数据的数据分区,可根据每个字段的不同划分不同的数据分区,比例,字段为温度的存储位置为一个数据分区。

具体的,数据库基于确定待存储数据的数据标签创建存储该待存储数据的数据分区,一个数据标签对应一个数据分区,数据库并确定待存储数据的数据类型。

例如,时序数据库需存储某城市7天内的气象数据,那么在该数据库中存储的字段即可分为温度、湿度、气压等,那么可确定待存储数据的数据标签可以为温度、湿度、气压等,基于每个数据标签在时序数据库中创建相应的数据分区,并确定存储温度的数据为整数型数据,存储湿度的数据为浮点型数据,存储气压的数据为字符串型数据。

步骤208:基于所述数据标签对应的待存储数据的数据类型,将所述数据标签对应的数据分区划分为与所述数据类型对应的子分区。

其中,子分区可以理解为在数据分区中划分的子分区,以存储不同数据类型的待存储数据。

具体的,可根据数据标签对应的待存储数据的数据类型,将数据标签对应的数据分区划分为与数据类型对应的子分区,沿用上例,在确定存储温度的待存储数据的数据类型为整数型数据的情况下,那么可将存储温度的数据分区划分为与整数型数据对应的子分区,该子分区存储温度的时序数据为整数型的数据。

实际应用中,由于数据采集的设备升级或者系统更新,待存储数据的数据类型可能会不同,那么在该时序数据库中可根据不同是数据类型划分不同的子分区进行数据存储;具体的,所述基于所述数据标签对应的待存储数据的数据类型,将所述数据标签对应的数据分区划分为与所述数据类型对应的子分区,包括:

基于所述数据标签对应的待存储数据的至少两个数据类型,将所述数据标签对应的数据分区划分为与所述至少两个数据类型对应的至少两个子分区。

具体的,待存储数据可以包括至少两个数据类型,并将该待存储数据的数据标签对应的数据分区划分为至少两个子分区,其中,每个子分区对应一个待存储数据的数据类型。

例如,记录湿度的时序数据,那么在湿度数据对应的数据分区中,整数型数据可以划分为一个子分区,浮点型数据可以划分为一个子分区,字符串型数据可以划分为一个子分区。

实际应用中,在大量的时序数据进行存储时,每个数据标签对应的待存储数据可以为至少两个数据类型,在大量的时序数据中可通过分类的方式确定至少两个待存储数据的类型,基于多个待存储数据的类型在数据分区中划分至少两个子分区。

本说明书实施例通过在每个数据标签对应的数据分区中划分至少两个子分区,使得每个数据标签对应的待存储数据在不同的数据类型对应的子分区中存储,实现将待存储数据按照数据类型在不同的分区中进行存储,不仅避免了因数据类型的不同无法写入时序数据库中,也提高了数据存储的安全性。

步骤210:基于所述数据标签对应的待存储数据的数据类型,将所述数据标签对应的待存储数据存储至所述数据类型对应的子分区。

具体的,在确定待存储数据的数据类型对应的子分区之后,将接收的数据标签对应的待存储数据存储至数据类型对应的子分区中。

为了确定某一时间戳的待存储数据快速地存储至时序数据库的相应位置中,即可在待存储数据的数据类型对应的子分区中确定待存储位置;具体的,所述基于所述数据标签对应的待存储数据的数据类型,将所述数据标签对应的待存储数据存储至所述数据类型对应的子分区,包括:

基于所述数据标签对应的待存储数据确定所述待存储数据的目标存储文件;

确定所述待存储数据在所述目标存储文件的存储时间戳,并基于所述存储时间戳以及所述待存储数据的数据类型对应的子分区,确定所述待存储数据在所述数据类型对应的子分区的待存储位置;

将所述待存储数据存储至所述数据类型对应的子分区的待存储位置,其中,所述待存储数据包括存储时间戳以及存储数据值。

其中,目标存储文件可以理解为存储待存储的时序数据的存储文件。

具体的,在确定待存储数据的数据标签之后,即可根据数据标签对应的待存储数据确定待存储数据的目标存储文件,并在该目标存储文件中确定待存储数据对应的存储时间戳,再基于存储时间戳以及待存储数据的数据类型对应的子分区,可以确定待存储数据在数据类型对应的子分区中的待存储位置,最后将待存储数据存储至该待存储数据的数据类型对应的子分区的待存储数据,其中,待存储数据包括存储时间戳以及存储数据值。

实际应用中,可基于数据标签对应的待存储数据的索引数据确定待存储数据的目标存储文件,该目标存储文件存储待存储数据,在该目标存储文件中包括待存储数据的时间线,且根据待存储数据的时间线,根据待存储数据的时间线确定数据标签,在数据标签确定的数据分区中按照待存储数据的数据类型划分子分区,并根据子分区以及待存储数据的存储时间戳确定待存储数据的待存储位置,进而对待存储数据进行存储。

例如,时序数据库在接收到待存储数据为2021-1-1 00:00的北京市的室外温度数据0度时,可以确定该待存储数据的索引数据为地区,则可以确定目标存储文件为存储北京地区的气象数据文件,并根据待存储数据携带的时间,可以确定目标存储文件中的时间线,确定存储时间戳为2021-1-1 00:00,根据温度数据为0度,可以确定待存储数据的数据类型为整数型,根据存储时间戳以及数据类型在数据分区中确定待存储数据的待存储位置为A,则将待存储的数据0度存储至待存储位置A中。

本说明书实施例提供的数据处理方法,通过确定待存储数据在数据分区的相应子分区中的待存储位置,进而实现将待存储数据快速地存储至数据存储文件中。

参见图3,图3示出了本说明书一实施例提供的数据处理方法应用于记录温度数值的结构示意图。

与上述图1相同,时序数据模型中包括时间戳、标签以及字段,图3中A部分为时间戳序列,图3中B部分为标签序列,图3中C部分为字段序列,其中,图3中的字段序列与图1中的字段序列具有明显区别,以字段为温度的数据分区为例,在该温度的数据分区中,可分为多种数据类型,图3中的温度字段,分为浮点型分区,整数型分区,字符串型分区,每个时间戳对应的数据只对应一个数据类型,比如,时间戳为2020-10-24 10:01的待存储数据的数据类型为浮点型数据,即为12.1度,那么则将该12.1度的数据存储至数据标签为温度的数据分区中,且在该数据分区的浮点型数据类型子分区中存储,那么在其他数据类型的子分区中则不写入任何数据,可置为空,或者可以按照预设条件写入不同的数据,本说明书实施例对此不做任何限定。

进一步地,所述将所述数据标签对应的待存储数据存储至所述数据类型对应的子分区之后,还包括:

将所述数据标签对应的待存储数据存储的所述数据类型确定为目标数据类型;

基于所述目标数据类型在所述数据标签对应的数据分区中确定待填充数据类型,并基于所述待填充数据类型确定针对所述待存储数据的待填充位置;

基于预设填充规则对所述待填充位置进行数据填充。

其中,预设填充规则可以理解为在待填充位置上填充的数据内容的规则,比如,在待填充位置可以填充“0”或者“null(空)”等。

具体的,将数据标签对应的待存储数据存储的数据类型确定为目标数据类型,在该数据标签对应的数据分区中,除了目标数据类型的其他数据类型可以确定为待填充数据类型,进而确定针对待存储数据的时间线数据的待填充位置,并按照预设填充规则对待填充位置进行数据填充。

实际应用中,在存储时序数据的列表中,每个时间线中,在确定待存储数据的数据类型为A的情况下,在该数据分区中还包括数据类型B以及数据类型C,那么数据类型B以及数据类型C则为待填充数据类型,那么在待填充数据类型对应的子分区中,可以填充相应的填充数据。

需要说明的是,某些时间线中的待填充位置上填充的数据并不占用存储空间。

本说明书实施例提供的数据处理方法,通过确定每个时间线中的待填充位置,对待填充位置进行空数据填充,可以使得在时序数据的存储文件中有序地存储数据,提高存储效率。

将待存储数据进行存储之后,将同类型的数据进行存储,且将同类型数据一起压缩,使得压缩比更高,以降低存储成本;具体的,所述将所述数据标签对应的待存储数据存储至所述数据类型对应的子分区之后,还包括:

基于所述数据标签对应的待存储数据的数据类型,将存储至每个数据类型对应的子分区的待存储数据进行压缩并存储。

具体的,在待存储数据存储至相应的不同类型对应的子分区之后,每个数据类型对应的子分区可存有大量的时序数据,将每个数据类型对应的子分区的待存储数据进行压缩并存储。

实际应用中,每个数据标签对应的数据类型,在底层存储时,每个数据类型的存储数据一起压缩存储,实现同类型数据一起存储,同类型数据一起压缩,以实现更高的压缩比例,进而降低存储成本;进一步地,在后续的数据查询中,同类型的数据在浏览时可以连续遍历,以使得查询磁盘效率更加高效,并且也可根据不同类型,直接通过索引数据直接查询到相对应的数据标签对应的子分区中。

本说明书实施例提供的数据处理方法,通过将同类型的数据一起进行压缩并存储,以提高压缩比,降低数据存储成本,不仅可以实现对海量时序数据进行快速地存储,提高存储效率,也为后续查询数据提供了方便性。

此外,本说明书实施例提供的数据处理方法,通过在同一数据标签的数据分区中划分多个数据类型的子分区,支持用户在同一数据标签上写入不同的数据类型的数据,用户在后续的查询数据中,还包括:

接收数据查询请求,其中,所述数据查询请求中携带有待查询数据的时间属性信息以及待查询数据的数据标签;

基于所述待查询数据的时间属性信息确定所述待查询数据对应的目标存储文件;

基于所述待查询数据的数据标签在所述目标存储文件中确定所述待查询数据的数据类型;

确定所述待查询数据的数据类型对应的子分区,并从所述待查询数据的数据类型对应的子分区查询所述待查询数据。

其中,待查询数据的时间属性信息可以理解为用户所需查询数据的时间信息。

具体的,时序数据库接收数据查询请求,其中,该数据查询请求中携带有待查询数据的时间属性信息,以及待查询数据的数据标签,根据待查询数据的时间属性信息确定待查询数据对应的目标存储文件,再根据待查询数据的数据标签在目标存储文件中确定待查询数据的数据类型,然后通过确定待查询数据的数据类型对应的子分区,从该子分区中查询待查询数据。

实际应用中,对于用户的数据查询请求可以为单条数据的查询请求,可以根据单条数据查询请求中携带的时间属性信息以及数据标签,进而确定待查询数据的存储位置,从待查询数据的数据类型对应的子分区,查询待查询数据。

例如,用户的数据查询请求为,查询2021-1-1 00:01的温度数据,则确定待查询数据的时间属性信息为2021-1-1 00:01,待查询数据的数据标签为温度数据,则根据该时间戳进而确定待查询数据的目标存储文件,其中,目标存储文件已经按照时间线的顺序进行存储,通过对时间线的索引文件即可确定目标存储文件,在该目标存储文件中确定2021-1-1 00:01存储的温度数据的数据类型为整数型,则继续从整数型的子分区中查询具体的整数型数据,最后查询到的2021-1-1 00:01的温度数据为15度。

需要说明的是,在实际应用中,若查询到的数据为数值型的字符串数据,则可通过该字符串数据确定该时刻的数据异常,本说明书实施例对异常数据的情况不做任何限定。

进一步地,在时序数据库接收到至少两个数据查询请求之后,在每个待查询数据的数据类型对应的子分区分别查询待查询数据,具体的,所述数据处理方法,还包括:

接收至少两个数据查询请求,其中,所述数据查询请求中携带有至少两个待查询数据的时间属性信息以及至少两个待查询数据的数据标签;

基于所述至少两个待查询数据的时间属性信息确定每个待查询数据对应的目标存储文件;

基于所述每个待查询数据的数据标签在所述每个待查询数据对应的目标存储文件中,确定所述每个待查询数据的数据类型;

确定所述每个待查询数据的数据类型对应的子分区,并从每个待查询数据的数据类型对应的子分区查询所述待查询数据。

具体的,时序数据库接收至少两个数据查询请求,其中,每个数据查询请求中携带有每个待查询数据的时间属性信息,以及每个待查询数据的数据标签,根据待查询数据的时间属性信息确定每个待查询数据对应的目标存储文件,再根据每个待查询数据的数据标签在对应的目标存储文件中确定每个待查询数据的数据类型,然后通过确定每个待查询数据的数据类型对应的子分区,从每个子分区中查询待查询数据。

例如,用户的数据查询请求为,查询2021-1-1至2021-1-5的5天内的湿度数据,则根据查询数据的时间戳确定待查询数据的目标存储文件,并在该目标存储文件中确定每个时间线内的温度数据,其中,查询的2021-1-1的温度数据为5度,2021-1-2的温度数据为4度,2021-1-3的温度数据为2.1度,2021-1-4的温度数据为1度,2021-1-5的温度数据为3.2度。

本说明书实施例提供的数据处理方法,通过在待查询数据的不同数据类型对应的子分区分别查询待查询数据,以实现用户通过查询指定数据类型,进行有效地数据查询,以提升数据查询效率。

在查询到多条数据之后,可根据多条数据进行数据聚合或者降采样等运算,以实现数据查询的;具体的,所述基于所述每个待查询数据的数据类型对应的子分区查询所述待查询数据之后,还包括:

接收针对所述待查询数据的数据聚合请求,基于所述数据聚合请求确定所述每个待查询数据的数据类型;

基于所述每个待查询数据的数据类型确定待处理数据,并对所述待处理数据进行处理,以获得处理后的至少两个待查询数据,其中,所述至少两个待查询数据的数据类型均相同;

基于所述处理后的至少两个待查询数据计算聚合数据。

其中,数据聚合请求可以理解为将数据进行聚合运算的处理请求,比如,将待查询数据进行求和运算,或者是将待查询数据进行平均数运算,以获取运算后的待查询数据。

具体的,时序数据库在接收到对待查询数据的数据聚合请求之后,即可确定每个待查询数据的数据类型,再根据不同的数据类型确定待处理的数据,对待处理数据进行处理,获得处理后的至少两个待查询数据,其中,处理后的待查询数据的数据类型均相同,并对处理后的至少两个待查询数据计算聚合数据。

实际应用中,由于记录数据的设备不同或者系统级别不同,导致接收的数据类型不同,进而在后续的对至少两个待查询数据进行处理时,会出现因数据类型不同而无法实现数据处理的情况,进而需要对不同类型的待查询数据进行格式转换处理,以实现所有的待查询数据的数据类型相同,以便于后续根据同种类型的待查询数据计算聚合数据。

沿用上例,在待查询数据中,只有2021-1-3的温度数据为2.1度和2021-1-5的温度数据为3.2度为浮点型数据,那么可以将这两个浮点型数据转换为整数型数据,经过格式转换后,2021-1-3的温度数据为2度,2021-1-5的温度数据为3度,实现了2021-1-1至2021-1-5的5天内的湿度数据均为整数型数据,即可对5天的整数型数据进行求和运算,或者是求平均数运算。

需要说明的是,对于字符串型的数据,也可以进行格式转换,其中,具体的格式转换的方式可根据实际应用进行设定,本说明书实施例对此不做任何限定。

综上,本说明书实施例提供的数据处理方法,通过待存储数据的属性信息确定待存储数据的数据标签,根据待存储数据的数据标签创建数据分区,并确定数据标签对应的待存储数据的数据类型,进而将数据分区按照待存储数据的数据类型划分对应的子分区,并将待存储数据存储至数据类型对应的子分区中,实现了将待存储数据按照数据类型进行存储,避免了数据库中因待存储数据的数据类型而无法将待存储数据进行存储,导致的数据丢失,不仅提高了数据存储是安全性,也满足了对海量时序数据的快速存储,提高存储效率,进而后续也可提高数据的查询效率。

参见图4,图4示出了本说明书一实施例提供的数据处理方法的温度存储过程示意图。

图4中A部分为数据存储文件格式,A部分的底部为索引数据,通过该索引数据可以查找A部分上述的存储文件,通过索引数据确定待存储数据的存储位置在存储文件3之后,存储文件3中包括图4中B部分的时间线索引数据以及时间线数据,每个时间线数据中包括数据标签,如图4中B部分的时间线数据2中包括C部分多种数据标签,其中图中C部分的数据标签1包括三种类型,分别为浮点型、整数型、字符串型,每个数据类型的分区下存储待存储数据,如图4中D部分所示,其中,待存储数据如图4中E部分为待存储数据的格式,包括时间戳以及数据值。

实际应用中,通过索引数据中的偏移量确定待存储数据的存储位置,以实现大量时序数据通过数据分类进行的数据存储。基于此,通过创建动态的数据类型,将不同数据类型的数据分别进行存储,大大提升了用户使用时序数据库的便利性。

综上,通过待存储数据的属性信息确定待存储数据的数据标签,根据待存储数据的数据标签创建数据分区,并确定数据标签对应的待存储数据的数据类型,进而将数据分区按照待存储数据的数据类型划分对应的子分区,并将待存储数据存储至数据类型对应的子分区中,实现了将待存储数据按照数据类型进行存储,避免了数据库中因待存储数据的数据类型而无法将待存储数据进行存储,导致的数据丢失,不仅提高了数据存储是安全性,也满足了对海量时序数据的快速存储,提高存储效率,进而后续也可提高数据的查询效率。

与上述方法实施例相对应,本说明书还提供了数据处理装置实施例,图5示出了本说明书一个实施例提供的一种数据处理装置的结构示意图。如图5所示,该装置包括:

接收模块502,被配置为接收数据存储请求,其中,所述数据存储请求中携带有待存储数据、所述待存储数据的属性信息以及待存储数据的数据类型;

确定模块504,被配置为基于所述待存储数据的属性信息确定所述待存储数据的数据标签;

创建模块506,被配置为基于所述数据标签创建数据分区,并确定所述数据标签对应的待存储数据的数据类型;

划分模块508,被配置为基于所述数据标签对应的待存储数据的数据类型,将所述数据标签对应的数据分区划分为与所述数据类型对应的子分区;

存储模块510,被配置为基于所述数据标签对应的待存储数据的数据类型,将所述数据标签对应的待存储数据存储至所述数据类型对应的子分区。

可选地,所述划分模块508,进一步被配置为:

基于所述数据标签对应的待存储数据的至少两个数据类型,将所述数据标签对应的数据分区划分为与所述至少两个数据类型对应的至少两个子分区。

可选地,所述存储模块510,进一步被配置为:

基于所述数据标签对应的待存储数据确定所述待存储数据的目标存储文件;

确定所述待存储数据在所述目标存储文件的存储时间戳,并基于所述存储时间戳以及所述待存储数据的数据类型对应的子分区,确定所述待存储数据在所述数据类型对应的子分区的待存储位置;

将所述待存储数据存储至所述数据类型对应的子分区的待存储位置,其中,所述待存储数据包括存储时间戳以及存储数据值。

可选地,所述数据处理装置,还包括:

基于所述数据标签对应的待存储数据的数据类型,将存储至每个数据类型对应的子分区的待存储数据进行压缩并存储。

可选地,所述数据处理装置,还包括:

将所述数据标签对应的待存储数据存储至所述数据类型确定为目标数据类型;

基于所述目标数据类型在所述数据标签对应的数据分区中确定待填充数据类型,并基于所述待填充数据类型确定针对所述待存储数据的待填充位置;

基于预设填充规则对所述待填充位置进行数据填充。

可选地,所述数据处理装置,还包括:

接收数据查询请求,其中,所述数据查询请求中携带有待查询数据的时间属性信息以及待查询数据的数据标签;

基于所述待查询数据的时间属性信息确定所述待查询数据对应的目标存储文件;

基于所述待查询数据的数据标签在所述目标存储文件中确定所述待查询数据的数据类型;

确定所述待查询数据的数据类型对应的子分区,并从所述待查询数据的数据类型对应的子分区查询所述待查询数据。

可选地,所述数据处理装置,还包括:

接收至少两个数据查询请求,其中,所述数据查询请求中携带有至少两个待查询数据的时间属性信息以及至少两个待查询数据的数据标签;

基于所述至少两个待查询数据的时间属性信息确定每个待查询数据对应的目标存储文件;

基于所述每个待查询数据的数据标签在所述每个待查询数据对应的目标存储文件中,确定所述每个待查询数据的数据类型;

确定所述每个待查询数据的数据类型对应的子分区,并从每个待查询数据的数据类型对应的子分区查询所述待查询数据。

可选地,所述数据处理装置,还包括:

接收针对所述待查询数据的数据聚合请求,基于所述数据聚合请求确定所述每个待查询数据的数据类型;

基于所述每个待查询数据的数据类型确定待处理数据,并对所述待处理数据进行处理,以获得处理后的至少两个待查询数据,其中,所述至少两个待查询数据的数据类型均相同;

基于所述处理后的至少两个待查询数据计算聚合数据。

本说明书实施例提供的所述数据处理装置,通过待存储数据的属性信息确定待存储数据的数据标签,根据待存储数据的数据标签创建数据分区,并确定数据标签对应的待存储数据的数据类型,进而将数据分区按照待存储数据的数据类型划分对应的子分区,并将待存储数据存储至数据类型对应的子分区中,实现了将待存储数据按照数据类型进行存储,避免了数据库中因待存储数据的数据类型而无法将待存储数据进行存储,导致的数据丢失,不仅提高了数据存储是安全性,也满足了对海量时序数据的快速存储,提高存储效率,进而后续也可提高数据的查询效率。

上述为本实施例的一种数据处理装置的示意性方案。需要说明的是,该数据处理装置的技术方案与上述的数据处理方法的技术方案属于同一构思,数据处理装置的技术方案未详细描述的细节内容,均可以参见上述数据处理方法的技术方案的描述。

图6示出了根据本说明书一个实施例提供的一种计算设备600的结构框图。该计算设备600的部件包括但不限于存储器610和处理器620。处理器620与存储器610通过总线630相连接,数据库650用于保存数据。

计算设备600还包括接入设备640,接入设备640使得计算设备600能够经由一个或多个网络660通信。这些网络的示例包括公用交换电话网(PSTN)、局域网(LAN)、广域网(WAN)、个域网(PAN)或诸如因特网的通信网络的组合。接入设备640可以包括有线或无线的任何类型的网络接口(例如,网络接口卡(NIC))中的一个或多个,诸如IEEE802.11无线局域网(WLAN)无线接口、全球微波互联接入(Wi-MAX)接口、以太网接口、通用串行总线(USB)接口、蜂窝网络接口、蓝牙接口、近场通信(NFC)接口,等等。

在本说明书的一个实施例中,计算设备600的上述部件以及图6中未示出的其他部件也可以彼此相连接,例如通过总线。应当理解,图6所示的计算设备结构框图仅仅是出于示例的目的,而不是对本说明书范围的限制。本领域技术人员可以根据需要,增添或替换其他部件。

计算设备600可以是任何类型的静止或移动计算设备,包括移动计算机或移动计算设备(例如,平板计算机、个人数字助理、膝上型计算机、笔记本计算机、上网本等)、移动电话(例如,智能手机)、可佩戴的计算设备(例如,智能手表、智能眼镜等)或其他类型的移动设备,或者诸如台式计算机或PC的静止计算设备。计算设备600还可以是移动式或静止式的服务器。

其中,处理器620用于执行如下计算机可执行指令时实现所述数据处理方法的步骤。

上述为本实施例的一种计算设备的示意性方案。需要说明的是,该计算设备的技术方案与上述的数据处理方法的技术方案属于同一构思,计算设备的技术方案未详细描述的细节内容,均可以参见上述数据处理方法的技术方案的描述。

本说明书一实施例还提供一种计算机可读存储介质,其存储有计算机指令,该指令被处理器执行时以用于实现如前所述数据处理方法的步骤。

上述为本实施例的一种计算机可读存储介质的示意性方案。需要说明的是,该存储介质的技术方案与上述的数据处理方法的技术方案属于同一构思,存储介质的技术方案未详细描述的细节内容,均可以参见上述数据处理方法的技术方案的描述。

上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。

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

需要说明的是,对于前述的各方法实施例,为了简便描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本说明书实施例并不受所描述的动作顺序的限制,因为依据本说明书实施例,某些步骤可以采用其它顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定都是本说明书实施例所必须的。

在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。

以上公开的本说明书优选实施例只是用于帮助阐述本说明书。可选实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施方式。显然,根据本说明书实施例的内容,可作很多的修改和变化。本说明书选取并具体描述这些实施例,是为了更好地解释本说明书实施例的原理和实际应用,从而使所属技术领域技术人员能很好地理解和利用本说明书。本说明书仅受权利要求书及其全部范围和等效物的限制。

相关技术
  • 图像数据处理方法、用于图像数据处理方法的程序、记录有用于图像数据处理方法的程序的记录介质和图像数据处理装置
  • 药箱的数据处理方法、装置、数据处理方法和装置
技术分类

06120113255848