卸载数据分析应用中的概率计算制造技术

技术编号:17573133 阅读:33 留言:0更新日期:2018-03-28 20:39
本发明专利技术描述了一种卸载概率计算的方法。本发明专利技术公开了一种应用服务器,所述应用服务器包括存储器和处理器并且耦合到网络附加存储设备,所述网络附加存储设备用于基于数据请求响应虚拟机容器的程序调用而创建专用进程。所述处理器将所述数据请求转发给所述网络附加存储设备,对一个或多个虚拟机进行编程以基于所述程序调用执行概率计算,并将所述概率计算指示给所述一个或多个虚拟机中的第一虚拟机。所述数据请求使用虚拟化查找调用转变为修改后的调用。

【技术实现步骤摘要】
【国外来华专利技术】卸载数据分析应用中的概率计算相关申请案交叉申请本申请要求2015年8月7日递交的专利技术名称为“卸载数据分析应用中的概率计算(OffloadingProbabilisticComputationsinDataAnalyticsApplications)”的第14/821,320号美国专利申请案的在先申请优先权,该在先申请的全部内容以引用的方式并入本文本中。
本专利技术实施例大体上涉及分析计算领域。具体而言,本专利技术实施例涉及分布式概率计算。
技术介绍
许多数据分析应用(例如,推荐引擎)需要通过专用概率数据结构(例如,布隆过滤bloomfilter、线性计数、重对数计算(LogLogcounting)、元素基数、count-min算法)基于非常大量的数据进行概率计算。这通常需要从一个或多个存储服务器中提取大量数据并将这些数据传输给计算节点以进行处理。目前没有将基于概率的计算卸载到在分布式文件存储服务器(例如,NFS/CIFS服务器)上执行的可行方案。一些方法使得将原始数据传送给节点以进行处理时的网络使用、NAS侧CPU使用、内存使用和NIC使用大幅度增加。其它缺点包括计算期间的数据提取延迟和应用服务器资源消耗。非常大的数据集在web领域或数据分析领域很常见。许多模型用来处理大规模数据,例如MapReduce。这种大规模数据处理的一个示例是Hadoop生态系统,其以查询大数据集进行分析为基础。对于这种大规模数据,内存资源经常是一个限制性因素。已探研究过各种算法,这些算法尝试达成内存使用量与所需精度之间的折衷。因为分析需要估计查询结果,所以,如果基于用来计算期望值的计算模型,则该期望值的变化是可容许的且安全的。
技术实现思路
通过存储端处的轻量级(例如,低开销)VM实现了一种卸载概率计算方法。本方法通过嵌入概率运算(例如,语义)以及指向存储设备上的数据的指针,通过扩展分布式协议来实现。存储控制器执行多个功能,包括去重、配置、复制和分层。概率算法(例如,分类、聚类和协同过滤)可嵌入具有限定扩展的传统协议(NFS&CIFS)中。使用转换器或解析器将表达式(运算)转换为C个对象。每个运算在一个容器中执行,该容器提供沙盒化环境(VM或者进程级VM,如zeroVM)。不同运算以流水线方式执行,其中每个运算的输出被输入到下一运算。在一项实施例中,描述了一种用于将概率计算卸载到存储设备的装置。所述装置包括应用服务器,所述应用服务器包括存储器和处理器并且耦合到网络附加存储设备,所述网络附加存储设备用于基于数据请求响应虚拟机容器的程序调用而创建专用进程。所述处理器将所述数据请求转发给所述网络附加存储设备,对一个或多个虚拟机进行编程以基于所述程序调用执行概率计算,并将所述概率计算指示给所述一个或多个虚拟机中的第一虚拟机。所述数据请求使用虚拟化查找调用转变为修改后的调用。在另一实施例中,公开了一种用于将计算卸载到存储设备的方法。所述方法包括:使用用户级应用将进程标识符注册到处理器,以便与所述处理器建立通信信道并派生虚拟机的输出以创建新进程;使用虚拟化查找调用将数据请求转变为修改后的调用;使用虚拟化NFS程序调用和所述通信信道将所述修改后的调用转发给所述用户级应用;在所述处理器的内核地址空间与用户地址空间之间创建进程间通信信道;以及使用所述通信信道将NFS调用转发给所述虚拟机以执行所述概率计算。附图说明附图包含在并且构成本说明书的一部分,示出了本专利技术的各种实施例,并且与描述内容一起用于解释本专利技术的原则:图1为根据本专利技术实施例的描绘示例性系统架构的方框图。图2是根据本专利技术实施例的描绘用于从应用服务器卸载运算的示例性配置的方框图。图3为根据本专利技术实施例的描绘示例性概率计算的方框图。图4是根据本专利技术一些实施例的描绘用于将存储端处的VM与应用服务器集成的步骤的示例性计算机实施序列的流程图。具体实施方式现在将详细地给出一些实施例的参考。虽然结合可替代的实施例描述该主题,但应该理解它们不是旨在将请求保护的主题限制于这些实施例。相反,请求保护的主题旨在覆盖可以包括在由附加的权利要求书限定的请求保护的主题的精神和范围内的替代物、修改和等同物。另外,在以下本专利技术的详细描述中,阐述了许多特定细节以便提供对请求保护主题的透彻理解。然而,所属领域的技术人员将认识到,可以在没有这些具体细节的情况下实践实施例。在其它实例中没有详细描述众所周知的方法、流程、部件和电路,以免对本请求保护的主题的各方面和特征造成不必要地模糊。下面详细描述的部分以方法的方式表示和讨论。实施例很好地适合于执行多种其它步骤或在此处的流程图中引用的步骤的改变,以及以与此处描述和说明的不同的顺序执行。该具体实施方式的一些部分按照程序、步骤、逻辑块、处理、以及对计算机存储器中的数据位的操作的其它符号表示来呈现。这些描述和表示是数据处理领域技术人员向该领域其他技术人员有效传达工作实质内容使用的方法。将程序、计算机执行的步骤、逻辑块、过程等一般设想为首尾一致的步骤或指令序列,以产生期望的结果。这些步骤需要物理量的物理操控。通常,并不是完全必须的,这些量以电信号或磁信号的形式存在,可以被存储、转移、合并和比较,否则将在电脑系统中被操控。有时候这种方法被证明是行之有效的,主要出于常见用法的考虑,将这些信号作为比特位、数值、元素、符号、字符、术语、或数字等等。然而,应牢记,所有这些和类似术语与适当物理量相关联,且仅为应用于这些量的方便标签。除非确切地陈述为从以下论述显而易见,否则应了解,利用例如“访问”、“编写”、“包含”、“存储”、“传输”、“遍历”、“关联”、“标识”等术语的论述是指操控表示为系统的寄存器和存储器内的物理(电子)量的数据并将这些数据变换为类似地表示为系统存储器或寄存器或其它此类信息储存、传输或显示设备内的物理量的其它数据的计算机处理器、网络设备或其它电子计算设备的动作和进程。卸载数据分析应用中的概率计算随着存储操作成本越来越低,在存储设备侧执行的大规模计算(而不是将数据提取到计算节点的内存中以执行计算)变得更加可行。在存储设备侧执行概率计算可减少或消除将原始数据从一个或多个文件服务器传送到计算节点以进行处理时所需的网络使用、NAS侧CPU利用、内存使用和NIC使用。本文公开了一种使用修改后的应用API在分布式节点处计算概率计算的方法论。为了对大的整数集执行概率计算,例如,原始数据需要能够以一种适用于查询数据分析的形式来表示。一个示例查询会尝试确定最前面的最频繁的k个元素。然而,维护数百万个整数的状态信息将需要大量内存。而近似数据结构可用于分析。Count-min是用于计算存储在数据集中的最前面k个元素的概率数据结构的示例。注意的是,可能需要多个哈希来存储数据集状态并实现数据集状态的查询。结果经常由元素的数量和数据集中的不同元素控制。类似地,概率数据结构的另一示例是布隆过滤器。布隆过滤器通过位集合使用若干独立的哈希函数来跟踪项目状态。一个示例应用用例是在受欢迎的社交网站中使用的推荐引擎,其中使用布隆过滤来排除一些候选项。此处描述了使用轻量级虚拟化进行数据集的概率计算。在一种方法中,通过分布式文件系统协议传送查询,并在预先配置的专用于执行概率计算算法的虚拟机(virtualma本文档来自技高网
...
卸载数据分析应用中的概率计算

【技术保护点】
一种用于将概率计算卸载到存储设备的装置,其特征在于,所述装置包括:应用服务器,所述应用服务器包括存储器和处理器并且耦合到网络附加存储设备,所述网络附加存储设备用于基于数据请求响应虚拟机容器的程序调用而创建专用进程,其中,所述处理器将所述数据请求转发给所述网络附加存储设备,对一个或多个虚拟机进行编程以基于所述程序调用执行概率计算,并将所述概率计算指示给所述一个或多个虚拟机中的第一虚拟机,所述程序调用使用虚拟化查找调用生成。

【技术特征摘要】
【国外来华专利技术】2015.08.07 US 14/821,3201.一种用于将概率计算卸载到存储设备的装置,其特征在于,所述装置包括:应用服务器,所述应用服务器包括存储器和处理器并且耦合到网络附加存储设备,所述网络附加存储设备用于基于数据请求响应虚拟机容器的程序调用而创建专用进程,其中,所述处理器将所述数据请求转发给所述网络附加存储设备,对一个或多个虚拟机进行编程以基于所述程序调用执行概率计算,并将所述概率计算指示给所述一个或多个虚拟机中的第一虚拟机,所述程序调用使用虚拟化查找调用生成。2.根据权利要求1所述的装置,其特征在于,所述处理器注册用户程序的进程标识符以在所述用户程序与所述网络附加存储设备之间建立通信信道。3.根据权利要求1所述的装置,其特征在于,所述处理器使用模板改变所述一个或多个虚拟机的一个或多个存储容器的行为。4.根据权利要求1所述的装置,其特征在于,至少一个所述虚拟机用于执行概率算法。5.根据权利要求1所述的装置,其特征在于,至少一个所述虚拟机执行重对数计算操作。6.根据权利要求1所述的装置,其特征在于,至少一个所述虚拟机执行成员资格测试。7.根据权利要求1所述的装置,其特征在于,至少一个所述虚拟机执行布隆过滤运算。8.一种在计算机存储系统中将概率计算卸载到存储设备的方法,其特征在于,所述方法包括:使用用户级应用将进程标识符注册到处理器以与所述处理器建立通信信道;使用虚拟化查找调用将数据请求转变为修改后的调用;使用虚拟化NFS程序调用和所述通信信道将所述修改后的调用转发给所述用户级应用;在所述处理器的内核地址空间与用户地址空间之间创建进程间通信信道;以及使用所述进程间通信信道将NFS调用转发给虚拟机以执行所述概率计算。9....

【专利技术属性】
技术研发人员:维尼特·查德哈戈皮纳斯·帕拉尼施广宇
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:广东,44

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

1