基于图的计算中的数据日志记录的制作方法

文档序号:8361500阅读:225来源:国知局
基于图的计算中的数据日志记录的制作方法
【专利说明】
[0001] 本申请是申请日为2009年6月30日、申请号为200980133372. 9(国际申请号为 PCT/US2009/049299)、发明名称为"基于图的计算中的数据日志记录"的发明专利申请的分 案申请。
[0002] 相关申请的交叉引用
[0003] 本申请要求于2008年6月30日提交的美国临时申请No. 61/077, 022的优先权, 通过引用的方式将其合并于此。
技术领域
[0004] 本说明书一般涉及基于图的计算中的数据日志记录(logging)。
【背景技术】
[0005] 复杂计算经常能够通过有向图被表达为数据流,有向图具有与图的顶点关 联的计算的组件以及与图的连接(弧、边)相应的组件之间的数据流。在美国专利 5,966,072("ExecutingComputationsExpressedAsGraphs")中描述了实现这样的基 于图的计算的系统。在一些情况下,以可供人读的形式--被称为"businessrules(商务 规则)" 一一描述与顶点关联的计算。

【发明内容】

[0006] 一般说来,在一个方面,提供一种方法,包括:接收针对一组数据处理组件的至少 一个规则说明书,该规则说明书定义每一个都与一个或多个规则例关联的规则,所述规则 例指定用于确定取决于输入数据的一个或多个输出值的准则;基于接收到的规则说明书生 成针对至少一个数据处理组件的变换,包括提供用于配置与所生成的变换关联的日志的特 征的接口;以及使用所生成的变换来变换至少一个数据流,所述至少一个数据流表示数据 从一个数据处理组件到另一个数据处理组件的流动,包括:在运行时跟踪数据处理组件的 运行,根据所配置的日志特征,基于所跟踪的运行生成日志信息,以及存储或者输出所生成 的日志信息。
[0007] 多个方面可以包括一个或多个下列特征:
[0008] 配置日志的特征包括选择至少一个事件,将针对该至少一个事件而生成日志信 息。
[0009] 根据与接收到的规则说明书关联的规则,所述至少一个事件与数据流中的变换记 录关联。
[0010] 所述至少一个事件包括识别将被变换的记录中的错误。
[0011] 所述至少一个事件包括对于给定记录满足规则例的条件。。
[0012] 对于给定记录满足规则例的条件包括基于给定记录中的值满足逻辑表达式。
[0013] 对于规则例满足规则例的条件包括将记录中的值与关联于所述规则例的值相比 较。
[0014] 生成日志信息包括:生成分别包括规则集的细节的一个或多个图例日志消息,该 规则集包含由接收到的规则说明书定义的规则,以及生成多个跟踪日志消息,其中,每个跟 踪日志消息与图例记录关联并且根据与接收到的规则说明书关联的规则描述与数据流中 的变换记录关联的至少一个事件。
[0015] 描述事件的跟踪日志消息使用图例记录中的索引描述数据处理组件的至少一个 输入或输出。
[0016] 生成一个或多个图例消息包括每次运行基于图的计算生成一个图例消息。
[0017] 使用生成的变换的数据处理组件根据与接收到的规则说明书关联的第一规则对 数据流中的输入记录进行变换。
[0018] 基于所跟踪的运行生成日志信息包括针对指定准则被满足的、第一规则的各个规 则例生成日志消息。
[0019] 基于所跟踪的运行生成日志信息包括针对由所述数据处理组件使用所生成的变 换生成的变换生成的经变换的记录中的每个值生成日志消息。
[0020] 存储或者输出生成的日志信息包括从所述一个或多个数据处理组件的日志端口 输出日志消息。
[0021] 存储或者输出生成的日志信息还包括从数据处理组件中的日志端口接收日志消 息的数据流并且存储至少部分地源自所述日志消息的日志信息。
[0022] 该方法还包括:过滤接收到的日志消息的数据流并且存储源自日志消息的子集的 日志信息。
[0023] 存储或者输出所生成的日志信息还包括:从指示指定准则被满足的、被触发的规 则例的数据处理组件中的日志端口接收日志消息的数据流,检查所述日志消息以确定为每 个规则的每个规则例提供至少一个日志消息的经缩减的输入记录集,所述规则通过由全部 输入记录触发的规则说明书所定义,以及存储经缩减的输入记录集。
[0024] 一般说来,在另一方面,提供一种计算机系统,包括:存储系统,存储针对一组数据 处理组件的至少一个规则说明书,该规则说明书定义每一个都与一个或多个规则例关联的 规则,所述规则例指定用于确定取决于输入数据的一个或多个输出值的准则;生成器,被配 置为基于接收到的规则说明书生成针对基于图的计算中的至少一个数据处理组件的变换, 包括提供用于配置与所生成的变换关联的日志的特征的接口;以及计算系统,被配置为使 用所生成的变换来变换至少一个数据流,所述至少一个数据流表示数据从一个数据处理组 件到另一个数据处理组件的流动,包括:在运行时跟踪所述计算系统中的数据处理组件的 运行,根据所配置的日志特征,基于所跟踪的运行生成日志信息,以及存储或者输出所生成 的日志信息。
[0025] -般说来,在另一方面,提供一种计算机程序,存储在计算机可读介质上,该计算 机程序包括导致计算机系统执行以下步骤的指令:接收针对基于图的计算的至少一个规则 说明书,该基于图的计算具有通过链接表示数据流的元素而连接的数据处理组件,该规则 说明书定义分别与一个或多个规则例关联的规则,所述规则例指定用于确定取决于输入数 据的一个或多个输出值的准则;基于接收到的规则说明书生成针对基于图的计算中的至少 一个数据处理组件的变换,包括提供用于配置与所生成的变换关联的日志的特征的接口; 以及使用所生成的变换来变换至少一个数据流,包括:在运行时跟踪基于图的计算中的数 据处理组件的运行,根据所配置的日志特征,基于所跟踪的运行生成日志信息,以及存储或 者输出所生成的日志信息。
[0026] -般说来,在另一方面,提供一种计算机系统,包括:用于接收针对一组数据处理 组件的至少一个规则说明书的装置,该规则说明书定义每一个都与一个或多个规则例关联 的规则,所述规则例指定用于确定取决于输入数据的一个或多个输出值的准则;用于基于 接收到的规则说明书生成针对基于图的计算中的至少一个数据处理组件的变换的装置,包 括提供用于配置与所生成的变换关联的日志的特征的接口;以及用于使用所生成的变换来 变换至少一个数据流的装置,所述至少一个数据流表示数据从一个数据处理组件到另一个 数据处理组件的流动,包括:在运行时跟踪数据处理组件的运行,根据所配置的日志特征, 基于所跟踪的运行生成日志信息,以及存储或者输出所生成的日志信息。
[0027] 在附图以及下面的描述中给出本发明的一个或多个实施例的细节。本发明的其它 特征、目的和优点将从说明书和附图以及权利要求中变得明显。
【附图说明】
[0028] 图IA示出在基于图的计算环境中将输入数据变换为输出数据。
[0029] 图IB示出在基于图的计算中的图的一个例子。
[0030] 图IC不出利用日志记录信息的变换生成的框图。
[0031] 图2A不出基于电子表格的规则条目(entry)的一个例子。
[0032] 图2B示出单个规则的一个例子。
[0033] 图3示出在基于图的计算环境中将数据记入日志的部分操作的流程图。
[0034] 图4是在基于图的计算环境中的日志记录结构的图形用户接口的图示。
【具体实施方式】
[0035] 用于数据日志记录和审核机制的示范性上下文(context)包括基于图的计算范 例(paradigm),其将与基于图的计算关联的元数据存储在基于图的计算系统中。在此场 景中,每个计算机程序使用计算图实现,也称作数据流图,或者简称为图。一个图包括表示 数据处理组件的一个或多个节点或者顶点,它们由表示组件之间数据的流动的有向边联接 (join)。图能够在并行处理环境下运行。系统跟踪图的开发过程中的变化,执行统计分析 和相关性分析,并且管理与图的开发有关的元数据。与图有关的元数据的存储使得数据影 响分析能够发生,给用户视觉感知:数据如何随其在图中的行进而改变,以及那些变化对其 它图的影响。另外,系统提供的配置/变化管理能够当存在代码变化时存储图的多个版本, 由此确保最新的代码和数据可用。
[0036] 商务规则,比如元数据的子集,存储在系统中。例如,在美国申请 No. 11/733,434一一通过引用的方式将其合并于此一一中描述了各个方面的商务规则。每 个商务规则都能够存储在单独的对象中。商务规则能够表达为用于将数据从一种格式转换 到另一种格式、进行有关数据的判定或者基于一组输入数据生成新数据的一组准则。例如, 在图IA中,航班预订系统中的记录102包括表示乘客的姓名104、今年已经飞行了多少英里 106、他的票的等级108以及他所坐的行110的字段的值。商务规则表示这样的乘客应该放 进登机组1。商务规则一般容易为人理解,即,"头等舱乘客在组1",但是在它可以用于操作 数据以前可能需要被翻译成计算机能够理解的语言。
[0037] 为了在基于图的计算环境中实现商务规则,生成变换(transform) 112,其从一个 或多个数据源一一例如输入数据集100-一接收诸如记录102这样的输入记录,并且提供 输出记录,例如,记录114,表示对于输出数据集120来说乘客姓名104以及他在哪个组 118。在本例中,数据集被示出为显示一个示范性记录,但是通常数据集可以包括任意数量 的记录。输入和输出数据集可以被处理为数据流,例如,像组成数据集的数据流入图或者流 出图一样。
[0038] 然后,可以在基于图的计算中实现变换,该基于图的计算具有通过链接表示数据 流的元素而连接的数据处理组件。例如,图IB的简单计算图130将输入视为两个数据集 132、134 (例如,经常飞行数据和航班预定数据),将每个集合中的数据在单独的格式化组 件136、138中进行格式化从而它们能被一起使用,并且在联合组件140中将它们联合以产 生输出数据集142。变换本身可以是基于图的计算,诸如图130中的计算,或者可以在图的 组件内实现,诸如组成图130的独立组件136、138和140。
[0039] 为了为非专业用户简化变换的创建,为这些用户以他们熟悉的格式提供了一种工 具用于输入一组商务规则,称为规则集,该工具告诉计算机系统他们需要变换做些什么。规 则集是产生单个变换的一组规则。一个规则可以由一个或多个规则例(rulecase)组成, 这些规则例根据输入来确定用于规则的输出的不同值。一个规则也可以包括其它规则。一 个规则集中的其它规则可以产生针对额外输出或者替换输出的值。规则集可以包含其它规 则集,这称为"内含(included)"规则集。
[0040] 在图IC中示出利用日志记录信息(logginginformation)的变换生成系统的一 般模型。商务规则环境(businessrulesenvironment,BRE)包括生成器150,其从编辑 器154接收规则集152作为输入并且生成变换156。作为变换生成选项中的一个,可以随 后通过定制图形用户接口中的各种日志记录(logging)事件和信息来激活日志记录。日志 (log)是发生在组织的系统和网络内的事件的记录。日志由条目组成;每个条目都包含与 已经在系统或者网络内发生的特定事件有关的信息。日志能够用于解决问题,以及用于提 供许多功能,诸如优化系统和网络性能、记录用户的动作以及提供对调查异常活动有用的 数据。日志能够包含与许多不同类型的事件有关的信息。根据系统的体系结构以及变换和 商务规则的目的,所生成的变换156可以提供给基于图的计算系统158作为将用于图中的 一个组件或者作为整个图本身。例如,生成器150可以是编译器、定制的程序或者另一个基 于图的计算,被配置为使用标准工具以接收规则集152并输出变换156。
[0041] 生成器150还可以在规则集152被编辑时更新变换156。当规则集152被编辑时, 编辑器154可以为生成器提供整个规则集或者它可以仅提供新的或者修改的规则或规则 例152a。根据使用变换的系统的性能以及需要,生成器150可以生成全新的变换以替换初 始变换156,或者它可以提供包含所述变换的组件156a。
[0042] 不需要一个单独的、专用的运行引擎用于在基于图的计算158期间执行日志记录 操作。日志记录能够被配置为当其被运行时使用由图组件调用的函数而发生。针对不同的 日志记录结构,能够提供针对规则运行的不同审核报告。例如,如图IC中虚线箭头所示(而 非实线箭头示出的实际数据流),日志160a可以回溯到规则集152中的特定输入记录;而 日志160b可以反映专用规则例152a在早先时间就已经被激发(fire) 了。
[0043] 参考图2A,在一些例子中,可以将规则以电子表格格式输入。电子表格200中的 触发列202、204、206、208相应于可用数据值,以及行210 &-1!相应于规则例,8卩,与可用数据 值有关的准则集合。如果对于在其中规则例具有准则的各个触发列来说,给定记录(例如, 图IA中的102)的数据值满足触发准则,那么规则例210n就应用于该记录。如果应用规则 例210n,则基于一个或多个输出列212生成输出。其所有的触发准则都得以满足的规则例 可以称为"已触发(triggered)"。每个输出列212相应于一个潜在的输出变量,可应用的 行210n的相应单元格中的值为该变量确定输出一一如果有的话。单元格可以包含分配给 变量的值或者它可以
当前第1页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1