CN116932614B - 一种面向数联网的分布式搜索方法及系统 - Google Patents
一种面向数联网的分布式搜索方法及系统 Download PDFInfo
- Publication number
- CN116932614B CN116932614B CN202311196269.7A CN202311196269A CN116932614B CN 116932614 B CN116932614 B CN 116932614B CN 202311196269 A CN202311196269 A CN 202311196269A CN 116932614 B CN116932614 B CN 116932614B
- Authority
- CN
- China
- Prior art keywords
- node
- data
- search
- target
- search request
- 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.)
- Active
Links
- 230000006855 networking Effects 0.000 title claims abstract description 67
- 238000000034 method Methods 0.000 title claims abstract description 55
- 238000004458 analytical method Methods 0.000 claims description 17
- 238000001914 filtration Methods 0.000 claims description 13
- 230000002688 persistence Effects 0.000 claims description 10
- 230000002085 persistent effect Effects 0.000 claims description 7
- 238000006243 chemical reaction Methods 0.000 claims description 4
- 230000008569 process Effects 0.000 description 10
- 238000012163 sequencing technique Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 230000001360 synchronised effect Effects 0.000 description 5
- 230000009471 action Effects 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 230000010354 integration Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- WXZOXVVKILCOPG-UHFFFAOYSA-N bis(2-ethylhexyl) benzene-1,3-dicarboxylate Chemical compound CCCCC(CC)COC(=O)C1=CC=CC(C(=O)OCC(CC)CCCC)=C1 WXZOXVVKILCOPG-UHFFFAOYSA-N 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 229920004934 Dacron® Polymers 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013523 data management Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000005538 encapsulation Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 239000005020 polyethylene terephthalate Substances 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
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/245—Query processing
- G06F16/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2471—Distributed queries
-
- 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/252—Integrating or interfacing systems involving database management systems between a Database Management System and a front-end application
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9532—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/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/955—Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
Abstract
本发明提供一种面向数联网的分布式搜索方法及系统,涉及数据搜索技术领域,所述方法包括:通过协调节点发出搜索请求;基于合约接口,将所述搜索请求接入智能合约层;通过所述智能合约层调用搜索引擎接口,将所述搜索请求接入搜索引擎;通过所述搜索引擎确定具有所述搜索请求所请求的数据内容的各个最低节点,将所述各个最低节点确定为进行数据搜索的目标节点列表;通过所述搜索引擎调用所述目标节点列表中各个目标节点各自的合约接口获取与所述搜索请求对应的数据,并将获取的数据在所述协调节点进行汇总,通过所述协调节点返回至用户所在终端。旨在保证数据搜索可信可控的同时降低计算资源开销,以提高数据搜索效率。
Description
技术领域
本发明涉及数据搜索技术领域,尤其涉及一种面向数联网的分布式搜索方法及系统。
背景技术
当前的互联网实现是基于TCP/IP协议栈,实现了异构软件上基于二进制信息的数据传输和编解码,在此基础上产生了大量的网络应用和服务。但是与此同时,TCP/IP协议只提供了底层的数据互联,在此基础上的数据编解码及使用都由上层系统和应用来决定。在这个过程中,上层应用为了实现安全,高效,可靠的数据传输会使用不同的解决方案,这就会导致数据在同一个系统内部可以互联,但是不同系统之间由于设计标准不同而产生信息孤岛,无法充分发挥数据的价值,阻碍了数据的交流使用。
针对上述问题,为了解决异构平台之间的数据互联互通以及数据的可信可管可控,借鉴互联网的思路,产生了数据互联网(InternetofData),简称“数联网”。区别于平台化的大数据解决方案,数联网的目标是使用协议化的解决方案实现数据的互联互通。数联网是使用软件定义的方法,以数据为中心,通过标准化的操作协议连接异构系统而形成的基于互联网的虚拟网络,实现异构、异域、异主数据的互联互通互操作,在互联网的基础上进一步的实现全网一体化的数据应用。
而搜索是在海量数据当中挖掘价值的最直接的一种方式,也是在设计与实现一个高性能的系统时很关键的一部分。在传统的单机数据持久化时,会使用一些数据结构如B+树,跳表,红黑树,字典树等实现数据的高效检索。在平台化阶段,面临的数据量更大,但是本质上还是同一个系统内部的数据规模变大,通常是将原本的单节点架构改为分布式的主从架构,目的是实现更高的并发和吞吐,同时保证数据的一致性和可靠性。
针对数联网的场景,搜索需求和上述的单平台的大数据分布式搜索有着本质的区别。首先是整体架构的改变,平台化的分布式搜索需要一个强大的搜索平台,统一制定系统的标准,维护数据的索引,由多台机器共同实现这一功能。而在数联网场景下,每一个数据区域都是独立的,异构的,标准、性能都不尽相同,并且数联网要解决的关键问题就是使用协议化的方式实现异构数据互联互通。因此针对数联网场景的数据搜索,需要在传统的分布式搜索引擎技术基础之上,结合数联网的关键技术,实现协议化的分布式搜索,因此在数联网场景下进行高效的搜索则越来越受到重视。
发明内容
有鉴于此,本发明提供一种面向数联网的分布式搜索方法。旨在保证数据搜索可信可控的同时降低计算资源开销,以提高数据搜索效率。
在本发明实施例的第一方面,提供了一种面向数联网的分布式搜索方法,所述方法包括:
通过协调节点发出搜索请求;
基于合约接口,将所述搜索请求接入智能合约层;
通过所述智能合约层调用搜索引擎接口,将所述搜索请求接入搜索引擎;
通过所述搜索引擎确定具有所述搜索请求所请求的数据内容的各个最低节点,将所述各个最低节点确定为进行数据搜索的目标节点列表;
通过所述搜索引擎调用所述目标节点列表中各个目标节点各自的合约接口获取与所述搜索请求对应的数据,并将获取的数据在所述协调节点进行汇总,通过所述协调节点返回至用户所在终端。
可选地,所述方法还包括:
根据待接入节点的节点信息,通过标识解析系统将所述待接入节点接入数联网网络;
将所述待接入节点的节点信息输入所述待接入节点的父节点;
根据所述父节点接收的所述节点信息,所述父节点向所述待接入节点发送数字对象数据获取请求;
根据所述获取请求,所述待接入节点向所述父节点返回所述获取请求对应的数字对象数据;
根据获取的数字对象数据,所述父节点索引全部的元数据,以及,维护所述待接入节点的配置信息,以及向自身的上级节点同步获取的数字对象数据并更新自身的统计数据。
可选地,所述通过所述搜索引擎调用所述目标节点列表中各个目标节点各自的合约接口获取与所述搜索请求对应的数据,并将获取的数据在所述协调节点进行汇总,通过所述协调节点返回至用户所在终端,包括:
通过所述搜索引擎调用所述目标节点列表中各个目标节点各自的合约接口获取与所述搜索请求对应的数据;
将所述目标节点列表转化为树状结构;
所述树状结构中的每一级目标节点将自身包括的与所述搜索请求对应的数据进行排序过滤后传给父节点,直至获取的与所述搜索请求对应的数据进行排序过滤后传至根节点;
通过所述根节点将获取的与所述搜索请求对应的最终数据发送至所述协调节点,通过所述协调节点将所述最终数据返回至用户所在终端。
可选地,所述通过所述搜索引擎调用所述目标节点列表中各个目标节点各自的合约接口获取与所述搜索请求对应的数据,并将获取的数据在所述协调节点进行汇总,通过所述协调节点返回至用户所在终端,包括:
通过所述搜索引擎调用所述目标节点列表中各个目标节点各自的合约接口获取与所述搜索请求对应的数据;
根据所述目标节点列表和所述协调节点,以所述协调节点为根节点构建树状结构;
所述树状结构中的每一级目标节点将自身包括的与所述搜索请求对应的数据进行排序过滤后传给父节点,直至获取的与所述搜索请求对应的数据进行排序过滤后传至根节点;
通过所述根节点将与所述搜索请求对应的最终数据返回至用户所在终端。
可选地,所述方法还包括:
在所述目标节点列表中的节点数量超过数联网节点总数的预设比例的情况下,将根节点确定为目标节点。
可选地,所述方法还包括:
数联网中的节点对自身的数字对象目标文件进行数据持久化,所述数字对象目标文件包括:顺序存储的数字对象元数据文件、顺序存储的本地维护的数字对象仓库文件、数字对象的全文索引文件;记录各个数字对象仓库中的数字对象数量文件、持久化的本地注册表监听的仓库更新事件文件。
可选地,在通过标识解析系统将所述待接入节点接入数联网网络之前,所述方法还包括:配置所述待接入节点的节点属性和状态属性的参数集合。
本发明第二方面提供一种面向数联网的分布式搜索系统,所述系统包括:
前端用户界面,用于通过协调节点发出搜索请求;
合约接口,用于将所述搜索请求接入智能合约层;
搜索引擎接口,用于通过所述智能合约层调用搜索引擎接口,将所述搜索请求接入搜索引擎;
搜索引擎,用于确定具有所述搜索请求所请求的数据内容的各个最低节点,将所述各个最低节点确定为进行数据搜索的目标节点列表,以及,用于调用所述目标节点列表中各个目标节点各自的合约接口获取与所述搜索请求对应的数据,并将获取的数据在所述协调节点进行汇总,通过所述协调节点返回至用户所在终端。
针对在先技术,本发明具备如下优点:
本发明实施例提供的一种面向数联网的分布式搜索方法,首先用户在本地终端通过输入数联网中的一个注册表节点的url,调用该注册表节点(也就是协调节点)的用户界面输入包括想要搜索的数据和想要进行搜索的注册表节点的搜索请求,通过协调节点的用户界面发出该搜索请求;通过协调节点的智能合约接口,将该搜索请求接入智能合约层,以使得数据搜索的过程将经过智能合约层,从而保证数据搜索的可信可控;然后,通过智能合约层调用搜索引擎接口,通过搜索引擎接口将该搜索请求接入协调节点的搜索引擎;该协调节点的搜索引擎将确定具有所述搜索请求所请求的数据内容的各个最低节点,将所述各个最低节点确定为进行数据搜索的目标节点列表,以此降低数据搜索的计算资源开销,从而提高数据搜索的效率;在确定到目标节点列表后,通过协调节点的搜索引擎调用该目标节点列表中的各个目标节点各自的合约接口,接入各个目标节点各自的智能合约层,再通过各个目标节点各自的智能合约层调用各自的搜索引擎接口,再通过各个目标节点各自的搜索引擎接口调用各自的搜索引擎在各自的目标节点所维护的元数据中搜索到用户想要搜索的数据(也就是与所述搜索请求相对应的数据),然后返回至协调节点,由协调节点汇总后返回至用户所在的本地终端。由此,可以在保证数据搜索可信可控的同时降低计算资源开销,以提高数据搜索效率。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。
图1为本发明实施例提供的一种面向数联网的分布式搜索方法的流程图;
图2为本发明实施例提供的一种面向数联网的分布式搜索方法中的最低节点的确定示意图;
图3为本发明实施例提供的一种面向数联网的分布式搜索方法中的汇总组网策略的示例示意图;
图4为本发明实施例提供的一种面向数联网的分布式搜索方法中的汇总组网策略的两种实施方式的示例示意图;
图5为本发明实施例提供的一种面向数联网的分布式搜索系统的示意图;
图6为本发明实施例提供的一种面向数联网的分布式搜索系统的总体架构图。
具体实施方式
下面将参照附图更详细地描述本发明的示例性实施例。
图1为本发明实施例提供的一种面向数联网的分布式搜索方法的流程图,如图1所示,该方法包括:
步骤S11:通过协调节点发出搜索请求;
步骤S12:基于合约接口,将所述搜索请求接入智能合约层;
步骤S13:通过所述智能合约层调用搜索引擎接口,将所述搜索请求接入搜索引擎;
步骤S14:通过所述搜索引擎确定具有所述搜索请求所请求的数据内容的各个最低节点,将所述各个最低节点确定为进行数据搜索的目标节点列表;
步骤S15:通过所述搜索引擎调用所述目标节点列表中各个目标节点各自的合约接口获取与所述搜索请求对应的数据,并将获取的数据在所述协调节点进行汇总,通过所述协调节点返回至用户所在终端。
在本发明的实施例中,本发明所提到的节点表示数联网中的一个注册表,对应的可以是搜索引擎、数据库、数据中台、物联网设备等数据平台。每个节点均包括用户界面层、智能合约层、搜索引擎层和数据持久化层。
用户首先通过本地终端输入数联网中一个节点的url,基于该url将调用到该url对应的节点的用户界面,该url对应的节点也就是协调节点。在该用户界面中,用户通过输入搜索请求,协调节点将基于该协调节点发出搜索请求。其中,该搜索请求中包括用户想要搜索的数据(如数据的关键字信息等),以及,包括用户想要进行搜索的节点列表。
示例地,用户在用户界面中输入搜索关键字abdesf,并指定想要在数联网中的注册表节点A、注册表节点B、注册表节点C、注册表节点D、注册表节点E、注册表节点F对该搜索关键字abdesf进行搜索。
由于数联网是使用软件定义的方法,以数据为中心,通过标准化的操作协议连接异构系统而形成的基于互联网的虚拟网络,实现异构、异域、异主数据的互联互通互操作,在互联网的基础上进一步的实现全网一体化的数据应用,在此过程中由于进行互联互通互操作的是异构、异域、异主数据,因此在此过程中保证数据的正确性和数据操作过程中的可信、可控则是尤为重要的,由此本发明在对数联网中的异构、异域、异主数据进行数据搜索时引入智能合约层,以保证数据搜索的正确性和数据操作过程中的可信和可控。具体地,通过协调节点发出的搜索请求将通过协调节点的智能合约接口接入到协调节点的智能合约层,通过智能合约层调用搜索引擎接口将搜索请求接入该协调节点的搜索引擎,以此在数据搜索的过程中通过智能合约层记录数据搜索和调用的过程,从而保证数据的正确性和数据操作过程中的可信和可控。
在协调节点的搜索引擎接收到用户的搜索请求后,可以确定到包括该搜索请求所请求的数据内容的各个节点,然后从包括该搜索请求所请求的数据内容的各个节点中筛选出包括该搜索请求所请求的数据内容的各个最低节点,将各个最低节点确定为目标节点列表,从该目标节点列表中对该搜索请求中包括的用户想要搜索的数据进行搜索。由于搜索请求所请求的内容将在很多的节点中分布,而子节点中的数据又将上传至父节点,因此在包括搜索请求所请求的数据内容的各个节点中进行搜索时,在最低节点进行数据搜索所需要检索的内容最少,因此将各个最低节点确定为目标节点列表,然后在目标节点列表中的各个节点上进行数据搜索,可以降低计算资源开销,从而提高数据搜索效率。其中,最低节点表征的是在节点中存在首次出现搜索请求所请求的数据类型的数据的情况下,该节点称之为该数据类型的最低节点;例如,搜索请求所请求的是以a表示的数据,而对于数据a1,该数据第一次出现在节点1中,则节点1就属于最低节点,而对于数据a2,该数据第一次出现在节点2中,则节点2也属于最低节点。
示例地,如图2所示,搜索请求所请求的是以a表示的数据,如a1、a2、a3、...、an,而节点9中涉及本身的数据a3,节点10内涉及本身的数据a4,节点4中涉及本身的数据a2和由节点9和节点10同步来的数据a3和a4,节点7中涉及本身的数据a1,节点3涉及由节点7同步的数据a1的情况下,节点9由于涉及本身的数据a3,因此节点9属于将进行数据搜索的最低节点,节点10由于涉及本身的数据a4,因此节点10属于将进行数据搜索的最低节点,节点4由于涉及本身的数据a2,因此节点4属于将进行数据搜索的最低节点,节点7由于涉及本身的数据a1,因此节点7属于将进行数据搜索的最低节点,而节点3虽然涉及数据a1但是同步得来的,因此在节点3中进行数据的检索将需要检索更多的内容,因此节点3不属于最低节点。由此,将节点9、节点10、节点4和节点7均确定为最低节点,然后组成目标节点列表参与搜索请求的数据搜索。
在本实施例中,由上述示例可以发现,由于节点9和节点10的数据将同步到他们的父节点,也就是节点4,而节点4也属于最低节点需要参与到搜索请求的数据搜索,因此直接在节点4中就可以搜索到节点9和节点10中分别设计的数据a3和a4,而如果再到节点9和节点10中去搜索以a表示的数据则显然会造成搜索资源的浪费。基于此,本发明提出另一实施方式:在获得的各个最低节点中存在父子关系的最低节点的情况下,删除存在父子关系的节点中的子节点而保留父节点,得到最终的目标节点列表。例如,继续沿用上述示例,由于作为最低节点的节点4属于作为最低节点的节点9和作为最低节点的节点10的父节点,因此节点4已经涉及节点9和节点10的数据,直接在最低节点4中进行检索就可以检索到数据a3和a4,因此删除各个最低节点中属于最低节点4的子节点的节点9和节点10,得到最终的目标节点列表,也就是节点4和节点7组成最终的目标节点列表。
在本实施例中,在确定到目标节点列表后,通过协调节点的搜索引擎调用该目标节点列表中的各个目标节点各自的合约接口,接入各个目标节点各自的智能合约层,再通过各个目标节点各自的智能合约层调用各自的搜索引擎接口,再通过各个目标节点各自的搜索引擎接口调用各自的搜索引擎在各自的目标节点所维护的元数据中搜索用户想要搜索的数据(也就是与所述搜索请求相对应的数据),然后返回至协调节点,由协调节点汇总后返回至用户所在的本地终端。
本发明实施例提供的一种面向数联网的分布式搜索方法,首先用户在本地终端通过输入数联网中的一个注册表节点的url,调用该注册表节点(也就是协调节点)的用户界面输入包括想要搜索的数据和想要进行搜索的注册表节点的搜索请求,通过协调节点的用户界面发出该搜索请求;通过协调节点的智能合约接口,将该搜索请求接入智能合约层,以使得数据搜索的过程将经过智能合约层,从而保证数据搜索的可信可控;然后,通过智能合约层调用搜索引擎接口,通过搜索引擎接口将该搜索请求接入协调节点的搜索引擎;该协调节点的搜索引擎将确定具有所述搜索请求所请求的数据内容的各个最低节点,将所述各个最低节点确定为进行数据搜索的目标节点列表,以此降低数据搜索的计算资源开销,从而提高数据搜索的效率;在确定到目标节点列表后,通过协调节点的搜索引擎调用该目标节点列表中的各个目标节点各自的合约接口,接入各个目标节点各自的智能合约层,再通过各个目标节点各自的智能合约层调用各自的搜索引擎接口,再通过各个目标节点各自的搜索引擎接口调用各自的搜索引擎在各自的目标节点所维护的元数据中搜索到用户想要搜索的数据(也就是与所述搜索请求相对应的数据),然后返回至协调节点,由协调节点汇总后返回至用户所在的本地终端。由此,可以在保证数据搜索可信可控的同时降低计算资源开销,以提高数据搜索效率。
在本发明中,所述方法还包括:根据待接入节点的节点信息,通过标识解析系统将所述待接入节点接入数联网网络;将所述待接入节点的节点信息输入所述待接入节点的父节点;根据所述父节点接收的所述节点信息,所述父节点向所述待接入节点发送数字对象数据获取请求;根据所述获取请求,所述待接入节点向所述父节点返回所述获取请求对应的数字对象数据;根据获取的数字对象数据,所述父节点索引全部的元数据,以及,维护所述待接入节点的配置信息,以及向自身的上级节点同步获取的数字对象数据并更新自身的统计数据。
在本发明的实施例中,对于符合规范的注册表节点均可通过标识解析系统接入数联网中。同时,每个接入数联网中的节点均需要向上级节点进行数据同步。具体地,根据待接入节点的节点信息,该节点信息包括本地标识解析信息,通过标识解析系统对待接入节点的该节点信息进行解析,基于解析获得的该待接入节点的本地标识将该待接入节点接入数联网网络。在将待接入节点接入数联网网络后,将待接入节点的节点信息输入该待接入节点的父节点,该节点信息包括待接入节点的名称和地址等。该父节点在接收到该节点信息后,向该待接入节点发送数字对象数据的获取请求,以请求到该待接入节点中与数字对象相关的信息,从而实现将该待接入节点中的数字对象数据同步至该父节点。根据接收到的数字对象数据获取请求,该待接入节点向自身父节点返回该数字对象数据获取请求对应的数字对象数据。根据从该待接入节点获取到的数字对象数据,父节点针对自身的全部元数据建立索引,该全部元数据包括从该待接入节点同步的数字对象数据和该父节点自身所维护的元数据。同时父节点维护该待接入节点的配置信息,以使得在该待接入节点发生数字对象的更新事件时,父节点可以在该待接入节点发生数字对象的更新事件后,再次对该待接入节点的数字对象数据进行同步。同时,该父节点向自身的上级节点同步获取的数字对象数据,以使得该待接入节点的所有上级节点均能够同步到该待接入节点的数字对象数据。同时,该父节点根据接收到的数字对象数据中对数字对象的相关统计数据更新自身的对数字对象的相关统计数据。其中,所述数字对象数据的获取请求包括;请求事件名称、请求待接入节点的数字对象数据、请求同步待接入节点的全部元数据。
在本发明的实施例中,每个注册表节点均包括前缀标识,该前缀标识分为若干层级,每级之间以“.”分隔。根据待接入节点的前缀标识,即可从数联网网络中的其他节点中确定出该待接入节点的父节点。示例地,待接入节点的前缀标识为86.1000.21,则该待接入节点的父节点的前缀标识为86.1000,此时基于该前缀标识将确定到该待接入节点的父节点。
在本发明中,所述通过所述搜索引擎调用所述目标节点列表中各个目标节点各自的合约接口获取与所述搜索请求对应的数据,并将获取的数据在所述协调节点进行汇总,通过所述协调节点返回至用户所在终端,包括:通过所述搜索引擎调用所述目标节点列表中各个目标节点各自的合约接口获取与所述搜索请求对应的数据;将所述目标节点列表转化为树状结构;所述树状结构中的每一级目标节点将自身包括的与所述搜索请求对应的数据进行排序过滤后传给父节点,直至获取的与所述搜索请求对应的数据进行排序过滤后传至根节点;通过所述根节点将获取的与所述搜索请求对应的最终数据发送至所述协调节点,通过所述协调节点将所述最终数据返回至用户所在终端。
在本发明的实施例中,在本发明通确定进行数据搜索的目标节点列表后,将在该目标节点列表中的各个目标节点中搜索与所述搜索请求对应的数据。在对各个目标节点中搜索到的数据进行汇总时,目前的汇总方式为将各个目标节点搜索到的各条数据发送至协调节点,由协调节点对接收到的所有数据进行排序后,返回至用户所在终端,而在发送至协调节点的数据条数的数量过于庞大时,协调节点将花费较多的计算资源执行排序工作,从而导致数据搜索效率的降低。例如,最终确定到的目标节点列表包括15个目标节点,基于搜索请求将在各个目标节点分别搜索到1000条数据,而用户想要的是从搜索到的所有数据中筛选出排序靠前的1000条数据,此时在协调节点属于该15个目标节点中的一个节点时,该协调节点将最终获得15000条数据然后进行排序,然后将排序后的排序靠前的1000条数据返回至用户所在终端,这样的数据汇总方式将在发送至协调节点的数据条数的数量过于庞大时,协调节点将花费较多的计算资源执行排序工作,从而导致数据搜索效率的降低。
因此,本发明为解决该问题,提出另一种数据汇总组网策略方式,具体地:通过协调节点的搜索引擎调用该目标节点列表中的各个目标节点各自的合约接口,接入各个目标节点各自的智能合约层,再通过各个目标节点各自的智能合约层调用各自的搜索引擎接口,再通过各个目标节点各自的搜索引擎接口调用各自的搜索引擎在各自的目标节点所维护的元数据中搜索用户想要搜索的数据。然后以目标节点列表中的各个目标节点构建树状结构。对于树状结构中的每一级目标节点将自身搜索到的与搜索请求对应的数据进行排序过滤后传给父节点,然后该父节点继续对自身搜索到的与搜索请求对应的数据和接收到的其他目标节点传过来的数据进行排序过滤后传给该父节点的父节点,直至搜索到的与搜索请求对应的数据进行排序过滤后传至该树状结构的根节点为止,此时通过树状结构的根节点将与搜索请求对应的最终数据发送至协调节点,通过协调节点将最终数据返回至用户所在终端。
其中,所述树状结构中的子节点与父节点之间与节点的层级可以无关,也可以相关,也就是在树状结构中作为一个节点的父节点,该父节点的层级可以是高于该一个节点的层级,也可以不是高于该一个节点层级,例如一个节点的前缀标识为1.1.1,该一个节点的父节点为1.1.1.1,此时该一个节点的父节点层级低于该一个节点的层级,例如一个节点的前缀标识为1.2.1.1,该一个节点的父节点为1.2.1,此时该一个节点的父节点层级高于该一个节点的层级。其中,对搜索到的数据进行排序的排序规则可以是数据与搜索请求的相关性,也可以是数据产生的时间等,在此对数据进行排序的排序规则不做具体限定。
示例地,如图3所示,目标节点列表包括15个目标节点a、b、c、……、m、n、o,在该15个节点中分别搜索到1000条与搜索请求对应的数据,此时以该15个目标节点构建树状结构,然后对于树状结构中最底层的节点a、b将自身搜索到的1000条数据发送至自身的父节点i,对于树状结构中最底层的节点c、d将自身搜索到的1000条数据发送至自身的父节点j,对于树状结构中最底层的节点e、f将自身搜索到的1000条数据发送至自身的父节点k,对于树状结构中最底层的节点g、h将自身搜索到的1000条数据发送至自身的父节点l,父节点i、j、k、l在接收到各自的子节点发送的数据后,对自身搜索到的1000条数据和接收到的2000条数据进行排序和过滤,筛选出各自排序靠前的1000条数据。此时父节点i、j将各自排序过滤后的1000条数据发送至父节点m,父节点k、l将各自排序过滤后的1000条数据发送至父节点n。此时父节点m、n在接收到各自的子节点发送的数据后,对自身搜索到的1000条数据和接收到的2000条数据进行排序和过滤,筛选出各自排序靠前的1000条数据。此时父节点m、n将各自排序过滤后的1000条数据发送至父节点o。此时父节点o在接收到各自的子节点发送的数据后,对自身搜索到的1000条数据和接收到的2000条数据进行排序和过滤,筛选出排序靠前的1000条数据,然后将筛选出的排序靠前的1000条数据发送至协调节点,通过协调节点将最终数据返回至用户所在终端。由此,对于该数据汇总过程,在通过目前的数据汇总方式进行汇总时,最终将由一个节点对15000条数据进行排序,该一个节点的计算资源开销较大,造成数据搜索效率降低,而通过本发明提供的该数据汇总组网策略,最终将由树状结构中的各个节点各自执行3000次排序,将数据排序的工作分配至各个目标节点,由各个目标节点各自执行一部分排序工作,由此可有效降低单个节点的计算资源开销,从而提高数据搜索效率。
在本发明中,所述通过所述搜索引擎调用所述目标节点列表中各个目标节点各自的合约接口获取与所述搜索请求对应的数据,并将获取的数据在所述协调节点进行汇总,通过所述协调节点返回至用户所在终端,包括:通过所述搜索引擎调用所述目标节点列表中各个目标节点各自的合约接口获取与所述搜索请求对应的数据;根据所述目标节点列表和所述协调节点,以所述协调节点为根节点构建树状结构;所述树状结构中的每一级目标节点将自身包括的与所述搜索请求对应的数据进行排序过滤后传给父节点,直至获取的与所述搜索请求对应的数据进行排序过滤后传至根节点;通过所述根节点将与所述搜索请求对应的最终数据返回至用户所在终端。
在本发明的实施例中,对于上述步骤S15的一种实施方式,为进一步提高数据搜索效率,本发明在构建树状结构时,以协调节点作为树状结构的根节点构建树状结构,由此在进行数据汇总时,树状结构中的其他节点在对获取的与所述搜索请求对应的数据进行排序过滤后传至根节点,即可由根节点进行排序过滤后返回至用户所在终端,也就是协调节点返回至用户所在终端,而无需和上述一种实施方式一样,需要先给到根节点,由根节点进行排序过滤后发送至协调节点,由协调节点再返回至用户所在终端。
具体地,通过协调节点的搜索引擎调用该目标节点列表中的各个目标节点各自的合约接口,接入各个目标节点各自的智能合约层,再通过各个目标节点各自的智能合约层调用各自的搜索引擎接口,再通过各个目标节点各自的搜索引擎接口调用各自的搜索引擎在各自的目标节点所维护的元数据中搜索用户想要搜索的数据。然后根据目标节点列表中的各个目标节点和协调节点,以协调节点为根节点构建树状结构。对于树状结构中的每一级目标节点将自身搜索到的与搜索请求对应的数据进行排序过滤后传给父节点,然后该父节点继续对自身搜索到的与搜索请求对应的数据和接收到的其他目标节点传过来的数据进行排序过滤后传给该父节点的父节点,直至搜索到的与搜索请求对应的数据进行排序过滤后传至该树状结构的根节点为止,此时通过树状结构的根节点将与搜索请求对应的最终数据返回至用户所在终端。
示例地,如图4所示,图4示出了本发明中两种数据汇总组网策略,两种数据汇总组网策略中均为包括节点a1至a7的目标节点,对于第一种实施方式,将进行三次数据的排序和过滤,同时将进行四次数据的返回,而对于第二种实施方式,同样将进行三次数据的排序和过滤,但只需进行三次数据的返回,相较于第一种实施方式无需再进行由树状结构的根节点返回至协调节点,由此可进一步提高数据搜索效率。对于本发明的上述两种汇总组网策略均具有以下优势:能够解决在目标节点较多时深度分页的大量排序问题;将原本由一个节点的大量排序工作分给多个节点进行执行,从而提高排序效率。
在本发明中,所述方法还包括:在所述目标节点列表中的节点数量超过数联网节点总数的预设比例的情况下,将根节点确定为目标节点。
在本发明的实施例中,在用户进行数据搜索时,所想要进行搜索的节点列表中的节点数量过于庞大,这时候涉及的节点范围过大,如超过整个数联网网络中节点总数的一半或更多,此时基于本发明的实施方式确定的目标节点列表,将有很大可能确定到最终数联网网络中的根节点,同时由于涉及的节点数量过于庞大,此时确定目标节点列表也需要消耗一定的计算资源,因此为了避免这种情况的发生,本发明预设一个预设比例,在用户想要进行数据搜索的目标节点列表中的节点数量超过数联网节点总数的预设比例时,直接将数联网网络中的根节点确定为目标节点进行数据搜索。其中,所述预设比例可根据实际应用场景进行设定,在此不做具体限定,如设置为数联网中节点总数的50%,或60%,或70%等。
在本发明中,所述方法还包括:数联网中的节点对自身的数字对象目标文件进行数据持久化,所述数字对象目标文件包括:顺序存储的数字对象元数据文件、顺序存储的本地维护的数字对象仓库文件、数字对象的全文索引文件;记录各个数字对象仓库中的数字对象数量文件、持久化的本地注册表监听的仓库更新事件文件。
在本发明的实施例中,注册表节点的作用是实现对数字对象的搜索功能,因此需要对数字对象相关信息进行持久化。因此,本发明中数联网中的注册表节点对自身的数字对象目标文件进行数据持久化。如表1所示,所述数字对象目标文件包括:顺序存储的数字对象元数据文件、顺序存储的本地维护的数字对象仓库文件、数字对象的全文索引文件;记录各个数字对象仓库中的数字对象数量文件、持久化的本地注册表监听的仓库更新事件文件。表1如下:
在本发明中,在通过标识解析系统将所述待接入节点接入数联网网络之前,所述方法还包括:配置所述待接入节点的节点属性和状态属性的参数集合。
在本发明的实施例中,每个注册表节点为了考虑到网络接入后的访问和权限控制等,注册表节点在启动时进行节点属性的参数集合配置,配置的节点属性参数集合如表2所示,同时每个注册表节点下维护的是相同前缀标识的数字对象仓库,因此在注册表节点启动后,在该注册表节点的本地标识解析系统中申请注册前缀,用于该注册表节点下的数字对象的解析服务。同时,对于每个注册表而言,需要向上级节点提供对数字对象使用的相关统计信息,也需要一些初始的状态属性的配置信息,这些信息也需要在注册表节点启动时进行配置,配置的状态属性的参数集合如表3所示,主要包括对数字对象数量,用户数量,访问次数等信息。表2和表3如下:
/>
在本发明的实施例中,数联网中的数据以数字对象的形式存在,每个数字对象都有对应的元数据,至少包括标识和名称,标识doId对数字对象进行唯一标识,可以在全网根据标识快速找到,其他字段都是根据不同的系统设计可以进行动态扩充维护。本发明中的数字对象还包括数字对象类型type,数字对象仓库根据不同的数字对象类型提供不同的访问接口和编码方式;数字对象的描述description,用于搜索引擎的内容搜索;数字对象格式schema,用于实现不同类型的数字对象的格式转换功能;数字对象版本号version,用于同一个数字对象更新时不同注册表和仓库的一致性维护;数字对象的是否加入索引属性enableIndex,考虑到数据管理的逻辑,对于不希望加入索引实现全网模糊搜索的节点,可以对数字对象的该属性置为false。如下表4是本发明对一个数字对象字段的示例表示:
在本发明的实施例中,由于本发明为了保证数据搜索的可信可控引入了智能合约层,同时数字对象仓库还需要包括数字对象完整数据的持久化功能;向注册表同步元数据的功能;通过DOIP协议实现数字对象的访问的功能,因此本发明对数字对象仓库需要进行相应的配置,数字对象仓库的配置信息设计如表5所示:
在本发明的实施例中,待接入节点的父节点维护的待接入节点的注册表记录包括:待接入节点的注册表id(注册表唯一标识)、注册表名称(用于远程调用待接入节点的函数)、地址(用于同步数据时远程调用)、更新事件(父节点需订阅事件,用于同步待接入节点的数据)、数字对象总数(用于更新时的增量同步)。待接入节点的父节点维护的上级节点的注册表记录包括:上级节点的注册表id、注册表名称、地址。应当理解的是每个注册表能够通过本发明所提供的面向数联网的分布式搜索方法中的搜索引擎搜索到,则都将在某一时刻会成为待接入节点并被接入到数联网网络中,因此待接入节点的父节点维护的待接入节点的注册表记录也就是指数联网网络中各个父节点所维护的各自的子节点的注册表记录。
本发明第二方面提供一种面向数联网的分布式搜索系统,如图5所示,所述系统500包括:
前端用户界面501,用于通过协调节点发出搜索请求;
合约接口502,用于将所述搜索请求接入智能合约层;
搜索引擎接口503,用于通过所述智能合约层调用搜索引擎接口,将所述搜索请求接入搜索引擎;
搜索引擎504,用于确定具有所述搜索请求所请求的数据内容的各个最低节点,将所述各个最低节点确定为进行数据搜索的目标节点列表,以及,用于调用所述目标节点列表中各个目标节点各自的合约接口获取与所述搜索请求对应的数据,并将获取的数据在所述协调节点进行汇总,通过所述协调节点返回至用户所在终端。
在本发明的实施例中,前端用户界面501,用于通过协调节点发出搜索请求,将基于vue3实现搜索功能的演示界面,用于用户进行可视化访问。合约接口502,用于将所述搜索请求接入智能合约层,具体为通过合约引擎sdk对外提供tttp和websocket接口,以及java和js的调用接口,供不同平台的用户对智能合约进行使用。智能合约层则基于北大数瑞智能合约引擎实现,用于用户的权限控制(如普通用户只能进行搜索功能管理员可以执行添加、删除数字对象仓库,接入数联网网络等功能)和调用结果的上链。搜索引擎接口503,用于通过所述智能合约层调用搜索引擎接口,将所述搜索请求接入搜索引擎,搜索引擎由Java实现,通过封装SearchEngine类对外提供数字对象的索引和搜索引擎接口,以及DOIP协议的访问接口。节点的数据持久化依赖Lucene和RocksDB,分别实现数字对象元数据的全文索引和顺序存储。
在本发明的实施例中,本发明所提供的面向数联网的分布式搜索系统中还包括网关系统用于数字对象仓库的接入、统计和管理功能,逻辑上相当于一个大的数字对象仓库。还包括标识解析系统,具体包括全局标识解析系统(GRS Global Resolution System)和局部标识解析系统(LRS Local Resolution System),LRS的主要功能为为数联网中的每一个资源(参与者,注册表,仓库,数字对象等)注册标识,并提供解析服务。GRS的主要功能为为LRS 分配标识(前缀)和解析。还包括注册表系统,前端用户界面701和搜索引擎704属于注册表系统,注册表系统负责存储和管理数字对象的元数据,并提供搜索服务。每一个数联网节点都会有一个注册表系统和一个LRS。其中注册表的标识是一个“x.y.z”格式的前缀,该注册表维护的所有数字对象的标识均以此为前缀。如图6所示,图6示出了本发明提供的面向数联网的分布式搜索系统的总体架构图,包括数字对象digital object、持久化数字对象的数字对象仓库repository、将数字对象仓库接入标识解析系统的网关系统getway,以使得该数字对象仓库能够参与后续的数据搜索、用于为数联网中的每一个资源(参与者,注册表,仓库,数字对象等)注册标识,并提供解析服务的和局部标识解析系统LRS、用于为LRS 分配标识(前缀)和解析的全局标识解析系统GRS、用于存储和管理数字对象的元数据,并提供搜索服务的注册表系统registry。其中,在数联网网络中的每个节点都包括自身的注册表系统和局部标识解析系统LRS。
可选地,所述系统500还包括:
数联网接入模块,用于根据待接入节点的节点信息,通过标识解析系统将所述待接入节点接入数联网网络;
节点信息发送模块,用于将所述待接入节点的节点信息输入所述待接入节点的父节点;
获取请求发送模块,用于根据所述父节点接收的所述节点信息,所述父节点向所述待接入节点发送数字对象数据获取请求;
数字对象数据返回模块,用于根据所述获取请求,所述待接入节点向所述父节点返回所述获取请求对应的数字对象数据;
元数据索引同步模块,用于根据获取的数字对象数据,所述父节点索引全部的元数据,以及,维护所述待接入节点的配置信息,以及向自身的上级节点同步获取的数字对象数据并更新自身的统计数据。
可选地,所述搜索引擎504,包括:
数据获取模块,用于通过所述搜索引擎调用所述目标节点列表中各个目标节点各自的合约接口获取与所述搜索请求对应的数据;
树状结构转化模块,用于将所述目标节点列表转化为树状结构;
排序模块,用于所述树状结构中的每一级目标节点将自身包括的与所述搜索请求对应的数据进行排序过滤后传给父节点,直至获取的与所述搜索请求对应的数据进行排序过滤后传至根节点;
数据反馈模块,用于通过所述根节点将获取的与所述搜索请求对应的最终数据发送至所述协调节点,通过所述协调节点将所述最终数据返回至用户所在终端。
可选地,所述搜索引擎504,包括:
第一数据获取模块,用于通过所述搜索引擎调用所述目标节点列表中各个目标节点各自的合约接口获取与所述搜索请求对应的数据;
第一树状结构转化模块,用于根据所述目标节点列表和所述协调节点,以所述协调节点为根节点构建树状结构;
第一排序模块,用于所述树状结构中的每一级目标节点将自身包括的与所述搜索请求对应的数据进行排序过滤后传给父节点,直至获取的与所述搜索请求对应的数据进行排序过滤后传至根节点;
第一数据反馈模块,用于通过所述根节点将与所述搜索请求对应的最终数据返回至用户所在终端。
可选地,所述系统500还包括:
第一目标节点确定模块,用于在所述目标节点列表中的节点数量超过数联网节点总数的预设比例的情况下,将根节点确定为目标节点。
可选地,所述系统500,还包括:
数据持久化模块,用于数联网中的节点对自身的数字对象目标文件进行数据持久化,所述数字对象目标文件包括:顺序存储的数字对象元数据文件、顺序存储的本地维护的数字对象仓库文件、数字对象的全文索引文件;记录各个数字对象仓库中的数字对象数量文件、持久化的本地注册表监听的仓库更新事件文件。
可选地,所述系统还包括:节点属性配置模块,用于配置所述待接入节点的节点属性和状态属性的参数集合。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk (SSD))等。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
Claims (6)
1.一种面向数联网的分布式搜索方法,其特征在于,所述方法包括:
通过协调节点发出搜索请求;
基于合约接口,将所述搜索请求接入智能合约层;
通过所述智能合约层调用搜索引擎接口,将所述搜索请求接入搜索引擎;
通过所述搜索引擎确定具有所述搜索请求所请求的数据内容的各个最低节点,将所述各个最低节点确定为进行数据搜索的目标节点列表;
通过所述搜索引擎调用所述目标节点列表中各个目标节点各自的合约接口获取与所述搜索请求对应的数据,并将获取的数据在所述协调节点进行汇总,通过所述协调节点返回至用户所在终端;
根据待接入节点的节点信息,通过标识解析系统将所述待接入节点接入数联网网络;
将所述待接入节点的节点信息输入所述待接入节点的父节点;
根据所述父节点接收的所述节点信息,所述父节点向所述待接入节点发送数字对象数据获取请求;
根据所述获取请求,所述待接入节点向所述父节点返回所述获取请求对应的数字对象数据;
根据获取的数字对象数据,所述父节点索引全部的元数据,以及,维护所述待接入节点的配置信息,以及向自身的上级节点同步获取的数字对象数据并更新自身的统计数据
其中,所述通过所述搜索引擎调用所述目标节点列表中各个目标节点各自的合约接口获取与所述搜索请求对应的数据,并将获取的数据在所述协调节点进行汇总,通过所述协调节点返回至用户所在终端,包括:
通过所述搜索引擎调用所述目标节点列表中各个目标节点各自的合约接口获取与所述搜索请求对应的数据;
将所述目标节点列表转化为树状结构;
所述树状结构中的每一级目标节点将自身包括的与所述搜索请求对应的数据进行排序过滤后传给父节点,直至获取的与所述搜索请求对应的数据进行排序过滤后传至根节点;
通过所述根节点将获取的与所述搜索请求对应的最终数据发送至所述协调节点,通过所述协调节点将所述最终数据返回至用户所在终端。
2.根据权利要求1所述的面向数联网的分布式搜索方法,其特征在于,所述通过所述搜索引擎调用所述目标节点列表中各个目标节点各自的合约接口获取与所述搜索请求对应的数据,并将获取的数据在所述协调节点进行汇总,通过所述协调节点返回至用户所在终端,包括:
通过所述搜索引擎调用所述目标节点列表中各个目标节点各自的合约接口获取与所述搜索请求对应的数据;
根据所述目标节点列表和所述协调节点,以所述协调节点为根节点构建树状结构;
所述树状结构中的每一级目标节点将自身包括的与所述搜索请求对应的数据进行排序过滤后传给父节点,直至获取的与所述搜索请求对应的数据进行排序过滤后传至根节点;
通过所述根节点将与所述搜索请求对应的最终数据返回至用户所在终端。
3.根据权利要求1所述的面向数联网的分布式搜索方法,其特征在于,所述方法还包括:
在所述目标节点列表中的节点数量超过数联网节点总数的预设比例的情况下,将根节点确定为目标节点。
4.根据权利要求1所述的面向数联网的分布式搜索方法,其特征在于,所述方法还包括:
数联网中的节点对自身的数字对象目标文件进行数据持久化,所述数字对象目标文件包括:顺序存储的数字对象元数据文件、顺序存储的本地维护的数字对象仓库文件、数字对象的全文索引文件;记录各个数字对象仓库中的数字对象数量文件、持久化的本地注册表监听的仓库更新事件文件。
5.根据权利要求1所述的面向数联网的分布式搜索方法,其特征在于,在通过标识解析系统将所述待接入节点接入数联网网络之前,所述方法还包括:配置所述待接入节点的节点属性和状态属性的参数集合。
6.一种面向数联网的分布式搜索系统,其特征在于,所述系统包括:
前端用户界面,用于通过协调节点发出搜索请求;
合约接口,用于将所述搜索请求接入智能合约层;
搜索引擎接口,用于通过所述智能合约层调用搜索引擎接口,将所述搜索请求接入搜索引擎;
搜索引擎,用于确定具有所述搜索请求所请求的数据内容的各个最低节点,将所述各个最低节点确定为进行数据搜索的目标节点列表,以及,用于调用所述目标节点列表中各个目标节点各自的合约接口获取与所述搜索请求对应的数据,并将获取的数据在所述协调节点进行汇总,通过所述协调节点返回至用户所在终端;
数联网接入模块,用于根据待接入节点的节点信息,通过标识解析系统将所述待接入节点接入数联网网络;
节点信息发送模块,用于将所述待接入节点的节点信息输入所述待接入节点的父节点;
获取请求发送模块,用于根据所述父节点接收的所述节点信息,所述父节点向所述待接入节点发送数字对象数据获取请求;
数字对象数据返回模块,用于根据所述获取请求,所述待接入节点向所述父节点返回所述获取请求对应的数字对象数据;
元数据索引同步模块,用于根据获取的数字对象数据,所述父节点索引全部的元数据,以及,维护所述待接入节点的配置信息,以及向自身的上级节点同步获取的数字对象数据并更新自身的统计数据;
可选地,所述搜索引擎,包括:
数据获取模块,用于通过所述搜索引擎调用所述目标节点列表中各个目标节点各自的合约接口获取与所述搜索请求对应的数据;
树状结构转化模块,用于将所述目标节点列表转化为树状结构;
排序模块,用于所述树状结构中的每一级目标节点将自身包括的与所述搜索请求对应的数据进行排序过滤后传给父节点,直至获取的与所述搜索请求对应的数据进行排序过滤后传至根节点;
数据反馈模块,用于通过所述根节点将获取的与所述搜索请求对应的最终数据发送至所述协调节点,通过所述协调节点将所述最终数据返回至用户所在终端。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311196269.7A CN116932614B (zh) | 2023-09-18 | 2023-09-18 | 一种面向数联网的分布式搜索方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311196269.7A CN116932614B (zh) | 2023-09-18 | 2023-09-18 | 一种面向数联网的分布式搜索方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116932614A CN116932614A (zh) | 2023-10-24 |
CN116932614B true CN116932614B (zh) | 2023-12-26 |
Family
ID=88375769
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311196269.7A Active CN116932614B (zh) | 2023-09-18 | 2023-09-18 | 一种面向数联网的分布式搜索方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116932614B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117271530B (zh) * | 2023-11-21 | 2024-02-06 | 北京大学 | 一种数联网数字对象语用关系建模方法及装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108076133A (zh) * | 2016-11-17 | 2018-05-25 | 成都勤智未来科技有限公司 | 数联网 |
CN110837491A (zh) * | 2019-11-25 | 2020-02-25 | 广州知弘科技有限公司 | 一种区块链金融大数据处理系统及方法 |
US11048765B1 (en) * | 2008-06-25 | 2021-06-29 | Richard Paiz | Search engine optimizer |
CN115623000A (zh) * | 2022-09-23 | 2023-01-17 | 北京大学 | 一种数联网上数据高效分发方法与装置 |
-
2023
- 2023-09-18 CN CN202311196269.7A patent/CN116932614B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11048765B1 (en) * | 2008-06-25 | 2021-06-29 | Richard Paiz | Search engine optimizer |
CN108076133A (zh) * | 2016-11-17 | 2018-05-25 | 成都勤智未来科技有限公司 | 数联网 |
CN110837491A (zh) * | 2019-11-25 | 2020-02-25 | 广州知弘科技有限公司 | 一种区块链金融大数据处理系统及方法 |
CN115623000A (zh) * | 2022-09-23 | 2023-01-17 | 北京大学 | 一种数联网上数据高效分发方法与装置 |
Also Published As
Publication number | Publication date |
---|---|
CN116932614A (zh) | 2023-10-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1845688B1 (en) | Method, system, client terminal and server for realizing data synchronization | |
CN116932614B (zh) | 一种面向数联网的分布式搜索方法及系统 | |
US8452789B2 (en) | Searching a database | |
US6363375B1 (en) | Classification tree based information retrieval scheme | |
US20080104277A1 (en) | Method, system, client and server for implementing data sync | |
KR101467716B1 (ko) | 발행된 메시지를 분배하는 방법 및 장치 | |
US20130185298A1 (en) | Processes and system for accessing externally stored metadata associated with a media asset using a unique identifier incorporated into the asset itself | |
US20030115065A1 (en) | Method and system for providing a distributed querying and filtering system | |
WO2018036324A1 (zh) | 一种智慧城市信息共享的方法和装置 | |
CN111078765A (zh) | 基于Hadoop体系架构的视图库系统及其构建方法 | |
US8037209B2 (en) | Device configuration integration information managing device and device configuration information managing device | |
CN113326264A (zh) | 数据处理方法、服务器及存储介质 | |
CN102034144A (zh) | 用于在场的群组组成算法 | |
CN111858722A (zh) | 一种基于物联网的大数据应用系统及方法 | |
CN116910125B (zh) | 融合距离和最长前缀的数字对象分布式搜索方法及装置 | |
CA2571490A1 (en) | Functional operations for accessing and/or building interlocking trees datastores to enable their use with applications software | |
EP2856354B1 (en) | Method and system for deleting obsolete files from a file system | |
US20110029568A1 (en) | Information processing system, first information processing apparatus, second information processing apparatus, and third information processing apparatus | |
Shetty et al. | A novel web service composition and web service discovery based on map reduce algorithm | |
US20030172154A1 (en) | Data server | |
JP2000242541A (ja) | オブジェクト処理装置及びそのプログラム記憶媒体 | |
JP2003091535A (ja) | データ管理方法及びプログラム並びに装置 | |
KR100907095B1 (ko) | 분산저장장치를 이용한 정보검색시스템 및 이를 이용한정보검색방법 | |
US20030233356A1 (en) | User interface for facilitating interaction between a user and an information system | |
CN113421131B (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 |