存储器内搜索技术制造技术

技术编号:22472343 阅读:27 留言:0更新日期:2019-11-06 13:20
本发明专利技术的一个实施方案涉及一种用于在分布式计算系统中执行高效数据搜索的方法。所述方法可以包括:接收包括关键字的搜索请求。可以通过在计算机系统上执行的虚拟机外部的编程接口,将所述关键字提供给基于块的表管理器。所述编程接口可以提供所述虚拟机的第一编程框架与所述基于块的表管理器的第二编程框架之间的转换。提供所述关键字可以使所述基于块的表管理器执行对应于所述关键字的值的搜索。可以响应于所述搜索请求来提供所述值。利用这种基于块的表可以使得数据搜索能够使用在分布式计算系统内操作的计算节点的板载存储器来执行。

Search technology in memory

【技术实现步骤摘要】
【国外来华专利技术】存储器内搜索技术
技术介绍
分布式计算系统通常用于管理和处理大型数据集。分布式计算系统可将数据库分布在若干计算机上,所述计算机通过诸如高速网络等各种通信介质彼此进行通信。分布式数据库系统可由单个逻辑数据库组成,所述逻辑数据库可拆分为不同片段,每个片段被存储在分布式计算系统的单个计算机(例如节点)上。分布式计算系统可能会面临如何管理和/或访问大型数据集的挑战。例如,协调计算机之间的任务所需的信息交换和额外计算是一种在集中式系统中不会出现的开销。另外,分布式计算系统可能容易出现错误,因为当数据集在分布式计算系统的许多计算机上扩散时,更加难以确保算法的正确性。另外,在分布式计算系统中搜索数据集的特定部分可能在计算上代价较大,且可能产生变化的搜索时间。因此,可对数据集和分布式计算系统进行改进,以提供更高效的搜索时间。另外,当前用于执行关键字搜索的技术可能存在由搜索冲突导致的缺点,因为许多设备可能在相同时间访问容器。为了避免冲突,可能连续执行请求,这会导致更长的计算时间。另外,数据集和/或数据集容器可能过大(例如5TB)而无法加载到分布式计算系统中的节点的存储器(例如,128GB的随机存取存储器(R本文档来自技高网...

【技术保护点】
1.一种方法,包括:通过由计算机系统主控的虚拟机执行的数据集准备模块,至少部分地基于数据集来生成一组关键字‑值对;由所述数据集准备模块向基于块的表管理器提供所述一组关键字‑值对,所述基于块的表管理器由所述计算机系统在所述虚拟机外部的执行环境中执行,所述数据集准备模块利用编程接口与所述基于块的表管理器进行交互,所述编程接口至少被配置为使得在所述虚拟机内执行的模块能够访问所述虚拟机外部的功能,其中将所述一组关键字‑值对提供给所述基于块的表管理器导致所述基于块的表管理器生成共同表示基于块的表的包含数据的多个数据块;以及由所述计算机系统将所述基于块的表分发给与所述计算机系统不同的多个计算机系统。

【技术特征摘要】
【国外来华专利技术】1.一种方法,包括:通过由计算机系统主控的虚拟机执行的数据集准备模块,至少部分地基于数据集来生成一组关键字-值对;由所述数据集准备模块向基于块的表管理器提供所述一组关键字-值对,所述基于块的表管理器由所述计算机系统在所述虚拟机外部的执行环境中执行,所述数据集准备模块利用编程接口与所述基于块的表管理器进行交互,所述编程接口至少被配置为使得在所述虚拟机内执行的模块能够访问所述虚拟机外部的功能,其中将所述一组关键字-值对提供给所述基于块的表管理器导致所述基于块的表管理器生成共同表示基于块的表的包含数据的多个数据块;以及由所述计算机系统将所述基于块的表分发给与所述计算机系统不同的多个计算机系统。2.如权利要求1所述的计算机实现的方法,其中所述编程接口提供所述虚拟机的第一编程框架与在所述计算设备上执行的所述基于块的表管理器的第二编程框架之间的转换。3.如权利要求2所述的计算机实现的方法,其中将所述一组关键字-值对提供给基于块的表管理器还使得所述基于块的表管理器生成所述基于块的表的元数据,所述元数据提供所述多个关键字中的关键字与所述多个数据块中的对应数据块之间的映射。4.如权利要求1所述的计算机实现的方法,其中所生成的多个数据块包括小于或等于阈值的存储器分配。5.如权利要求1所述的计算机实现的方法,还包括:在所述多个计算机系统的远程计算机系统处,通过由所述远程计算机系统主控的分开的虚拟机执行的搜索处理模块,接收包括关键字的搜索请求;由所述搜索处理模块向基于块的表管理器提供所述关键字,所述基于块的表管理器由所述远程计算机系统在所述分开的虚拟机外部的执行环境中执行,所述搜索处理模块利用分开的编程接口与所述基于块的表管理器进行交互,所述分开的编程接口至少被配置为使得在所述分开的虚拟机内执行的模块能够访问所述分开的虚拟机外部的功能,其中将所述关键字提供给所述基于块的表管理器使得所述基于块的表管理器搜索其相应的值;由所述搜索处理模块从所述基于块的表管理器接收与所述关键字对应的值;以及由所述搜索处理模块,响应于所述搜索请求,提供所述值。6.如权利要求1所述的计算机实现的方法,其中所述多个计算设备包括分布式系统的多个计算节点,所述多个计算系统单独地具有存储器资源,所述存储器资源的大小大于与表示所述基于块的表的所述多个数据块相关联的存储器分配。7.如权利要求1所述的计算机实现的方法,其中生成所述多个数据块包括将各个数据块压缩为压缩的存储器分配,所述压缩使所述基于块的表能够利用小于所述多个计算系统的存储器资源的大小的存储器分配,所述数据集太大而不能存储在所述多个计算系统中的每一个上。8.如权利要求1所述的计算机实现的方法,其中利用所述多个数据块进行的搜索以比用所述数据集执行搜索短的处理时间完成。9.一种系统,包括:计算设备,所述计算设备包括:第一处理器,以及耦合到所述第一处理器的第一计算机可读介质,所述计算机可读介质包括能由所述第一处理器执行以实施第一方法的代码,所述第一方法包括:通过由所述计算设备主控的虚拟机执行的所述计算设备的模块,至少部分地基于数据集来生成一组关键字-值对;由所述模块向所述基于块的表管理器提供所述一组关键字-值对,所述基于块的表管理器由所述计算设备在所述虚拟机外部的执行环境中执行,所述数据集准备模块利用编程接口与所述基于块的表管理器进行交互,所述编程接口至少被配置为使得在所述虚拟机内执行的模块能够访问所述虚拟机外部的功能,其中将所述一组关键字-值对提供给所述基于块的表管理器导致所述基于块的表管理器生成共同表示基于块的表的包含数据的多个数据块;以及将所述基于块的表分发给与所述计算设备不同的多个计算机设备;以及所述多个计算节点单独包括:第二处理器,以及耦合到所述第二处理器的第二计算机可读介质,所述计算机可读介质包括能由所述第二处理器执行以实施第二方法的代码,所述第二方法包括:通过由所述多个计算节点中的计算节点主控的分开的虚拟机...

【专利技术属性】
技术研发人员:N·皮什
申请(专利权)人:维萨国际服务协会
类型:发明
国别省市:美国,US

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1