CN101611402B - 用于优化数据集的变化的系统和方法 - Google Patents

用于优化数据集的变化的系统和方法 Download PDF

Info

Publication number
CN101611402B
CN101611402B CN2007800468787A CN200780046878A CN101611402B CN 101611402 B CN101611402 B CN 101611402B CN 2007800468787 A CN2007800468787 A CN 2007800468787A CN 200780046878 A CN200780046878 A CN 200780046878A CN 101611402 B CN101611402 B CN 101611402B
Authority
CN
China
Prior art keywords
data
data set
operational symbol
data element
centralization
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.)
Active
Application number
CN2007800468787A
Other languages
English (en)
Other versions
CN101611402A (zh
Inventor
S·兰茨
L·詹森
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nasdaq Technology AB
Original Assignee
OMX Technology AB
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=39253872&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=CN101611402(B) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by OMX Technology AB filed Critical OMX Technology AB
Publication of CN101611402A publication Critical patent/CN101611402A/zh
Application granted granted Critical
Publication of CN101611402B publication Critical patent/CN101611402B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/04Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor

Abstract

一种用于产生待发送给远程终端的更新数据集的系统和方法。该更新数据集包括描述在两个数据集之间差异的运算符,从而远程终端能够将旧的数据集转换为更新的数据集。该系统包括用于比较数据集中数据元的比较器,和用于基于存储器中保存的变化参数来选择运算符的选择器。

Description

用于优化数据集的变化的系统和方法
技术领域
本发明涉及在计算机环境中的数据传播,本发明尤其涉及提取数据集中的变化以用于在计算机网络中分发这些变化。
背景技术
现今,通过计算机网络发送数据是非常普遍的。由于技术进步,所发送的数据量迅速增长,使得与以前相比能够以更高的速度发送和处理更多数据。此外,新的应用也需要更多数据,因为这些新的应用变得更加复杂。计算机系统一其中数据传播技术是最重要的部分之一的例子是电子交易系统。
证券、衍生物、商品和其它金融工具的电子交易导致必须分发给用户的大量数据,这些用户需要这些数据来作出交易决定、统计计算和其它评估。在高性能计算机系统中提取和发送所有这些信息的过程对处理器的要求非常高。CPU的时间量是稀有资源,不应该浪费在本可以避免的执行步骤上。
此外,连接到这样的中央交易系统的用户典型地希望尽可能快地拥有信息。在这些情况下,通过例如更新硬件来提高中央系统的性能可能是不够的。
为了摆脱系统中的瓶颈或者其它潜在问题,必须使用额外的技术。
因此,一种这样的额外技术是使处理器的工作更有效。例如,当在用户终端上更新数据集时,存在不同的方法。
一种通常使用的并且是明显的解决方案是一直发送替换旧数据集的全新数据集。这在数据集中只有一部分数据已经发生变化时通常是低效的。因此更有效的方式可以是只发送已经变化的数据集部分。更进一步的改进是发送delta变化。
另一种已知技术是发送描述两个数据集之间的差异的运算符。对第一数据集应用该运算符可以将第一数据集转变成第二数据集。
通过选择作用于数据集的良好的运算符集,优化是可能的。现今,可用于提取数据集差异的方法是不足的。因此,需要发展技术以用于以有效方式-例如通过更少的步骤-提取和选择运算符以便于减少处理器上的负载,并且用于减少在计算机系统中的诸如带宽的数据传播。
发明内容
因此,本发明是目标是提供用于产生待发送给远程终端的更新数据集的解决方案。
本发明的另一目标是提供从数据集中有效地提取数据的解决方案。
本发明的另一目标是提供一种解决方案,该解决方案基于数据集之间的差异有效地提取和/或选择运算符。
本发明的另一目标是提供产生待发送给远程终端的数据结构的解决方案。
本发明的另一目标是提供使用更少处理器时间的解决方案。
根据本发明的第一方面,上述目标和其它目标通过一种用于产生待发送给远程终端的更新数据集的计算机系统实现,该更新数据集包括描述包含分类数据元的第一数据集与包含分类数据元的第二数据集之间的差异的运算符,该计算机系统包括:
-存储器,该存储器包括第一数据集和第二数据集,
-比较器,该比较器可与存储器连接用于将第二数据集中的数据元与第一数据集中的数据元顺次比较,第一次比较的结果控制第一数据集中的哪个数据元与第二数据集中的哪个数据元将在第二次比较中进行比较,在每次比较之后更新存储器中的变化参数,并且在检测到第二数据集中的数据元与第一数据集中的数据元一致时启动选择器,
一所述选择器,该选择器可与存储器和比较器连接,该选择器用于基于存储器中存储的变化参数来确定运算符,并且将确定的运算符存储在存储器中,
由此产生待发送给远程终端的、包括描述第一数据集和第二数据集之间差异的运算符的更新数据集。
该计算机系统所具有的优点是,使得例如交易系统的计算机系统可以通过使用更少的CPU时间来更有效地产生更新数据集。例如,其原因在于该计算机系统使得通过从头到尾将每个数据集只运行一遍就可以对第一数据集和第二数据集进行比较。
该计算机系统进一步包括与选择器相关联的通信器,用于产生和发送包括更新数据集的更新消息。该消息可以包括诸如列表、阵列、位棋盘(bitboard)、堆栈、堆(heap)、树或者集合等等的数据结构,所述数据结构包括待发送给远程终端的数据集。优选地,通过使用FIX标准来发送消息,然而可以使用本领域技术人员熟知的任何其它协议来发送该消息,所述协议例如是Omnet API、XTP、SSL或者任何其它标准或者专有的协议。
优选地,第一数据集和第二数据集包括随时间变化的动态数据元。例如,第一数据集可以是在时间T1时交易系统中的命令薄,第二数据集可以是在时间T2时的命令薄。命令薄中的数据可能已经在时间T1和T2期间发生了变化,因为针对销售金融工具进行买入或者报价的新命令可能已经进入。信息传播系统可以按照特定的预定时间间隔或者基于命令薄中的活动而向远程终端传播信息。例如,如果命令薄没有接收到任何新命令,则向远程终端发送新的更新是没有意义的。然而,当新命令进入命令薄时,则必须向远程终端传播新信息。因此,当在这个时间点发生活动时,发送更新消息可能是必要的。可能在命令薄中发生变化的另一个例子是在状态转换期间,例如当开启或者关闭命令薄时。
因此,第二数据集是第一数据集的后续版本(later version)。这样,中央系统可以比较已经发生了什么变化,并且因为中央系统知道远程终端拥有什么数据集,因此该中央系统可以提取运算符以存储和发送到更新数据集中。此外,也可以将第一数据集和第二数据集之间的变化的特定部分发送给具体的远程终端,因为远程终端上的用户可能希望得到与数据集的不同部分有关的信息。
优选地,运算符是从包括下列运算符的组中确定的:添加运算符、删除运算符、替换运算符。通过基于变化参数确定这些运算符,可以产生更新数据集。如后面在本文献中所描述的那样,这些运算符可以结合起来。
变化参数优选地包括与第一数据集相关的第一计数器和与第二数据集相关的第二计数器。这样,可以以更准确的方式监控和管理选择过程。因此,选择器可以基于与第一数据集相关的第一计数器和与第二数据集相关的第二计数器之间的关系来确定运算符。这加速了选择过程,因为所述关系优选地是从一组关系中所选择的关系,所述组包括:>、<、=、≥、≤或者≠。基于计数器之间的关系,可以确定至少一个运算符:添加、删除、替换。
变化参数可以进一步包括与第一数据集关联的第一位置参数和与第二数据集关联的第二位置参数,以用于对比较器在第一数据集和第二数据集中的逻辑位置进行追踪。这样,可以以更加准确的方式监控和管理对第一列表和第二列表进行顺序比较的结果。
运算符可以包括delta变化。因此,如果只有一部分数据元已经变化,则该运算符可以描述已经变化的这部分数据元。然而,该运算符也可以描述应该例如删除或者替换或者添加整个数据元。
每个数据元在正常情况下至少包括键(key)。然而,数据元也可以包括数据部分。一般地,数据部分可以是空的。然而在交易系统中,典型的键是命令薄中的价格。数据部分可以例如是针对那个价格的总容量。然而,如果键包括价格和时间,则发送整个键不总是必要的。数据元分类可以基于价格和时间,但是只有价格可以被发送给远程终端。
在本发明的第二方面中,上述目标和其它目标通过包括如上所述的计算机系统的电子交易系统来实现。
因此在电子交易系统中,计算机系统可以是集成模块。该计算机系统也可以是作为信息提取系统来单独出售的独立模块。
在本发明的第三方面中,上述目标和其它目标通过用于产生待发送给远程终端的更新数据集的方法实现,该更新数据集包括描述包含分类数据元的第一数据集与包含分类数据元的第二数据集之间差异的运算符,所述方法包括下列步骤:
-将第一数据集中的数据元与第二数据集中的数据元顺次地比较,第一次比较的结果控制第一数据集中的哪个数据元与第二数据集中的哪个数据元将在第二次比较中进行比较,
-在每次比较之后,将变化参数在存储器中进行更新,
-在检测到第二数据集中的数据元与第一数据集中的数据元一致时,启动选择过程,该选择过程基于存储在存储器中的变化参数来确定运算符,
-将确定的运算符存储在存储器中,从而产生待发送给远程终端的更新数据集,该更新数据集包括描述第一数据集与第二数据集之间差异的运算符。
该方法所具有的优点是,使得诸如交易系统的计算机系统可以通过使用更少的CPU时间而更有效地产生更新数据集,因为本发明例如使得通过从头到尾将每个数据集只运行一遍就可以对第一数据集和第二数据集进行比较。
该方法可以进一步包括关联所确定的运算符来比较数据元的步骤。这样,系统可以跟踪运算符应该被用于哪个数据元。
该方法也可以包括这样的步骤:从包括下列运算符:添加运算符、删除运算符、替换运算符的组中确定至少一个运算符。通过基于变化参数来确定这些运算符可以产生更新数据集。如下面在本文献中所描述的那样,可以将这些运算符结合起来。
如上所述,变化参数可以包括与第一数据集相关的第一计数器和与第二数据集相关的第二计数器。因此,该方法可以进一步包括基于与第一数据集相关的第一计数器和与第二数据集相关的第二计数器之间的关系来确定运算符的步骤。
优选地,每个数据元都包括键和数据部分,该方法可以进一步包括将第一数据集的数据元的键和数据部分中至少一个与第二数据集的数据元的键和数据部分中至少一个进行比较的步骤。
如早先提到的,第一数据集和第二数据集可以包括随时间变化的动态信息。
在本发明的第四方面中,上述目标和其它目标通过根据任何一个前述方面和/或实施例的计算机程序产品来实现,该计算机程序产品存储在数据载体上。
本发明的这些和其它方面从后面所述的实施例中变得明显并且参照后面的实施例进行解释。
附图说明
图1示出计算机网络的概貌,在该计算机网络中可以使用本发明。
图2示出包括存储器、第一数据集、第二数据集、变化参数、比较器、选择器、更新数据集和接口的电子装置。
图3示出包括数据元的数据集,以及包括键和数据的数据元。
图4示出用于迭代在文中所述的数据集的算法。
图5示出数据集A和数据集B。
图6示出数据集A中的数据元与数据集B中的数据元的比较。
图7示出数据集A中的数据元与数据集B中的数据元的比较。
图8示出数据集A中的数据元与数据集B中的数据元的比较。
图9示出数据集A中的数据元与数据集B中的数据元的比较。
图10示出数据集A中的数据元与数据集B中的数据元的比较。
图11示出由选择方法选择的第一运算符。
图12示出数据集A中的数据元与数据集B中的数据元的比较。
图13示出数据集A中的数据元与数据集B中的数据元的比较。
图14示出数据集A中的数据元与数据集B中的数据元的比较。
图15示出数据集A中的数据元与数据集B中的数据元的比较。
图16示出数据集A中的数据元与数据集B中的数据元的比较。
图17示出数据集A中的数据元与数据集B中的数据元的比较。
图18示出由选择方法选择的附加运算符。
图19示出包括由选择方法选择的运算符的更新数据集。
图20示出使用运算符之前的数据集A和数据集B。
图21示出更新数据集中的一行。
图22示出应用第一运算符之后的数据集A的变化。
图23示出更新数据集中的一行。
图24示出应用第二运算符之后的数据集A的变化。
图25示出更新数据集中的一行。
图26示出应用第三运算符之后的数据集A的变化。
图27示出更新数据集中的一行。
图28示出应用第四运算符之后的数据集A的变化。
图29示出将运算符应用于数据集A之后的结果。
图30示出选择方法B。
具体实施方式
图1示出包括远程终端1、中央计算机2以及网关或者路由器3的计算机网络。在不同的装置之间,存在通过具有不同粗细的线4示出的连接。所述粗细表示带宽(数据速率)。粗线具有高的数据速率,而细线具有低的数据速率。图1中的3个前端计算机在屏幕上有字母,这表示该前端计算机是属于用户A、B和C的远程终端。通过包括线4和诸如路由器等等的网络装置的网络将更新数据集6从中央计算机2发送给远程终端1。更新数据集6在根据本发明的计算机系统5中产生。
图2示出根据本发明的计算机系统5。计算机系统5包括存储器10、比较器14、选择器15和用于发送更新数据集7的接口16。存储器10包括第一数据集11和第二数据集12。此外,该存储器包括用于存储变化参数13的区域、用于存储更新数据集7的区域和用于存储运算符18的区域。
图3示出数据集11和该数据集中的数据元17的放大部分。在该图中,数据元17既包括键又包括数据部分。然而,在本发明的另一实施例中,数据元17可以至少包括键部分。
在下面,将参照附图详细阐述本发明。将要解释可以如何决定/选择运算符的细节。
下面是用于选择运算符的方法的例子,所属运算符以有效方式描述了两个数据集之间的差异。
数据集由一个或者几个数据元组成,其中每个数据元都具有键和可能的数据部分。键与分类算法一起为每个数据元给出在数据集中的逻辑位置。
该方法基于:
(1)对有效的运算符集进行设计。
(2)对有效算法进行设计以评估两个数据集的差异,并且使用运算符集来描述这些差异。为了达到该目的,该算法对两个数据集使用一次遍历(one-pass traversing)。
该方法使用下述运算符集来描述两个数据集之间的变化:
方法介绍
在两个数据集中(键和数据部分都)一致的数据元是未变化的。该算法将未变化的数据元考虑为屏障(barrier)。该方法使用屏障来确认什么时候可以执行对运算符的优化。该方法基于这样的观察,即可以对在检测到屏障之前使用的运算符进行优化。
假设数据集A和B,见图5。从数据集A中,可以应用若干运算符来实现数据集B。下面描述的算法和方法提取这些将数据集A转化成数据集B的运算符。
在遍历数据集期间,优选使用下面的计数器#Del和#Add。这些计数器在初始时被设置成0或者任何其它满足相同目标的对应值。
然后根据键的分类命令,优选地从开始遍历数据集A和数据集B。
数据集A中的实际逻辑位置在下面称为APos,该APos包括针对数据集A的位置参数。数据集B中的实际逻辑位置在下面称为BPos,该BPos包括针对数据集B的位置参数。APos和BPos在初始时被设置为数据集A和B中的第一逻辑位置。
初始化:
设置#Add=0和#Del=0。
将APos和BPos设置成数据集A和B中的第一逻辑位置。
设置APosStart=APos和BPosStart=BPos。
算法:将数据集A和B迭代,并计算#Add和#Del:
1.将在逻辑位置APos处的A集数据元与在逻辑位置BPos处的B集数据元进行比较。
a.如果没有A数据元和B数据元,使用下面的方法B选择运算符,然后继续进行步骤2(完成(Done))。
b.如果键是一致的,但是数据部分不同,则#Add加1,#Del加1,APos加1,BPos加1。继续进行步骤1并且比较下一数据元。
c.如果A数据元的键(根据分类命令)比B数据元的键更差,或者没有A数据元,则#Add加1并且BPos加1。继续进行步骤1并且比较下一数据元。
d.如果A数据元的键(根据分类命令)比B数据元的键更好,或者没有B数据元,则#Del加1并且APos加1。继续进行步骤1并且比较下一数据元。
e.如果键和数据部分都一致,则发现了屏障。如果(#Add≠0或者#Del≠0),则使用下面的方法B来选择运算符。继续:
设置#Add=0和#Del=0。
将APos加1并且将BPos加1。
设置APosStart=APos和BPosStart=BPos。
继续进行步骤1并且比较下一数据元。
2.完成(Done)
方法B。选择运算符:将#Del与#Add比较。
a.如果#Del>#Add,则选择下列运算符:
在逻辑位置APosStart处的删除(N=#Del)运算符。
接着是:
来自B集元素的#Add个添加运算器,从逻辑位置APosStart开始。
b.如果#Del=#Add,则选择下列运算符:
来自B集元素的#Add个替换运算器,从逻辑位置APosStart开始。
c.如果#Del<#Add,则选择下列运算符:
来自B集元素的#Del个替换运算器,从逻辑位置APosStart开始。
接着是:
来自B集元素的(#Add-#Del)个添加运算器,从APosStart+#Del开始。
例子
下面是参照附图描述不同方法步骤的例子。
根据在图5中示出的表格,想象两个数据集A和B。优选基于键来对数据元进行分类,导致在逻辑位置1处的最高值。数据集A表示旧的数据集,而数据集B表示新的数据集。任务是将数据集A转变成数据集B。
该方法的执行:
初始化:
设置#Add=0和#Del=0。
将APos设置在数据集A中的第一逻辑位置,将BPos设置在数据集B中的第一逻辑位置,
给定Apos=1和Bpos=1。
设置APosStart=APos和BPosStart=BPos,
给定AposStart=1和BPosStart=1。
该方法和系统开始初始化计数器,该计数器优选在对数据集进行迭代期间使用。
然后开始迭代步骤,其中将变化参数#Add和#Del迭代并增加。
步骤1.将A集的数据元与B集的数据元进行比较。因为Apos和Bpos都被设置为1,这意味着比较在列表中的第一数据元。然而,如果以另一方式对数据集中的数据元进行分类,则该方法可能首先开始比较其它数据元。
该比较描绘在图6中。在这种情况下,99比101更差(见算法步骤c)(在数据集A中的数据元(Apos=1)比在数据集B中的数据元(Bpos=1)更差),因此#Add加1,假定#Add=1。BPos加1,假定BPos=2。
继续算法中的步骤1并比较下一数据元。
步骤2.将A集的数据元与B集的数据元进行比较。现在Bpos计数器已经加1,因此数据集A中在(Apos=1)处的数据元与数据集B中在(Bpos=2)处的数据元进行比较。
该比较在图7中示出。99比100更差(见算法步骤c),因此#Add加1,假定#Add=2。BPos加1,假定BPos=3。
继续算法中的步骤1并比较下一数据元。
步骤3.将A集的数据元与B集的数据元进行比较。与上述步骤相似。
该比较在图8中示出。99好于97(见算法步骤d),因此#Del加1,假定#Del=1。APos加1,假定Apos=2。
继续算法中的步骤1并比较下一数据元。
步骤4.将A集的数据元与B集的数据元进行比较。该比较在图9中示出。98好于97(见算法步骤d),因此#Del加1,假定#Del=2。APos加1,假定Apos=3。
继续算法中的步骤1并比较下一数据元。
步骤5.将A集的数据元与B集的数据元进行比较。该比较在图10中示出。键和数据部分都相同(见算法步骤e),因此已经到达了屏障。
使用方法B来启动选择器并选择运算符。
步骤6.将#Del与#Add进行比较。根据方法B,步骤b可以在该情况下应用:
(b)#Del(2)=#Add(2)并且因此选择下列运算符:
替换2(#Add)运算符,从B集选择数据,从逻辑位置AposStart=1开始。
所选择的运算符在图11中示出。
步骤7.对数据集A和数据集B中的数据元的迭代和比较继续进行。
设置#Add=0和#Del=0。
为了达到屏障将计数器增加,APos加1并且BPos加1,假定Apos=4并且Bpos=4。
设置APosStart=APos并且BPosStart=BPos,假定APosStart=4并且BPosStart=4。
继续算法中的步骤1并且比较下一数据元。
步骤8.将A集的数据元与B集的数据元进行比较。该比较在图12中示出。96好于93(见算法步骤d),因此#Del加1,假定#Del=1。APos加1,假定APos=5。
继续算法中的步骤1并且比较下一数据元。
步骤9.将A集的数据元与B集的数据元进行比较。该比较在图13中示出。95好于93(见算法步骤d),因此#Del加1,假定#Del=2。APos加1,假定APos=6。
继续算法中的步骤1并且比较下一数据元。
步骤10.将A集的数据元与B集的数据元进行比较。该比较在图14中示出。94好于93(见算法步骤d),因此#Del加1,假定#Del=3。APos加1,假定APos=7。
继续算法中的步骤1并且比较下一数据元。
步骤11.将A集的数据元与B集的数据元进行比较。该比较在图15中示出。键一致,但是数据部分不同(10不等于15)(见算法步骤b)。
#Add加1,假定#Add=1。
#Del加1,假定#Del=4。
APos加1,假定APos=8。
BPos加1,假定BPos=5。
继续算法中的步骤1并且比较下一数据元。
步骤12.将A集的数据元与B集的数据元进行比较。该比较在图16中示出。没有B数据元(为空)(见算法步骤d)。
#Del加1,假定#Del=5。Apos加1,假定APos=9。
继续算法中的步骤1并且比较下一数据元。
步骤13.将A集的数据元与B集的数据元进行比较。该比较在图17中示出。数据集A中在APos(9)处的数据元和数据集B中在BPos(5)处的数据元为空,因此应用该算法中的步骤a。该算法中的步骤a启动选择器,因此应用如在步骤14中所述的方法B。
在该选择之后继续进行步骤2(完成)。
步骤14.通过使用选择方法B,将计数器#Del与计数器#Add进行比较。
根据选择方法B中的选择步骤(a),#Del(5)>#Add(1),因此优选如下选择运算符:
在逻辑位置APosStart(4)的删除5(#Del)运算符。
接着是:
来自B集数据元的添加1(#Add)运算符,从逻辑位置APosStart(4)开始。
所选择的运算符在图18中示出。
步骤15.该算法中的最后步骤2(完成)如上所述在步骤14中实现。
在完成该算法的迭代和方法B之后,描述从数据集A到数据集B的变化的运算符的全部数量被存储在存储器中,优选与对应的逻辑位置、键和数据部分一起存储。产生包括运算符、逻辑位置、键和数据部分的更新数据集,如在图19中示出的那样。
在另一实施例中,可以通过键来表示逻辑位置。在这种情况下,接收更新数据集的终端优选包括逻辑位置如何相互关联以便能够将数据元分类的信息。因此,逻辑位置不必是1、2、3...等等。也可以由A、B、C...等等来表示,只要位置具有相互关联以利于分类就可以。
利用对数据集A和对包括如在图19中示出的运算符的更新数据集的认识,可以通过从开始至结束顺次地每次使用一个运算符来生成数据集B。
利用附图20-29在下面示出如何这样做的步骤方法说明。
图20示出在更新数据集被应用于数据集A之前的数据集A和数据集B的情况。因此,通过使用图19中的更新数据集,下面的步骤从数据集A生成数据集B。
通过将在图21中示出的图19中的更新数据集的第一行应用于数据集A,获得了如在图22中示出的经过修改的数据集A。
通过将在图23中示出的图19中的更新数据集的第二行应用于数据集A,获得了如在图24中示出的经过修改的数据集A。
通过将在图25中示出的图19中的更新数据集的第三行应用于数据集A,获得了如在图26中示出的经过修改的数据集A。
通过将在图27中示出的图19中的更新数据集的第四行应用于数据集A,获得了如在图28中示出的经过修改的数据集A。
如在图29中示出的,运算符现在已经将数据集A转换成数据集B。
在上述说明中,术语“包括”不排除其它数据元或者步骤,并且“一个”不排除多个。
此外,术语“包含”不排除其它数据元或者步骤。

Claims (12)

1.一种用于产生待发送给远程终端的更新数据集的计算机系统,该更新数据集包括描述包含分类数据元的第一数据集与包含分类数据元的第二数据集之间的差异的运算符,所述运算符从包括下列运算符的组中确定:添加运算符、删除运算符、替换运算符,
该计算机系统包括:
一存储器,该存储器包括第一数据集和第二数据集,
一比较器,该比较器与存储器连接用于将第二数据集中的数据元与第一数据集中的数据元顺次比较,其中在第二数据集的一个数据元与第一数据集的一个数据元之间的第一次比较的结果控制第一数据集中的哪个数据元与第二数据集中的哪个数据元将在该数据元比较顺序中的第二次比较中进行比较,在每次比较之后更新存储器中的变化参数,并且在检测到第二数据集中的数据元与第一数据集中的数据元一致时启动选择器,其中所述变化参数包括与第一数据集相关的第一计数器和与第二数据集相关的第二计数器,还包括与第一数据集关联的第一位置参数和与第二数据集关联的第二位置参数,用于对比较器在第一数据集和第二数据集中的位置进行追踪,
一所述选择器,该选择器与存储器和比较器连接,该选择器用于基于存储器中存储的变化参数来确定运算符,并且将所确定的运算符存储在存储器中,
由此产生待发送给远程终端的、包括描述第一数据集和第二数据集之间差异的运算符的更新数据集。
2.根据权利要求1所述的计算机系统,进一步包括与选择器相关联的通信器,用于产生和发送包括所述更新数据集的更新消息。
3.根据权利要求1所述的计算机系统,其中第一数据集和第二数据集包括随时间变化的动态数据元。
4.根据权利要求1所述的计算机系统,其中第二数据集是第一数据集的后续版本。
5.根据权利要求1所述的计算机系统,其中所述选择器基于与第一数据集相关的第一计数器和与第二数据集相关的第二计数器之间的关系选择运算符。
6.根据权利要求1所述的计算机系统,其中每个数据元包括键和数据部分。
7.一种包括根据权利要求1所述的计算机系统的电子交易系统。
8.一种用于产生待发送给远程终端的更新数据集的方法,所述更新数据集包括描述包含分类数据元的第一数据集与包含分类数据元的第二数据集之间差异的运算符,所述运算符从包括下列运算符的组中确定:添加运算符、删除运算符、替换运算符,所述方法包括下列步骤:
一将第一数据集中的数据元与第二数据集中的数据元顺次地比较,其中在第二数据集的一个数据元与第一数据集的一个数据元之间的第一次比较的结果控制第一数据集中的哪个数据元与第二数据集中的哪个数据元将在该数据元比较顺序中的第二次比较中进行比较,
一在每次比较之后,将变化参数在存储器中进行更新,其中所述变化参数包括与第一数据集相关的第一计数器和与第二数据集相关的第二计数器,还包括与第一数据集关联的第一位置参数和与第二数据集关联的第二位置参数,
-在检测到第二数据集中的数据元与第一数据集中的数据元一致的情况下,启动选择过程,该选择过程基于存储器中存储的变化参数来确定运算符,
-将所确定的运算符存储在存储器中,
从而产生待发送给远程终端的更新数据集,该更新数据集包括描述第一数据集与第二数据集之间差异的运算符。
9.根据权利要求8所述的方法,进一步包括步骤:将所确定的运算符与所比较的数据元相关联。
10.根据权利要求8所述的方法,该方法进一步包括基于与第一数据集相关的第一计数器和与第二数据集相关的第二计数器之间的关系来确定运算符的步骤。
11.根据权利要求8所述的方法,其中每个数据元包括键和数据部分,该方法进一步包括将第一数据集的数据元的键和数据部分和第二数据集的数据元的键和数据部分分别进行比较。
12.根据权利要求8所述的方法,其中第一数据集和第二数据集包括随时间变化的动态信息。
CN2007800468787A 2006-12-20 2007-12-14 用于优化数据集的变化的系统和方法 Active CN101611402B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/641,957 US8117609B2 (en) 2006-12-20 2006-12-20 System and method for optimizing changes of data sets
US10/641,957 2006-12-20
PCT/EP2007/064005 WO2008074751A1 (en) 2006-12-20 2007-12-14 System and method for optimizing changes of data sets

Publications (2)

Publication Number Publication Date
CN101611402A CN101611402A (zh) 2009-12-23
CN101611402B true CN101611402B (zh) 2012-12-26

Family

ID=39253872

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2007800468787A Active CN101611402B (zh) 2006-12-20 2007-12-14 用于优化数据集的变化的系统和方法

Country Status (8)

Country Link
US (1) US8117609B2 (zh)
EP (1) EP2095272A1 (zh)
JP (1) JP5230645B2 (zh)
CN (1) CN101611402B (zh)
AU (1) AU2007336337B2 (zh)
HK (1) HK1140030A1 (zh)
TW (1) TW200833010A (zh)
WO (1) WO2008074751A1 (zh)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102010039021B4 (de) * 2010-08-06 2023-02-23 Robert Bosch Gmbh Verfahren zur Rekonfiguration von Softwareparametern in einem Mikrocontroller sowie Mikrocontroller und Steuergerät
TWI455520B (zh) * 2010-08-12 2014-10-01 Hon Hai Prec Ind Co Ltd 用戶端設備及更新設備參數的方法
EP2608060A1 (en) * 2011-12-22 2013-06-26 Amadeus Provider data tuning
CN103309888A (zh) * 2012-03-14 2013-09-18 北京四维图新科技股份有限公司 电子地图的数据的验证方法和验证装置
CN102855288B (zh) * 2012-08-08 2017-11-03 北京奇安信科技有限公司 差异数据的处理方法和装置
US10269009B1 (en) 2013-06-28 2019-04-23 Winklevoss Ip, Llc Systems, methods, and program products for a digital math-based asset exchange
US10354325B1 (en) 2013-06-28 2019-07-16 Winklevoss Ip, Llc Computer-generated graphical user interface
US9892460B1 (en) 2013-06-28 2018-02-13 Winklevoss Ip, Llc Systems, methods, and program products for operating exchange traded products holding digital math-based assets
US9535936B2 (en) * 2013-09-05 2017-01-03 The Boeing Company Correlation of maximum configuration data sets
JP5915627B2 (ja) * 2013-11-26 2016-05-11 横河電機株式会社 プロセス制御システム
US11139955B1 (en) 2018-02-12 2021-10-05 Winklevoss Ip, Llc Systems, methods, and program products for loaning digital assets and for depositing, holding and/or distributing collateral as a token in the form of digital assets on an underlying blockchain
US10438290B1 (en) 2018-03-05 2019-10-08 Winklevoss Ip, Llc System, method and program product for generating and utilizing stable value digital assets
US11308487B1 (en) 2018-02-12 2022-04-19 Gemini Ip, Llc System, method and program product for obtaining digital assets
US11522700B1 (en) 2018-02-12 2022-12-06 Gemini Ip, Llc Systems, methods, and program products for depositing, holding and/or distributing collateral as a token in the form of digital assets on an underlying blockchain
US10540654B1 (en) 2018-02-12 2020-01-21 Winklevoss Ip, Llc System, method and program product for generating and utilizing stable value digital assets
US11200569B1 (en) 2018-02-12 2021-12-14 Winklevoss Ip, Llc System, method and program product for making payments using fiat-backed digital assets
US11909860B1 (en) 2018-02-12 2024-02-20 Gemini Ip, Llc Systems, methods, and program products for loaning digital assets and for depositing, holding and/or distributing collateral as a token in the form of digital assets on an underlying blockchain
US11475442B1 (en) 2018-02-12 2022-10-18 Gemini Ip, Llc System, method and program product for modifying a supply of stable value digital asset tokens
US10373158B1 (en) 2018-02-12 2019-08-06 Winklevoss Ip, Llc System, method and program product for modifying a supply of stable value digital asset tokens
US11334883B1 (en) 2018-03-05 2022-05-17 Gemini Ip, Llc Systems, methods, and program products for modifying the supply, depositing, holding and/or distributing collateral as a stable value token in the form of digital assets
CN108664593A (zh) * 2018-05-08 2018-10-16 东软集团股份有限公司 数据一致性校验方法、装置、存储介质及电子设备
US11501370B1 (en) 2019-06-17 2022-11-15 Gemini Ip, Llc Systems, methods, and program products for non-custodial trading of digital assets on a digital asset exchange

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040010429A1 (en) * 2002-07-12 2004-01-15 Microsoft Corporation Deployment of configuration information
US6847971B1 (en) * 1998-05-28 2005-01-25 Oracle International Corporation Lightweight data replication

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5418965A (en) * 1988-06-24 1995-05-23 Mahar; Robert C. Subroutine-type computer program for enhancing the speed of data processing in data management programs systems
US5473772A (en) * 1991-04-02 1995-12-05 International Business Machines Corporation Automatic update of static and dynamic files at a remote network node in response to calls issued by or for application programs
US5899998A (en) * 1995-08-31 1999-05-04 Medcard Systems, Inc. Method and system for maintaining and updating computerized medical records
US5924083A (en) * 1996-05-29 1999-07-13 Geneva Branch Of Reuters Transaction Services Limited Distributed matching system for displaying a book of credit filtered bids and offers
CA2414281C (en) * 2000-11-17 2009-06-02 Bitfone Corporation System and method for updating and distributing information
WO2002091650A2 (en) 2001-05-08 2002-11-14 Stafford Trading, Inc. A low-bandwidth distribution system and method for option quotes, theoretical prices, and derivatives
US7340412B2 (en) * 2002-01-11 2008-03-04 Ncr Corporation Methods and apparatus for performing delta updates of an electronic shelf label
US6925467B2 (en) * 2002-05-13 2005-08-02 Innopath Software, Inc. Byte-level file differencing and updating algorithms
US20030229570A1 (en) * 2002-06-05 2003-12-11 Hughes John T. Quote updates in a securities market
US20040010456A1 (en) * 2002-07-09 2004-01-15 Hoang Khoi Nhu Incrementally updated electronic catalog with localized distribution

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6847971B1 (en) * 1998-05-28 2005-01-25 Oracle International Corporation Lightweight data replication
US20040010429A1 (en) * 2002-07-12 2004-01-15 Microsoft Corporation Deployment of configuration information

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Wilburt Juan Labio 等.Efficient Snapshot Differential Algorithms for Data Warehousing.《PROCEEDINGS OF THE 22ND VLDB CONFERENCE, Mumbai(Bombay), India》.1996,63-74. *

Also Published As

Publication number Publication date
AU2007336337B2 (en) 2012-07-05
TW200833010A (en) 2008-08-01
HK1140030A1 (en) 2010-09-30
US8117609B2 (en) 2012-02-14
JP5230645B2 (ja) 2013-07-10
JP2010514035A (ja) 2010-04-30
US20080155527A1 (en) 2008-06-26
AU2007336337A1 (en) 2008-06-26
WO2008074751A1 (en) 2008-06-26
EP2095272A1 (en) 2009-09-02
CN101611402A (zh) 2009-12-23

Similar Documents

Publication Publication Date Title
CN101611402B (zh) 用于优化数据集的变化的系统和方法
CN105740337B (zh) 一种基于内容的发布订阅系统中的事件快速匹配方法
CN106959965B (zh) 一种信息处理方法及服务器
CN111522986A (zh) 图像检索方法、装置、设备和介质
CN105530272A (zh) 一种应用数据的同步方法和装置
CN104866339A (zh) Fota数据的分布式持久化管理方法、系统和装置
CN112270600A (zh) 一种多源数据的处理方法、系统及相关装置
CN103595808A (zh) 一种文件更新信息推送方法及装置
CN102333280A (zh) 一种业务密钥更新的方法、系统及业务处理服务器
CN112016967B (zh) 一种交易数据处理方法与装置
CN111626783B (zh) 用于实现事件转化概率预测的离线信息设置方法和装置
CN113625936A (zh) 数据处理方法、装置、存储介质及设备
CN101739410A (zh) 运算结果展现的方法、装置和系统
CN103150400A (zh) 一种基于MapReduce框架的数据筛选方法
CN112115113B (zh) 数据存储系统、方法、装置、设备以及存储介质
CN105653533A (zh) 一种更新分类关联词集合的方法和装置
CN112002352B (zh) 随机播放音乐方法、装置、计算机设备及存储介质
US7877422B2 (en) Method and system for processing 1:N relationships between data object nodes
CN102722512A (zh) 一种数据库客户端远程维护展示数据库的方法
CN107333183B (zh) 频道排序方法、装置及电子设备
CN107562901B (zh) 一种客户端数据的更新方法及系统
CN110188069A (zh) 一种csv文件存储方法、装置及计算机设备
JP7226582B2 (ja) 抽出装置、抽出方法及び抽出プログラム
EP4339767A1 (en) Method and system for updating client configuration in timely manner
JP2017146964A (ja) コンテンツサービスで通知時間を個人化する方法およびシステム

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 1140030

Country of ref document: HK

C14 Grant of patent or utility model
GR01 Patent grant
REG Reference to a national code

Ref country code: HK

Ref legal event code: GR

Ref document number: 1140030

Country of ref document: HK

C56 Change in the name or address of the patentee
CP01 Change in the name or title of a patent holder

Address after: Stockholm

Patentee after: NASDAQ Technologies AG

Address before: Stockholm

Patentee before: OMX Technology AB