CN1938702A - 计算机化***中的数据处理 - Google Patents
计算机化***中的数据处理 Download PDFInfo
- Publication number
- CN1938702A CN1938702A CNA2005800100441A CN200580010044A CN1938702A CN 1938702 A CN1938702 A CN 1938702A CN A2005800100441 A CNA2005800100441 A CN A2005800100441A CN 200580010044 A CN200580010044 A CN 200580010044A CN 1938702 A CN1938702 A CN 1938702A
- Authority
- CN
- China
- Prior art keywords
- data
- verification
- frequent
- information
- mode
- 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.)
- Pending
Links
Images
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/2465—Query processing support for facilitating data mining operations in structured databases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3466—Performance evaluation by tracing or monitoring
- G06F11/3476—Data logging
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Probability & Statistics with Applications (AREA)
- Mathematical Physics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Fuzzy Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
在计算机化***中,提供了一种来自数据模式的频繁模式。然后为所述频繁模式分配第一校验和。基于有关所述第一校验和的信息,以及有关在所述数据中所述频繁模式的出现的信息,计算对于在数据中所述频繁模式的出现的第二校验和。
Description
技术领域
本发明大体上涉及计算机化***,并且具体涉及在计算机化***中提供的数据处理。在计算机化***中,为了例如搜索和其它数据挖掘操作,以及/或者存储数据等目的,可能需要处理大量数据。
背景技术
计算机化***是众所周知的。一般来说,计算机化***可以由任何能够实施自动数据处理的***实现。例如,计算机化***可以由独立的计算机来实现,或者可以由计算机或与网络相关联的其它数据处理节点和设备(例如,服务器、路由器和网关)的网络来实现。计算机化***也可以由具有数据处理能力的任何其他设备或者***来实现。因此,计算机化***更进一步的例子包括通信网络或者任何其他***的控制器和其他节点、用户设备,例如,移动电话、个人数据助手、游戏站、健康监控设备等等。此外,通信网络,例如诸如因特网或者公共电话网络的开放数据网络,或者诸如局域网封闭网络,也都是计算机化***。
通常,计算机化***产生可能经分析或处理了的各种信息。所述信息针对不同的目的被处理,例如,为了分析计算机化***的运行状况,或者为了记入***的使用,等等。可能也需要存储所述信息,以备未来使用或处理,例如,稍后进行分析或者监控。
在计算机化***的运行过程中所产生的信息的一个非常有说服力的例子就是日志数据。通常,日志数据文件描述***和/或其组件的行为,以及与所述***有关的相关事件。日志数据文件是用于计算机化***的监控和/或分析的重要信息,这是因为所述日志数据有助于了解在所述***中发生了什么事情或正在发生什么。日志文件的使用者例如包括***维护人员、软件开发人员、安全人员,等等。
计算机化***在不断发展。通过计算机化***(例如计算机通信网络)所提供的服务和功能的数量和种类也在不断增加。所述计算机化***的节点的功能也变得越来越复杂。这直接导致了各种数据的数量的增加,例如日志数据、告警数据、测量数据、可扩展标记语言(XML)消息、XML标签结构的测量数据,等等。另外,开发出来了功能越来越强大的工具,以用于从所述计算机化***中采集信息,例如,从通信网络的节点或多个节点,或者从用户设备采集信息。
所采集到的日志数据或其它用于分析的数据的量可能过大,以致于现有的分析工具无法对其进行有效地处理。因此,计算机化***复杂度的增加以及所采集的数据数量的增加,为数据存储或归档***带来了实质上的挑战。
所述挑战的一个例子涉及到存储空间的有效使用。也就是说,应当尽可能有效地使用维护用户认为有必要的所有数据所需的存储空间。同时,应当简易地执行对适当数据的搜索和提取。
为了节省存储空间,典型地以压缩的形式存储日志数据文件和其他数据文件。可以通过适当的压缩算法(例如,适当的顺序压缩算法)来实现压缩过程。当需要查询文件或者需要进行对相关行的常规表达搜索时,需要在查询或者搜索之前,以某种方式对整个档案文件进行解压缩。这降低了搜索的速度,并且需要额外的处理,即解压缩。
对数据模式进行搜索是一种数据搜索的方法。数据模式可以定义为一组属性值或者符号。数据模式搜索可以包括,例如,搜索一组关于数据库行的属性值,或者一组日志条目类型。
在已经被公开的美国发明专利2002/0087935 A1中公开了一种在数据流中,寻找长度可变的数据模式的方法和设备。在所述公开的方法中,将增量校验和(incremental checksum)用于从数据流中寻找字符模式。为每一个字节计算校验和,使得为第一个字节计算第一校验和,然后为所述第一校验和以及第二个字节计算增量校验和,以此类推。然后,将所得结果与作为搜索主体的数据模式的校验和进行比较。但是,所述已公开的美国专利2002/0087935仅公开了针对顺序条目的校验和的计算,而不能用于带有多个值的条目。另外,所公开的方法只能用于搜索先前已知的模式。这可能不适合于所有应用,因为很有可能事先并不了解将要搜索的数据模式。
另一种搜索概念基于所谓的封闭集合。术语“封闭集合”指的是数据的频繁模式,该频繁模式并不包含任何出现频率相同的超数据模式,即所述“封闭集合”指的是闭包中的所有数据集合的并集。然而,应理解,封闭集合的某些子模式可能具有比所述封闭集合更高的出现频率。
可以将频繁模式理解为指代一种模式,该模式的出现频率高于或至少等于某出现频率门限。频繁模式可以由数据频繁集合或者频繁情节(frequent episode)组成。集合一般指的是一组属性值或者二进制属性。事务可以是一个或者多个数据库元组或者行的集合。例如,频繁集合可能是一组属性值,所述属性值频繁地一起出现在数据库行上或者事务中,达到了门限标准。术语“频率情节”一般指的是在事件流中一起出现的连续的事件类型。在上下文中,如果事件被包含于相同的类事务的事件单元中,则这些事件可以被理解为一起出现。所述类事务的事件单元可以是,例如,在由接连的事件组成的事件流中的相关事件或者视窗桶(bucket)。或者,频繁情节可以被看作是在事件流中出现的所谓的最小出现(minimalaccurrence)。频繁情节也可以由连续的总是一起出现的日志条目类型来提供。事件类型可以是,例如,原子符号或子句或者用参数表示的命题或断言。“事件类型”可以相当地简单,例如个别类型和/或者静态类型的日志消息,也可以相当地复杂,例如,带有多个不同参数的消息。
目前,已知各种用来从数据中寻找频繁模式闭包的技术。这些例子包括由Nicolas Pasquier等在论文“Effivicent mining of association rulesusing closed itemset lattices”(Information Systems,vol.24 No 1,1999,page 34)中提出的“Close”算法。“Close”算法及其变种维护了一个带有备选项集的项目清单,这些项目经常在一起出现。数据库扫描(即对整个数据库进行扫描)之后,所有一起出现的项目将被合并在一起,所合并的集合用于下一次数据库扫描,在下一次扫描中计算出对于所合并的集合的备选支持度(support)。这类方法的另外一个例子是称为“CLOSET”的搜索方法。
另外一种可能的方法是,维护出现备选的事务的数据库事务标识符(TID)反向列表。在每一次数据库遍历后,可能将所有备选集合与同样的反向TID列表合并在一起。于是,合并以后的备选集合可以为下一轮支持度计算而进行扩展。
上述搜索方法使用了列表或者集合。匹配所述列表或者集合的备选的数量容易变得很大。这就特别地需要复杂的计算机化***以及更好的数据采集工具。列表成员的更新或者检验也会花费很多时间并且/或者需要更强的数据处理能力。因此,这些方法的问题是维护和匹配所述列表(例如,相关项目列表或者事务标识符的列表)的效率。
发明内容
本发明的实施例旨在解决上述问题中的一个或者几个。
根据本发明的一个实施例,提供了一种用于在计算机化***中处理数据的方法。所述方法包括以下步骤:提供来自数据模式的频繁数据模式,为所述频繁数据模式分配第一校验和,检测在由计算机化***提供的数据中所述频繁数据模式的出现,以及基于有关第一校验和的信息与有关在所述数据中所述频繁数据模式的出现的信息,计算第二校验和。
根据本发明的另一个实施例,提供了一种用于计算机化***的处理器。所述处理器被配置为:提供来自数据模式的频繁模式,为所述频繁模式分配第一校验和,监控在数据中所述频繁模式的出现,以及基于有关第一校验和的信息与有关在所述数据中所述频繁模式的出现的信息,计算第二校验和。
在上述实施例的特定形式中,基于有关先前的校验和的信息以及有关频繁模式的出现的信息,对在所述数据中出现的频繁数据模式,迭代计算进一步的校验和。
所述本发明的实施例可以提供一种可行的解决方案,以优化数据挖掘,例如,加速对带有多个属性的大型数据集合的分析,并且/或者使其变得更容易处理。搜索结果可以被有效地利用在存储数据中。所述实施例可以产生有效的数据代表,于是所述数据代表可以用于数据搜索和存储。这不需要提前了解将被搜索数据的模式。某些实施例可以用于确保某些方法能够扩展到包括更多数据库字段的大型数据集合,所述方法例如可查询无损日志压缩(QLC;一种用于日志数据库表格的语义压缩的方法)和综合日志压缩(CLC;一种用于概括并压缩日志数据的方法)。在寻找关联和频繁情节中,某些实施例还能够提供在压缩空间中存储日志数据表格的优势。
附图说明
为了更好地理解本发明,现将通过例子参考以下附图进行描述,其中:
图1示出了数据库的一部分的例子;
图2示出了所述计算机化***的例子;
图3示出了流程图,用于阐述一个实施例的操作过程;
图4示出了流程图,用于阐述更具体的实施例的操作过程;
图5示出了数据集合的示意性例子;
图6示出了校验和计算实体的例子;以及
图7示出了另一数据集合的示意性例子;
具体实施方式
以下的非限定性例子将参考日志数据来进行描述,因此,图1示出了对于通信***单元的日志数据行或者元组10的例子。更具体地说,示例日志数据描述了对于使通信在此通过的防火墙的事件信息。应注意,尽管只显示了6行数据(第777行到第782行),但数据库可以包括大量的行,例如上百万行。
所显示的每一行10都包含许多数据字段或数据位置12到19。在实例中,所述数据位置用于存储信息,即位置12用于行的编号,位置13用于所述事件的日期信息,位置14用于所述数据的时间,位置15指示与所述行相关的服务,位置16指示所述信息的来源,位置17指示目的地址,位置18指示所使用的通信协议,位置19用于存储源端口信息。从图1显而易见,所述数据字段中的某些在某些行所包含的信息相同,相反,所述数据字段的某些信息内容则总是变化,甚至每一行都不同。
图2示意性地示出了包含至少一个数据存储设备2的计算机化***1。所述数据存储设备,例如,可以包括被配置为存储图1示出的示例日志数据的数据库。数据存储设备2可以包括多个记录3。
在此所描述的实施例中,在扫描数据库和计数对备选的支持度期间,可以在搜索对于所有备选的频繁模式期间,增量地计算校验和。图2中的所述计算机化***设置有数据处理器4,以增量地产生对于在扫描期间出现了备选的事务的位置标识集合的校验和。通常认为,如果备选里所包含的所有属性值或者二进制属性都出现在事务中,那么所述备选也出现在所述事务中。所述扫描可以仅在一个数据存储实体上进行,也可以在多个数据存储实体上进行。
计算备选的支持度可以与计算校验和并行进行。所述支持度可以定义为在所述数据库中,其中出现所述备选的事务的总和。或者,所述支持度可以定义为在所述数据库中,其中出现所述备选的事务的份额。技术人员已知所述支持度的各种计算处理,因此,不再解释。
数据处理器4可以被配置为记录备选的校验和,以及比较备选校验和与其他备选校验和,并且/或者比较备选校验和与先前所找到的频繁模式的校验和。数据处理器4可以将备选与另一备选合并。数据处理器4也可以将备选与先前所找到的频繁模式合并。可以进行所述合并以响应对匹配校验和的检测。如果所比较的备选正好出现在同一行中,那么认为所述校验和是匹配的。例如,如果校验和由出现备选的事务或者元组的事务标识符(TID)所决定,那么就是这样的。如果两个备选总是一起出现,即如果一个备选出现在事务中,另一个备选也可以被认为出现了,那么与这些备选相关的事务标识符的列表是相同的。因此,从所述事务标识符中计算的校验和是匹配的。
上述数据处理功能可以通过一个或者多个数据处理器实体来实现。当将计算机程序代码产品加载到计算机,例如,用以进行计算和搜索、匹配及合并操作时,可以利用适当改写的所述计算机程序代码产品来实现所述实施例。所述程序代码可以通过例如可携带磁盘、卡或者磁带的可携带介质来存储和提供。还可能通过数据网络来下载所述程序代码产品。
在计算机化***1中,可以采用唯一数据位置信息来标识数据。原则上,任何能够唯一地标识特定数据集合的位置的信息都可以被用作所述数据位置的唯一标识符。可能的唯一数据位置信息的例子包括事务标识符(TID)、行和/或字段的数目、时间戳、单键,等等。例如,所述位置可以被表示为出现备选集合的元组的事务标识符。如果可以保证每一个数据条目都包含不同的时间戳,那么在某些应用中可以使用时间戳。还可以通过至少一个事务字段值(值或者值的合并),或通过从以上所提到的标识符中的一个导出的标识符,来提供唯一标识符。例如,在计算出对于整个事务的校验和之后,可以基于时间戳或者其他标识符对事务进行分类。于是,所述对于整个事务的校验和可以被用作唯一标识符。
依照图3的流程图中示出的实施例,首先,在步骤30,进行搜索以识别频繁模式,例如,在数据行上的频繁数据项。随后,在步骤32,从所检测到的频繁模式中,选择频繁模式以作为备选集合。在步骤34,为所述频繁模式分配校验和。在步骤36,继续进行搜索,以寻找所述频繁模式的出现。在步骤38,基于步骤34的先前的校验和以及有关与所述频繁模式目前的出现相关联的身份信息,计算进一步的校验和。
在图3所示的实施例中,步骤36和步骤38被执行一次,以产生对于所述频繁模式的第二校验和。但是,对于计算有效的校验和,这可能并不总是足够的。
尽管可以计算对于一个频繁模式的校验和,但是,在优选实施例中,可以为在步骤30中找到所有频繁模式集合执行步骤32到38。因此,可以基于先前所计算的校验和信息以及最近所述频繁模式的出现的位置或者其他标识符,增量地计算校验和。在本上下文中,短语“频繁模式的出现”指的是出现在所述数据中的频繁模式的实例。在迭代的校验和计算中,可以对于在所述数据中频繁模式的每一次出现,迭代执行步骤36和38。在图3中,为了显示明了,没有显示出迭代运行步骤36和38的可能性。
在应用中,事务的顺序可能具有某些关联性,在所述应用中,将要比较不只一个数据库扫描。如果将要比较在不同数据库扫描期间产生的校验和链,那么需要固定开始点。
如果计算完毕后,任何备选集合的校验和都相同,那么可以认为这些备选属于同一频繁模式闭包。频繁模式闭包可以用属于所述闭包的一个模式,或者任何其他适当的唯一标识符来代替。例如,闭包可以通过属于所述闭包的模式来描述。
作为替代,即代表所述闭包中的所有元素,所选择的模式优选或者是生成元(generator)或者是封闭模式。所述生成元一般指的是属于所述频繁模式闭包的最小模式之一。所述封闭模式一般指的是在所述频繁模式闭包中的所有模式的并集,即,没有任何出现频率相同的超数据模式的频繁数据模式。
在以下的搜索算法的循环中,可以只需要扩展所述闭包的代表。
在搜索阶段,可能需要将每一个备选集合的校验和及所述备选集合都存储在存储器中。因此,可以避免存储与备选一起出现的项的列表,或者有备选的出现的事务标识符(TID)的列表。在执行搜索算法期间,可以只要需要访问校验和,就将其储存在例如主存储器中。在算法执行完毕以后,可以删除所述校验和。
图4示出了对可能封闭的模式进行带有增量校验和的计算的流程图。在步骤100中,将长度为1的项模式包含到一组备选中。然后在步骤102,为每一个备选模式,增量地计算校验和以及出现频率(或支持度)。在步骤104,删除所具有的支持度低于预定出现频率门限的备选。然后在步骤106,将校验和相同的模式合并在一起,并且在步骤108,产生适合的备选集合。在步骤110,检查步骤108是否产生了在步骤102没有为其计算校验和的新备选。如果产生了新备选,将进行另外一轮的迭代过程,并且在步骤102计算所有遗漏的校验和。
应注意,如果在随后的迭代过程中,所述算法在步骤102中更新了的出现频率以及校验和,并且在步骤104进行了删除,那么所述项模式也可以是非频繁的。
所述迭代循环的目标就是为了消除属于相同闭包的备选,并且为了保持闭包的单一代表性,从而删除(即丢弃)其他的。
如果检测到计算了所有所需的校验和,那么在步骤112可以进行判决,确定是否需要封闭集合,或者生成元是否足够。换句话说,在这个阶段选择:需要闭包的最大集合(封闭集合),还是需要闭包的最小集合(即,生成元)。在后一种情况下,步骤114输出生成元。如果需要封闭集合,那么在步骤116对所述生成元进行扩展,以形成封闭集合。随后,在步骤118,输出扩展了的封闭集合。换句话说,只有如果什么都不做,那么所述算法就在步骤114找到生成元,并输出所述生成元。如果需要封闭集合,那么可以通过所述闭包信息开放并且扩展所述生成元或者其他代表,以生成封闭集合。
如果忽略步骤110和步骤102之间的迭代循环,那么可以将图4示例的示意性流程图看作是产生代表或者封闭集合的单次处理。步骤106和112至118的输出产生步骤包括为频繁集合的每一个闭包选择代表的判定。还应当注意,封闭集合或者代表的产生可以在步骤110和102之间的每一次迭代期间执行。此外,步骤112至118并不是所述搜索算法本身必需的。关于封闭集合以及代表(例如生成元)的计算,可以包含在步骤102到步骤110之间的循环中。因此,通过步骤110和112之间的虚线,将步骤112到118图示为可从所述搜索算法中分离出来。
在步骤106中,可以有利地使用生成元,但是,可以从所述闭包内选出任何备选。因此,也可以选出最大备选,即封闭集合。也可以在所述虚线下方所示的输出生成步骤中,将所述闭包的生成元或者封闭集合选为代表,这取决于所述输出的使用。
应理解,对于代表,尽管一般认为数据的生成元集合以及数据的封闭集合是优选的选择,但原则上,可以将任何来自于闭包内的模式用作代表。也可能基于一组数据来生成标识符。例如,当向生成元添加来自所述闭包的项以后,可能选择所述生成元,因此,使得所述代表与所述生成元不同,但是仍具有与所述生成元类似的属性。还有可能用代表所述闭包的完全新的符号来取代所述闭包。因此,应理解,尽管在某些情况下,在步骤106中优选使用生成元,并且在所述输出生成步骤中优选使用生成元或者封闭集合,这取决于所计划的对所述结果的使用,但是原则上,选择所述闭包中哪一个模式作为代表无关紧要。
可以通过任何适合于搜索频繁模式的适当算法来提供频繁模式的搜索。这些算法包括比较事务ID(TID)的列表以识别相等的支持度(例如,有备选集合出现的元组的集合)的算法。所述搜索算法可以利用在所述数据库搜索过程之间的搜索空间缩减,所述搜索空间缩减是通过每一次循环后删除包含在闭包内的模式来提供的。因为通过用闭包的仅仅一个封闭代表来取代属于相同闭包的所有模式,减小了所述备选的数量,所以所述搜索空间逐渐缩减。
例如,如果有一如图5所示的数据集合,并且频繁模式的门限是2,则对于备选{a}的校验和sa可以如下:
第一个事务后:Sa,0=S(0,种子)
第二个事务后:Sa,1=S(1,Sa,0)
第三个事务后:Sa,2=S(2,Sa,1)以及
第四个事务后:Sa,3=Sa,2
其中,“种子”是用于所有备选的第一次出现的共用常量。
在第一次数据库扫描后,可能检测到,值a和b的校验和相等。因此,在开始第二次数据库扫描之前,可以将b与a合并为{ab}。然后,将所述值{ab}从第二次扫描中删除,仅频繁模式{a},{c}和{d}可能被扩展。可以这样做是由于这样的安全假设,即仅当a出现时b才出现。
在第二次数据库扫描,使用备选集合{{ac},{ad},{cd}}。这意味着按照上述方法,所有与b有关的备选都被删除,换句话说,没有使用备选{ab},{bc},{bd}。
完成对频繁模式的搜索后,可以将项b加入到所有包含a的频繁模式中。例如,如果所述搜索是为了找到闭包的封闭的或者最大的集合,那么这是所需的。
在图6中,示出了用于校验和计算的功能实体的例子。更详细地说,示出处理器4,以提供基于先前的校验和以及事务的信息来计算校验和的计算功能。
图6中的实线6示出了初始情况,其中i=0,即没有找到频繁模式的出现。虚线7示出找到了至少一次频繁模式的出现的情况,即i≥1。
在后一种情况下,反馈回路8被激活。也就是,经由回路8和混合器功能单元9,第i个频繁模式之前的校验和(i-1)被反馈到校验和计算功能单元4。因此,进入所述计算功能单元4的输入5包含唯一的位置信息,例如,第i个频繁模式的事务标识符和所述先前的校验和(i-1)。这样,每一个新校验和也都基于先前的校验和的值。
所述校验和计算功能单元可以加密。但是,决非必须加密。
尽管预期校验和冲突很少发生,但在某些应用中,可能需要考虑校验和冲突的可能性。在所述实施例中,可以使用具有充分降低校验和冲突的可能性的任何映射功能。图6中的计算功能单元4可以是一个散列函数,这个函数被定义为使得出现这样的情况的可能性几乎为0,所述情况为对于这些频繁模式的校验和相等,而有所述频繁模式出现的事务集合不同。
通过调查备选项集合实际上是否可以包含于闭包中,可以检测校验和冲突。也可以使用简单的校验和验证来排除冲突。例如,发现封闭集合后,可以将所找到的集合与实际数据进行比较,并且通过检查由所述封闭集合所表示的相关性实际上是否存在于所述数据库中,可以核实所述封闭集合的正确性。另一种降低校验和冲突可能性及其影响的方法是,使用不同的校验和算法和/或者不同的种子值,并行地为每一个备选同时计算两个或者多个校验和。即使校验和冲突可能发生在这些校验和中的一个中,但同时在其他校验和函数中也发生校验和冲突的可能性极小。例如,当对于两个备选,一个校验和对匹配而另外一个校验和对不匹配时,可以检测到校验和冲突。基于这样的假设,即只有两个频繁模式的出现频率相同时它们才可能处于同一闭包中,所述验证过程也可以基于,例如频繁模式以及其子模式的出现频率。如果所述两个频繁模式的校验和相等,而出现频率不相等,那么一定存在校验和冲突。
可以用于上述搜索以及校验和计算的适当算法的非限制性例子,可以基于所谓的“Apriori”算法。“Apriori”算法的描述已经由Agrawal等人在其论文“Fast discovery of Association Rule”中给出,该论文1996年发表于《Advances in Knowledge Discovery and data Mining》一书中的312页到314页。为了可以引入校验和计算,并且为了使所述算法能够充分利用搜索空间缩减,需要对Agrawal等人提出的“Apriori”算法进行修改。所修改的“Apriori”算法的例子如下:
1:L1=frequent 1-patterns
2:for(k=2;Lk-1≠φ;k++)do
3: Gk=apriori-gen(Lk-1); //新备选
4: for all transactions t∈D do
5: Ct=subset(Ck,t); //包含于t中的备选
6: for all candidates c∈Ct do
7: c.count++;
8: c.chksum=compute-chksum(t.ID,c.chksum);
9: end for
10: end for
11: Lk={c∈Ck|c.count≥minsup}
12: Lk=remove-closure-sets(∪i=1 k-1Li,Lk);
13: end for
14: Lk=expand-closed-sets(∪kLk);
15: return(L)
在上述例子中,D代表事务数据库ti∈D,其中i=0,...||D||,其中||D||是所述数据库的大小,并且“minsup”定义了对于被认为频繁的模式的模式出现次数的最小门限。
上述原则也可以用于,从已经被分成不相交的相关事件桶(bucket)的事件流搜索频繁序列的算法,所述序列可以是有序的,也可以是无序的。如果一个桶对应于一个数据库事务,那么可以认为具有类似的桶ID列表的频繁情节属于同一闭包。
基于搜索的校验和的另一种可能的应用是,搜索在不同数据库列之间的函数相关性(FD)。在此,参考图7解释所述应用的例子。如果变量A的所有值ai的事务标识符(TID)列表,与变量A和B的不同值对aibj的所有TID列表都相等,那么,存在函数相关性A到B。如果对于列A的所有值ai,存在仅一个列B的值bj,那么在数据库列A和列B之间保持函数相关性(A到B),使得ai和bj出现在相同事务中。可以通过首先为所有的值组合计算相应的增量校验和,然后为值组合校验和的列表计算相应的增量校验和,并且通过对它们进行比较,来发现这种类型的相关性。如果两组变量的值组合校验和相等,那么它们引入数据库的相似划分,并且在它们的某些项之间保持函数相关性。
例如,对于上述给定的数据集合,a、b和c的校验和分别是Sa,1、Sb,3和Sc,5。从所有S(Sa,1,Sb,3,Sc,5),计算得到的校验和,与所有对aibj(即S(Sax,1,Sbx,3,Scy,5))的校验和相等。因此,可以得出结论,存在函数相关性A到B。
在校验和计算过程中,可能以随机的顺序,而非固定的顺序,使用事务标识符。在这种情况下,可以仅需要比较在相同数据库搜索期间更新了出现频率以及校验和的备选。如果使用随机顺序,那么不能将在先前的数据库搜索期间更新了信息的备选,与最近一次数据库搜索的校验和进行比较。换句话说,如果在所有数据库搜索期间,事务的顺序都是固定且明确的,那么可以将在不同数据库搜索期间所计算的校验和进行相互比较。
可以将数据库划分为块,而不用搜索整个数据库。于是,可以对所述块进行单独搜索。所述划分可能是有必要的,例如,如果由于某种原因,数据库包含了不能使用基于上述校验和来搜索的数据。然而,通过将所述数据划分成以更加适当的方式来分析的块,而其它块中的至少一部分通过采用上述的增量校验和来处理,可以加快对所述数据库的搜索。这种方法有利于提高所述搜索功能的总体效率,因为可以将需要由低效率的方法处理的数据分成一个或者仅几个较小的数据块。
在所述实施例中,频繁模式的出现可以通过校验和增量地呈现。可以将所述校验和与其他模式的校验和进行比较,以查出这些模式的支持度是否相等。对于列表的所述校验和代表的增量式构造,可能使得能够采用这样的搜索机制,其中,在计算过程中不需要较长的数字列表的代表。这样有助于扩大搜索算法。显示列表的常规方法可能比单整型(例如单个校验和)占用更多的存储空间。可以预期,与对以任何其他代表方式给出的两个列表进行比较的常规处理过程相比,比较两个整型(即校验和)是实质上更快的处理方法。
所述实施例可被用于提供一种用于从日志条目的恒定流计算封闭频繁模式的方法和设备。所述实施例也可以用于寻找关联规律和频繁情节。
应理解,尽管上述例子的描述参考的是日志数据,但类似的原理适用于任何数据和任何计算机化***。
在此应注意,尽管以上描述了本发明的示例性实施例,但在不超出所附权利要求限定的本发明的范围的情况下,还可以对所公开的解决方案进行一些变化和修改。
Claims (31)
1.一种用于在计算机化***中处理数据的方法,包括以下步骤:
提供来自数据模式的频繁数据模式;
为所述频繁数据模式分配第一校验和;
检测由在所述计算机化***提供的数据中所述频繁数据模式的出现;以及
基于有关所述第一校验和的信息与有关在所述数据中频繁数据模式的现的信息,计算第二校验和。
2.根据权利要求1的方法,包括,基于有关先前的校验和的信息以及有关所述频繁模式的出现的信息,对在所述数据中出现的频繁数据模式计算进一步的校验和。
3.根据权利要求1或者2的方法,包括进一步的步骤,即对至少两个校验和进行相互比较。
4.根据权利要求3的方法,包括如下步骤:
找出至少两个具有匹配校验和的频繁模式;以及
在所述比较步骤中,推断所述至少两个频繁模式属于频繁模式闭包。
5.根据权利要求4的方法,包括,利用唯一标识符提供所述频繁模式闭包的代表。
6.根据权利要求5的方法,包括,基于数据的生成元集合,产生所述频繁模式闭包的代表。
7.根据权利要求5的方法,包括,基于数据的封闭集合,产生所述频繁模式闭包的代表。
8.根据权利要求6或者7的方法,包括进一步的步骤,即对所述代表进行扩展。
9.根据权利要求5的方法,其中,使用所述唯一标识符包括,使用符号作为所述频繁模式闭包的代表。
10.根据前述权利要求中的任何一项的方法,包括,在对所述计算机化***中提供的数据进行扫描的期间,计数对于所有备选集合的支持度。
11.根据前述权利要求中的任何一项的方法,包括,使用唯一标识符来提供有关备选集合的出现的信息。
12.根据权利要求11的方法,包括,利用事务标识符、位置标识符、时间戳、行号、字段号以及单键中的至少一个,来提供所述唯一标识符。
13.根据权利要求11的方法,包括,利用至少一个事务字段值来提供所述唯一标识符。
14.根据权利要求11的方法,包括,通过从事务标识符、位置标识符、时间戳、行号、字段号以及单键中的至少一个导出的标识符,来提供所述唯一标识符。
15.根据权利要求1到10中的任何一项的方法,包括,基于有关所述频繁模式的出现的位置的信息,来提供有关所述频繁模式的出现的信息。
16.根据前述权利要求中的任何一项的方法,包括检测任何冲突校验和的步骤。
17.根据前述权利要求中的任何一项的方法,包括以下步骤:将数据库分成至少两部分,并且根据前述权利要求中的任何一项的方法,仅对从所述数据库选择的部分进行处理。
18.根据前述权利要求中的任何一项的方法,包括存储校验和,直到数据处理完成。
19.根据前述权利要求中的任何一项的方法,包括处理固定排序的事务。
20.根据前述权利要求中的任何一项的方法,包括处理随机排序的事务。
21.一种用于从数据条目流计算封闭的频繁模式的方法,包括权利要求1到20中的任何一项所述的步骤。
22.一种用于从数据条目找出关联规律的方法,包括权利要求1到20中的任何一项所述的步骤。
23.一种用于从数据条目找出频繁情节的方法,包括权利要求1到20中的任何一项所述的步骤。
24.一种用于从数据中发现函数相关性的方法,包括权利要求1到20中的任何一项所述的步骤。
25.一种用于处理日志数据的方法,其中所述处理包括前述权利要求中的任何一项所述的步骤。
26.一种程序,包括程序代码单元,当在计算机上运行所述程序时,所述程序代码单元能进行前述权利要求中的任何一项所述的任何步骤。
27.一种计算机化***,包括至少一个用于处理数据的处理器,所述至少一个处理器被配置为,提供来自数据模式的频繁数据模式,为所述频繁模式分配第一校验和,监控在数据中所述频繁模式的出现,以及基于有关所述第一校验和的信息与有关在所述数据中所述频繁模式的出现的信息,计算第二校验和。
28.根据权利要求27的计算机化***,其中,所述至少一个处理器被配置为,基于有关先前的校验和的信息和有关所述频繁模式的出现的信息,对在所述数据中出现的频繁数据模式,迭代计算进一步的校验和。
29.一种用于计算机化***的处理器,所述处理器被配置为,提供来自数据模式的频繁模式,为所述频繁模式分配第一校验和,监控在数据中所述频繁模式的出现,以及基于有关所述第一校验和的信息与有关在所述数据中所述频繁模式的出现的信息,计算第二校验和。
30.根据权利要求29的处理器,被配置为基于有关先前的校验和的信息与有关所述频繁模式的出现的信息,对在所述数据中出现的频繁数据模式,迭代计算进一步的校验和。
31.一种计算机化***,包括:
提供单元,用于提供来自数据模式的频繁数据模式;
分配单元,用于为所述频繁数据模式分配第一校验和;
检测单元,用于检测在由计算机化***提供的数据中,所述频繁数据模式的出现;以及
计算单元,用于基于有关所述第一校验和的信息与有关在所述数据中所述频繁数据模式的出现的信息,计算第二校验和。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GBGB0409364.7A GB0409364D0 (en) | 2004-04-27 | 2004-04-27 | Processing data in a comunication system |
GB0409364.7 | 2004-04-27 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN1938702A true CN1938702A (zh) | 2007-03-28 |
Family
ID=32408114
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA2005800100441A Pending CN1938702A (zh) | 2004-04-27 | 2005-04-14 | 计算机化***中的数据处理 |
Country Status (6)
Country | Link |
---|---|
US (1) | US20050240582A1 (zh) |
EP (1) | EP1741191A2 (zh) |
KR (1) | KR20070011432A (zh) |
CN (1) | CN1938702A (zh) |
GB (1) | GB0409364D0 (zh) |
WO (1) | WO2005103953A2 (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102073732A (zh) * | 2011-01-18 | 2011-05-25 | 东北大学 | 基于相同结点链和哈希链的事件序列频繁情节挖掘方法 |
CN102404210A (zh) * | 2011-11-15 | 2012-04-04 | 北京天融信科技有限公司 | 一种用于增量计算网络报文校验和的方法和装置 |
CN103176976A (zh) * | 2011-12-20 | 2013-06-26 | 中国科学院声学研究所 | 一种基于数据压缩的改进的Apriori算法 |
CN104133836A (zh) * | 2014-06-24 | 2014-11-05 | 腾讯科技(深圳)有限公司 | 一种实现变更数据检测的方法及装置 |
CN104756106A (zh) * | 2012-10-22 | 2015-07-01 | 起元科技有限公司 | 表征数据存储***中的数据源 |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4746850B2 (ja) * | 2004-06-21 | 2011-08-10 | 富士通株式会社 | パターン生成プログラム |
US7496592B2 (en) * | 2005-01-31 | 2009-02-24 | International Business Machines Corporation | Systems and methods for maintaining closed frequent itemsets over a data stream sliding window |
US8595397B2 (en) * | 2009-06-09 | 2013-11-26 | Netapp, Inc | Storage array assist architecture |
EP2378452B1 (en) * | 2010-04-16 | 2012-12-19 | Thomson Licensing | Method, device and computer program support for verification of checksums for self-modified computer code |
WO2013057790A1 (ja) * | 2011-10-18 | 2013-04-25 | 富士通株式会社 | 情報処理装置、時刻補正値決定方法、およびプログラム |
WO2015057190A1 (en) * | 2013-10-15 | 2015-04-23 | Hewlett-Packard Development Company, L.P. | Analyzing a parallel data stream using a sliding frequent pattern tree |
US9619478B1 (en) * | 2013-12-18 | 2017-04-11 | EMC IP Holding Company LLC | Method and system for compressing logs |
CN104537025B (zh) * | 2014-12-19 | 2017-10-10 | 北京邮电大学 | 频繁序列挖掘方法 |
US10354065B2 (en) * | 2015-10-27 | 2019-07-16 | Infineon Technologies Ag | Method for protecting data and data processing device |
WO2019077013A1 (en) | 2017-10-18 | 2019-04-25 | Soapbox Labs Ltd. | METHODS AND SYSTEMS FOR PROCESSING AUDIO SIGNALS CONTAINING VOICE DATA |
CN108197172B (zh) * | 2017-12-20 | 2021-06-22 | 浙江工商大学 | 一种基于大数据平台的频繁模式挖掘方法 |
US11144506B2 (en) * | 2018-10-29 | 2021-10-12 | EMC IP Holding Company LLC | Compression of log data using field types |
US20220350921A1 (en) * | 2019-06-21 | 2022-11-03 | Intellijoint Surgical Inc. | Systems and methods for the safe transfer and verification of sensitive data |
US11835989B1 (en) * | 2022-04-21 | 2023-12-05 | Splunk Inc. | FPGA search in a cloud compute node |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5832235A (en) * | 1997-03-26 | 1998-11-03 | Hewlett-Packard Co. | System and method for pattern matching using checksums |
US5974574A (en) * | 1997-09-30 | 1999-10-26 | Tandem Computers Incorporated | Method of comparing replicated databases using checksum information |
US6507678B2 (en) * | 1998-06-19 | 2003-01-14 | Fujitsu Limited | Apparatus and method for retrieving character string based on classification of character |
US6278998B1 (en) * | 1999-02-16 | 2001-08-21 | Lucent Technologies, Inc. | Data mining using cyclic association rules |
US6971058B2 (en) * | 2000-12-29 | 2005-11-29 | Nortel Networks Limited | Method and apparatus for finding variable length data patterns within a data stream |
US7110540B2 (en) * | 2002-04-25 | 2006-09-19 | Intel Corporation | Multi-pass hierarchical pattern matching |
-
2004
- 2004-04-27 GB GBGB0409364.7A patent/GB0409364D0/en not_active Ceased
- 2004-07-19 US US10/893,601 patent/US20050240582A1/en not_active Abandoned
-
2005
- 2005-04-14 EP EP05718463A patent/EP1741191A2/en not_active Withdrawn
- 2005-04-14 KR KR1020067022962A patent/KR20070011432A/ko active Application Filing
- 2005-04-14 WO PCT/IB2005/001012 patent/WO2005103953A2/en active Application Filing
- 2005-04-14 CN CNA2005800100441A patent/CN1938702A/zh active Pending
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102073732A (zh) * | 2011-01-18 | 2011-05-25 | 东北大学 | 基于相同结点链和哈希链的事件序列频繁情节挖掘方法 |
CN102073732B (zh) * | 2011-01-18 | 2014-04-30 | 东北大学 | 基于相同结点链和哈希链的事件序列频繁情节挖掘方法 |
CN102404210A (zh) * | 2011-11-15 | 2012-04-04 | 北京天融信科技有限公司 | 一种用于增量计算网络报文校验和的方法和装置 |
CN102404210B (zh) * | 2011-11-15 | 2014-04-16 | 北京天融信科技有限公司 | 一种用于增量计算网络报文校验和的方法和装置 |
CN103176976A (zh) * | 2011-12-20 | 2013-06-26 | 中国科学院声学研究所 | 一种基于数据压缩的改进的Apriori算法 |
CN104756106A (zh) * | 2012-10-22 | 2015-07-01 | 起元科技有限公司 | 表征数据存储***中的数据源 |
CN104756106B (zh) * | 2012-10-22 | 2019-03-22 | 起元科技有限公司 | 表征数据存储***中的数据源 |
CN104133836A (zh) * | 2014-06-24 | 2014-11-05 | 腾讯科技(深圳)有限公司 | 一种实现变更数据检测的方法及装置 |
CN104133836B (zh) * | 2014-06-24 | 2015-09-09 | 腾讯科技(深圳)有限公司 | 一种实现变更数据检测的方法及装置 |
US10540600B2 (en) | 2014-06-24 | 2020-01-21 | Tencent Technology (Shenzhen) Company Limited | Method and apparatus for detecting changed data |
Also Published As
Publication number | Publication date |
---|---|
KR20070011432A (ko) | 2007-01-24 |
WO2005103953A3 (en) | 2006-05-11 |
US20050240582A1 (en) | 2005-10-27 |
WO2005103953A2 (en) | 2005-11-03 |
GB0409364D0 (en) | 2004-06-02 |
EP1741191A2 (en) | 2007-01-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1938702A (zh) | 计算机化***中的数据处理 | |
AU2020250205B2 (en) | Characterizing data sources in a data storage system | |
CN110119428B (zh) | 一种区块链信息管理方法、装置、设备及存储介质 | |
CN112491872A (zh) | 一种基于设备画像的异常网络访问行为检测方法和*** | |
WO2003081433A1 (en) | Method and apparatus for compressing log record information | |
Ao et al. | Online frequent episode mining | |
US8949271B2 (en) | Method for monitoring a number of machines and monitoring system | |
JP2008027072A (ja) | データベース分析プログラム、データベース分析装置、データベース分析方法 | |
Scarabeo et al. | Mining known attack patterns from security-related events | |
De La Torre-Abaitua et al. | On the application of compression-based metrics to identifying anomalous behaviour in web traffic | |
Alsaif | Machine Learning‐Based Ransomware Classification of Bitcoin Transactions | |
Huang et al. | Twain: Two-end association miner with precise frequent exhibition periods | |
US20060101045A1 (en) | Methods and apparatus for interval query indexing | |
US20150066947A1 (en) | Indexing apparatus and method for search of security monitoring data | |
Bahaweres et al. | Implementation of text association rules about terrorism on twitter in indonesia | |
SalahEldeen et al. | Reading the correct history? Modeling temporal intention in resource sharing | |
Zhou et al. | VarLog: Mining Invariants with Variables for Log Anomaly Detection | |
Tonon et al. | gRosSo: mining statistically robust patterns from a sequence of datasets | |
US20240119178A1 (en) | Anonymizing personal information for use in assessing fraud risk | |
Scheid et al. | Opening Pandora's Box: An Analysis of the Usage of the Data Field in Blockchains | |
Pilehchiha | Improving Reproducibility in Smart Contract Research | |
Frank et al. | Preprocessing unstructured cybersecurity data for anomaly detection | |
CN116628642A (zh) | 针对移动端ai应用软件的分析方法及分析*** | |
CN118174954A (zh) | 安全事件分析方法、装置、电子设备及存储介质 | |
Bruaene | Large scale cross-drive correlation of digital media |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Open date: 20070328 |