首页> 中国专利> 用于在文本数据流中包括的项目之中标识具有最高出现频率的项目的方法和设备

用于在文本数据流中包括的项目之中标识具有最高出现频率的项目的方法和设备

摘要

本发明涉及用于在文本数据流中包括的项目之中标识具有最高出现频率的项目的方法和设备。具体地,涉及有效地在大量文本数据流中包括的项目之中标识具有最高出现频率的项目的方法、设备和计算机程序。将标识项目的标识信息和项目的计数存储在存储器的较高级中,以及仅将标识信息存储在低于存储器的较高级的存储器的较低级中。接收文本数据流输入,响应于将从所接收的文本数据流输入划分出的桶中包括的项目的标识信息存储在存储器的较高级中,增加项目的计数的增量,响应于存储在存储器的较低级中,向存储器的较高级传送项目的标识信息以及初始计数,响应于没有存储在任何级中,将项目的标识信息以及初始计数新存储在存储器的较高级中。

著录项

  • 公开/公告号CN103377147A

    专利类型发明专利

  • 公开/公告日2013-10-30

    原文格式PDF

  • 申请/专利权人 国际商业机器公司;

    申请/专利号CN201310132171.5

  • 发明设计人 R·H·鲁迪;小柳光生;恐神贵行;

    申请日2013-04-16

  • 分类号G06F12/08;

  • 代理机构北京市金杜律师事务所;

  • 代理人酆迅

  • 地址 美国纽约阿芒克

  • 入库时间 2024-02-19 20:48:02

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2023-03-24

    未缴年费专利权终止 IPC(主分类):G06F17/18 专利号:ZL2013101321715 申请日:20130416 授权公告日:20160330

    专利权的终止

  • 2016-03-30

    授权

    授权

  • 2013-11-27

    实质审查的生效 IPC(主分类):G06F12/08 申请日:20130416

    实质审查的生效

  • 2013-10-30

    公开

    公开

说明书

技术领域

本发明涉及用于有效地在文本数据流中包括的项目之中标识具有最高出现频率的项目的方法、设备和计算机程序。 

背景技术

当要适当地标识连续输入的项目的文本数据流中包括的项目的出现频率时,通常需要计数和存储每个项目出现的次数。因此,所需要的存储器容量是非常巨大的。一种用于改善存储器效率的众所周知的算法是损耗计数(LC),这是一种近似计算方法,其中,存储器被划分为两个级,一个用于具有高出现频率的项目,而一个用于所有其他项目(参见非专利文献1-3)。 

同时,在专利文献1-3中,公开了这样的示例,其中LC用于根据包括在数据流中的项目的出现频率,而将存储器划分为两个级,并且通过根据计数排除出现频率低于预定值的项目而减少存储器使用。通过提供具有多个级的存储器结构,当要标识具有高出现频率的项目时,可以有效地使用存储器。 

引用列表 

专利文献 

专利文献1日本专利公开号2004-240985 

专利文献2日本专利公开号2008-159047 

专利文献3日本专利公开号2004-164611 

非专利文献 

非专利文献1 

G.S.Manku,Rajeev Motwani,“Approximate frequency counts over  data streams”,VLDB2002. 

非专利文献2 

Rong等人,“Mnemonic lossy counting:an efficient and accurate heavy-hitters identification algorithm”,IPCCC2010. 

非专利文献3 

Dimitropoulos等人,“Probabilistic lossy counting:an efficient algorithm for finding heavy hitter”,ACM SIGCOMM2008. 

发明内容

技术问题 

然而,当使用LC技术时,存储器使用相对于项目的数据长度呈对数级增长。因此,当数据流中的数据量巨大并且具有高出现频率的项目的数目也很巨大时,由于例如存储器容量不足,使用这一技术可能无法高精度地标识具有高出现频率的项目。而且,考虑到LC技术仅可以将存储器划分为两个级,其无法完全开发具有不同的存储器容量和访问时间的多级高速缓存存储器。因此,当使用目前计算机系统中普遍的多级高速缓存存储器时,无法通过LC技术有效地计算出现频率,因此无法完全开发出多级高速缓存存储器的性能。 

鉴于这种情形,本发明的一个目的是提供一种能够有效地标识在大量的文本数据流中包括的项目之中具有最高出现频率的项目的方法、设备和计算机程序。 

问题的解决方案 

为了实现本发明的这一目的,本发明的第一方面是用于使用具有多级存储器的计算机系统、来标识在文本数据流中包括的项目之中具有最高出现频率的项目的方法,其中,该计算机系统包括:将用于标识项目的标识信息和项目的计数存储在具有多个级的存储器中的存储器的较高级中,并且仅将标识信息存储在具有多个级的存储器中低于存储器的较高级的存储器的较低级中,并且其中,该方法包括步骤:接收文本数据流输入,并且响应于将从所接收的文本 数据流输入划分出的桶中包括的项目的标识信息存储在存储器的较高级中,增加项目的计数的增量,响应于存储在存储器的较低级中,向存储器的较高级传送该项目的标识信息以及初始计数,以及响应于没有存储在任何级中,将该项目的标识信息以及初始计数新存储在存储器的较高级中。 

本发明的第二方面根据本发明的第一方面的方法,其中,计数错误与标识信息相关联,并且存储在存储器的较高级中,并且,其中该方法还包括步骤:基于存储器的较高级中存储的计数和错误,计算针对与存储在存储器的较高级中的标识信息相对应的每个项目的、每桶的计数;以及,响应于所计算的每桶的计数小于第一阈值,向存储器的较低级传送项目的标识信息。 

本发明的第三方面是根据本发明的第二方面的方法,其中,第一阈值是桶数目,并且桶数目是项目的出现频率的当前计数。 

本发明的第四方面是根据本发明的第一到第三方面中任意一个的方法,其中,该方法还包括步骤:响应于项目的计数小于第二阈值,从存储器的较高级以及从存储器的较低级移除项目的标识信息。 

本发明的第五方面是根据本发明的第一到第四方面中任意一个的方法,其中,存储器的较高级是具有多个级的存储器中的存储器的最高级。 

为了实现本发明的这一目的,本发明的第六方面是用于使用具有多级存储器的计算机系统来标识在文本数据流中包括的项目之中具有最高出现频率的项目的设备,其中,该计算机系统包括:具有多个级的存储器,以及数据结构,用于将用于标识项目的标识信息和项目的计数存储在具有多个级的存储器中的存储器的较高级中,以及仅将标识信息存储在具有多个级的存储器中低于存储器的较高级的存储器的较低级中;并且,其中该设备包括:输入接收装置,用于接收文本数据流输入,以及,存储存储器控制装置,用于响应于将从所接收的文本数据流输入划分出的桶中包括的项目的标识信息存储在存储器的较高级中,增加项目的计数的增量,用于响应于 存储在存储器的较低级中,向存储器的较高级传送该项目的标识信息以及初始计数,并且用于响应于没有存储在任何级中,将该项目的标识信息以及初始计数新存储在存储器的较高级中。 

本发明的第七方面是根据本发明的第六方面的设备,其中,计数错误与标识信息相关联,并且存储在存储器的较高级中,并且,其中该设备还包括:计算装置,用于基于存储器的较高级中存储的计数和错误,计算针对与存储在存储器的较高级中的标识信息相对应的每个项目的每桶计数;以及,存储器间传送装置,用于响应于所计算的每桶计数小于第一阈值,向存储器的较低级传送项目的标识信息。 

本发明的第八方面是根据本发明的第七方面的设备,其中,第一阈值是桶数目,并且桶数目是项目的出现频率的当前计数。 

本发明的第九方面是根据本发明的第六到第八方面中任意一个的设备,其中,该设备还包括移除装置,用于响应于项目的计数小于第二阈值,从存储器的较高级以及从存储器的较低级移除项目的标识信息。 

本发明的第十方面是根据本发明的第六到第九方面中任意一个的设备,其中,存储器的较高级是具有多个级的存储器中的存储器的最高级。 

为了实现本发明的目的,本发明的第十一方面是用于标识在文本数据里中包括的项目之中具有高出现频率的项目的设备可执行的计算机程序,其中,该设备包括:具有多个级的存储器,以及将用于标识项目的标识信息和项目的计数存储在具有多个级的存储器中的存储器的较高级中,以及仅将标识信息存储在具有多个级的存储器中低于存储器的较高级的存储器的较低级中的数据结构;以及,其中计算机程序在设备中执行以下功能:输入接收装置,用于接收文本数据流输入,以及,存储存储器控制装置,用于响应于将从所接收的文本数据流输入划分出的桶中包括的项目的标识信息存储在存储器的较高级中,增加项目的计数的增量,用于响应于存储在存 储器的较低级中,向存储器的较高级传送该项目的标识信息以及初始计数,并且用于响应于没有存储在任何级中,将该项目的标识信息以及初始计数新存储在存储器的较高级中。 

本发明的第十二方面是根据本发明的第十一方面的方法,其中,计数错误与标识信息相关联,并且存储在存储器的较高级中,并且,其中计算机程序在设备中执行以下功能:计算装置,用于基于存储器的较高级中存储的计数和错误,计算针对与存储在存储器的较高级中的标识信息相对应的每个项目的每桶计数;以及,存储器间传送装置,用于响应于所计算的每桶计数小于第一阈值,向存储器的较低级传送项目的标识信息。 

本发明的第十三方面是根据本发明的第十二方面的方法,其中,第一阈值是桶数目,并且桶数目是项目的出现频率的当前计数。 

本发明的第十四方面是根据本发明的第十一到第十三方面中任意一个的计算机程序,其中,该设备充当移除装置,用于响应于项目的计数小于第二阈值,从存储器的较高级以及从存储器的较低级移除项目的标识信息。 

本发明的第十五方面是根据本发明的第十一到第十四方面中任意一个的设备,其中,存储器的较高级是具有多个级的存储器中的存储器的最高级。 

本发明的效果 

在本发明中,其数据无法全部存储在存储器中的大量文本数据流被划分为预定大小的桶,对每个所划分的桶中包括的项目的出现进行连续地计数,并且仅存储具有低出现频率的项目的标识信息。以这种方式,可以精确地标识具有高出现频率的项目,并且可以大幅地减少整体存储器使用。 

附图说明

图1是示意性地示出本发明的实施方式中的出现项目计数设备 的配置的框图。 

图2是示出本发明的实施方式中的出现项目计数设备中的存储器的配置的框图。 

图3是本发明的实施方式中的出现项目计数设备的功能框图。 

图4是示出本发明的实施方式中由出现项目计数设备的CPU执行的项目存储处理的步骤的流程图。 

图5是本发明的实施方式中的出现项目计数设备的存储存储器控制单元的功能框图。 

图6是示出用于确定是否已经将项目从最高级存储器传送至较低级存储器的过程的示图。 

图7是示出本发明的实施方式中由出现项目计数设备的存储存储器控制单元执行的存储器间传送处理的步骤的流程图。 

具体实施方式

参考本发明的实施方式中的出现项目计数设备的附图详细描述了以下内容,该出现项目计数设备能够标识在文本数据流中包括的项目之中具有高出现频率的项目。本实施方式不限于权利要求的范围中的本发明,并且在本发明的技术解决方案中并不需要实施方式中描述的特征的所有组合。 

而且,本发明可以以多种不同的方式实现,并且不应当解释为限于实施方式的描述。在本实施方式中,相同的元件被指派了相同的参考符号。 

在本实施方式的解释中,设备用于向接收机系统引入接收机程序。然而,本领域技术人员应当清楚的是,本发明还可以部分地实现为可以由计算机执行的计算机程序。因此,本发明的实施方式中的出现项目计数设备,可以实现为硬件、软件或者硬件和软件二者的结合,该出现项目计数设备能够标识文本数据流中包括的项目之中具有高出现频率的项目。计算机程序可以记录在任何计算机可读记录介质上,诸如硬盘、DVD、CD、光存储设备或者磁存储设备。 

在本发明的实施方式中,其数据无法全部存储在存储器中的大量文本数据流被划分为预定大小的桶,对每个所划分的桶中包括的项目的出现进行连续地计数,并且仅存储具有低出现频率的项目的标识信息。以这种方式,可以精确地标识具有高出现频率的项目,并且可以大幅地减少整体存储器使用。 

图1是示意性地示出本发明的实施方式中的出现项目计数设备的配置的框图。本发明的实施方式中的出现项目计数设备1至少包括中央处理单元(CPU)11、存储器12、存储设备13、I/O接口14、视频接口15、便携式盘驱动器16、通信接口17以及用于连接这些硬件元件的内部总线18。 

CPU11经由内部总线18连接至上述出现项目计数设备1的硬件元件,以控制这些硬件元件的操作,并且根据存储在存储设备13中的计算机程序100来执行各种软件功能。存储器12由诸如SRAM或者SERAM的易失性存储器来配置。在计算机程序100的执行期间,负载模块在存储器中扩展,并且由计算机程序的执行而生成的临时数据存储在存储器中。 

在本实施方式中,存储器12具有多级存储器结构。至少,该存储器具有2级存储器结构。图2是示出本发明的实施方式中的出现项目计数设备1中的存储器12的配置的框图。 

如图2所示,存储器12包括存储器的最高级H和多个存储器的较低级M1,M2,...,Mb(其中,b是自然数)。标识从数据流读取的项目的标识信息h、项目计数(出现次数的累积值)fh以及计数错误Δh存储在存储器的最高级H中。如下文所述,基于项目计数fh和计数错误Δh,项目存储在存储器的最高级H或者存储器的较低级M1,M2等中。 

仅用于标识项目的标识信息h存储在存储器的较低级M1、M2等中。以这种方式,可以大量减少用于从文本数据流读取项目以及用于对项目进行计数的存储器使用。 

在存储器的每个较低级M1、M2等上的存储取决于项目计数fh和计数错误Δh。换言之,使用参数θ根据(公式1)来确定存储器的每个 较低级M1、M2等上的存储,该参数θ用于调节传送至存储器的较低级M1、M2等的项目的数目。 

(b-1)θ<fhh≤bθ...(公式1) 

在(公式1)中,fh是标识信息h的项目计数,Δh是计数错误,并且根据出现频率来确定到存储器的各个级的存储。 

返回图1,存储设备13包括内置固定存储设备(硬盘)和ROM。将存储在存储设备13中的计算机程序100从便携式存储介质90(诸如DVD或者CD-ROM)下载到便携式盘驱动器16上,便携式存储介质已经存储了诸如程序和数据的信息。在执行期间,来自存储设备13的信息在存储器12中被扩展,并且被执行。计算机程序还可以从经由通信接口17连接的外部计算机下载。 

通信接口17连接至内部总线18,并且连接至外部网络(诸如互联网、LAN或者WAN),以便与外部计算机交换数据。 

I/O接口连接至输入设备(诸如键盘21和鼠标22),以便接收数据输入。视频接口15连接至显示设备23(诸如CRT显示器或者液晶显示器),并且根据出现频率以降序在显示设备23上显示项目的列表。 

图3是本发明的实施方式中的出现项目计数设备1的功能框图。在图3中,出现项目计数设备1的文本数据流输入接收单元301(输入接收装置)接收包括大量项目的文本数据流的输入。为了有效地对每个项目的出现次数进行计数,该流被划分为预定大小的桶,读取每个桶中包括的项目,并且对每个项目的出现次数进行计数。 

换言之,桶读取单元302将所接收的文本数据流划分为预定大小的桶,并且读取包括在每个桶中的项目。项目计数单元303对已经读取的每个项目的出现次数进行计数。 

存储存储器控制单元(存储存储器控制装置)304控制存储器的存储格式,以使得已经从文本数据流读取的项目的标识信息h存储在存储器的最高级H或者存储器的较低级M1、M2等中。换言之,当已经读取的项目的标识信息h已经存储在储器的最高级H中时,认为该项目已经被识别为具有高出现频率的项目,或者被识别为最近出现的项目。因 此,更新存储器的最高级H,以使得与存储在存储器的最高级H中的项目的标识信息h相关联的计数fh增加一个增量“1”。 

同时,当已经读取的项目的标识信息h已经存储在存储器的较低级M1、M2等中时,将该项目标识为存储在存储器的较低级中,从所标识的存储器的较低级中移除该项目的标识信息h,设置初始计数“1”,并且将该项目的标识信息h与初始计数“1”一起传送至存储器的最高级H。 

在这种情况下,基于信息已经被存储在存储器的哪个较低级中来计算计数错误Δh。换言之,当已经读取的项目的标识信息已经存储在存储器的第b较低层Mb中时,根据(公式2)来计算计数错误Δh。 

Δh=(b-1/2)θ...(公式2) 

因此,具有如(公式3)所示的数据结构的项目存储在存储器的最高级H中。 

H←(h,1,(b-1/2)θ)...(公式3) 

而且,当已经读取的项目的标识信息h没有存储在存储器的最高级H或者存储器的较低级M1、M2等中的任何一个中时,也即,当项目是第一次出现的项目时,将该项目的标识信息与初始计数值“1”和计数错误“0”一起新存储到存储器的最高级H中。 

图4是示出本发明的实施方式中由出现项目计数设备1的CPU11执行的项目存储处理的步骤的流程图。在图4中,出现项目计数设备1的CPU11接收包括大量项目的文本数据流输入(步骤S401)。为了有效地对每个项目的出现次数进行计数,将该流划分为预定大小的桶,并且对每个桶中项目的出现次数进行计数(步骤S402)。 

CPU11确定已经读取的项目(更准确地,标识信息h,但是这被缩写为“项目”)是否已经存储在存储器的最高级H中(步骤S403)。当CPU11确定该项目存储在存储器的最高级H中时(步骤S403:是),CPU11将与存储在存储器的最高级H中的项目相关联的计数fh增加单个增量“1”(步骤S404)。 

当CPU11确定项目没有存储在存储器的最高级H中时(步骤S403:否),CPU11确定已经读取的项目是否存储在存储器的较低级M1、 M2等中(步骤S405)。当CPU11确定项目存储在存储器的较低级M1、M2等中时(步骤S405:是),CPU11标识存储器的哪个较低级M1、M2等包含已经读取的项目(步骤S406)。 

CPU11基于所标识的存储器的较低级来计算计数错误Δh(步骤S407),并且将计算出的计算错误Δh、项目的标识信息h和存储器的最高级H中的初始计数“1”存储为与项目相关的数据集(步骤S408)。CPU11继而从存储器的较低级M1、M2等中移除该项目(步骤S409)。 

当CPU11确定项目没有存储在存储器的较低级M1、M2等中的任何一个中时(步骤S405:否),将该项目与初始计数“1”一起新存储在存储器的最高级H中(步骤S410)。 

由此,即使在存储器具有多个级时,也可以精确地计数文本数据流中包含的项目的出现次数。仅在项目的标识信息h存储在存储器的较低级M1、M2等中时,才可以响应于信息存储在存储器的哪个级中而容易地估计计数fh。 

在重复这一处理时,存储器的最高级H中的项目的数目增加。当已经处理了固定数目的项目时,必须将具有小出现次数的项目传送至存储器的较低级M1、M2等。图5是本发明的实施方式中的出现项目计数设备1的存储存储器控制单元304的功能框图。在图5中,出现项目计数设备1的存储存储器控制单元304包括每桶计数计算单元501(计算装置)、目的存储器指定单元502和存储器间传送单元532(存储器间传送装置)。 

每桶计数计算单元501读取存储在存储器的最高级H中的项目的标识信息h,并且基于存储在其中的相关联的计数fh和计数错误Δh,来计算每桶计数。更具体地,其读取项目的所存储数据集(h,fh,Δh)。 

接下来,根据(公式4)来计算每桶计数b。在(公式4)中,可以使用参数θ来调节传送至存储器的较低级M1、M2等的项目的数目。 

b=(fhh)/θ...(公式4) 

目的存储器指定单元502确定所计算的每桶计数是否小于第一阈值,并且在小于的情况下,指定将项目传送至存储器的较低级。换言之, 基于所计算的每桶计数b来确定存储器的哪个较低级M1、M2等。仅将项目的标识信息存储在存储器的较低级M1、M2等中。然而,通过基于每桶计数b来指定哪个级,可以基于存储信息的存储器的级来估计项目的出现频率。 

存储在存储器的较低级Mb中的项目计数fh可以大于(b-1)θ,并且小于或者等于(公式1)所示的bθ。因此,可以使用存储在存储器的最高级H中的项目的每桶计数b来唯一地指定存储器的目的较低级。 

存储器间传送单元503将项目的标识信息h存储在存储器的指定较低级中,并且从存储器的最高级H中移除该项目的标识信息h。以这种方式,将项目传送至存储器的较低级中。 

图6是示出用于确定是否已经将项目从最高级存储器H传送至较低级存储器M1、M2等的过程的示图。在图6中,当前的桶数目bcurr是“500”,每个桶的长度是“1000”,并且θ是“20”。此处,处理了500,000(=500×1000)个项目,直到已经读取了当前桶中的项目,并且已经对每个项目的出现次数进行了计数。 

首先,针对存储在存储器的最高级H中的每个项目来计算计数fh和错误Δh的总和。在图6(a)中,(fhh)是“1000”,所以每桶计数b是“50”(=1000/20)。 

当项目的每桶计数等于或者大于当前桶数目bcurr时,认为出现频率是高的。一旦建立,则确定项目的每桶计数b小、于当前桶数目bcurr,以及是否将该项目传送至存储器的较低级M1、M2等。换言之,当每桶计数b等于或者大于当前桶数目bcurr时,认为项目具有高的出现频率,并且将项目的标识信息存储在存储器的最高级H中。当每桶计数b小于当前桶数目bcurr时,认为项目具有低的出现频率,并且将项目的标识信息存储在存储器的较低级M1、M2等中。 

在图6(a)中,所计算的每桶计数b是“50”,小于当前桶数目bcurr(=500)。因此,认为该项目具有低的出现频率,并且将该项目的标识信息h传送至存储器的较低级M1、M2等。在图6(b)中,(fhh)是“100,000”,所以所计算的每桶计数b是“5000”(=100,000/20),大于当前 桶数目bcurr(=500)。因此,认为该项目具有高的出现频率,并且将该项目的标识信息h仍然存储在存储器的最高级H中。 

图7是示出本发明的实施方式中由出现项目计数设备1的存储存储器控制单元304执行的存储器间传送处理的步骤的流程图。在图7中,出现项目计数设备1中的CPU11将用于对所处理的项目的数目进行计数的计数器设置为初始值“1”(步骤S701),并且执行图4所示的处理(步骤S702)。继而,CPU11确定计数器是否等于或者大于第一阈值(步骤S703)。基于第一阈值的大小来确定用于要被存储在存储器的较低级中的项目的存储容量。 

当CPU11确定计数器小于第一阈值时(步骤S703:否),则CPU11将计数器增加单个增量“1”(步骤S704),过程返回至步骤S702,并且重复上述过程。当CPU11确定计数器等于或者大于第一阈值时(步骤S703:是),CPU11读取存储在存储器的最高级H中的项目(步骤S705)。更具体地,读取存储项目的存储数据集(h,fh,Δh)。 

CPU11基于与项目(更准确地,标识信息h,但是被缩写为“项目”,诸如图4)相关联的存储的计数fh和计数错误Δh,根据(公式4)来计算每桶计数器b(步骤S706)。CPU11继而确定所计算的每桶计数b是否小于当前桶数目bcurr(步骤S707)。当CPU11确定了所计算的每桶计数b小于当前桶数目bcurr时(步骤S707:是),CPU11确定要将该项目存储在存储器的较低级M1、M2等中(步骤S708),并且从存储器的最高级H中移除该项目的存储数据集(h,fh,Δh)(步骤S709)。 

当CPU11确定了所计算的每桶计数b等于或者大于当前桶数目bcurr时(步骤S707:否),CPU11跳过步骤S708和步骤S709的处理,并且确定是否已经读取了存储在存储器的最高级H中的所有项目(步骤S710)。 

当CPU11确定了仍然存在未读取的项目时(步骤S710:否),CPU11读取存储器的最高级中的下一项目(步骤S711),将过程返回至步骤S706,并且重复上述处理。当CPU11确定了已经读取了所有项目时(步骤S710:是),CPU11结束该过程。 

通过基于在计数所处理的项目的数目时预定时间间隔的出现频率,将存储在存储器的最高级M中的项目传送至存储器的较低级M1、M2等,可以将存储在存储器的最高级H中的项目的数目保持为低于固定数目,并且可以大幅地减少存储器使用。 

当出现次数小于预定次数时,认为存储项目是没有意义的。当(fhh)/θ小于第二阈值(例如,当前桶数目bcurr1/4)时,可以将项目的标识信息h从存储器的最高级H和存储器的较低级M1、M2等中都移除。因为即使可以释放更多的存储器空间,也无需存储不需要的项目的标识信息。 

在上述实施方式中,其数据无法全部存储在存储器中的大量文本数据流被划分为预定大小的桶,对每个所划分的桶中包括的项目的出现进行连续地计数,并且仅存储具有低出现频率的项目的标识信息。以这种方式,可以精确地标识具有高出现频率的项目,并且可以大幅地减少整体存储器使用。 

本发明不限于包括存储器的最高级H和存储器的较低级M1、M2等的两级存储器结构。例如,可以将具有非常低的出现次数的项目存储在存储器的最低级中,而不是将其删除。优选地,存储器的最高级H是具有哈希映射结构的存储器,以支持相对高速的访问,并且存储器的较低级M1、M2等是具有双阵列结构的存储器。这使得能够增加整体访问速度。存储器的最低级可以是诸如LOUDS的具有树结构的存储器。以这种方式,存储器的最低级不会导致与访问速度相关的任何问题。 

本发明不限于这些实施方式。在本发明的范围内,多种变体和改进都是可能的。例如,在上述实施方式中,用于标识项目的标识信息和项目计数存储在存储器的最高级中。然而,如果具有多个级的存储器结构可以区分较高级和较低级,则不需要将它们存储在存储器的最高级中。 

参考标记列表 

1:出现项目计数设备 

11:CPU 

12:存储器 

13:存储设备 

14:I/O接口 

15:视频接口 

16:便携式盘驱动器 

17:通信接口 

18:内部总线 

90:便携式存储介质 

100:计算机程序 

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号