CN116049153A - 时序数据处理方法、装置、电子设备及存储介质 - Google Patents
时序数据处理方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN116049153A CN116049153A CN202211589576.7A CN202211589576A CN116049153A CN 116049153 A CN116049153 A CN 116049153A CN 202211589576 A CN202211589576 A CN 202211589576A CN 116049153 A CN116049153 A CN 116049153A
- Authority
- CN
- China
- Prior art keywords
- data
- tag
- value
- time sequence
- query
- 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.)
- Granted
Links
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/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
- G06F16/215—Improving data quality; Data cleansing, e.g. de-duplication, removing invalid entries or correcting typographical errors
-
- 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/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2474—Sequence data queries, e.g. querying versioned data
-
- 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/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/284—Relational databases
- G06F16/285—Clustering or classification
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Quality & Reliability (AREA)
- Fuzzy Systems (AREA)
- Mathematical Physics (AREA)
- Probability & Statistics with Applications (AREA)
- Software Systems (AREA)
- Computational Linguistics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请提出的时序数据处理方法、装置、电子设备及存储介质,涉及数据库技术领域。包括:获取待写入时序数据;从预设的时序数据库获取时序表结构定义;对待写入时序数据进行划分,得到标签数据和值数据;根据标签存储信息从时序数据库获取标签数据存储表;根据标签数据与标签数据存储表的数据进行比对,得到比对结果;根据比对结果,从标签数据存储表获取标签数据的标签标识码;根据值存储信息从时序数据库获取值数据存储表;将标签标识码和值数据写入值数据存储表。本申请实施例通过对时序数据的分离存储,减少了标签数据的重复存储。此外,对分离后的标签存储表及值存储表的读写流程进行定义,简化了分离后数据的读写流程,提升了查询效率。
Description
技术领域
本申请涉及数据库技术领域,尤其涉及一种时序数据处理方法、装置、电子设备及存储介质。
背景技术
时序数据中标签是重要的组成部分,标签描述了数据源的信息,通常在时序场景下会作为数据查询的条件,很多时序数据库将标签作为时序数据的索引使用。高效地管理标签数据,对于时序数据的空间占用、查询效率等都有非常重要的意义。
在一些时序数据库(如InfluxDB)中,将标签数据与时序数据其他部分一起存储,用户使用时可以从单一数据源查询到所需的数据。这种方式简化了用户的使用,标签数据和采集值以及时间值的管理对用透明。但这种实现方式将标签数据与时序数据的其他部分一起存储,由于同一个设备的标签数据基本是固定的,导致标签数据有大量重复存储的问题,当时序数据中标签个数较多的情况下会造成较大的空间浪费。因此,如何减少标签数据重复存储,成为了亟待解决的技术问题。
发明内容
本申请实施例的主要目的在于提出一种时序数据处理方法、装置、电子设备及存储介质,能够减少标签数据的重复存储。
为实现上述目的,本申请实施例的第一方面提出了一种时序数据处理方法,所述方法包括:
获取待写入时序数据;
从预设的时序数据库获取时序表结构定义;其中,所述时序表结构定义包括标签存储信息和值存储信息;
对所述待写入时序数据进行划分,得到标签数据和值数据;
根据所述标签存储信息从所述时序数据库获取标签数据存储表;
根据所述标签数据与所述标签数据存储表的数据进行比对,得到比对结果;
根据所述比对结果,从所述标签数据存储表获取所述标签数据的标签标识码;
根据所述值存储信息从所述时序数据库获取值数据存储表;
将所述标签标识码和所述值数据写入所述值数据存储表。
在一些实施例,所述根据所述比对结果,从所述标签数据存储表获取所述标签数据的标签标识码,包括:
若比对结果为所述标签数据存储表不包括所述标签数据,则将所述标签数据写入所述标签数据存储表,以得到所述标签数据的标签标识码;
若比对结果为所述标签数据存储表包括所述标签数据,则对所述标签数据存储表进行标识码读取,以得到所述标签数据的标签标识码。
在一些实施例,所述时序表结构定义包括标签信息和值信息,所述对所述待写入时序数据进行划分,得到标签数据和值数据,包括:
根据所述标签信息对所述待写入时序数据进行标签读取,得到所述标签数据;
根据所述值信息对所述待写入时序数据进行值读取,得到所述值数据。
在一些实施例,所述方法还包括:
获取数据查询语句;
对所述数据查询语句进行分类,得到分类结果;
根据所述分类结果对所述时序表结构定义进行读取,得到选定数据源,并根据所述数据查询语句对所述选定数据源进行查询,得到数据查询结果;其中,所述选定数据源包括所述标签数据存储表和所述值数据存储表中的至少一个。
在一些实施例,所述数据查询结果包括标签查询结果或值查询结果,所述根据所述分类结果对所述时序表结构定义进行读取,得到选定数据源,并根据所述数据查询语句对所述选定数据源进行查询,得到数据查询结果,包括:
若所述分类结果为所述数据查询语句仅包括标签查询语句,则对所述时序数据库进行读取,得到标签数据存储表,并根据所述标签查询语句对所述标签数据存储表进行查询,得到所述标签查询结果;
若所述分类结果为所述数据查询语句仅包括值查询语句,对所述时序数据库进行读取,得到值数据存储表,并根据所述值查询语句对所述值数据存储表进行查询,得到所述值查询结果。
在一些实施例,所述根据所述分类结果对所述时序表结构定义进行读取,得到选定数据源,并根据所述数据查询语句对所述选定数据源进行查询,得到数据查询结果,包括:
若所述分类结果为所述数据查询语句包括标签查询语句和值查询语句,则对所述时序数据库进行读取,得到所述标签数据存储表和所述值数据存储表;
根据所述标签数据存储表的数据量和所述值数据存储表的数据量进行比较,得到比较结果;
根据所述比较结果将所述标签数据存储表和所述值数据存储表中的一个作为驱动表,另一个作为被驱动表;
对所述驱动表进行查询,得到第一查询结果,并对所述被驱动表进行查询,得到第二查询结果;
根据所述第一查询结果和所述第二查询结果得到所述数据查询结果。
在一些实施例,所述对所述驱动表进行查询,得到第一查询结果,并对所述被驱动表进行查询,得到第二查询结果,包括:
若所述驱动表为所述标签数据存储表,则根据所述标签查询语句对所述驱动表进行查询,得到所述第一查询结果,并根据所述值查询语句对所述被驱动表进行查询,得到所述第二查询结果;
若所述驱动表为所述值数据存储表,则根据所述值查询语句对所述驱动表进行查询,得到所述第一查询结果,并根据所述标签查询语句对所述被驱动表进行查询,得到所述第二查询结果。
为实现上述目的,本申请实施例的第二方面提出了一种时序数据处理装置,所述装置包括:
时序数据获取模块,用于获取待写入时序数据;
表结构定义获取模块,用于从预设的时序数据库获取时序表结构定义;其中,所述时序表结构定义包括标签存储信息和值存储信息;
数据划分模块,用于对所述待写入时序数据进行划分,得到标签数据和值数据;
标签数据存储表获取模块,用于根据所述标签存储信息从所述时序数据库获取标签数据存储表;
数据比对模块,用于根据所述标签数据与所述标签数据存储表的数据进行比对,得到比对结果;
标识码获取模块,用于根据所述比对结果,获取所述标签数据的标签标识码;
值数据存储表获取模块,用于根据所述值存储信息从所述时序数据库获取值数据存储表;
值数据写入模块,用于将所述标签标识码和所述值数据写入所述值数据存储表。
为实现上述目的,本申请实施例的第三方面提出了一种电子设备,所述电子设备包括存储器、处理器、所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述第一方面所述的时序数据处理方法。
为实现上述目的,本申请实施例的第四方面提出了一种存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述第一方面所述的时序数据处理方法。
本申请提出的时序数据处理方法、时序数据处理装置、电子设备及存储介质,在获取待写入时序数据之后,需要对该时序数据进行划分,以便分离出标签数据和值数据,从而能够实现分开存储。存储的位置需从时序表结构定义中获取,该时序表结构定义中包括标签存储信息和值存储信息。可以根据标签存储信息从时序数据库中获得标签数据存储表,同理,可以根据值存储信息从时序数据库获得值数据存储表。通过数据分开存储,实现本申请实施例对待写入时序数据的自动分离和存储,减少了标签数据的重复存储。
附图说明
图1是本申请一个实施例提供的时序数据未分离存储的示意图;
图2是本申请一个实施例提供的时序数据分离存储的示意图;
图3是本申请另一个实施例提供的融合多态时序数据分离存储及查询的示意图;
图4是本申请实施例提供的时序数据处理方法的一个可选的流程图
图5是本申请实施例提供的时序数据的分离存储结果的示意图
图6是本申请实施例提供的时序数据库的元数据管理示意图;
图7为本申请实施例提供的时序数据写入流程示意图;
图8是本申请另一个实施例提供的时序数据处理方法的流程图;
图9为本申请实施例提供的时序数据查询流程图;
图10是本申请一个实施例提供的电子设备的硬件结构示意图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本申请,并不用于限定本申请。
需要说明的是,虽然在装置示意图中进行了功能模块划分,在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于装置中的模块划分,或流程图中的顺序执行所示出或描述的步骤。说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本申请实施例的目的,不是旨在限制本申请。
近年来,随着人工智能、物联网等新兴技术和业务的快速发展,时序数据的处理成为行业内的热门问题,通用数据库在时序场景下力不从心,各种时序数据库产品应运而生。
时序数据是按照一定时间周期产生的数据的序列,通过时序数据可以分析数据在一段时间内的变化情况。时序数据通常包含三个重要的组成部分:标签数据、时间值数据和采集值数据。其中,本申请实施例将时间值数据和采集值数据统称为值数据。标签数据在时序数据中用于描述设备的属性,如设备的位置、编号等信息;采集值数据是设备上随着时间不断变化的各种数据,如服务器的CPU使用率、主板的温度等;时间值数据则是描述数据产生的时间点。例如表1,服务器的主机名和I P地址是时序数据中的标签数据,主板温度和CPU使用率是采集值数据,时间值则记录了这条时序数据产生的时间点。
表1
时序数据中标签数据是重要的组成部分,标签数据描述了数据源的信息,通常在时序场景下会作为数据查询的条件,很多时序数据库将标签数据作为时序数据的索引使用。高效地管理标签数据,对于时序数据的空间占用、查询效率等都有非常重要的意义。
参照图1,图1是本申请一个实施例提供的时序数据未分离存储的示意图。在一些时序数据库(如I nf l uxDB)中,将标签数据与时序数据其他部分一起存储,用户使用时可以从单一数据源查询到所需的数据。这种方式简化了用户的使用,标签数据和采集值以及时间值的管理对用透明。但这种实现方式将标签数据与时序数据的其他部分一起存储,由于同一个设备的标签数据基本是固定的,导致标签数据有大量重复存储的问题,当时序数据中标签个数较多的情况下会造成较大的空间浪费。
还有一些时序数据库(如TimeSca l e)实现比较灵活,允许用户将标签数据与时序数据的其他部分单独管理。如图2所示,图2是本申请实施例提供的时序数据分离存储的示意图。使用时,用户根据需要对两份分离的数据执行操作。例如,用户查询环境内的设备信息时,可以只查询标签数据,而不涉及对采集值和时间值的操作。这种管理方式,解决了标签数据的重复存储问题。但将数据分开管理读写流程上比对单一数据集操作复杂,另外在需要从多个数据集取数据时,有时需要使用比较复杂的查询语法(如多表的joi n查询),需要时序数据库提供相应的能力。
基于此,本申请实施例提出了时序数据处理方法、时序数据处理装置、电子设备及存储介质,既能够简化时序数据的写入和查询流程,又能够减少标签数据的重复存储。参照图3,图3是本申请实施例提供的融合多态时序数据分离存储及查询的示意图,本申请的整体方案如下:
1.写入流程中,自动将标签数据与时序数据其他部分分离存储,解决标签数据重复存储的问题。
2.查询流程中,根据查询语句智能地选择数据源,提升查询效率,且从数据源得到分离后的标签数据或时序数据其他部分直接提供给用户。
需要说明的是,一些时序数据库为了解决标签重存储的问题,选择由用户直接管理标签数据,但用户使用时需要分别对标签数据和值数据进行处理,增加了用户使用的难度和复杂度。而本申请通过对分离后的标签存储表及值存储表的读写流程进行定义,简化了分离后数据的读写流程,提升了查询效率。
本申请实施例提供的时序数据处理方法应用于服务器端中,还可以是运行于终端或服务器端中的软件。服务器端可以配置成独立的物理服务器,也可以配置成多个物理服务器构成的服务器集群或者分布式系统,还可以配置成提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN以及大数据和人工智能平台等基础云计算服务的云服务器;软件可以是实现时序数据处理方法的应用等,但并不局限于以上形式。
本申请可用于众多通用或专用的计算机系统环境或配置中。例如:服务器计算机、多处理器系统、基于微处理器的系统、置顶盒、可编程的消费电子设备、网络PC、包括以上任何系统或设备的分布式计算环境等等。本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
本申请实施例提供时序数据处理方法和时序数据处理装置、电子设备、存储介质,具体通过如下实施例进行说明,首先描述本申请实施例中的时序数据处理方法。
图4是本申请实施例提供的时序数据处理方法的一个可选的流程图,该时序数据处理方法可以包括但不限于包括步骤S101至步骤S108。
步骤S101,获取待写入时序数据;
步骤S102,从预设的时序数据库获取时序表结构定义;其中,时序表结构定义包括标签存储信息和值存储信息;
步骤S103,对待写入时序数据进行划分,得到标签数据和值数据;
步骤S104,根据标签存储信息从时序数据库获取标签数据存储表;
步骤S105,根据标签数据与标签数据存储表的数据进行比对,得到比对结果;
步骤S106,根据比对结果,从标签数据存储表获取标签数据的标签标识码;
步骤S107,根据值存储信息从时序数据库获取值数据存储表;
步骤S108,将标签标识码和值数据写入值数据存储表。
本申请实施例所示意的步骤S101至步骤S108,在获取待写入时序数据之后,需要对该时序数据进行划分,以便分离出标签数据和值数据,从而能够实现分开存储。存储的位置需从时序表结构定义中获取,该时序表结构定义中包括标签存储信息和值存储信息。可以根据标签存储信息从时序数据库中获得标签数据存储表,同理,可以根据值存储信息从时序数据库获得值数据存储表。如图5所示,图5是本申请实施例提供的时序数据分离存储的示意图,通过数据分开存储,实现本申请实施例对待写入时序数据的自动分离和存储,减少了标签数据的重复存储,从而提高了时序数据库的存储资源利用率。
在一些实施例的步骤S101中,获取待写入时序数据。具体地,时序数据是指与时间序列相关的采集数据。例如股票价格、气温变化、网站的浏览访问数据、个人健康数据、工业传感器数据、业务服务器的系统监控数据等都可以是时序数据。
在一示例中,对业务服务器进行数据采集,采集业务服务器的IO指标、CPU指标、带宽、内存指标、业务相关数据(方法调用异常次数、响应延迟、JVM GC相关数据等)、数据库相关数据(读取延迟、写入延迟等),根据这些采集数据得到待写入时序数据。可以理解的是,通过采集并存储时序数据,可以用于监控和分析各项监测指标,给用户提供有价值的信息。
在一些实施例的步骤S102中,从预设的时序数据库获取时序表结构定义;其中,时序表结构定义包括标签存储信息和值存储信息。
需要说明的是,可以在元数据中记录时序数据的schema信息,同时创建单独的标签数据存储表、值数据存储表。其中,元数据是指数据库里面的系统表记录,一般数据库启动以后系统表就已经存在,当前时序数据库下有哪些表、哪些库等信息可以从系统表的记录里面查询到。Schema信息指的是表的结构定义,例如表1的时序数据,在数据库里面存储的时候需要创建表的结构定义,类似关系表中有建表语句(create table),一些时序数据库可以通过待写入时序数据的格式来定义。表的结构定义类似如下的形式:create tabledevops(time timestamp,hostname text,ip_address text,temperature float,cpu_usage float)。Schema信息里面包含了每列数据的名称、数据类型等信息。在时序场景下,除了列名、数据类型还包括数据分类信息,即标注哪些列是标签列、哪些是时间值以及采集值。所以在获取时序表结构定义之前,需要根据建表语句创建原始表结构定义,然后基于原始表结构定义进行扩展,得到时序表结构定义。例如InfluxDB写入格式是:表名,时间值,标签值,标签值,采集值,采集值,这样一行数据写进来,就可以知道哪些是标签值。原始表结构定义主要是定义数据列的名称、数据类型,而时序表结构定义记录了哪些列是标签值、那些列是采集值、哪一列是时间值等与时序相关的信息。例如时序表结构定义记录的是,第1列是时间值,2、3两列是标签值,其他列是采集值。
从原始表结构定义能够得到每一列的列名和类型,数据写入流程中会有列名以及类型的校验;此外,标签数据存储表和值数据存储表的列类型和原始表结构定义中一致。
具体地,参照图6,图6是本申请实施例提供的时序数据库的元数据管理示意图。原始时序表结构定义包括表标识码(表ID)、列定义和其他元数据。时序表结构定义包括表标识码(表ID)、标签信息、值信息(包括采集值信息和时间值信息),标签存储信息、值存储信息和其他时序元数据。
需要说明的是,标签信息用于表示时序数据中哪几列是标签数据;标签存储信息用于表示标签数据存储表的信息。同理,值信息用于表示时序数据中哪几列是值数据(包括采集值数据和时间值数据);值存储信息,则是用于表示值数据存储表的信息。例如,原始表结构定义的表名称是devops,其中第二列和第三列是标签,则时序表结构定义存储的标签信息是“2,3”,即记录第二列和第三列是标签列。标签存储信息记录的是标签存储表的表名或者表ID,若标签数据存储表的表名为“tags”,则时序表结构定义存储的标签存储信息是“tags”,以便表明标签数据是存储在“tags”这张表里面。
继续参阅图6,可以根据标签存储信息从时序数据库获取标签数据存储表(图6中的标签表),标签数据存储表包括表ID、列定义和标签ID。可以根据值存储信息从时序数据库获取值数据存储表(图6中的采集值和时间值表),值数据存储表包括表ID、列定义和标签ID。
在一些实施例的步骤S103中,对待写入时序数据进行划分,得到标签数据和值数据。
例如,参照表1,待写入时序数据为“2022-10-27 00:00:00、host-dev-0001、172.16.0.55、45.6、0.65”。可以根据数据格式对待写入时序数据进行划分,得到标签数据和值数据。一般地,标签数据的数据格式为字符串类型,而值数据的数据格式为整数型、浮点型等。因此,可以根据数据格式进行时序数据的自动分离。需要说明的是,值数据一般包括时间值,采集值,且是随着时间不断变化的,而标签数据基本是固定不变的。
除了数据格式,在另一实施例中,步骤S103具体包括但不限于以下步骤:
根据标签信息对待写入时序数据进行标签读取,得到标签数据;
根据值信息对待写入时序数据进行值读取,得到值数据。
具体地,标签信息具体存储内容为“2,3”,而值信息具体存储内容为“1,4,5”,则根据标签信息可以得知第二列和第三列是标签数据,因此,从待写入时序数据中,得到标签数据为“host-dev-0001,172.16.0.55”,从而剩余部分的时序数据就是值数据。当然也可以根据值信息可以得到第一列、第四列和第五列为值数据,因此,从待写入时序数据中,得到值数据为“2022-10-27 00:00:00、45.6、0.65”。另外,本申请实施例的值信息具体包括采集值信息和时间值信息,因此,具体可根据采集值信息得知采集值数据为“45.6、0.65”,可根据时间值信息得知时间值数据为“2022-10-27 00:00:00”。
在一些实施例的步骤S104中,根据标签存储信息从时序数据库获取标签数据存储表。由于标签存储信息用于表示标签数据存储表的信息,例如标签数据存储表的表名或表ID,因此可根据标签存储信息找到标签数据存储表。
在一些实施例的步骤S105中,根据标签数据与标签数据存储表的数据进行比对,得到比对结果。具体地,该比对结果可以是标签数据存储表不包括标签数据,也可以是标签数据存储表包括标签数据。通过此比对过程,以便标签数据的重复写入。
在一些实施例的步骤S106中,根据比对结果,从标签数据存储表获取标签数据的标签标识码。具体地,根据比对结果可以得知,标签数据是否已经存在于标签数据存储表。若已经存在,则无需再次写入,减少数据写入次数,提高存储资源利用率。若未存在,则需将标签数据写入标签数据存储表,以便实现数据写入。
在一示例中,步骤S106具体包括但不限于以下步骤:
若比对结果为标签数据存储表不包括标签数据,则将标签数据写入标签数据存储表,以得到标签数据的标签标识码;
若比对结果为标签数据存储表包括标签数据,则对标签数据存储表进行标识码读取,以得到标签数据的标签标识码。
在一些实施例的步骤S107中,根据值存储信息从时序数据库获取值数据存储表。由于值存储信息用于表示值数据存储表的信息,例如值数据存储表的表名或表ID,因此可根据值存储信息找到值数据存储表。
在一些实施例的步骤S108中,将标签标识码和值数据写入值数据存储表,完成本次数据写入流程。在一示例中,在将标签标识码和值数据写入值数据存储表之后,向客户端返回执行结果,该执行结果用于表示时序数据写入成功。
参阅图7,图7为本申请实施例提供的时序数据写入流程示意图。本申请实施例的时序数据处理方法包括:
开始写入流程;
获取待写入时序数据;
从预设的时序数据库获取时序表结构定义;
从时序表结构定义获取标签信息和值信息,根据标签信息和值信息对待写入时序数据进行划分,得到标签数据和值数据;
从时序表结构定义获取标签存储信息,根据标签存储信息从时序数据库获取标签数据存储表;
根据标签数据与标签数据存储表的数据进行比对,得到比对结果;
若比对结果为标签数据存储表不包括标签数据,则将标签数据写入标签数据存储表,以得到标签数据的标签标识码;若比对结果为标签数据存储表包括标签数据,则对标签数据存储表进行标识码读取,以得到标签数据的标签标识码;
根据值存储信息从时序数据库获取值数据存储表;
将标签标识码和值数据写入值数据存储表。
以上为本申请提供的数据写入流程的具体实施方式,下面具体介绍本申请提供的数据查询流程的具体实施方式。
参照图8,在一些实施例中,在步骤S108之后,本申请实施例的时序数据处理方法还可以包括但不限于步骤S201至步骤S203:
步骤S201,获取数据查询语句;
步骤S202,对数据查询语句进行分类,得到分类结果;
步骤S203,根据分类结果对时序表结构定义进行读取,得到选定数据源,并根据数据查询语句对选定数据源进行查询,得到数据查询结果;其中,选定数据源包括标签数据存储表和值数据存储表中的至少一个。
具体地,通过步骤S201至步骤S203主要是对数据查询语句进行分类,分类结果用于指示数据源。然后可以根据分类结果对时序表结构定义进行读取,以便实现对数据源的自动选取,得到选定数据源,该选定数据源根据分类结果的不同会随之不同,但该选定数据源包括标签数据存储表和值数据存储表中的至少一个。也就是该选定数据源可表示标签数据存储表,也可表示值数据存储表,还可共同表示标签数据存储表和值数据存储表。
在一些实施例的步骤S201中,数据查询语句由预设对象(用户)输入,用于表示预设对象的查询请求。具体地,数据查询语句包括查询输出列和查询条件列。查询输出列指的是用户需要展示的列,查询条件列是指用户用来作为查询条件的列。例如原始表结构定义是:devops(time timestamp,hostname text,ip_address text,temperature float,cpu_usage float),而数据查询语句是“select temperature from devops where hostname=‘host-dev-0001’”。说明,查询输出列是temperature,查询条件列是hostname。
在一些实施例的步骤S202中,对数据查询语句进行分类,得到分类结果。具体地,对数据查询语句进行划分,得到查询输出列和查询条件列;对查询输出列进行识别,得到查询输出列的列名;对查询条件列进行识别,得到查询条件列的列名;根据查询输出列的列名和查询条件列的列名确定分类结果。
在一实施例中,根据查询输出列的列名和查询条件列的列确定分类结果,具体包括:
根据查询输出列的列名得到第一结果,第一结果用于表示查询输出列为查询标签数据或查询值数据;
根据查询条件列的列名得到第二结果,第二结果用于表示查询条件列为查询标签数据或查询值数据;
对第一结果和第二结果进行合并,得到分类结果。
具体地,在一示例中,数据查询语句为“select temperature from devops wherehostname=‘host-dev-0001’”。该数据查询语句的查询输出是temperature,而查询条件是hostname。根据列名可以知道temperature是值数据,而hostname是标签数据。因此,第一结果为查询输出列为查询值数据,第二结果为查询条件列为查询标签数据,则这个数据查询语句的分类结果既涉及查询标签数据又涉及查询值数据,需要从两个表(两个表是指上述实施例中的标签数据存储表和值数据存储表)获取数据。
在另一示例中,数据查询语句为“select ip_address from devops wherehostname=‘host-dev-0001’”。该数据查询语句的查询输出是ip_address,而查询条件是hostname。根据列名可以知道ip_address是标签数据,且hostname是标签数据。则查询输出列和查询条件列都是查询标签数据,只需要从一张表(这个表是指上述实施例中的标签数据存储表)获取数据。
需要说明的是,分类结果用于表示数据查询语句是否涉及标签数据查询或值数据查询,因此,分类结果具体包括:数据查询语句仅包括标签查询语句、数据查询语句仅包括值查询语句、以及数据查询语句包括标签查询语句和值查询语句。更具体地,对第一结果和第二结果进行合并,得到分类结果,具体包括:
若第一结果是查询输出列为查询标签数据,且第二结果是查询条件列为查询标签数据,则分类结果为数据查询语句仅包括标签查询语句;
若第一结果是查询输出列为查询标签数据,且第二结果是查询条件列为查询值数据,则分类结果为数据查询语句包括标签查询语句和值查询数据;
若第一结果是查询输出列为查询值数据,且第二结果是查询条件列为查询标签数据,则分类结果为数据查询语句包括标签查询语句和值查询数据;
若第一结果是查询输出列为查询值数据,且第二结果是查询条件列为查询值数据,则分类结果为数据查询语句仅包括值查询数据;
若第一结果是查询输出列为查询值数据,且第二结果是查询条件列为查询标签数据,则分类结果为数据查询语句包括标签查询语句和值查询数据。
在一些实施例的步骤S203中,根据分类结果对时序表结构定义进行读取,得到选定数据源,并根据数据查询语句对选定数据源进行查询,得到数据查询结果;其中,选定数据源包括标签数据存储表和值数据存储表中的至少一个。需要说明的是,对时序表结构定义进行读取,可以得到标签存储信息和值存储信息,从而可以得到标签数据存储表和值数据存储表,以便得到选定数据源。
在一实施例中,数据查询结果包括标签查询结果或值查询结果,步骤S303具体包括但不限于以下步骤:
若分类结果为数据查询语句仅包括标签查询语句,则对时序数据库进行读取,得到标签数据存储表,并根据标签查询语句对标签数据存储表进行查询,得到标签查询结果;
若分类结果为数据查询语句仅包括值查询语句,对时序数据库进行读取,得到值数据存储表,并根据值查询语句对值数据存储表进行查询,得到值查询结果。
具体地,本申请实施例能够自动适配数据源、自动优化查询。需要说明的是,在现有的方案中标签数据从时序数据中分离出来以后,用户查询数据时需要指定数据表,有时还需要用户编写复杂的join查询语句才能获取到所需的数据。而本申请实施例将这些复杂的逻辑隐藏在内部实现中,用户可以使用简单的查询语法输入数据查询语句进行数据查询,把时序数据当作一张普通表。而本申请需要根据数据查询语句的查询条件列以及查询输出列,自动选定数据源,以便确定从哪一张表获取数据。
另外,由于可能存在需要同时查询标签数据存储表和值数据存储表的情况,本申请还会根据两张表的数据量和表上的索引等信息,智能地确定查询的方式和顺序,以达到最佳的查询性能。步骤S203还包括但不限于以下步骤:
若分类结果为数据查询语句包括标签查询语句和值查询语句,则对时序数据库进行读取,得到标签数据存储表和值数据存储表;
根据标签数据存储表的数据量和值数据存储表的数据量进行比较,得到比较结果;
根据比较结果将标签数据存储表和值数据存储表中的一个作为驱动表,另一个作为被驱动表;
对驱动表进行查询,得到第一查询结果,并对被驱动表进行查询,得到第二查询结果;
根据第一查询结果和第二查询结果得到数据查询结果。
具体地,在一示例中:预设对象的数据查询语句是“select temperature fromdevops where hostname=‘host-dev-0001’”。通过上述实施例的分类,可以得知该数据查询语句需要对标签数据存储表和值数据存储表进行联表查询。对数据查询语句进行转换,得到转换后的数据查询语句为“select temperature from tags join field_time ontags.id=field_time.id where hostname=‘host-dev-0001’”;整体步骤如下:通过时序表结构定义,查询到devops表关联的标签数据存储表和值数据存储表,分别是tags和field_time。从数据查询语句中获取到查询输出列为temperature,查询条件列为hostname。根据时序表结构定义的标签信息和值信息可以知道,temperature是值数据,hostname是标签数据;本次查询既需要查询标签数据,又需要查询值数据,因此需要从两张表获取数据。把用户对devops的数据查询语句重写为对tags表和field_time表的join查询(根据数据量和索引优化join顺序),执行对两张表的联表查询,返回数据。
更具体地,从上述示例中可以看出,devops表对用户而言是一张时序表,用户所有的写入和查询都是针对devops的操作。而在本申请接收到数据写入或数据查询后,时序数据库内部实际把数据存储分成了tags(标签数据存储表表)和field_time(值数据存储表,又称采集值和时间值表),时序数据库内部将对devops的操作转换为对tags和field_time两张表的操作。内部复杂的逻辑用户不感知,对用户而言可以认为只是在操作devops表。对于用户而言,用户既可以把时序数据的写入过程当作一张普通表操作,又可以在数据的查询过程中直接操作分离后的标签数据或值数据(值数据包括采集值和时间值)。
在一实施例中,若驱动表为标签数据存储表,则根据标签查询语句对所述驱动表进行查询,得到第一查询结果,并根据值查询语句对被驱动表进行查询,得到第二查询结果;
若驱动表为值数据存储表,则根据值查询语句对驱动表进行查询,得到第一查询结果,并根据标签查询语句对被驱动表进行查询,得到第二查询结果。
需要说明的是,相关技术中,用户编写两张表的联表查询时,具体的查询效率取决于用户编写的数据查询语句,对用户的数据库使用技能有一定要求。而本申请实施例会根据查询条件列和查询输出列,智能地选择数据源;同时能够根据表的数据量、索引等信息优化查询语句,获得最佳的查询性能。
参阅图9,图9为本申请实施例提供的时序数据查询流程图,本申请实施例的时序数据处理方法还包括:
开始查询流程;
获取数据查询语句;
对数据查询语句进行分类,得到分类结果;
若分类结果为数据查询语句仅包括标签查询语句,则对时序数据库进行读取,得到标签数据存储表,并根据标签查询语句对标签数据存储表进行查询,得到标签查询结果;
若分类结果为数据查询语句仅包括值查询语句,对时序数据库进行读取,得到值数据存储表,并根据值查询语句对值数据存储表进行查询,得到值查询结果;
若分类结果为数据查询语句包括标签查询语句和值查询语句,则对时序数据库进行读取,得到标签数据存储表和值数据存储表;根据标签数据存储表的数据量和值数据存储表的数据量进行比较,得到比较结果;根据比较结果将标签数据存储表和值数据存储表中的一个作为驱动表,另一个作为被驱动表;对驱动表进行查询,得到第一查询结果,并对被驱动表进行查询,得到第二查询结果;根据第一查询结果和第二查询结果得到数据查询结果;
返回执行结果;
查询流程结束。
通过上述具体实施例,本申请的时序数据处理方法至少存在以下技术效果:
1)从时序数据自动分离标签数据和值数据,标签数据和值数据进行单独存储降低存储成本。
2)对内分离存储,对外统一接口。隐藏内部逻辑,对用户提供单表的语义,用户可以当作一张数据表使用。
3)自动优化查询性能。根据数据查询语句,内部完成自动选择数据源、调整join顺序等查询优化。
4)分离后的数据的提供给用户的方案。通过在元数据中记录分离后数据的存储信息,用户可以直接访问分离后的数据,从而在使用上获得很好的兼容性。
本申请实施例还提供时序数据处理装置,可以实现上述时序数据处理方法,该装置包括:时序数据获取模块,用于获取待写入时序数据;表结构定义获取模块,用于从预设的时序数据库获取时序表结构定义;其中,时序表结构定义包括标签存储信息和值存储信息;数据划分模块,用于对待写入时序数据进行划分,得到标签数据和值数据;标签数据存储表获取模块,用于根据标签存储信息从时序数据库获取标签数据存储表;数据比对模块,用于根据所标签数据与标签数据存储表进行比对,得到比对结果;标识码获取模块,用于根据所述比对结果,获取所述标签数据的标签标识码;值数据存储表获取模块,用于根据值存储信息从时序数据库获取值数据存储表;值数据写入模块,用于将标签标识码和值数据写入值数据存储表。
时序数据处理装置还包括:数据查询模块,用于获取数据查询语句;对数据查询语句进行分类,得到分类结果;根据分类结果对时序表结构定义进行读取,得到选定数据源,并根据数据查询语句对选定数据源进行查询,得到数据查询结果;其中,选定数据源包括标签数据存储表和值数据存储表中的至少一个。
需要说明的是,该时序数据处理装置的具体实施方式与上述时序数据处理方法的具体实施例基本相同,在此不再赘述。
本申请实施例还提供了电子设备,电子设备包括:存储器、处理器、存储在存储器上并可在处理器上运行的程序以及用于实现处理器和存储器之间的连接通信的数据总线,程序被处理器执行时实现上述时序数据处理方法。该电子设备可以为包括平板电脑、车载电脑等任意智能终端。
请参阅图10,图10示意了另一实施例的电子设备的硬件结构,电子设备包括:
处理器301,可以采用通用的CPU(Central Processing Unit,中央处理器)、微处理器、应用专用集成电路(Application Specific Integrated Circuit,ASIC)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本申请实施例所提供的技术方案;
存储器302,可以采用只读存储器(Read Only Memory,ROM)、静态存储设备、动态存储设备或者随机存取存储器(Random Access Memory,RAM)等形式实现。存储器302可以存储操作系统和其他应用程序,在通过软件或者固件来实现本说明书实施例所提供的技术方案时,相关的程序代码保存在存储器302中,并由处理器301来调用执行本申请实施例的时序数据处理方法;
输入/输出接口303,用于实现信息输入及输出;
通信接口304,用于实现本设备与其他设备的通信交互,可以通过有线方式(例如USB、网线等)实现通信,也可以通过无线方式(例如移动网络、WIFI、蓝牙等)实现通信;
总线305,在设备的各个组件(例如处理器301、存储器302、输入/输出接口303和通信接口304)之间传输信息;
其中处理器301、存储器302、输入/输出接口303和通信接口304通过总线305实现彼此之间在设备内部的通信连接。
本申请实施例还提供了存储介质,存储介质为计算机可读存储介质,用于计算机可读存储,存储介质存储有一个或者多个程序,一个或者多个程序可被一个或者多个处理器执行,以实现上述时序数据处理方法。
存储器作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序以及非暂态性计算机可执行程序。此外,存储器可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施方式中,存储器可选包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至该处理器。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
本申请实施例提供的时序数据处理方法、时序数据处理装置、电子设备及存储介质,在获取待写入时序数据之后,需要对该时序数据进行划分,以便分离出标签数据和值数据,从而能够实现分开存储。存储的位置需从时序表结构定义中获取,该时序表结构定义中包括标签存储信息和值存储信息。可以根据标签存储信息从时序数据库中获得标签数据存储表,同理,可以根据值存储信息从时序数据库获得值数据存储表。通过数据分开存储,实现本申请实施例对待写入时序数据的自动分离和存储,减少了标签数据的重复存储,从而提高了时序数据库的存储资源利用率。另外,在进行数据查询过程中,主要是对数据查询语句进行分类,分类结果用于指示数据源。然后可以根据分类结果对时序数据库的时序表结构定义(又称元数据表)进行读取,以便实现对数据源的自动选取,得到选定数据源,该选定数据源根据分类结果的不同会随之不同,但该选定数据源包括标签数据存储表和值数据存储表中的至少一个。然后从选定数据源中得到对应的查询结果。
本申请实施例描述的实施例是为了更加清楚的说明本申请实施例的技术方案,并不构成对于本申请实施例提供的技术方案的限定,本领域技术人员可知,随着技术的演变和新应用场景的出现,本申请实施例提供的技术方案对于类似的技术问题,同样适用。
本领域技术人员可以理解的是,附图中示出的技术方案并不构成对本申请实施例的限定,可以包括比图示更多或更少的步骤,或者组合某些步骤,或者不同的步骤。
以上所描述的装置实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统、设备中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。
本申请的说明书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
应当理解,在本申请中,“至少一个(项)”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,用于描述关联对象的关联关系,表示可以存在三种关系,例如,“A和/或B”可以表示:只存在A,只存在B以及同时存在A和B三种情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b或c中的至少一项(个),可以表示:a,b,c,“a和b”,“a和c”,“b和c”,或“a和b和c”,其中a,b,c可以是单个,也可以是多个。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括多指令用以使得一台电子设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(Random Access Memory,简称RAM)、磁碟或者光盘等各种可以存储程序的介质。
以上参照附图说明了本申请实施例的优选实施例,并非因此局限本申请实施例的权利范围。本领域技术人员不脱离本申请实施例的范围和实质内所作的任何修改、等同替换和改进,均应在本申请实施例的权利范围之内。
Claims (10)
1.一种时序数据处理方法,其特征在于,所述方法包括:
获取待写入时序数据;
从预设的时序数据库获取时序表结构定义;其中,所述时序表结构定义包括标签存储信息和值存储信息;
对所述待写入时序数据进行划分,得到标签数据和值数据;
根据所述标签存储信息从所述时序数据库获取标签数据存储表;
根据所述标签数据与所述标签数据存储表的数据进行比对,得到比对结果;
根据所述比对结果,从所述标签数据存储表获取所述标签数据的标签标识码;
根据所述值存储信息从所述时序数据库获取值数据存储表;
将所述标签标识码和所述值数据写入所述值数据存储表。
2.根据权利要求1所述的方法,其特征在于,所述根据所述比对结果,从所述标签数据存储表获取所述标签数据的标签标识码,包括:
若比对结果为所述标签数据存储表的数据不包括所述标签数据,则将所述标签数据写入所述标签数据存储表,以得到所述标签数据的标签标识码;
若比对结果为所述标签数据存储表的数据包括所述标签数据,则对所述标签数据存储表进行标识码读取,以得到所述标签数据的标签标识码。
3.根据权利要求1所述的方法,其特征在于,所述时序表结构定义包括标签信息和值信息,所述对所述待写入时序数据进行划分,得到标签数据和值数据,包括:
根据所述标签信息对所述待写入时序数据进行标签读取,得到所述标签数据;
根据所述值信息对所述待写入时序数据进行值读取,得到所述值数据。
4.根据权利要求1至3任一项所述的方法,其特征在于,所述方法还包括:
获取数据查询语句;
对所述数据查询语句进行分类,得到分类结果;
根据所述分类结果对所述时序表结构定义进行读取,得到选定数据源,并根据所述数据查询语句对所述选定数据源进行查询,得到数据查询结果;其中,所述选定数据源包括所述标签数据存储表和所述值数据存储表中的至少一个。
5.根据权利要求4所述的方法,其特征在于,所述数据查询结果包括标签查询结果或值查询结果,所述根据所述分类结果对所述时序表结构定义进行读取,得到选定数据源,并根据所述数据查询语句对所述选定数据源进行查询,得到数据查询结果,包括:
若所述分类结果为所述数据查询语句仅包括标签查询语句,则对所述时序数据库进行读取,得到标签数据存储表,并根据所述标签查询语句对所述标签数据存储表进行查询,得到所述标签查询结果;
若所述分类结果为所述数据查询语句仅包括值查询语句,对所述时序数据库进行读取,得到值数据存储表,并根据所述值查询语句对所述值数据存储表进行查询,得到所述值查询结果。
6.根据权利要求4所述的方法,其特征在于,所述根据所述分类结果对所述时序表结构定义进行读取,得到选定数据源,并根据所述数据查询语句对所述选定数据源进行查询,得到数据查询结果,包括:
若所述分类结果为所述数据查询语句包括标签查询语句和值查询语句,则对所述时序数据库进行读取,得到所述标签数据存储表和所述值数据存储表;
根据所述标签数据存储表的数据量和所述值数据存储表的数据量进行比较,得到比较结果;
根据所述比较结果将所述标签数据存储表和所述值数据存储表中的一个作为驱动表,另一个作为被驱动表;
对所述驱动表进行查询,得到第一查询结果,并对所述被驱动表进行查询,得到第二查询结果;
根据所述第一查询结果和所述第二查询结果得到所述数据查询结果。
7.根据权利要求6所述的方法,其特征在于,所述对所述驱动表进行查询,得到第一查询结果,并对所述被驱动表进行查询,得到第二查询结果,包括:
若所述驱动表为所述标签数据存储表,则根据所述标签查询语句对所述驱动表进行查询,得到所述第一查询结果,并根据所述值查询语句对所述被驱动表进行查询,得到所述第二查询结果;
若所述驱动表为所述值数据存储表,则根据所述值查询语句对所述驱动表进行查询,得到所述第一查询结果,并根据所述标签查询语句对所述被驱动表进行查询,得到所述第二查询结果。
8.一种时序数据处理装置,其特征在于,所述装置包括:
时序数据获取模块,用于获取待写入时序数据;
表结构定义获取模块,用于从预设的时序数据库获取时序表结构定义;其中,所述时序表结构定义包括标签存储信息和值存储信息;
数据划分模块,用于对所述待写入时序数据进行划分,得到标签数据和值数据;
标签数据存储表获取模块,用于根据所述标签存储信息从所述时序数据库获取标签数据存储表;
数据比对模块,用于根据所述标签数据与所述标签数据存储表的数据进行比对,得到比对结果;
标识码获取模块,用于根据所述比对结果,获取所述标签数据的标签标识码;
值数据存储表获取模块,用于根据所述值存储信息从所述时序数据库获取值数据存储表;
值数据写入模块,用于将所述标签标识码和所述值数据写入所述值数据存储表。
9.一种电子设备,其特征在于,所述电子设备包括存储器、处理器、所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现权利要求1至7任一项所述的时序数据处理方法。
10.一种存储介质,所述存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的时序数据处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211589576.7A CN116049153B (zh) | 2022-12-12 | 2022-12-12 | 数据库的数据处理方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211589576.7A CN116049153B (zh) | 2022-12-12 | 2022-12-12 | 数据库的数据处理方法、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116049153A true CN116049153A (zh) | 2023-05-02 |
CN116049153B CN116049153B (zh) | 2023-08-25 |
Family
ID=86115660
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211589576.7A Active CN116049153B (zh) | 2022-12-12 | 2022-12-12 | 数据库的数据处理方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116049153B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117216068A (zh) * | 2023-11-07 | 2023-12-12 | 本原数据(北京)信息技术有限公司 | 支持数据库混合负载的数据存储方法、装置及存储介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013161101A (ja) * | 2012-02-01 | 2013-08-19 | Mitsubishi Electric Corp | 時系列データ照会装置、時系列データ照会方法及び時系列データ照会プログラム |
US20150095381A1 (en) * | 2013-09-27 | 2015-04-02 | International Business Machines Corporation | Method and apparatus for managing time series database |
CN109063012A (zh) * | 2018-07-11 | 2018-12-21 | 北京百度网讯科技有限公司 | 存储、查询时序数据的方法、装置、设备和计算机存储介质 |
CN109165217A (zh) * | 2018-08-03 | 2019-01-08 | 北京涛思数据科技有限公司 | 一种时序数据的高效存储方法 |
CN111813782A (zh) * | 2020-07-14 | 2020-10-23 | 杭州海康威视数字技术股份有限公司 | 一种时序数据的存储方法、装置 |
CN112732714A (zh) * | 2020-12-30 | 2021-04-30 | 杭州海康威视数字技术股份有限公司 | 一种基于Hbase的时序数据存储方法、装置及设备 |
WO2021184572A1 (zh) * | 2020-03-20 | 2021-09-23 | 平安国际智慧城市科技股份有限公司 | 查询方法、装置、计算机设备和存储介质 |
-
2022
- 2022-12-12 CN CN202211589576.7A patent/CN116049153B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013161101A (ja) * | 2012-02-01 | 2013-08-19 | Mitsubishi Electric Corp | 時系列データ照会装置、時系列データ照会方法及び時系列データ照会プログラム |
US20150095381A1 (en) * | 2013-09-27 | 2015-04-02 | International Business Machines Corporation | Method and apparatus for managing time series database |
CN109063012A (zh) * | 2018-07-11 | 2018-12-21 | 北京百度网讯科技有限公司 | 存储、查询时序数据的方法、装置、设备和计算机存储介质 |
CN109165217A (zh) * | 2018-08-03 | 2019-01-08 | 北京涛思数据科技有限公司 | 一种时序数据的高效存储方法 |
WO2021184572A1 (zh) * | 2020-03-20 | 2021-09-23 | 平安国际智慧城市科技股份有限公司 | 查询方法、装置、计算机设备和存储介质 |
CN111813782A (zh) * | 2020-07-14 | 2020-10-23 | 杭州海康威视数字技术股份有限公司 | 一种时序数据的存储方法、装置 |
CN112732714A (zh) * | 2020-12-30 | 2021-04-30 | 杭州海康威视数字技术股份有限公司 | 一种基于Hbase的时序数据存储方法、装置及设备 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117216068A (zh) * | 2023-11-07 | 2023-12-12 | 本原数据(北京)信息技术有限公司 | 支持数据库混合负载的数据存储方法、装置及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN116049153B (zh) | 2023-08-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11941016B2 (en) | Using specified performance attributes to configure machine learning pipepline stages for an ETL job | |
CN110674228A (zh) | 数据仓库模型构建和数据查询方法、装置及设备 | |
Zheng et al. | Carskit: A java-based context-aware recommendation engine | |
US9460188B2 (en) | Data warehouse compatibility | |
Hu et al. | Toward scalable systems for big data analytics: A technology tutorial | |
JP5298117B2 (ja) | 分散コンピューティングにおけるデータマージング | |
CN102253936B (zh) | 记录用户访问商品信息的方法及搜索方法和服务器 | |
US20140046928A1 (en) | Query plans with parameter markers in place of object identifiers | |
US11243987B2 (en) | Efficient merging and filtering of high-volume metrics | |
KR20200103542A (ko) | 지식-구동 연합 빅 데이터 쿼리 및 분석 플랫폼 | |
KR20200103543A (ko) | 지식-구동 연합 빅 데이터 쿼리 및 분석 플랫폼 | |
CN104077415A (zh) | 搜索方法及装置 | |
CN102270220A (zh) | 跨多个源标识主导概念 | |
US10078624B2 (en) | Method of generating hierarchical data structure | |
CN116049153B (zh) | 数据库的数据处理方法、装置、电子设备及存储介质 | |
CN111611448A (zh) | 知识驱动的联合大数据查询和分析平台 | |
US11745093B2 (en) | Developing implicit metadata for data stores | |
US9589038B1 (en) | Attribute tracking, profiling, and recognition | |
Betz et al. | Learning from the History of Distributed Query Processing | |
CN105184550A (zh) | 管理排期数据的方法、服务器及系统 | |
CN112199577B (zh) | 一种数据查询方法、装置及电子设备 | |
CN102402420B (zh) | 解析可观察集合 | |
CN110968679A (zh) | 数据查询方法及装置 | |
CN110399337B (zh) | 基于数据驱动的文件自动化服务方法和系统 | |
CN115774767B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |