具体实施方式
概览
如背景技术中所指示,当数据集变得极大时(例如大数据),常规的对时间的无差别表示意味着对时间的无差别处理,这使得随时间流逝,数据集中的结构损失会降低该数据集的效用。随着数据集变得如此庞大,与该数据相关联的时间戳和/或有效性时间区间可能无法针对特定查询充分地计入数据变化、最近数据的相对重要性或外围相关发展。
在与两个事件之间的因果关系有关的非限制性示例中,时间和空间通过距离在相应时间区间上的变化(例如速率或速度)相联系。例如,关于计算机网络中的视界,可将两个事件彼此存在因果联系的可能性理解为受限于两个事件在空间上的分离(例如按照物理网络距离)以及两个事件之间的时间,其中该视界受限于光速。在非限制性欺诈检测示例中,在使用实体信用卡的情况下,判断两个事件之间的因果关系的视界可受限于飞机的估计速度、汽车的速度等等。因此,通过在视界中比较与两个事件相关联的空间和/或时间信息,能得出关于可能性、因果关系、概率等等的推论。
因此,能根据本文中描述的多个方面,基于数据的属性(例如时间和/或空间信息等等),可以确定两个数据点或事件是否有因果关系或有可能的问题。也就是说,给出与两个数据点或事件有关的时间和/或空间信息的特定序列,它可能是不会发生的。例如,对于数据点或事件集合(例如“A”、“B”、“C”、“D”、“E”等等),可能对“A”是否通过猜想的因果关系链“B”、“C”和“D”而导致“E”感兴趣。与“B”的联系有可能基于对相应的时间和空间信息的分析。但是,尽管“D”有可能由“B”引起,但“C”有可能不由“B”引起。问题在于,如果在任何位置打破“A”与“D”之间的因果关系链,则不再存在“A”导致“E”的可能性。该类型问题的常规解决方案通常是特殊情况情形,其中针对可用数据或事件来测试基于现有假定的条件(例如经验知识、观测到的数据或事件等等)。然而,当数据或事件落在构建到假定中的假设之外时,常规的硬编码解决方案可能无法产生可靠的答案。
例如,在实体信用卡的欺诈检测示例中,两个数据点或事件在因果上关联的可能性可取决于与数据或事件相关联的空间和/或时间信息以及视界中的相关性。雪上加霜的是,随着数据点或事件老化,在时间上更早发生的数据点或事件会变得不可靠。例如,在相对于相关视界的短时间段内在加尼福尼亚州圣迭戈市和在得克萨斯州休斯敦市使用的信用卡可能具有暗示欺诈的强烈因果联系。然而,随着较早的数据点或事件老化,由于持卡人的旅行,后来的数据点或事件完全有可能是有效交易(或者至少欺诈的结论不大可靠)。
在另外的非限制性网络业务量分析示例中,如果两个或两个以上网络事件发生在相对于相关视界的短时间段内,即便它们具有不同的起源,也可推论这两个或两个以上网络事件之间存在强烈的因果联系,从而表明网络上的协同攻击。类似地,随着网络事件老化,后来的网络事件完全有可能是有效的和无危险的网络业务量。
虽然时间数据库可能考虑时间信息(例如时间戳和/或有效性时间区间),但它们可能不足以解决因果关系的问题。例如,时间数据库是能将时间方面(诸如结构化查询语言(SQL)的时间数据模型和时间版本)纳入数据库中的数据库。例如,时间方面可包括有效时间和交易时间(例如双时间数据)或数据输入数据库的其它时间相关数据,其中有效时间可表示一事实相对于现实世界为真的时间段,而交易时间可表示一事实存储在数据库中的时间段。如上所述,这实现了显示数据库在给定时间的状态的查询(例如,时间点查询)。
例如,当时间数据库可将数据与时间戳和/或有效性时间区间相关联时,这样的时间戳和/或有效性时间区间不会改变,直到该数据被更新。因此,时间戳和/或有效性时间区间通常被用于时间点查询,其中这些查询在其有用性方面有限,因为它们仅对在该给定时间查询的特定严格结构化的信息有效,且仅在时间戳和/或有效性时间区间的固定值或硬值上有效。这些时间戳和/或有效性时间区间必须被更新以计入相关数据的更新,而且查询依赖于时间戳和/或有效性时间区间的固定值或硬值。然而,时间数据库聚焦于以数据库相对于时间的状态,这遗留了与空间信息有关的问题,因为该信息与时间数据库的目的无关,而且数据关系被构建到数据库结构中(例如,雇员John具有社会保险号码(SSN),他的SSN与职位、经理、薪酬、办公室位置等等相关联)。
此外,在时间及其对分析的影响(例如因果关系、可能性、关联、概率等等)的讨论的情况下,产生了将哪种时间概念加于进入系统的数据的问题。即,对于进入接收时间戳的系统的数据,必须确定使用哪种时间(例如绝对时间、数据库时间、起点时间、终点时间、所记录的时间、相对于初始事件的时间、时间差等等)。然而,关于时间区间和它们在与两个数据点或事件有关的随后分析(例如因果关系、可能性、关联、概率等等)中的用途,通常采用一个数据点或事件相对于另一个数据点或事件的时间。
例如,向量时钟是一种系统,通过该系统,多个独立的代理能保持它们自己的时钟,且仍能用于分析数据或事件之间的关系。作为非限制性示例,向量时钟是一种算法,该算法便于在分布式系统中产生事件的部分排序,并检测因果违逆。图1示出流程图,该流程图示出将向量时钟或过程“A”102、“B”104以及“C”106作为辅助的示例过程100,以进一步描述多个实施例。例如,最开始,所有时钟被置零(例如A:0,B:0,C:0)。可发送过程间消息108,该过程间消息108可包括发送过程的逻辑时钟的状态(例如A:2,B:3,C:5)。因此,向量时钟系统可被理解为N个逻辑时钟的阵列/向量中的N个过程的系统,其中每个过程一个时钟(例如A”102,“B”104,以及“C”106)。
此外,可在每个过程中保持全局时钟阵列跟踪时间110的本地“最小可能值”副本,且遵循下列便于时钟更新的规则。每当过程(例如“A”102,“B”104,以及“C”106)经历内部事件时,它可使该向量中的它自己的逻辑时钟加一(例如从A:0到A:1,等等)。每当过程准备发送消息时,它将该向量中的它自己的逻辑时钟加一(例如对于过程“B”104,从B:1到B:2),然后连同被发送的消息一起发送它的整个向量(例如对于过程“B”104,B:2和C:1的集合等等)。每当过程接收消息时,它将该向量中的它自己的逻辑时钟加一(例如对于过程“A”102,从A:0到A:1等等),并通过在它自己的向量时钟中的值和在所接收的消息中的向量内用于每个要素的值中取最大值,来更新它的向量中的每个要素(例如,对于过程“A”102,增加B:2,等等)。
因此,可以看到,通过跟踪与过程有关的相关事件,多个过程(例如“A”102,“B”104,以及“C”106)可用于便于至少相对于因果关系的时间方面且相对于向量时钟系统中的过程的有限子集的分析(例如因果关系、可能性、关联、概率等等)。然而,这样的向量时钟系统会是受限制的,因为当向量时钟系统可用于确定在分布式系统中事件的部分排序和检测因果违逆时,可被考虑的事件集合受向量时钟系统中的过程数量的限制,这些过程各自需要大量的资源(即使在小规模上),而且在过程的身份和数量未知的动态环境中的操作会是禁止的。例如,参考图1,可以看到,基于向量时钟算法,这些过程(例如“A”102,“B”104,以及“C”106)的多个事件的因果和影响范畴(阴影区域)会是受限制的,其中独立的范畴表示因果关系链之外的事件。此外,如同时间数据库,不提供基于空间信息的分析(例如因果关系、可能性、关联、概率等等)。
相应地,在本申请中给出的多个实施例中,数据可被视为本质上是时间和/或空间的事件。如上所说明,那些数据或事件的时间影响(以及空间和其它影响)可依赖于用户利用数据或事件的意图以及正在进行或意图进行的分析的类型。例如,时间信息能用于推理(例如,诸如在时间贝叶斯网络中,用于数据的数据库组织或事件分析或影响等等)并用于数据的组织(例如数据的划分、数据的老化、将数据移出集合等等)。作为另一示例,诸如用户指示他或她的轿车损坏或与他有关的某人去世之类的数据或事件具有与这些数据或事件相关联的时间性质(以及空间性质和/或其它性质)。因此,可以理解,时间信息(以及空间信息和/或其它性质)或数据可被视为数据集合中的一等公民,而不是任何普通的数据字段。
为了这些以及相关的目的,图2是示出适合纳入多个实施例的非限制性操作环境的框图。该操作环境可包括如本文中进一步描述的多个计算系统202、204,配置成从多个源(例如源206、208、210、212和214等等)接收数据(例如数据226、228、230、232和234等等)。系统计算系统202、204或其部分可以是移动的或固定的、本地的或远程的、和/或分布式或独立的计算系统。该数据可包括能由计算系统202、204接收的任何信息,且可包括能确定有关的多种属性的信息。源(例如源206、208、210、212和214等等)可包括如本文所描述的计算系统,且可以是自动化的或手动的或其任意组合。注意,尽管图2表明属性在数据被计算系统202、204接收之前可以是已知或与该数据相关联的,这些属性在数据被计算系统202、204接收之前也可能不是已知的或与不与该数据相关联。
为了本申请的目的,在被计算系统202、204接收之前,数据(例如一个或多个数据226、228、230、232和234等等)可包括一个或多个未知或未关联的属性,这些属性可在由计算系统202、204接收之后确定或与数据相关联。例如,在多个实施例中,属性可包括与数据有关的时间上的信息或其它信息(例如空间信息和/或其它性质,诸如版本、源、目的地、一个或多个潜在用途或期望分析、与数据集中的另一项或组的因果关系的概率或事实等等)。此外,操作环境可包括多个目的地(例如目的地216、218、220、222和224等等),配置成从计算系统202、204接收数据(例如数据226、228、230、232以及234等等中的一个或多个)。这些目的地(例如目的地216、218、220、222和224等等)可以是如本文所描述的计算系统,而且可以是自动化的或手动的或其组合。
在诸如数据库、文件系统等等之类的常规系统中,当数据进入该系统时,数据通常被写入该系统而不顾及任何潜在用途或将对该数据进行的预期分析。即,该数据仅被存储且可能被分配时间戳(诸如创建时间)等等。如上所述,时间数据库可分配时间区间和有效性区间。然而,考虑资源短缺或时间紧迫而无法获得与数据集之中的数据(例如数据226、228、230、232和234中的一个或多个,等等)的分析有关的答案的用户或自动化系统的情况。在该实例中,用户(或自动化系统)通过后端存储系统(例如目的地216、218、220、222和224等等)使最新和最相关的数据已经被组织并放置在容器中,以使他或她能对数据集进行线性扫描,而不是必须首先找出最相关数据然后进行分析,这将会是最高效的。
本申请的多个非限制性实施例提供示例性系统(例如计算系统202、204中的一个或多个、其部分等等)和方法,这些示例性系统和方法便于在数据进入系统时,通过采用已知的、确定的、推断的和/或与数据相关联的数据属性(例如时间信息、空间信息和/或其它性质,诸如版本、源、目的地、一个或多个潜在用途或预期分析、与该数据集中的另一项或组的因果关系的概率或事实),自动对数据执行各种操作(例如分析、解释、推断、分配区间、创建和关联策略、数据组织、数据保持、数据搭配、创建索引、创建统计或其它概要,等等)。
在非限制性社交网络或搭配示例中,未搭配的朋友或合作者对与访问最近数据有关的要求与相距更远距离、处于不同时区等等的朋友和合作者不同。相应地,多个实施例(例如计算设备202、204中的一个或多个、其部分等等)使得能向数据附加重要性(例如与属性和/或区间有关的策略,允许基于诸如个人偏好、个人排名系统的规范、历史数据的权重等等之类的数据排名策略使过去的或不同位置的数据排名较低),这样能便于对数据加权,使得它能变得与随后的分析较不相关,等等。在又一非限制性示例中,多个实施例使得能向数据附加时间重要性,以便于随着历史数据老化而对历史数据加权,使得它能变得与查询结果较不相关,等等。在另外的非限制性示例中,多个实施例使得能将空间重要性以及基于其它属性的重要性附加至数据,以便于对数据加权,使得它能变得与查询结果较不相关,等等。因此,可减轻由于时间流逝而引起的数据集之中的结构损失,且能维持和改进数据集的效用。
再次参考针对数据点集合确定“A”是否通过猜想的因果关系链“B”、“C”和“D”导致“E”的过程以及向量时钟表示,可基于向量时钟系统来猜想:给出向量时钟系统在特定时间的状态,“A”实际上会通过猜想的因果关系链“B”、“C”和“D”导致“E”。然而,随着新数据或事件进入要考虑的事件的范围,向量时钟系统可能无法识别新数据或事件的因果关系重要性。例如,假定随后发生的事件“C′”在向量时钟系统之外发生,该事件“C′”加强或引起对“C”与“D”之间的因果联系的怀疑(例如,基于时间信息、空间信息和/或诸如版本、源、目的地、一个或多个潜在使用或预期分析、与数据集中的另一项或组的因果关系的概率或事实等等之类的其它性质中的一个或多个)。
此外,虽然向量时钟系统可便于在分布式系统中产生事件的部分排序并检测相对同时发生的数据或事件集合的因果关系违逆,但向量时钟可能无法计入一个或多个数据或事件的影响随着数据集中数据老化的变化。即,向量时钟系统无法计入数据或事件的影响如何根据设定定义而渐弱(例如由于时间的流逝、由于随后的冲突数据等等)。
因此,向量时钟系统可能无法反映新数据或事件的影响,或不能够反映旧数据或事件可以或应当如何淡出该数据集。然而,根据非限制性方面,示例性实施例可便于将概率分配给各个视界或各个步骤(例如从“A”到“B”、从“B”到“C”等等),从而针对整个视界确定“A”至“E”之间的猜想因果关系链的概率,以便能够查明对数据或事件系列的因果关系的可能性或概率的更精细理解。在又一非限制性方面中,示例性实施例能便于指定数据或事件的影响如何根据设定定义而渐弱,以便于查明对数据或事件系列的因果关系的可能性或概率的更灵活理解。
作为非限制性示例,可给数据分配区间(例如事件区间、空间区间等等),以帮助数据的老化、以便于利用时间因果关系以实现对大数据集合的更高效查询。在特定的非限制性实施例中,可利用采用向量时钟系统的机制或类似机制来便于对两个或两个以上数据或事件在时间上的线性排序。相应地,在非限制性方面,可从该机制的时间概念(例如向量时钟时间)而不是时钟时间产生推断。
因此,在多个非限制性实施例中,示例性系统可接收数据,且随着数据进入该系统,数据可被视为事件。例如,示例性系统可采用解释或分析阶段,该解释或分析阶段可确定或计算与数据或事件有关的一个或多个属性,且可基于该分析或解释阶段确定或计算并分配区间(例如经由向量时钟或用于将时间信息分配给数据的类似机制确定的信息等等),以及该解释或分析阶段可由示例性系统利用(例如用于数据保持、用于数据组织、数据老化、将相对重要性或加权因子附加至数据等等)。
相应地,在另外的非限制性实施例中,示例性系统可利用这一个或多个属性和一个或多个分配的区间来基于该数据和区间进行推理、分析、推断以及其它用途。例如,在另外的非限制性实施例中,可如本文中进一步描述的那样确定、创建影响该数据使用的策略和/或使之与数据相关联(例如基于一个或多个属性和一个或多个分配的区间)。在非限制性方面中,策略(例如,与属性和/或区间相关联的策略,允许过去的或不同位置的数据基于个人偏好、个人排名系统的规范、历史数据的权重等等而降低排名)可便于对数据加权,以使它能变得与随后的分析较不相关,等等。在另一非限制性方面中,策略可与数据存储、数据组织、数据保持等等、或与数据有关的其它功能以及一个或多个潜在用途或预期对该数据进行的分析等等有关。
因此,再次参考图2,随着数据被示例性系统(例如计算系统202、204中的一个或多个、其部分等等)接收,如本文所描述的系统和方法可便于在数据进入系统时,通过采用已知的、确定的、推断的和/或与数据相关联的数据属性(例如时间信息、空间信息和/或其它性质,诸如版本、源、目的地、一个或多个潜在用途或预期分析、与该数据集之中的另一项或组的因果关系的概率或事实),自动对数据执行各种操作(例如分析、解释、推断、分配区间、创建和关联策略、数据组织、数据保持、数据搭配、创建索引、创建统计或其它概要,等等)。
作为非限制性示例,当数据集中的数据(例如数据226、228、230、232以及234等等中的一个或多个)在一个或多个计算系统(例如一个或多个计算系统202、204、其部分,等等)处被接收时,这一个或多个计算系统可动态地分析或解释进入这一个或多个计算系统的数据,从而确定属性或使属性与该数据相关联。注意,为了说明的目的,当该数据被描述为进入一个或多个计算系统时,推断该数据被推送到该系统中,可以理解该一个或多个计算系统能等同地从其它系统拉取数据(例如作为这样做的直接命令的结果、自主地、半自主地、或以其它方式基于由一个或多个计算系统所得出的结论,等等)。在另外的非限制性示例中,如本文进一步描述的那样,一个或多个计算系统还可动态地计算一个或多个区间和/或将一个或多个区间分配给该数据(例如基于该分析或解释、一个或多个已知、确定或与该数据相关联的属性,等等),且可创建和/或关联与动态计算出的和/或分配给该数据的一个或多个区间有关的一个或多个策略。
因此,对于该数据集中的数据(例如数据226、228、230、232和234中的一个或多个,等等),可基于这一个或多个属性、一个或多个区间和/或一个或多个策略等等对该数据执行进一步的操作(例如,诸如存储、保持、组织、老化、加权等等)。作为示例,图2描绘了对数据集中的数据的非限制性组织(例如数据226、228、230、232以及234中的一个或多个,等等)。例如,基于这一个或多个属性、一个或多个区间和/或一个或多个策略等等,可基于与数据228关联和被分配给数据228的策略、区间和/或属性中的一个或多个来组织由计算系统202接收的数据228,以使它被保持在目的地220中。
因此,示例性系统和方法可便于处理大数据的属性和区间,以防止数据集中的结构损失,该结构损失会由于时间流逝而降低该数据集的效用。在非限制性方面中,可将本发明的多种方法和系统或其部分构建到诸如SQL之类的数据管理产品、数据仓库产品、诸如云计算、AzureTM之类的服务等等之中。
处理大数据的属性和区间
图3是示出根据多个实施例的示例性系统302的框图。例如,示例性系统302可包括一个或多个计算系统,诸如以上关于一个或多个计算系统202、204所描述的计算系统(例如一个或多个计算系统202、204、其部分,等等)。示例性系统302可配置成接收数据304,数据304可包括诸如以上关于数据集中的数据所描述之类的数据(例如诸如数据226、228、230、232和234中的一个或多个,等等),且示例性系统302可配置成分析和/或解释数据集中的包括信息的数据,基于分析和/或解释可确定关于该数据的多种属性。注意,如上所述,在数据304被示例性系统302接收之前,数据304可包括一个或多个未知或未关联的属性,这些属性可在数据304被示例性系统302接收之后被确定和/或分配或与该数据相关联,如以上关于图2所描述。
例如,数据304可包括诸如来自另一系统的时间戳之类的属性,或诸如上述的在时间数据库中分配的时间区间和有效性区间之类的其它属性。然而,示例性系统302可被配置成在由示例性系统302接收之后确定和/或分配与数据有关的一个或多个未知或未关联的附加属性或使该附加属性与数据相关联,该附加属性诸如时间或其它信息(例如空间信息和/或其它性质,诸如版本、源、目的地、一个或多个潜在用途或预期分析、与该数据集之中的另一项或组的因果关系的概率或事实等等)。在以上非限制性示例中,可在由示例性系统302接收之后确定和/或分配与空间信息有关的属性,和/或使该属性与数据相关联。
此外,示例性系统302可被配置成在由示例性系统302接收之后确定和/或分配与数据有关的一个或多个未知或未关联的附加属性或使该附加属性与数据相关联,该附加属性诸如时间或其它信息(例如空间信息和/或其它性质,诸如版本、源、目的地、一个或多个潜在用途或预期分析、与该数据集之中的另一项或组的因果关系的概率或事实等等)。此外,示例性系统302可进一步配置成基于该分析或解释来动态地计算和/或分配区间至该数据。例如,在识别与该数据有关的多种属性的情况下,示例性系统302可被配置成计算与该属性或多种属性有关的一个或多个区间。
作为又一示例,示例性系统302可基于与该数据有关的时间和/或其它信息(例如空间信息和/或其它性质,诸如版本、源、目的地、一个或多个潜在用途或预期分析、与该数据集中的另一项或组的因果关系的概率或事实)动态地计算和/或分配时间区间。作为又一示例,与空间信息或与该数据有关的其它信息有关的属性(诸如与数据集中的另一项或组的因果关系的概率或事实或该数据的一个或多个潜在用途或预期分析)可由示例性系统302利用,以便于动态地计算和/或分配与该属性或多个属性有关的一个或多个区间。
示例性系统302可进一步配置成确定、创建与一个或多个区间和/或属性有关的一个或多个策略,和/或使该一个或多个策略与数据相关联。在非限制性实施例中,示例性系统302可便于将重要性附加至数据(例如与属性和/或区间相关联的策略,允许过去或不同位置的数据基于个人偏好、个人排名系统的规范、历史数据的权重等等而排名较低),这样可便于对数据加权,使得它与随后的分析较不相关,等等。在又一非限制性示例中,多个实施例能实现将时间重要性附加至数据,以便于随着历史数据老化而对历史数据加权,从而使其变得对查询结果较不相关,等等。在又一非限制性实施例中,与该数据的一个或多个区间和/或属性有关的策略可由示例性系统302使用,以便于数据组织、数据保持、数据搭配、创建索引、创建统计或其它概要,等等。
例如,在另外的非限制性实施例中,示例性系统302可被配置成通过利用数据属性、区间和/或策略对数据执行多种操作,包括:进一步的分析、解释和推断;确定数据之间的关系,诸如可能性、概率、因果关系等等;分配进一步的区间;创建和关联进一步的策略;数据组织;数据保持;数据搭配;创建索引;创建统计或其它概要等等。因此,图3描绘了数据306,包括数据304以及确定的和/或分配的或与数据304相关联的任何属性,任何计算的和/或分配的区间,和/或与区间和/或属性有关的确定的、创建的和/或关联的策略。
注意,虽然图3将数据306描绘为包括属性、区间和策略之间的一对一关联(例如每个属性示为具有相应的区间和策略),但本申请不限于此。例如,可以理解,区间可以与一个以上属性有关(例如,诸如在与空间和时间属性有关的有效性区间的示例性情况下)。在又一示例中,策略可与一个以上属性和/或区间及其任何组合有关。因此,示例性系统302可灵活地并动态地分析数据、属性以及区间,可创建策略,且可便于对数据执行非结构化的操作和分析,而诸如向量时钟和时间数据库之类的常规系统可能受它们固有的严格结构规范的限制。
因此,由示例性系统302接收的数据304可根据本申请的多个方面而加以丰富,以便于动态地创建对数据和其中的关系的洞察,执行流分析,执行根本原因分析,产生基于信任的结果、数据组织、老化以及保持,从大数据流创建推断,等等。此外,注意,虽然数据306被描绘为包括数据302和相应的属性、区间以及策略,但本申请的多个实施例不限于此。换言之,另外的非限制性实施例可通过将这样的信息附加至数据或以其它方式(例如通过文件系统、数据库系统的跟踪,等等)来关联属性、区间、策略,等等。
作为非限制性示例,在与用户的朋友相关的数据有关的社交联网分析中,用户可能对最近发生的更新感兴趣。然而,作为较旧数据的更新在存储和保持方面通常与新更新以相同优先级来对待(例如,仅新数据的呈现方面被给予优先级)。在关于金融股票走势的分析和关联的又一非限制性示例中,用户可对与股票有关的近来的发展和更新感兴趣,排除更远时间的发展。例如,虽然公司的历史表格10-K年报通常在股价数据的呈现中被忽视,但与针对该公司的诉讼有关的最近新闻发展可恢复该历史10-K在股价数据走势分析中的相关性。作为另一说明,时间属性的无差别表示可能典型地将历史表格10-K数据视为可能具有时间戳的文件,该文件甚至可能具有与其关联的一年或一季度的常规的时间区间(例如,直到下次更新)。然而,显然该数据的诉讼属性(例如诉讼的各方和主体,诉讼类型等等)会具有比历史表格10-K数据的简单金融属性长的视界,从而具有比历史表格10-K数据的简单金融属性长的时间重要性或相关性。此外,在查看股价走势数据的情境下,与提到相同各方、诉讼主体或诉讼类型的最近新闻报道有关的数据可与历史表格10-K数据有因果关联或非常相关,和/或改变历史表格10-K数据的重要性。相应地,本申请的多个实施例便于计入这样的异类情况并改变不同属性的重要性,且能创建用于多种功能(例如搭配数据、在数据上创建索引、使数据的影响淡出数据集,等等)的策略,常规系统迄今为止无法计入这些情况。
在又一示例中,多个实施例可便于完全老化数据对数据集的影响,诸如基于进出规则从数据集移除数据、使用区间作为加权因子和/或基于更复杂的分析或推断的动作(例如基于贝叶斯概率的动作,等等)。例如,示例性系统302可采用诸如时间区间之类的区间作为划分策略(例如在一系列系统或存储盘之间的特定系统或存储盘上定位与特定用途、分析、推理或推断操作等等相关联的与时间区间有关的特定数据或事件)或作为维护策略(例如老化特定数据集时间区间的数据或事件,等等)。
在另一非限制性示例中,在确定事件是因果关联还是仅相关时,示例性系统可采用诸如时间区间之类的区间来确定因果关系、相关的可能性,等等。例如,对于在时间上顺序发生的两份数据或事件,例如先例和先行,先例和先行可相关或不相关。此外,先例可与先行因果关联(例如先例是先行的起因),但先行不会是先例的起因,因为先例比先行在时间上先发生,或在时间区间中先发生。相应地,在多个非限制性实施例中,如本文所描述,示例性系统可采用诸如时间区间之类的区间来确定因果关系以及关联等等。按照相似的方式,关于数据或事件在空间中的物理接近程度,在时间上顺序发生的两份数据或事件由于缺少物理接近程度而可能被排除具有因果关系。因此,如上所述,本申请能有利地便于区分因果关系与关联。
在非限制性的示例性实施例中,与时间有关的属性和区间可采用时间上的简单线性排序,使得能使用向量时钟系统,以从该向量时钟时间而不是从绝对时钟时间或一些相似的概念(诸如系统时钟时间)作出推断。在其它示例性实施例中,可采用其它时间概念,诸如基于事件顺序的相对时间(例如将数据视为因果相关的一系列事件)、GPS时钟时间,等等。此外,根据另一非限制性方面,可采用这样的时间概念来创建诸如贝叶斯推断之类的推断,以更新概率模型中的与数据相关联的不确定性(以及预测或推断)。
因此,在非限制性实施例中,示例性系统302可动态地产生或学习数据或事件的相关性的时间区间(例如在数据或事件进入系统时,等等),以用于如上所述地确定因果关系。可以理解,像空间数据(诸如GPS坐标)一样,诸如时间戳之类的时间数据一般被认为是关于与相关联的数据或事件相对绝对的固定值或硬值。然而,相关性时间区间可能高度依赖于多个因子。作为进一步说明,相关性时间区间可依赖于多个非限制性因子,包括数据或事件的用途或预期用途、数据或事件的用户或多个用户、数据或事件的环境(例如该数据或事件的地理位置),等等。
在其它非限制性实施例中,示例性系统302可产生或学习时间区间,以用于随着时间的因果关系目的。因此,在多个实施例中,对于事件或数据,并不是仅在其进入系统时加上时间戳,示例性系统可基于分析类型(例如,经由时间贝叶斯网络等等)动态地确定时间区间,诸如记住该数据或事件成立(例如该数据或事件保持为真、保持坚持基于时间区间的策略等等)多长时间。例如,如上所述,与数据或事件有关的观测或分析会随时间变得较不精确,使得保持或包含与该观测或分析有关的数据或事件变得不那么合乎需要。
此外,如上进一步描述,该数据或事件的不同属性可具有不同的时间线,这些属性在该时间线上老化(例如,与其它属性或数据相比,该属性或关联数据的重要性随时间变得较不相关)。因此,在另外的非限制性实施例中,如本文进一步描述,示例性系统可将动态确定的时间区间用于其它目的(诸如在诸如盘存储、存储器之类的尺寸受限装置或组件上的数据组织、重新组织和/或保持,等等)。相应地,示例性系统302可自动地自我调谐以记住预定时间段的数据或事件和/或属性、区间和/或策略(例如根据基于时间区间的策略,根据预期的、预定的和/或推断的未来用途或分析,根据确定的和/或推断的与其它数据或事件的关系,等等)。
例如,将“我患有癌症”“我有新轿车”的断言等等视为事件。这两个事件大不相同,在它们的时间相关性方面,对于用户的状态、他或她的未来状态以及对于任何特定时间点的分析而言具有大不相同的含义。在又一示例中,股价数据和其它事件(例如新闻稿、收益报告、表格10-K、法院判决等等)进入自动化系统,且由于示例性系统302给那些数据或事件自动分配时间区间,这些数据或事件可被维持以用与保持目的、用于分析目的、用于对数据的结构化组织(诸如基于数据的年龄或其对推理和分析的相关性将数据移至冷门服务器,等等)、制作概要、进行积累、或基于时间进行预计算以按照低保真度记住该数据(例如,可总结过去的数据或事件,从而提供准确度或粒度较低的表示,由此限制存储要求,等等)。
在数据高速缓存示例中,示例性系统可采用利用时间区间来便于高速缓存管理的策略。作为非限制性示例,即便特定数据或事件可能如由关联的时间区间所标识的那样相对旧,如果存在基于该特定数据或事件的频繁查询(例如诸如对该人的生日日期的频繁查询,等等),则该特定数据或事件可根据与相关联的时间区间有关的高速缓存管理策略而被保存在该高速缓存中。因此,在多个非限制性实施例中,示例性系统可将此类用途识别为该数据的属性(例如诸如对该人的生日日期的频繁查询,等等),并修改或更新与该数据或事件相关联的关联时间区间(例如增大相关联的时间区间,等等)。
在另外的非限制性实施例中,示例性系统可基于所识别的特定数据或事件的用途或在识别相似类型的未来数据或事件的用途时作出的修改或更新中的一个或多个,来动态地产生时间区间。即,一旦基于用途属性更新数据或事件的区间,示例性系统就可推断这样的属性适用于类似数据,并在未来将这些区间应用于这样的相似数据(或用于已经接收的这样相似类别的数据)。因此,在非限制性示例中,针对未来数据或事件动态产生的时间区间可根据高速缓存管理策略在高速缓存中被保存更久,这将保持数据或事件接近,以用于更容易访问、在与数据或事件相关联的时间区间中的置信度,等等。
在另外的非限制性示例中,系统302可便于在处理大数据时产生近似结果、创建数据的统计描述或概况、通知数据集合中数据的采样、向数据添加加权函数、和/或降低老化数据的权重,等等。例如,图4是示出根据另外的非限制性方面的示例性系统302的框图。例如,示例性系统302可被配置成在数据(例如数据集306,考虑或不考虑另外的数据,等等)上产生近似结果402,诸如一个或多个统计描述或统计概要404,其中统计概要404的细节可依赖于数据或事件的年龄。统计概要404或描述可进一步包括例如通过考虑数据年龄而从数据或事件集(例如包括数据集306,考虑或不考虑进一步的数据,等等)自动组成的数据或事件组的平均或概要,从而避免以后为了该数据或事件组的每次继续使用而查询数据或事件集。
作为另一示例,对于具有长达10年的数据或事件的集合,相比于适用于数年前的数据或事件,特定用途、分析或查询可能相对更适用于上周的数据或事件。因此,示例性系统302可提供包括相对较旧数据或事件的数据或事件的一个或多个近似结果402(例如统计概要404、取样推荐、平均,等等),可基于一个或多个预期用途(例如查询、分析等等)采用这一个或多个近似结果以提供特定保真度(例如在给定误差内、在给定保真水平内等等)的结果。
此外,近似结果402还可包括与数据或事件相关联或有关的加权函数406(例如,诸如从数据保持和/或数据老化策略导出的时间加权函数,或其它加权函数)。因此,可基于数据或事件的年龄对示例性系统302加权。作为非限制性示例,可相对于较新数据或事件降低相对较旧数据或事件的权重,以及应用其它加权方案。因此,这样的近似结果可通知对数据集中的数据采样(例如通过降低老化数据的权重)以用于该数据集中的数据的未来用途。例如,如果特定用途根据加权函数406(诸如时间加权函数)预期超过一年的数据或事件被降低权重100倍,则可预期可在相对较旧的数据或事件中获得更大的误差。
此外,数据或事件在时间上越久,其区间的置信度越低。即,对于数据或事件的给定用途或分析,数据或事件的区间可能不再有效。相应地,基于时间区间,可推理出,与时间区间相关联的数据或事件不再准确,从而该数据或事件可基于其时间区间的置信度来组织或保持。例如,不是将多个个体数据点或事件(例如10000个人员薪酬,等等)用于给定用途,而是可基于相关联的时间区间或相关联的时间区间的相应置信度对个体数据点或事件进行分组、组织和/或保持(例如将所保持的10000个人员薪酬的数据或事件替换为积累的值或表示,等等)。因此,根据另一非限制性方面,可采用相对较旧数据或事件的数据或事件的一个或多个概要,识别相关联的较大误差,来有效地提供特定保真度的结果。相应地,示例性系统的另一非限制性实现方式可采用时间加权函数来便于有效地提供特定保真度的结果。
虽然上述内容在时间区间方面描述了数据或区间中的置信度,但相似的讨论应用相关于其它属性或信息(例如位置信息、与数据源有关的信息、与未来用途或分析有关的信息,等等)。在非限制性示例中,对于基于位置的数据或事件(例如具有位置属性),可以理解,随着数据或事件老化,该位置中的置信度将劣化,尤其在每分钟产生大量新数据的高度移动和相联系的社会中。然而,随着随后的基于位置的数据或事件被考虑进来,较早的基于位置的数据或事件中的置信度可被提高、保持原样或降低。
因此,基于位置的数据可在某种程度上与时间无关地“老化”(例如变得更可靠或更不可靠)。例如,对于与对象(例如用户的移动设备、信用卡交易的位置、网络事件的源,等等)的位置有关的一系列测量,在随后测量之间,测量中的置信度会仅因为时间的流逝而降低(例如随着与测量有关的数据或事件老化),直到将另一测量考虑进来。因此,在某种意义上,与位置属性相关联的区间可随着其老化而在时间上增大(例如该位置属性所相关的对象可能已移动),但在该属性中的置信度降低。因此,对于给定用途,可预期其置信度对于该区间降低,直到基于位置的数据或属性被更新。注意,虽然以上描述假定初始的基于位置的数据简单地被新的基于位置的数据点更新,但也可以基于由示例性系统302作出的推断,根据对与其它数据306或数据302的关系的理解,更新该基于位置的数据的位置属性。
同样的原则适用于在数据或区间中置信度的讨论内对与数据源(例如数据源、多个源、确认或否认推断的多个源等等)有关的属性的讨论。数据302或数据306的初始数据点可具有源属性,且可具有与其相关联的区间。该数据中的置信度可依赖于初始假定的可靠性。该数据中的置信度、源属性和/或区间可依赖于诸如时间流逝之类的事件(例如公司倒闭、人们换手机、URL(统一资源定位符)会改变,等等)。此外,来自新源的另外的数据可确认或否认数据,新源的相对数量不仅会影响数据本身的置信度,还会影响从数据本身进行的推断、初始数据点的源属性、区间以及其中的置信度。因此,如果存在许多确认的数据源,可能需要不均等地对来自特定源的数据加权,以完成数据组织、数据保持、数据分析等等。因此,本申请的多个实施例可采用加权函数406来便于根据多种考虑、数据、属性、区间等等对数据加权(例如降低老化数据的权重,等等)。
在其它非限制性示例中,近似结果402可包括由示例性系统302产生的复杂索引408(或多个索引或概要),以便于对数据或事件集的更高效查询(例如基于对加权函数、属性、区间和/或策略的了解)。例如,在了解与特定数据306有关的特定存储或保持策略或预期分析之后,示例性系统302可基于对从与数据集交互获得的示例性系统302的了解(例如了解数据306由于已经淡出该系统而不可用、数据306对于预期目的不再有效或不再可靠,等等)来提供特别包括或排除这样的数据306的索引(例如替代统计概要404等等)。
图5是示出根据另外的非限制性方面的示例性系统的框图。例如,图5描绘了如前所述的示例性系统302。在非限制性实施例中,示例性系统302可包括如本文中进一步描述的计算设备,该计算设备包括其上存储有计算机可执行组件的存储器,以及可通信地耦合至该存储器的处理器,其中该处理器配置成便于计算机可执行组件的执行。因此,示例性系统302可包括诸如分析组件502、区间组件504、策略组件506和/或概要组件508或其部分之类的计算机可执行组件,以及配置成执行如本文所属的功能的另外的可执行组件。
作为非限制性示例,分析组件502可配置成解释由计算设备接收的数据,以确定该数据的一个或多个之前未确定或未知的属性(例如以上关于图2-3所描述的属性,等等),以创建该数据的一个或多个属性。此外,分析组件502可进一步配置成部分地基于该一个或多个属性确定如本文所描述的与其它数据的因果关系,作为与该数据相关联的第二属性。在另外的非限制性示例中,区间组件504可配置成基于该数据的一个或多个属性以及与该数据相关联的第二属性将一个或多个区间分配给该一个或多个属性。
在另一非限制性示例中,策略组件506可被配置成使策略与一个或多个属性或区间相关联,以便于对数据的管理。例如,策略可以是数据老化策略、数据保持策略、数据组织策略、数据排名策略、根据加权函数对历史数据的加权策略以及如本文所描述的其它策略。此外,如本文进一步描述,概要组件508可基于一个或多个属性或区间以及该策略而产生与该数据有关的近似结果。例如,如本文所描述,该近似结果可包括该数据的概要、与该数据有关的加权函数或与该数据有关的索引。
图6是示出实施例中的用于数据管理的非限制性过程的流程图。例如,在600,分析或解释由计算设备接收的数据,以确定该数据的一个或多个属性。例如,如上所述,该数据的一个或多个属性可包括该数据的之前未知或未确定的属性。在610,基于该分析将区间分配给一个或多个属性,或使该区间与一个或多个属性相关联。如上所述,区间可被计算为与该数据的一个或多个属性相关联的时间区间,且该数据的一个或多个属性可包括时间属性、空间属性、版本属性、网络位置、因特网协议地址、该数据的源、该数据的目的地、与其它数据的关系、或该数据的未来用途以及本文中描述的其它属性。
在620,确定策略和/或使该策略与该一个或多个属性或区间相关联,以便于对该数据的管理。例如,除上述其它策略之外,策略可包括数据老化策略、数据保持策略、数据组织策略、数据排名策略。作为另一示例,数据排名策略可包括个人排名系统,而数据老化策略可包括根据加权函数对历史数据的加权策略,等等。可选地,在630,与其它数据的关系被确定为与该数据相关联的第二属性。作为另一选择,在640,基于一个或多个属性或区间以及策略,产生和/或存储与该数据有关的近似结果。例如,如本文所描述,近似结果可包括该数据的概要、与该数据有关的加权函数或与该数据有关的索引。
示例性联网以及分布式环境
本领域技术人员可以理解,此处描述的多个数据管理实施例可结合任何计算机或其它客户机或服务器设备来实现,其可被部署为计算机网络的部分或在分布式计算环境中,并且可以被连接到任何类型数据存储。在这一点上,此处描述的多个实施例可在具有任何数量的存储器或存储单元的、以及任何数量的应用和进程跨任何数量的存储单元发生的任何计算机系统或环境中实现。这包括但不限于具有部署在具有远程或本地存储的网络环境或分布式计算环境中的服务器计算机和客户机计算机的环境。
分布式计算通过计算设备和系统之间的通信交换提供了计算机资源和服务的共享。这些资源和服务包括信息的交换、对于诸如文件等对象的高速缓存存储和盘存储。这些资源和服务还包括多个处理单元之间的处理能力共享以便进行负载平衡、资源扩展、处理专门化,等等。分布式计算利用网络连接,从而允许客户机利用它们的集体力量来使整个企业受益。就此,各种设备可具有可参与如参考本公开的多个实施例描述的数据管理机制的应用、对象或资源。
图7提供了示例性的联网或分布式计算环境的示意图。该分布式计算环境包括计算对象710、712等以及计算对象或设备720、722、724、726、728等,这些计算对象或设备可包括如由应用730、732、734、736、738和数据存储740表示的程序、方法、数据存储、可编程逻辑等。可以理解,计算对象710、712等以及计算对象或设备720、722、724、726、728等可包括不同的设备,诸如个人数字助理(PDA)、音频/视频设备、移动电话、MP3播放器、个人计算机、膝上型计算机等。
每个计算对象710、712等以及计算对象或设备720、722、724、726、728等可通过通信网络742直接或间接与一个或多个其他计算对象710、712等以及计算对象或设备720、722、724、726、728等进行通信。即使在图7中被示为单个元件,但通信网络742可包括向图7的系统提供服务的其他计算对象或计算设备,和/或可表示多个互连网络(未示出)。每个计算对象710、712等或计算对象或设备720、722、724、726、728等还可以包含可以利用API或其他对象、软件、固件和/或硬件的、适于实现根据本发明的多个实施例所提供的数据管理技术或与之通信的应用,诸如应用730、732、734、736、738。
存在支持分布式计算环境的各种系统、组件和网络配置。例如,计算系统可由有线或无线系统、本地网络或广泛分布的网络连接在一起。当前,许多网络被耦合至因特网,后者为广泛分布的计算提供了基础结构并包含许多不同的网络,但任何网络基础结构可用于变得与如多个实施例中所描述的数据管理系统相关联的示例性通信。
由此,可使用诸如客户机/服务器、对等、或混合体系结构之类的网络拓扑结构和网络基础结构的主机。“客户机”是使用与它无关的另一类或组的服务的一类或组中的成员。客户机可以是进程,即大致上是请求由另一程序或进程提供的服务的一组指令或任务。客户机进程利用所请求的服务,而不必“知道”有关其他程序或服务本身的任何工作细节。
在客户机/服务器体系结构中,尤其在联网系统中,客户机通常是访问另一计算机(例如,服务器)所提供的共享网络资源的计算机。在图7的图示中,作为非限制性示例,计算对象或设备720、722、724、726、728等可被认为是客户机而计算对象710、712等可被认为是服务器,其中计算对象710、712等担当提供数据服务的服务器,诸如从客户机计算对象或设备720、722、724、726、728等接收数据、存储数据、处理数据、向客户机计算对象或设备720、722、724、726、728等发送数据,但任何计算机都可取决于环境而被认为是客户机、服务器或两者。
服务器通常是可通过诸如因特网或无线网络基础结构之类的远程网络或本地网络访问的远程计算机系统。客户机进程可在第一计算机系统中活动,而服务器进程可在第二计算机系统中活动,它们通过通信介质相互通信,由此提供分布式功能并允许多个客户机利用服务器的信息收集能力。按照此处所描述的技术来利用的任何软件对象可以被单独提供或分布在多个计算设备或对象上。
在其中通信网络742或总线例如是因特网的网络环境中,计算对象710、712等可以是其他计算对象或设备720、722、724、726、728等通过诸如超文本传输协议(HTTP)等多种已知协议中的任一种与其通信的web服务器。担当服务器的计算对象710、712等还可用作客户机,例如计算对象或设备720、722、724、726、728等,这是分布式计算环境的特性。
示例性计算设备
如上所述,有利的是,此处所描述的技术可适用于期望在计算系统中执行数据管理的任何设备。因此,可以理解,构想了结合多个实施例使用的所有种类的手持式、便携式和其他计算设备和计算对象,即,在设备的资源使用可理想地优化的任何地方。因此,以下在图8中所述的通用远程计算机只是计算设备的一个示例。
尽管并非所需,但各实施例可部分地经由操作系统来实现,以供设备或对象的服务开发者使用和/或被包括在用于执行此处所述的多个实施例的一个或多个功能方面的应用软件内。软件可以在由诸如客户端工作站、服务器或其他设备等一个或多个计算机执行的诸如程序模块等计算机可执行指令的通用上下文中描述。本领域的技术人员可以理解,计算机系统具有可用于传递数据的各种配置和协议,并且由此特定配置或协议都不应当被认为是限制性的。
因此,图8示出了其中可实现本文所述多个实施例的一个或多个方面的合适的计算系统环境800的一个示例,尽管如上所述,计算系统环境1800仅为合适的计算环境的一个示例,并非对使用范围或功能提出任何限制。也不应当将计算系统环境800解释为对在示例性计算系统环境800中所示的组件中的任何一个或其组合有任何依赖或要求。
参考图8,用于实现一个或多个实施例的示例性远程设备包括计算机810形式的通用计算设备。计算机810的组件可包括,但不限于,处理单元820、系统存储器830、以及将包括系统存储器的各种系统组件耦合到处理单元820的系统总线822。
计算机810通常包括各种计算机可读介质,并且可以是可由计算机810访问的任何可用介质。系统存储器830可包括诸如只读存储器(ROM)和/或随机存取存储器(RAM)之类的易失性和/或非易失性存储器形式的计算机存储介质。作为示例而非限制,系统存储器830还可包括操作系统、应用程序、其他程序模块、以及程序数据。根据另一示例,计算机810还可以包括各种其他介质(未示出),可以包括,但不限于,RAM、ROM、EEPROM、闪存或其他存储器技术,CD-ROM、数字多功能盘(DVD)或其他光盘存储、磁带盒、磁带、磁盘存储或其他磁存储设备或可用于存储所需信息的其他有形的和/或非瞬时介质。
用户可通过输入设备840向计算机810输入命令和信息。监视器或其他类型的显示设备也经由诸如输出接口850之类的接口连接到系统总线822。除监视器以外,计算机还可包括诸如扬声器和打印机之类的其他外围输出设备,它们可通过输出接口850连接。
计算机810可使用到一个或多个其他远程计算机(诸如远程计算机870)的诸如网络接口860的逻辑连接在联网或分布式环境中操作。远程计算机870可以是个人计算机、服务器、路由器、网络PC、对等设备或其他常见网络节点、或者任何其他远程媒体消费或传输设备,并且可包括以上关于计算机810所述的任何或全部元件。图8所示的逻辑连接包括诸如局域网(LAN)或广域网(WAN)之类的网络872,但也可包括其他网络/总线。这些联网环境在家庭、办公室、企业范围的计算机网络、内联网和因特网中是常见的。
如上所述,尽管结合各种计算设备和网络体系结构描述了各示例性实施例,但底层概念可被应用于任何网络系统和任何计算设备或系统。
此外,存在实现相同或相似功能的多种方法,例如适当的API、工具箱、驱动程序代码、操作系统、控件、独立或可下载软件对象等,它们使得应用和服务能够使用此处提供的技术。由此,此处的实施例从API(或其他软件对象)的观点以及从实现如此处描述的一个或多个实施例的软件或硬件对象来构想。由此,此处所述的多个实施例可具有完全采用硬件、部分采用硬件并且部分采用软件、以及采用软件的方面。
本文中所使用的词语“示例性”意味着用作示例、实例、或考虑。为避免疑惑,本文所公开的主题不限于这些示例。另外,在此所述的被描述为“示例性”的任意方面或设计并不一定要被解释为相比其它方面或设计更优选或有利,也不意味着排除本领域技术人员已知的等效示例性结构和技术。此外,在使用术语“包括”、“具有”、“包含”和其他类似词语的程度上,为避免疑惑,这些术语旨在以类似于术语“包括”作为开放的过渡词的方式是包含性的而不排除任何附加或其他元素。
如所述的,此处所述的多种技术可结合硬件或软件或,在适当时,以两者的组合来实现。如此处所使用的,术语“组件”、“系统”等同样旨在指示计算机相关实体,或者是硬件、硬件和软件的组合、软件或者是执行中的软件。例如,组件可以是,但不限于是,在处理器上运行的进程、处理器、对象、可执行码、执行的线程、程序和/或计算机。作为说明,在计算机上运行的应用和计算机都可以是组件。一个或多个组件可以驻留在进程和/或执行线程中,并且组件可以位于一个计算机内和/或分布在两个或更多计算机之间。
已经参考若干组件之间的交互描述了如前所述的系统。可以理解,这些系统和组件可包括这些组件或指定的子组件、某些指定的组件或子组件和/或附加的组件,并且根据上述内容的各种置换和组合。子组件还可作为通信地耦合到其他组件的组件来实现,而不是被包括在父组件内(层次性)。另外,应注意到一个或多个组件可被组合成提供聚集功能的单个组件中,或被分成若干单独的子组件,且诸如管理层等任何一个或多个中间层可被设置成通信耦合到这样的子组件以便提供集成功能。此处所述的任何组件也可与一个或多个此处未专门描述的但本领域技术人员一般已知的其他组件进行交互。
鉴于以上所述的示例性系统,参考各附图的流程图还可理解根据所述的主题实现的方法。尽管为了简洁起见,作为一系列框示出和描述的方法,但是应当理解,各实施例不仅仅限于框的次序,因为一些框可以与此处所描绘和描述的框不同的次序发生和/或与其他框并发地发生。尽管经由流程图示出了非顺序或分支的流程,但可以理解,可实现达到相同或类似结果的各种其他分支、流程路径和框的次序。此外,并非全部所示的框都是实现下面所述的方法所必需的。
除了此处所描述的多个实施例之外,可以理解,可以使用其他相似的实施例或者可对所述实施例作出修改和添加以便执行对应的实施例的相同或等效的功能而不背离这些实施例。此外,多个处理芯片或多个设备可共享此处所述的一个或多个功能的性能,并且类似地,存储可跨多个设备实现。因此,本发明不应限于任何单个实施例,而是应当根据所附权利要求书的广度、精神和范围来解释。