一种元数据查询优化的方法与终端
文献发布时间:2024-04-18 20:00:25
技术领域
本发明涉及元数据查询技术领域,特别涉及一种元数据查询优化的方法与终端。
背景技术
目前的数据库以及信息查询软件中,一般都提供了快速查询的功能。其主要实现逻辑为,每一条数据都存在自身的相关元数据信息,当查询具体信息时,优先查询此元数据信息,当查询到结果后,根据元数据信息再次到真正的数据源中进行完整信息的查询操作。而为了提高元数据的快速查询功能,一般情况下,各种软件或者数据库等都会把元数据信息存储加载到内存中,通过内存来实现元数据的快速查询功能。
通常在内存中的存储元数据信息,都是以一定的缓存块来实现存储的,即一个缓存块存在一些或者某些的元数据列表信息。通常元数据信息是以列表的方式存储在这些缓存块中,当进行元数据查询时,会轮询缓存块中的元数据,并找到对应的元数据信息。因为是纯内存操作,即使是缓存块中的轮询操作,也能够快速的实现元数据查找。
可是随着性能要求的再一次提高,如何进一步提高查找效率也成为了所要研究的技术问题。
发明内容
本发明所要解决的技术问题是:提供一种元数据查询优化的方法与终端,有效提高数据查询的效率。
为了解决上述技术问题,本发明采用的技术方案为:
一种元数据查询优化的方法,包括步骤:
S1、通过二分查找法对内存中的有序的索引序列进行索引查询,获得索引信息;
S2、根据查询到的索引信息获取内存中关联的元数据信息;
S3、根据所述元数据信息,向数据源获取完整的目标数据;
所述索引信息、所述元数据信息以及目标数据依次唯一关联。
为了解决上述技术问题,本发明采用的另一种技术方案为:
一种元数据查询优化的终端,包括处理器、存储器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
S1、通过二分查找法对内存中的有序的索引序列进行索引查询,获得索引信息;
S2、根据查询到的索引信息获取内存中关联的元数据信息;
S3、根据所述元数据信息,向数据源获取完整的目标数据;
所述索引信息、所述元数据信息以及目标数据依次唯一关联。
本发明的有益效果在于:本发明的一种元数据查询优化的方法与终端,为内存中的元数据信息建立索引,并对索引进行排序,从而使得在数据查询时可以通过二分查找法对索引数据进行快速查询,并根据查询到的索引信息快速获取元数据,进而获取目标数据,相较于在缓存中对元数据进行遍历,能够更加快速的实现目标数据的查询,实现数据查询效率的有效提高。
附图说明
图1为本发明实施例的一种元数据查询优化的方法的流程图;
图2为本发明实施例的一种元数据查询优化的终端的结构图;
图3为本发明实施例的一种元数据查询优化的方法中的数据存储结构相较于旧有存储结构的对比示意图;
标号说明:
1、一种元数据查询优化的终端;2、处理器;3、存储器。
具体实施方式
为详细说明本发明的技术内容、所实现目的及效果,以下结合实施方式并配合附图予以说明。
请参照图1和图3,一种元数据查询优化的方法,包括步骤:
S1、通过二分查找法对内存中的有序的索引序列进行索引查询,获得索引信息;
S2、根据查询到的索引信息获取内存中关联的元数据信息;
S3、根据所述元数据信息,向数据源获取完整的目标数据;
所述索引信息、所述元数据信息以及目标数据依次唯一关联。
从上述描述可知,本发明的有益效果在于:本发明的一种元数据查询优化的方法与终端,为内存中的元数据信息建立索引,并对索引进行排序,从而使得在数据查询时可以通过二分查找法对索引数据进行快速查询,并根据查询到的索引信息快速获取元数据,进而获取目标数据,相较于在缓存中对元数据进行遍历,能够更加快速的实现目标数据的查询,实现数据查询效率的有效提高。
进一步的,所述索引信息包括所述元数据信息中的唯一标识信息以及指向所述元数据信息存储位置的指针信息;
所述唯一标识信息对所述目标数据进行唯一标识;
所述索引序列通过对所述索引信息根据所述唯一标识信息进行排序得到。
由上述描述可知,索引信息通过唯一标识信息排序,且包含有指向元数据在内存中的存储位置的指针信息。
进一步地,步骤S1具体为:
获取待查询的所述唯一标识信息,通过二分查找法对有序的所述索引序列进行索引查询,得到索引信息。
由上述描述可知,由于索引信息根据唯一标识信息排序,从而在数据查询时能够通过唯一标识进行二分查询,快速获取到对应的索引信息,提高查询效率。
进一步地,步骤S2具体为:
根据所述索引信息中的指针信息,得到所述元数据信息在内存中的存储位置,向所述存储位置获取所述元数据信息。
由上述描述可知,索引通过指针指向所关联的元数据信息位置,进而能够直接向该位置进行信息读取,以得到对应的元数据,避免不必要的数据查询。
进一步地,还包括步骤:
S4、根据数据源的数据变动信息,修改所述元数据信息以及所述索引序列,并重新对所述索引序列进行排序处理。
由上述描述可知,在数据源存在数据变动时,对应调整元数据和索引序列,并对索引序列重新排序,保证查找的有效,同时避免数据变动影响数据查找的效率。
请参照图2,一种元数据查询优化的终端,包括处理器、存储器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
S1、通过二分查找法对内存中的有序的索引序列进行索引查询,获得索引信息;
S2、根据查询到的索引信息获取内存中关联的元数据信息;
S3、根据所述元数据信息,向数据源获取完整的目标数据;
所述索引信息、所述元数据信息以及目标数据依次唯一关联。
从上述描述可知,本发明的有益效果在于:本发明的一种元数据查询优化的方法与终端,为内存中的元数据信息建立索引,并对索引进行排序,从而使得在数据查询时可以通过二分查找法对索引数据进行快速查询,并根据查询到的索引信息快速获取元数据,进而获取目标数据,相较于在缓存中对元数据进行遍历,能够更加快速的实现目标数据的查询,实现数据查询效率的有效提高。
进一步的,所述索引信息包括所述元数据信息中的唯一标识信息以及指向所述元数据信息存储位置的指针信息;
所述唯一标识信息对所述目标数据进行唯一标识;
所述索引序列通过对所述索引信息根据所述唯一标识信息进行排序得到。
由上述描述可知,索引信息通过唯一标识信息排序,且包含有指向元数据在内存中的存储位置的指针信息。
进一步地,步骤S1具体为:
获取待查询的所述唯一标识信息,通过二分查找法对有序的所述索引序列进行索引查询,得到索引信息。
由上述描述可知,由于索引信息根据唯一标识信息排序,从而在数据查询时能够通过唯一标识进行二分查询,快速获取到对应的索引信息,提高查询效率。
进一步地,步骤S2具体为:
根据所述索引信息中的指针信息,得到所述元数据信息在内存中的存储位置,向所述存储位置获取所述元数据信息。
由上述描述可知,索引通过指针指向所关联的元数据信息位置,进而能够直接向该位置进行信息读取,以得到对应的元数据,避免不必要的数据查询。
进一步地,还包括步骤:
S4、根据数据源的数据变动信息,修改所述元数据信息以及所述索引序列,并重新对所述索引序列进行排序处理。
由上述描述可知,在数据源存在数据变动时,对应调整元数据和索引序列,并对索引序列重新排序,保证查找的有效,同时避免数据变动影响数据查找的效率。
本发明的一种元数据查询优化的方法与终端,适用于需要对数据实现快速查询的场景。
请参照图1和图3,本发明的实施例一为:
一种元数据查询优化的方法,包括步骤:
S1、通过二分查找法对内存中的有序的索引序列进行索引查询,获得索引信息;
所述索引信息包括所述元数据信息中的唯一标识信息以及指向所述元数据信息存储位置的指针信息;
所述索引信息、所述元数据信息以及目标数据依次唯一关联,所述唯一标识信息对所述目标数据进行唯一标识;
所述索引序列通过对所述索引信息根据所述唯一标识信息进行排序得到。
本实施例中,在缓存块内部,新独立开辟出一块小内存空间,该空间用于存储此缓存块的指针序列。当缓存块中新增加一条元数据时,需要根据元数据中的关键信息,即唯一标识信息【比如说业务主键id,或者业务唯一编号等信息】,写入到此缓存块的指针序列中,并且需要在指针序列中针对加入后的关键信息,进行升序排序处理。每一个关键信息都将存在一个指针指向真正的元数据信息。
步骤S1具体为:
获取待查询的所述唯一标识信息,通过二分查找法对有序的所述索引序列进行索引查询,得到索引信息。
当需要从缓存块中查询元数据信息时,优先使用二分查找法的方式,从指针序列(即索引序列)中进行相关数据的查询操作,一般情况下,查询3次左右就能够实现具体元数据指针(索引信息)的快速定位。
S2、根据查询到的索引信息获取内存中关联的元数据信息;
步骤S2具体为:
根据所述索引信息中的指针信息,得到所述元数据信息在内存中的存储位置,向所述存储位置获取所述元数据信息。
本实施例中,根据查询得到的元数据指针(索引信息),其中的指针即一个物理地址,这边直接记录一个指针实际上就是直接记录了数据的直接物理地址,可以直接根据这个地址找到这条元数据。
S3、根据所述元数据信息,向数据源获取完整的目标数据。
S4、根据数据源的数据变动信息,修改所述元数据信息以及所述索引序列,并重新对所述索引序列进行排序处理。
本实施例中,在数据源存在变动,进而导致元数据需要变动时,同步对索引序列进行变动,并对索引序列重新进行排序。例如,当缓存块中减少一条元数据信息时,也将对索引序列进行重新排序处理。
请参照图2,本发明的实施例二为:
一种元数据查询优化的终端1,包括处理器2、存储器3以及存储在所述存储器3中并可在所述处理器2上运行的计算机程序,所述处理器2执行所述计算机程序时实现以上实施例一中的步骤。
综上所述,本发明提供的一种元数据查询优化的方法与终端,为内存中的元数据信息建立索引,并对索引进行排序,从而使得在数据查询时可以通过二分查找法对索引数据进行快速查询,并根据查询到的索引信息快速获取元数据,进而获取目标数据,相较于在缓存中对元数据进行遍历,能够更加快速的实现目标数据的查询。本发明通过对缓存块的结构进一步改造,通过增长缓存块的容量大小,在缓存块内部新增加指针序列数据结构,由原先的轮询查询方式改造成按照二分查询的方式,实现缓存块内部的快速查询,通过结构的改变,进而快速减少缓存块内的查询次数,进而有效的提高缓存块中元数据的查询效率。
以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等同变换,或直接或间接运用在相关的技术领域,均同理包括在本发明的专利保护范围内。