CN114647660A - 数据处理、查询方法、装置、电子设备及存储介质 - Google Patents
数据处理、查询方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN114647660A CN114647660A CN202011519522.4A CN202011519522A CN114647660A CN 114647660 A CN114647660 A CN 114647660A CN 202011519522 A CN202011519522 A CN 202011519522A CN 114647660 A CN114647660 A CN 114647660A
- Authority
- CN
- China
- Prior art keywords
- data
- query
- data source
- structured
- storage space
- 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
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/24—Querying
- G06F16/242—Query formulation
- G06F16/2433—Query languages
-
- 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/242—Query formulation
-
- 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/248—Presentation of query results
-
- 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/25—Integrating or interfacing systems involving database management 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/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
- G06F16/258—Data format conversion from or to a database
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/80—Information retrieval; Database structures therefor; File system structures therefor of semi-structured data, e.g. markup language structured data such as SGML, XML or HTML
- G06F16/83—Querying
- G06F16/832—Query formulation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/80—Information retrieval; Database structures therefor; File system structures therefor of semi-structured data, e.g. markup language structured data such as SGML, XML or HTML
- G06F16/83—Querying
- G06F16/838—Presentation of query results
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/80—Information retrieval; Database structures therefor; File system structures therefor of semi-structured data, e.g. markup language structured data such as SGML, XML or HTML
- G06F16/84—Mapping; Conversion
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/80—Information retrieval; Database structures therefor; File system structures therefor of semi-structured data, e.g. markup language structured data such as SGML, XML or HTML
- G06F16/84—Mapping; Conversion
- G06F16/86—Mapping to a database
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Computational Linguistics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明实施例涉及数据处理领域,公开了一种数据处理、查询方法、装置、电子设备及存储介质,该方法包括:根据预先配置的数据源信息,从数据源中获取数据;根据数据源信息中的格式定义,获取数据的描述信息;根据描述信息,将数据以统一的结构化数据存储至预设的存储空间;在接收到查询指令后,在存储空间中进行数据查询。本发明实施例中的数据处理方法能够提高数据查询效率。
Description
技术领域
本申请实施例涉及数据处理领域,特别涉及一种数据处理、查询方法、装置、电子设备及存储介质。
背景技术
随着互联网发展,日常生活和商业生产使用的各类软件和系统会产生及使用大量的数据,其中,不同的软件和系统产生及使用的数据拥有不同的数据格式。
相关的数据处理方法中,不同数据源因为存储的数据分别为不同的数据格式,对两个或两个以上的多个数据源进行查询时,只能在各个数据源中分别使用不同的查询语言,对各个数据源一一进行查询。
因此,相关的数据处理方法中存在以下问题:无法将两个或两个以上的数据源进行关联查询,查询效率低。
发明内容
本申请实施例的主要目的在于提出一种数据处理、查询方法、装置、电子设备及存储介质,以提高数据查询效率。
为实现上述目的,本申请实施例提供了一种数据处理方法,包括:根据预先配置的数据源信息,从数据源中获取数据;根据数据源信息中的格式定义,获取数据的描述信息;根据描述信息,将数据以统一的结构化数据存储至预设的存储空间;在接收到查询指令后,在存储空间中进行数据查询。
为实现上述目的,本申请实施例还提供了一种数据查询方法,包括:在接收到半结构化查询指令后,将查询指令转换为结构化查询指令;根据结构化查询指令,在预设的用于存储统一的结构化数据的存储空间中进行数据查询;将数据查询得到的结构化查询结果,转换为半结构化查询结果。
为实现上述目的,本申请实施例还提供了一种数据处理装置,包括:获取模块,用于根据预先配置的数据源信息,从数据源中获取数据;描述模块,用于根据数据源信息中的格式定义,获取数据的描述信息;转换模块,用于根据描述信息,将数据以统一的结构化数据存储至预设的存储空间;查询模块,用于在接收到查询指令后,在存储空间中进行数据查询。
为实现上述目的,本申请实施例还提供了一种数据查询装置,包括:查询转换模块,用于在接收到半结构化查询指令后,将查询指令转换为结构化查询指令;结构查询模块,用于根据结构化查询指令,在预设的用于存储统一的结构化数据的存储空间中进行数据查询;结果转换模块,用于将数据查询得到的结构化查询结果,转换为半结构化查询结果。
为实现上述目的,本申请实施例还提供了一种电子设备,包括:至少一个处理器;与至少一个处理器通信连接的存储器;存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行上述的数据处理方法,或上述的数据查询方法。
为实现上述目的,本申请实施例还提供了一种计算机可读存储介质,存储有计算机程序,计算机程序被处理器执行时实现上述的数据处理方法,或上述的数据查询方法。
本申请提出的数据处理方法,通过根据从预先配置的数据源信息,从数据源中获取数据,根据格式定义,获取数据描述信息,将数据以统一的结构化数据存储至预设的存储空间,在接收到查询指令后,在存储空间中进行数据查询,由于描述信息根据数据源信息的格式定义获取,可以根据描述信息,对数据源中获取的数据的格式进行变更,转换为格式统一的结构化数据,因此可以将格式统一的结构化数据进行关联查询,使用统一的查询语言,同时对多个数据源中的数据进行查询,从而实现提高查询效率。
附图说明
图1是根据本发明第一实施方式提供的数据处理方法流程图;
图2是根据本发明第一实施方式提供的整体架构示意图;
图3是根据本发明第二实施方式提供的数据处理方法流程图;
图4是根据本发明第三实施方式提供的数据查询方法流程图;
图5是根据本发明第四实施方式提供的数据处理装置示意图;
图6是根据本发明第五实施方式提供的数据查询装置示意图;
图7是根据本发明第六实施方式提供的电子设备示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合附图对本申请的各实施例进行详细的阐述。然而,本领域的普通技术人员可以理解,在本申请各实施例中,为了使读者更好地理解本申请而提出了许多技术细节。但是,即使没有这些技术细节和基于以下各实施例的种种变化和修改,也可以实现本申请所要求保护的技术方案。以下各个实施例的划分是为了描述方便,不应对本申请的具体实现方式构成任何限定,各个实施例在不矛盾的前提下可以相互结合相互引用。
本发明的第一实施方式涉及一种数据处理方法,具体流程如图1所示:
步骤101,根据预先配置的数据源信息,从数据源中获取数据;
步骤102,根据数据源信息中的格式定义,获取数据的描述信息;
步骤103,根据描述信息,将数据以统一的结构化数据存储至预设的存储空间;
步骤104,在接收到查询指令后,在存储空间中进行数据查询。
本实施方式的数据处理方法,应用于数据处理装置,例如,可以进行数据存储、数据查询的电子设备中。当使用服务器等电子设备,对大数据进行数据分析时,由于大数据的数据来源广泛,数据格式不一,数据量庞大,因此不能对至少两个不同数据格式的数据源进行同时查询、关联查询等复杂查询,只能分别对各个数据源进行数据查询,获取分析所需的数据需要耗费较高的人力物力。基于本申请的数据处理方法,可以将各个数据源的数据中的数据以统一的结构化数据存储在预设的存储空间中,从而用户可以对统一的结构化数据进行复杂查询,进而对查询得到的数据进行数据分析。其中,本申请的电子设备包含数据格式转换装置、结构化数据存储引擎、查询执行引擎三个主要部分,本申请的数据处理方法的整体架构如图2所示。
下面对本实施方式的数据处理方法的实现细节进行具体的说明,以下内容仅为方便理解提供的实现细节,并非实施本方案的必须。
在步骤101中,电子设备根据预先配置的数据源信息,从数据源中获取数据。其中,数据源可以是文件系统、表述性状态传递REST(Representational State Transfer,简称“REST”)接口、WebService接口等用于存储或获取数据的渠道,电子设备从文件系统、REST接口获取的数据是文件系统储存的或REST接口指向的数据文件,数据文件中储存JavaScript对象表示法JSON(JavaScript Object Notation,简称“JSON”)、可扩展标记语言XML(eXtensible Markup Language,简称“XML”)、逗号分隔值CSV(Comma-SeparatedValues,简称“CSV”)等格式的半结构化数据。预先配置的数据源信息可以是配置指示文件的形式,由用户进行编写或上传,储存在电子设备中。具体地,电子设备可以依次获取数据源中的一个个数据对象,也可以每次获取一个数据源中的所有数据对象,电子设备可以根据数据源数据格式的不同,选择不同获取数据对象的方式。其中,电子设备可以通过调用接口方法,接收接口返回数据的方式,从数据源中获取数据。
具体地,电子设备可以预先生成一个配置指示文件,配置指示文件中有一项或多项配置项,由用户对配置项进行填写,各项配置项即是数据源信息,电子设备读取填写完成的配置指示文件,从而获取数据源信息。
在一个例子中,数据源信息中可以包含数据源的路径,例如,文件系统在数据源电子设备中的储存路径、REST接口的统一资源定位器URL(Uniform Resource Locator,简称“URL”)等等。电子设备通过读取数据源信息中各个数据源的路径,从各个数据源中获取数据。其中,数据源电子设备可以和本申请执行数据查询的电子设备为同一设备,也可以是另一设备。电子设备在读取到数据源信息后,可以立即根据数据源的路径,从数据源中获取数据。
进一步地,数据源信息中包含参数名称和参数值类型,电子设备根据数据源信息,从数据源中获取符合参数名称和参数值类型的数据。具体地,配置指示文件中可以包含参数项,由用户为参数项设置参数名称和参数值类型,电子设备使用此参数对数据源中的数据进行过滤。例如,数据源信息中的参数名称为姓名,参数值类型为字符串,则电子设备从数据源中获取数据结构描述名称为姓名,数据值类型为字符串的部分。若一个数据有三个部分,三个部分的结构描述名称和数据值类型分别为:姓名、字符串;性别、字符串;生日、日期,则电子设备只获取此数据的姓名部分的数据。
本实施例中,通过从数据源中获取符合预设参数名称和预设参数值类型的数据,在从数据源中获取数据时,对数据进行筛选,只获取所需的数据,减少存储空间中的数据量,从而加快数据查询时设备的运算速度,进行提高数据查询效率。
在一个例子中,配置指示文件中还可以包含时间范围项,用户对时间范围项进行配置,电子设备使用此时间范围项对数据源中的数据进行过滤。其中,时间范围项可以包含两个参数:开始时间和结束时间,时间是指数据的更新时间。例如,用户将开始时间设置为02/11/2020,结束时间设置为12/11/2020,则电子设备根据时间范围,从数据源中获取更新时间在02/11/2020至12/11/2020之中的数据。
优选地,配置指示文件中可以包含参数项和时间范围项,电子设备根据数据源信息中的参数名称和参数值类型和时间范围,从数据源中获取处于时间范围内的符合预设参数名称和预设参数值类型的数据,对数据源中的数据进行进一步过滤。
在步骤102中,电子设备根据数据源信息中的格式定义,获取数据的描述信息,其中,描述信息是对电子设备获取的数据对象的结构描述。若电子设备按次获取单个数据对象,则每获取一个数据对象,就需要获取一次数据对象的描述信息,若电子设备一次获取数据源中的所有数据对象,则只需要在获取数据对象时获取一次所有数据对象的描述信息即可。
在步骤103中,电子设备根据描述信息,将数据以统一的结构化数据存储至预设的存储空间。其中,统一的结构化数据可以直接存储在数据文件中,也可以通过数据库进行存储。具体地,电子设备根据获取的数据对象的结构描述,将数据对象转换为统一的结构化数据,通过一个结构化存储引擎,将统一的结构化数据存储为结果集。
进一步地,电子设备可以通过生成对统一的结构化数据进行操作的操作语句,例如,向数据文件插入一行数据的操作语句、向数据库中的数据表插入数据的insert语句等,将数据以统一的结构化数据存储。
在一个例子中,存储空间可以是内存空间,电子设备将数据转换为统一的结构数据存到至内存空间中。
在一个例子中,电子设备还将统一的结构化数据作为结果集进行存储持久化处理,如将内存空间中的结构化数据储存到数据文件或数据库中。本实施例中,通过将结构化数据持久化存储,可以在查询后对结构化数据进行进一步的处理。
在步骤104中,电子设备在接收到查询指令后,在存储空间中进行数据查询。具体地,电子设备在接收到用户输入的查询指令后,将查询指令交给查询引擎执行,查询引擎对存储空间中的结构化数据进行数据查询,得到查询结果。其中,查询语句中可以包括查询参数及查询参数值,电子设备可以将查询结果标记或存储为数据集。
优选地,电子设备可以接收用户输入的复杂查询语句,对二维表数据进行复杂查询,例如,查询语句可以是标准SQL语句支持的任意查询语句,可以实现条件过滤、分组统计、聚合统计(如COUNT函数统计行数量、SUM函数获取单个列的合计值)、窗口统计等。其中,查询语句还可以包含参数及参数值,电子设备使用参数值替换语句中的参数,交由查询执行引擎执行,查询结果集中的数据。
在一个例子中,存储空间是内存空间,电子设备在接收到查询指令后,在内存空间中对结果集进行数据查询。由于结果集的数据存储、查询的执行过程都在内存中,所以数据查询的效率非常高。
在一个例子中,电子设备存储空间中进行数据查询后,以JSON格式输出查询结果,例如,以JSON数组或单个数字等。
在一个例子中,电子设备还将查询的查询结果,即数据集,封装为消息,发送至消息队列,或将查询结果进行可视化处理,例如作为报表数据展示在报表的折线图、柱状图上等。
在一个例子中,电子设备可以在接收到数据源信息后,根据数据源的路径,以预设周期从数据源中获取数据。例如,数据源信息中,可以为获取数据的周期配置为1小时,若电子设备在10:00a.m时从数据源x中获取数据,则在11:00a.m时,电子设备会再从数据源x中获取数据。本实施例中,通过根据数据源的路径,以预设周期从数据源中获取数据,可以从数据源中获取到更新数据,从而实现获取的数据与数据源中的数据同步。
在一个例子中,电子设备还可以通过接收数据源发送的数据,从数据源中获取数据。具体地,电子设备在接收到数据源发送的数据后,可以根据数据源信息中的路径,确定发送数据的数据源。数据源在第一次向电子设备发送数据时发送数据源中的所有数据,在后续向电子设备发送的数据可以是所有数据,也可以是更新数据。电子设备接收数据源发送的数据,并将接收的数据更新至存储空间中。其中,数据源在发送更新数据时,可以直接将更新数据发送给电子设备,由电子设备将更新数据转换成统一的结构化数据后,与存储空间中已经存有的此数据源之前发送的数据进行比对,根据比对结果确认更新数据的更新类型,例如新增数据、修改数据等,再根据更新类型,对更新数据进行对应的操作,例如,将新增数据添加到存储空间中、将修改数据对应存储空间中更新前的原数据。
进一步地,数据源向电子设备发送更新数据时,还可以向电子设备发送更新信息,其中,更新信息可以包含更新数据的更新类型,若存在更新数据的更新数据为修改数据,更新信息中还包含此修改数据对应的修改前数据的信息。
本实施方式中,通过根据从预先配置的数据源信息,从数据源中获取数据,根据格式定义,获取数据描述信息,将数据以统一的结构化数据存储至预设的存储空间,在接收到查询指令后,在存储空间中进行数据查询,由于描述信息根据数据源信息的格式定义获取,可以根据描述信息,对数据源中获取的数据的格式进行变更,转换为格式统一的结构化数据,因此可以将格式统一的结构化数据进行关联查询,使用统一的查询语言,同时对多个数据源中的数据进行查询,从而实现提高查询效率。
上面各种方法的步骤划分,只是为了描述清楚,实现时可以合并为一个步骤或者对某些步骤进行拆分,分解为多个步骤,只要包括相同的逻辑关系,都在本专利的保护范围内;对算法中或者流程中添加无关紧要的修改或者引入无关紧要的设计,但不改变其算法和流程的核心设计都在该专利的保护范围内。
本发明的第二实施方式涉及一种数据处理方法。第二实施方式与第一实施方式大致相同,主要区别之处在于:在本发明第二实施方式中,数据具体以二维表数据的形式存储。
本实施方式涉及一种数据处理方法。具体流程如图3所示:
步骤301,根据预先配置的数据源信息,从数据源中获取数据;
步骤302,根据数据源信息中的格式定义,获取数据的描述信息;其中,描述信息,包括:数据的键名、键值类型;
步骤303,以键名作为二维表中的列名,以键值类型作为与键名对应的列的数据类型,将数据的键值填入与键名对应的列中;其中,二维表存储在预设的存储空间;
步骤304,在接收到查询指令后,在存储空间中进行数据查询。
其中,步骤301、步骤304与第一实施方式中的步骤101、步骤104大致相同,不再赘述。
在步骤302中,数据源中的数据是以键值对形式储存的半结构化数据。数据的描述信息可以是数据的键名、键值类型。电子设备在获取数据时,还获取数据的键名和键值类型。
在一个例子中,数据源信息中包含参数名称和参数值类型,电子设备根据数据源信息,从数据源中获取符合参数名称和参数值类型的数据。例如,数据源信息中的参数名称为姓名,参数值类型为字符串,则电子设备只获取数据源的所有数据中键名为姓名、且键值类型为字符串的部分,若一个数据有三个键值对,其中,一个键值对的键名为姓名、键值类型为字符串、键值为张三,一个键值对的键名为性别、键值类型为字符串、键值为男,一个键值对的键名为生日、键值类型为日期、键值为02/11/1991,则电子设备从数据源中获取的数据为一个键值对,此键值对的键名为姓名、键值类型为字符串、键值为张三。
在步骤303中,统一的结构化数据为二维表数据,电子设备以键名作为二维表中的列名,以键值类型作为与键名对应的列的数据类型,将数据的键值填入与键名对应的列中。具体地,电子设备获取数据后,判断二维表中是否存在与键名同名的列,若存在与键名同名的列,则将数据的键值填入,若不存在与键名同名的列,则在二维表中创建一个与键名同名的列,再将数据的键值填入。
在一个例子中,存储空间中的二维表与数据源一一对应,电子设备从数据源中获取数据之后,还判断存储空间中是否存在与数据源对应的二维表,若存储空间中不存在与数据源对应的二维表,则在存储空间中创建二维表。
本实施例中,通过从数据源中获取数据后,在存储空间中创建与数据源一一对应的二维表,方便对存储空间中统一的结构化数据进行查询和管理,可以实现简化结构化数据的管理,和提高查询效率。
在一个例子中,电子设备使用本申请的数据处理方法,对JSON格式的实时数据进行过滤,然后作为消息体发送至消息队列,供其他应用系统使用,按照如下步骤实施:1、电子设备获取预先配置的数据源信息,其中,数据源的路径为REST接口的URL:/realtime-data,此接口的参数的参数名为moOid,用来过滤监控对象的身份标识oid(objectidentity document,简称“oid”),数据源中的数据为JSON格式,电子设备获取的描述信息是键名为moOid(监控对象的oid)和smpOid(标准测点的oid)的键值对的键名和键值类型。2、电子设备在内存数据库中创建数据库表,并调用实时数据JSON数据源的接口/realtime-data,获取JSON格式的实时数据。3、电子设备将JSON格式的实时数据,转换为SQL语言的insert语句,将实时数据插入到内存数据库表中,生成此数据源对应的二维数据表,将表中的数据标记为结果集。4、电子设备获取用户输入对结果集进行查询的SQL语句,其中包含与moOid对应和与smpOid对应的查询参数及查询参数值,电子设备执行SQL语句对moOid和smpOid进行查询,过滤不符合查询要求的数据,并输出JSON格式的结果数据集。5、电子设备将结果数据集封装为消息发送至消息队列。
在一个例子中,电子设备使用本申请的数据处理方法,对JSON格式的历史数据进行统计并在报表中展示,按照如下步骤实施:1、获取预先配置的数据源信息,其中,数据源的路径为REST接口的URL:/history-data,此接口预设有三个参数:监控对象的oid、开始时间、结束时间,数据源中的数据为JSON格式,电子设备获取的描述信息是键名为moOid(监控对象的oid)、smpOid(标准测点的oid)、timeRange(时间范围)、curValue(时间范围当前值)的键值对。2.电子设备在内存数据库中创建数据库表,并调用历史数据JSON数据源的接口/history-data,获取JSON格式的历史数据。3.电子设备将JSON格式的历史数据,转换为SQL语言的insert语句,将历史数据插入到内存数据库表中,生成此数据源对应的二维数据表,将表中的数据标记为结果集。4.电子设备获取用户输入对结果集进行查询的SQL语句,其中包含与timeRange、moOid、smpOid对应的查询参数及查询参数值。电子设备执行SQL语句,根据查询参数及查询参数值对结果集中的数据进行查询,过滤不符合查询要求的数据,并输出JSON格式的结果数据集。5.电子设备在报表中展示结果数据集。
在一个例子中,电子设备使用本申请的数据处理方法,获取JSON格式的逻辑分组的父子节点关系,在树型控件中进行展示,按照如下步骤实施:1.获取预先配置的逻辑分组父子节点关系的JSON数据源信息,其中,数据源的路径为REST接口的URL:/logic-group-tree,数据源中的数据为JSON格式,电子设备获取的描述信息是键名为oid(逻辑分组oid)、name(逻辑分组名称)、parentOid(逻辑分组父节点oid)的键值对。2.电子设备在内存数据库中创建数据库表,并调用逻辑分组父子节点的JSON数据源的接口/logic-group-tree,获取JSON格式的逻辑分组父子节点数据。3.电子设备将JSON格式的逻辑分组父子节点数据,转换为SQL语言的insert语句,将逻辑分组父子节点数据插入到内存数据库表中,生成此数据源对应的二维数据表,将表中的数据标记为结果集。4.电子设备获取用户输入对结果集进行查询的SQL语句,其中包含与parentOid对应的查询参数及查询参数值。电子设备执行SQL语句,根据查询参数及查询参数值对结果集中的数据进行查询,过滤不符合查询要求的数据,并输出JSON格式的结果数据集。5.电子设备在树型控件上展示结果数据集。
本实施方式中,通过以键名作为二维表中的列名,以键值类型作为与键名对应的列的数据类型,将数据的键值填入与键名对应的列中,以二维表数据为统一的结构化数据,可以实现将数据源中获取的数据转换为统一的结构化数据;同时,通过将数据源中的数据转换为二维表数据,可以基于二维表结构实现各种复杂查询,因此本申请的数据处理方法可以实现提高查询效率。
上面各种方法的步骤划分,只是为了描述清楚,实现时可以合并为一个步骤或者对某些步骤进行拆分,分解为多个步骤,只要包括相同的逻辑关系,都在本专利的保护范围内;对算法中或者流程中添加无关紧要的修改或者引入无关紧要的设计,但不改变其算法和流程的核心设计都在该专利的保护范围内。
本发明的第三实施方式涉及一种数据查询方法,具体流程如图4所示,包括:
步骤401,在接收到半结构化查询指令后,将查询指令转换为结构化查询指令;
步骤402,根据结构化查询指令,在预设的用于存储统一的结构化数据的存储空间中进行数据查询;
步骤403,将数据查询得到的结构化查询结果,转换为半结构化查询结果。
本实施方式的数据查询方法,应用于数据查询装置,例如,可以进行数据查询的电子设备中。特别地,数据查询装置还可以是第一实施方式中的查询执行引擎。当使用服务器等电子设备,对大数据进行数据分析时,可以使用本实施方式的数据查询方法,从大数据中获取到所需的数据。
在步骤401中,电子设备在接收到半结构化查询指令后,将查询指令转换为统一的结构化数据对应的结构化查询指令。其中,半结构化查询指令是用户输入的由半结构化数据查询格式表示的查询语句,半结构化数据例如为JSON、XML或CSV等格式的数据;结构化查询指令是可以是标准SQL语句等用于查询结构化数据的查询语句。
具体地,电子设备可以调用将半结构化查询指令对应转换成结构化查询指令的第一转换函数,将半结构化查询指令中的查询信息填入预先生成的结构化查询语句模板中,得到结构化查询指令。其中,第一转换函数可以根据描述信息生成。
在步骤402中,电子设备根据结构化查询指令,在预设的用于存储统一的结构化数据的存储空间中进行数据查询,得到结构化数据格式的查询结构,即,结构化查询结果。
在步骤403中,电子设备将数据查询得到的结构化查询结果,转换为半结构化查询结果。具体地,电子设备可以调用将结构化数据转换成半结构化数据的第二转换函数,将结构化查询结果中的数据对应填入预先生成的半结构化数据模板中,得到半结构化查询结果。其中,第二转换函数可以根据描述信息生成。
在一个例子中,电子设备使用本实施方式的数据查询方法进行数据查询,其中,半结构化查询指令是JSON格式的查询语句,结构化查询指令是SQL语句,存储统一的结构化数据的存储空间为内存空间。电子设备在接收到用户输入的JSON格式的查询语句后,将JSON格式的查询语句转换成SQL语句,并在内存空间中使用转换得到的SQL语句对内存中的二维表格式数据进行查询。在得到数据查询结果后,电子设备将二维表格式的查询结果转换为JSON格式,并向用户输出。
本实施方式中,通过将查询指令转换为结构化查询指令,根据结构化查询指令,在预设的用于存储统一的结构化数据的存储空间中进行数据查询,将数据查询得到的结构化查询结果,转换为半结构化查询结果,可以实现在半结构化的应用场景中,以半结构化格式的查询语言,对多种数据格式的数据源进行关联查询,得到可直接应用的半结构化数据,从而在提高查询效率的同时,更加满足实际应用需求。
由于上述第一、第二实施方式与本实施方式相互对应,因此本实施方式可与上述实施方式互相配合实施。上述实施方式中提到的相关技术细节在本实施方式中依然有效,在上述实施方式中所能达到的技术效果在本实施方式中也同样可以实现,为了减少重复,这里不再赘述。相应地,本实施方式中提到的相关技术细节也可应用在上述实施方式中。
上面各种方法的步骤划分,只是为了描述清楚,实现时可以合并为一个步骤或者对某些步骤进行拆分,分解为多个步骤,只要包括相同的逻辑关系,都在本专利的保护范围内;对算法中或者流程中添加无关紧要的修改或者引入无关紧要的设计,但不改变其算法和流程的核心设计都在该专利的保护范围内。
本发明第四实施方式涉及一种数据处理装置,如图5所示,包括:
获取模块501,用于根据预先配置的数据源信息,从数据源中获取数据;
描述模块502,用于根据数据源信息中的格式定义,获取数据的描述信息;
转换模块503,用于根据描述信息,将数据以统一的结构化数据存储至预设的存储空间;
查询模块504,用于在接收到查询指令后,在存储空间中进行数据查询。
在一个例子中,描述信息,包括:数据的键名、键值类型;统一的结构化数据为二维表数据;转换模块503具体用于以键名作为二维表中的列名,以键值类型作为与键名对应的列的数据类型,将数据的键值填入与键名对应的列中;其中,二维表存储在预设的存储空间。
在一个例子中,二维表与数据源一一对应;数据查询装置还包括创建模块,用于在数据源中获取数据之后,若存储空间中不存在与数据源对应的二维表,则在存储空间中创建二维表。
在一个例子中,存储空间包括内存空间;获取模块501,具体用于从数据源中获取符合预设参数名称和预设参数值类型的数据;数据源信息中包括参数名称和参数值类型。
在一个例子中,数据源信息包括:数据源的路径;获取模块501,具体用于根据数据源的路径,以预设周期从数据源中获取数据。
在一个例子中,查询模块504,还用于将查询的查询结果封装为消息,发送至消息队列,或将查询结果进行可视化处理。
不难发现,本实施方式为与第一、第二实施方式相对应的装置实施例,本实施方式可与第一、第二实施方式互相配合实施。第一、第二实施方式中提到的相关技术细节在本实施方式中依然有效,为了减少重复,这里不再赘述。相应地,本实施方式中提到的相关技术细节也可应用在第一、第二实施方式中。
值得一提的是,本实施方式中所涉及到的各模块均为逻辑模块,在实际应用中,一个逻辑单元可以是一个物理单元,也可以是一个物理单元的一部分,还可以以多个物理单元的组合实现。此外,为了突出本发明的创新部分,本实施方式中并没有将与解决本发明所提出的技术问题关系不太密切的单元引入,但这并不表明本实施方式中不存在其它的单元。
本发明第五实施方式涉及一种数据查询装置,如图6所示,包括:
查询转换模块601,用于在接收到半结构化查询指令后,将查询指令转换为结构化查询指令;
结构查询模块602,用于根据结构化查询指令,在预设的用于存储统一的结构化数据的存储空间中进行数据查询;
结果转换模块603,用于将数据查询得到的结构化查询结果,转换为半结构化查询结果。
不难发现,本实施方式为与第三实施方式相对应的装置实施例,本实施方式可与第三实施方式互相配合实施。第三实施方式中提到的相关技术细节在本实施方式中依然有效,为了减少重复,这里不再赘述。相应地,本实施方式中提到的相关技术细节也可应用在第三实施方式中。
值得一提的是,本实施方式中所涉及到的各模块均为逻辑模块,在实际应用中,一个逻辑单元可以是一个物理单元,也可以是一个物理单元的一部分,还可以以多个物理单元的组合实现。此外,为了突出本发明的创新部分,本实施方式中并没有将与解决本发明所提出的技术问题关系不太密切的单元引入,但这并不表明本实施方式中不存在其它的单元。
本发明第六实施方式涉及一种电子设备,如图7所示,包括:至少一个处理器701;与至少一个处理器通信连接的存储器702;其中,存储器702存储有可被至少一个处理器701执行的指令,指令被至少一个处理器701执行上述的数据处理方法或者上述的数据查询方法。
其中,存储器702和处理器701采用总线方式连接,总线可以包括任意数量的互联的总线和桥,总线将一个或多个处理器701和存储器702的各种电路连接在一起。总线还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路连接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口在总线和收发机之间提供接口。收发机可以是一个元件,也可以是多个元件,比如多个接收器和发送器,提供用于在传输介质上与各种其他装置通信的单元。经处理器701处理的信息通过天线在无线介质上进行传输,进一步,天线还接收信息并将信息传送给处理器701。
处理器701负责管理总线和通常的处理,还可以提供各种功能,包括定时,外围接口,电压调节、电源管理以及其他控制功能。而存储器702可以被用于存储处理器在执行操作时所使用的信息。
本发明第七实施方式涉及一种计算机可读存储介质,存储有计算机程序。计算机程序被处理器执行时实现上述方法实施例。
即,本领域技术人员可以理解,实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本领域的普通技术人员可以理解,上述各实施方式是实现本发明的具体实施例,而在实际应用中,可以在形式上和细节上对其作各种改变,而不偏离本发明的精神和范围。
Claims (12)
1.一种数据处理方法,其特征在于,包括:
根据预先配置的数据源信息,从所述数据源中获取数据;
根据所述数据源信息中的格式定义,获取所述数据的描述信息;
根据所述描述信息,将所述数据以统一的结构化数据存储至预设的存储空间;
在接收到查询指令后,在所述存储空间中进行数据查询。
2.根据权利要求1所述的数据处理方法,其特征在于,所述描述信息,包括:数据的键名、键值类型;所述统一的结构化数据为二维表数据;
根据所述描述信息,将所述数据以统一的结构化数据存储至预设的存储空间,包括:
以所述键名作为二维表中的列名,以所述键值类型作为与所述键名对应的列的数据类型,将所述数据的键值填入与所述键名对应的列中;其中,所述二维表存储在所述预设的存储空间。
3.根据权利要求2所述的数据处理方法,其特征在于,所述二维表与所述数据源一一对应;所述从所述数据源中获取数据之后,还包括:
若所述存储空间中不存在与所述数据源对应的二维表,则在所述存储空间中创建所述二维表。
4.根据权利要求1所述的数据处理方法,其特征在于,所述存储空间包括内存空间;
所述从所述数据源中获取数据,包括:
从所述数据源中获取符合预设参数名称和预设参数值类型的数据;所述数据源信息中包括所述参数名称和所述参数值类型。
5.根据权利要求4所述的数据处理方法,其特征在于,所述数据源信息中还包括时间范围;所述从所述数据源中获取符合预设参数名称和预设参数值类型的数据,包括:
所述从所述数据源中获取处于所述时间范围内的符合预设参数名称和预设参数值类型的数据。
6.根据权利要求1至5中任一项所述的数据处理方法,其特征在于,所述数据源信息包括:数据源的路径;
所述根据预先配置的数据源信息,从所述数据源中获取数据,包括:
根据数据源的路径,以预设周期从所述数据源中获取数据。
7.根据权利要求1至5中任一项所述的数据处理方法,其特征在于,所述在所述存储空间中进行数据查询后,还包括:
将所述查询的查询结果封装为消息,发送至消息队列,或将所述查询结果进行可视化处理。
8.一种数据查询方法,其特征在于,包括:
在接收到半结构化查询指令后,将所述查询指令转换为结构化查询指令;
根据所述结构化查询指令,在预设的用于存储统一的结构化数据的存储空间中进行数据查询;
将所述数据查询得到的结构化查询结果,转换为半结构化查询结果。
9.一种数据处理装置,其特征在于,包括:
获取模块,用于根据预先配置的数据源信息,从所述数据源中获取数据;
描述模块,用于根据所述数据源信息中的格式定义,获取所述数据的描述信息;
转换模块,用于根据所述描述信息,将所述数据以统一的结构化数据存储至预设的存储空间;
查询模块,用于在接收到查询指令后,在所述存储空间中进行数据查询。
10.一种数据查询装置,其特征在于,包括:
查询转换模块,用于在接收到半结构化查询指令后,将所述查询指令转换为结构化查询指令;
结构查询模块,用于根据所述结构化查询指令,在预设的用于存储统一的结构化数据的存储空间中进行数据查询;
结果转换模块,用于将所述数据查询得到的结构化查询结果,转换为半结构化查询结果。
11.一种电子设备,其特征在于,包括:
至少一个处理器;
与所述至少一个处理器通信连接的存储器;
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如权利要求1至7中任一项所述的数据处理方法,或如权利要求8所述的数据查询方法。
12.一种计算机可读存储介质,存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的数据处理方法,或实现权利要求8所述的数据查询方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011519522.4A CN114647660A (zh) | 2020-12-21 | 2020-12-21 | 数据处理、查询方法、装置、电子设备及存储介质 |
PCT/CN2021/128503 WO2022134878A1 (zh) | 2020-12-21 | 2021-11-03 | 数据处理、查询方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011519522.4A CN114647660A (zh) | 2020-12-21 | 2020-12-21 | 数据处理、查询方法、装置、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114647660A true CN114647660A (zh) | 2022-06-21 |
Family
ID=81990615
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011519522.4A Pending CN114647660A (zh) | 2020-12-21 | 2020-12-21 | 数据处理、查询方法、装置、电子设备及存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN114647660A (zh) |
WO (1) | WO2022134878A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116028579A (zh) * | 2023-02-27 | 2023-04-28 | 南昌国讯信息技术股份有限公司 | 数据库同步方法及电子设备和存储介质 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115630196A (zh) * | 2022-10-18 | 2023-01-20 | 曙光云计算集团有限公司 | 数据查询方法、装置、计算机设备、存储介质和程序产品 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2001093599A2 (en) * | 2000-06-01 | 2001-12-06 | Wisengine Inc. | Method and apparatus for unified query interface for network information |
CN100521623C (zh) * | 2007-05-22 | 2009-07-29 | 网御神州科技(北京)有限公司 | 高性能的Syslog日志处理和存储方法 |
CN103678484A (zh) * | 2013-10-28 | 2014-03-26 | 淮南矿业(集团)有限责任公司 | 采煤沉陷区的多源数据处理系统 |
CN106202235B (zh) * | 2016-06-28 | 2020-04-14 | 微梦创科网络科技(中国)有限公司 | 一种数据处理方法及装置 |
-
2020
- 2020-12-21 CN CN202011519522.4A patent/CN114647660A/zh active Pending
-
2021
- 2021-11-03 WO PCT/CN2021/128503 patent/WO2022134878A1/zh active Application Filing
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116028579A (zh) * | 2023-02-27 | 2023-04-28 | 南昌国讯信息技术股份有限公司 | 数据库同步方法及电子设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
WO2022134878A1 (zh) | 2022-06-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20190129734A1 (en) | Data collection workflow extension | |
CN107241227B (zh) | 一种网络数据报表的配置及生成方法 | |
CN111552838B (zh) | 数据处理方法及装置、计算机设备、存储介质 | |
WO2022134878A1 (zh) | 数据处理、查询方法、装置、电子设备及存储介质 | |
CN110083605A (zh) | 业务表查询方法、装置、服务器及计算机可读存储介质 | |
CN112131289B (zh) | 数据处理方法、装置、电子设备及存储介质 | |
CN107870814B (zh) | 用于内容管理批处理的方法和设备 | |
CN115080651A (zh) | Excel数据导入方法、装置、电子设备及存储介质 | |
CN112463261B (zh) | 接口调用方法、装置、电子设备、介质及产品 | |
CN103793464A (zh) | 一种基于中立格式的报表导出方法 | |
CN111401023B (zh) | 一种报表生成方法、装置、服务器及存储介质 | |
GB2514779A (en) | Information retrieval from a database system | |
CN112579676B (zh) | 异构系统间的数据处理方法、装置、存储介质和设备 | |
CN109408577B (zh) | Oracle数据库json解析方法、系统、装置及可存储介质 | |
CN116954607A (zh) | 多源异构实时任务处理方法、系统、设备和介质 | |
CN116738954A (zh) | 报表导出方法、报表模板的配置方法、装置、计算机设备 | |
US11238059B2 (en) | Facilitating construction of a user interface | |
CN115114321A (zh) | 一种动态查询方法及系统 | |
CN113900755A (zh) | 告警页面处理方法、装置、计算机设备及可读存储介质 | |
CN102306150A (zh) | 数据导出方法及装置 | |
CN112052254A (zh) | 数据封装方法、电子设备及存储介质 | |
US11061880B2 (en) | Data structure with identifiers | |
US20140156700A1 (en) | Method and apparatus for querying at least one value of at least one parameter of a module, and method and module for providing at least one value of at least one parameter | |
US9075887B2 (en) | Method and system for creating pervasive data form reporting | |
CN109508183B (zh) | 一种存储集群中rest代码生成方法及装置 |
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 |