对信息系统的增强数据访问的制作方法

xiaoxiao2020-7-22  14

专利名称:对信息系统的增强数据访问的制作方法
技术领域
本发明涉及信息系统,尤其涉及包括多个数据源、数据库实例和数据消费者的信息系统。
背景技术
在大型多用户信息系统中,数据一般是由位于多个地方的多个实体生成和访问的。为了便于有效地使用信息,数据通常分布到位于网络中不同地方的若干数据库实例。 然而,要求是需要信息能够为要快速并有效地应用该信息的处理和用户获得。此外,重要的是,信息简单地配置成使得可能成本有效地加以实现。
传统的系统应用许多方法来确保信息的可用性。一个选择是维护存储在多个存储实例中的数据的多个拷贝(称为副本),而且要使得对副本的访问与对单个、非复制的实体的访问一致。在高可用性的簇中,对于每条信息,一般都存在一个或者若干个复制母本 (master) 0复制母本负责独立的数据库实例之间数据的一致性。在单个母本的情况下,来自信息源的所有更新都要通过这单个母本,而且它控制数据到其它实例的复制。如果涉及若干个母本(所谓的多母本复制),则需要严格的机制来解决同时数据更新之间的冲突。对于冲突的解决,存在不同的方法交易时间戳、原始节点的层次性,等等。
这些配置一般应用悲观(pessimistic)复制,其中复制机制确保具有相同数据的所有数据库实例都以正确的方式更新。悲观算法在访问期间同步协调副本并在更新期间阻挡其它用户。这些算法满足最严格的单拷贝要求,常常称为ACID属性(可分性 (atomicity)、一致性、隔离性、持续性)。然而,满足所有复制要求会导致复杂的复制机制。 这尤其适用于具有众多数据库实例、若干复制母本和实例之间有不可靠连接的系统。
在乐观(optimistic)复制中,可以无需预先同步地对数据进行访问。允许副本有分歧,并且保证当系统空闲时收敛副本。乐观复制面临的挑战是控制分歧副本和并发操作之间的冲突。因此,这被认为只适用于可以容忍偶然冲突和不一致数据的系统 ("Optimistic Replication", YASUSHI SAIT0,惠普实验室,Palo Alto, CA, USA 禾口 MARC SHAPIRO, Microsoft Research 有限公司,Cambridge,UK)。
在电信业,订户数据一般分发到至少两个数据库实例。动态订户数据存储在一个根据用户的移动性而改变的数据库中。静态订户数据存储在固定的数据库中,而且该数据库还维护指向用于动态订户数据的目前数据库的指针。然而,在新的先进系统中,有几个方面朝着其它类型的订户数据配置努力。
具有若干地理上分散的数据库实例的需求是至少部分地被传输成本的优化、部分地被恢复(resilience)要求而激发的。
在通信网络中,可以有若干节点,这些节点生成状态信息。在蜂窝网络中,例如,移动电话和基站是状态信息的源。而且,照此,许多电信服务生成大量的状态信息,这些状态信息需要在网络上分发。例如,当移动订户在蜂窝网络中从一个基站的区域移动到另一个基站的区域时生成位置更新,或者将存在信息的更新发送到存在服务器。通信系统中这种状态信息的寿命是非常短的。所有这些都导致大量的状态信息,对其的传输需要仔细地进行优化。
在广大区域性和全国性网络中,有可能由于传输服务的中断而将网络分成两个或者若干个隔离的子网络。然而,重要的是,即使在这种异常情况下,网络的隔离部分也能够以正确的方式提供服务。

发明内容
因此,本发明的一个目的是提供用于实现方法的解决方案,从而满足至少一些以上需求,并因此便于对信息系统中动态数据的更简单和更成本有效的提供。本发明的目的通过信息系统、装置、方法和计算机程序产品实现,它们由独立权利要求中所声明的内容来表征。本发明的优选实施方式在从属权利要求中公开。
本发明基于如下想法利用用于数据源的较不严格的处理,而且,在消费端,应用有效性检查来从减轻的处理失败的情况中恢复。与传统的理解相反,存在众多应用,尤其是在通信系统领域,其中由有效性检查导致的处理和流量的增加主要是通过交易数据库复制的流量和处理的减少来补偿的。本发明的这个优点和进一步的优点是利用以下本发明的实施方式更具体地讨论的。


以下将参考附图通过优选实施例更具体地描述本发明,附图中 图1提供了对信息系统中角色基本元件的功能性描述; 图2例示了通信系统的网络基础结构; 图3A例示了应用图2的通信系统的实施例; 图;3B例示了应用图2的通信系统的另一实施例; 图3C例示了应用图2的通信系统的另一实施例; 图4例示了在信息系统的数据源中应用的方法的实施例; 图5例示了在信息系统的数据消费者中应用的方法的实施例;及 图6例示了所实施装置中的参考硬件配置。
具体实施例方式应当认识到,以下实施例是示例性的。此外,尽管该说明书可以能在各个不同地方引用“一”、“一个”或者“一些”实施例,但是不一定是引用相同的实施例,或者所讨论的特征不仅应用到单个实施例。不同实施例的单个特征可以组合,以提供进一步的实施例。
本发明涉及其中从多个源提供的数据在由多个消费者访问的多个数据库实例中维护的信息系统。应用多种通信技术的多种装置和系统配置可以单独地或者组合使用,来实现本发明的实施例。信息系统和技术不断地发展,而且本发明的实施例可能需要对本领域技术人员来说基本上很显然的多个修改。因此,本说明书的所有词语和表达都应当广义地去解释,因为它们仅仅是要例示而非约束所述实施例。
图1提供了对在根据本发明的信息系统100中的角色基本元件的功能性描述。总的来说,术语“信息系统”涉及给定组织中的人、数据记录及自动和手动处理数据与信息的活动的组合。在这种环境下,信息系统更具体地涉及通用信息系统的信息技术成分,并且因此指可以用在信息的获取、存储、操纵、管理、移动、控制、显示、切换、互换、传输或者接收的任何电信和/或计算机相关的设备或者设备的互连系统或子系统,而且包括软件、固件和/ 或硬件。
事件源(ES) 10例示了用以提供在信息系统的处理中所使用的事件数据项(ek)的元件。事件%在这里是指对事件消费者(EC) 12的任务有效的发生。事件数据项q优选地实现为以电子形式编码的信息块,以便允许信息系统的计算机设备和计算机软件在信息系统的处理中转换、存储、保护过程、发送和安全地检索它。信息系统能够自动地检测并处理事件数据项q,其中%—般包括一个或多个可分离的信息元素iek,其中一个元素携带关于发生的实际数据。任务与信息系统中识别出的一个实体关联,因此事件数据项一般包括识别关联到任务的实体的信息元素。例如,如果实体是信息系统的用户,则事件数据项一般包括指示用户身份的信息元素。在有些情况下,分发的数据项可以涉及几个任务,而且事件数据项一般包括识别发生对其有效的任务的信息元素。
依赖于实现,信息元素的指示可以是明确的或者是隐含的。例如,事件源可以配置成提供只关于一个实体的发生的数据元素(例如,它们自己),因此数据元素的原点可以从包括数据项的消息的源地址来确定,而不需要独立的信息元素来识别实体。另一方面,如果数据项仅仅适用于一个任务,例如用户的位置信息,则任务本身不需要利用信息元素单独地指示。由不同事件源提供的事件数据项的格式优选地是相同的,使得不需要使任务能够访问事件数据项中信息的进一步操作。然而,事件源和事件消费者之间信息系统的任何中间元件都可以修改成适于接收各种格式的各种事件源的数据项,并将它们处理成由各个事件消费者应用的各种格式。
由一个或多个事件源提供的事件数据项被传递到数据库(DB) 14。数据库代表系统地布置的数据集合,该数据库被结构化成使得其可以被自动地检索或者操纵。事件数据项的输入优选地与事件数据的输出分开,使得与事件源的交易可以独立地执行,而不必考虑事件消费者方的操作。事件源可以自发地和/或独立于任何其它事件源地发送信息。可选地,数据库可以提示或者查询来自事件源的事件数据项。在许多实施例中,一个发生仅仅由一个事件源通知,因此基本上没有明显的需求要检测并解决关于同一发生的事件数据项之间的冲突,其中事件数据项是从两个或者更多个独立的事件源接收的。然而,这种配置没有排除在范围之外,因此,当需要时,为此目的可以采用本领域技术人员已知的任何传统的或者新的机制,例如来自乐观复制领域的机制。
事件消费者(EC) 12在这里代表应用事件信息的逻辑元件。EC操作性地连接到数据库,而且一般包括任务,例如,输入事件数据并提供具有内容且按照手头任务格式的输出的应用程序、服务、过程、处理、函数等。DB可以将事件数据(Ek)发送到其自发的EC,或者 EC可以向DB提供查询q(Ek),DB利用基于一个或多个所存储的事件数据项(ek)导出的事件数据(Ek)对该查询进行响应。DB例如可以将事件数据项(ek)以DB接收到这些事件数据项的格式转发到EC,或者可以在向EC提供之前将它们处理成另一种格式(ek’)。
在信息系统只包括一个数据库的情况下,所有数据项都传递到该数据库,而且存储在该数据库中的事件数据中的不一致性是由于事件源和数据库之间不成功的通信导致的。如果事件源的数量增加,则有更多可能的链接失败,而且事件数据的一致性增加。而且,如果系统中有不止一个数据库,则情况变得更复杂。EC中所维护的任务一般要求,数据库动作被可靠地处理,而且EC可以应用任何可用的数据库,使得从它们接收到的事件数据在所有地方都是一致的。为了实现这个目的,传统上,选择一个数据库作为负责管理来自ES的所有数据项的主副本。在主副本更新之后,它同步地将该更新输入到其它的次副本。对任何副本的访问都被阻挡,除非可以证明它是最新的。对于有限个数的副本,这种单拷贝确认的机制工作良好。然而,这种方法不允许建立具有频繁更新的大型系统,这是因为当事件源和数据库实例的个数增加时,其吞吐率和可用性显著地变差。
本发明的解决方案应用随机数据库复制,其中数据项从多个事件源提供到多个数据库实例,而且允许使用来自数据库实例的当前事件数据,而没有对其一致性的强制要求。 另一方面,事件消费者配置成确定所接收到的(应用的或者可应用的)事件数据的有效性, 而且在无效数据的情况下启动对事件数据的另一次查询。该解决方案假定,数据库实例中的事件数据作为根据起源事件源和接收数据库实例之间的链路中的传输概率统计性变化的随机处理来复制。因此,一个数据库实例中的事件数据可能偏离另一个数据库实例中的事件数据以及偏离实际的情况;可以接受的是至少在某些时刻的至少有些事件数据是不正确的。然而,事件消费者能够检测无效事件数据,并触发适当的过程来检索来自另一个地方的(例如,来自另一个数据库实例的,或者来自起源事件源的)有效事件数据。
被触发的过程的实现自然地造成信息系统中的附加操作和通信。然而,在各种链路中事件数据传输成功的概率可能可以相当容易地估计和提高。一般来说,信息系统的通信链路中的吞吐率概率是相对好的,因此启动新查询的可能性实际上非常小。因此,来自新查询的流量的增加很好地被信息系统中交换确认消息数量的显著减少补偿。由于减少的流量和与单个事件数据传递关联的控制操作,事件数据项的分发和应用更快更简单。此外,根据本发明的信息系统很容易缩放到更大的配置和非常动态的事件数据。这使得实施例甚至能够用在广域通信系统中移动管理和呼叫控制的处理和服务中,其中,由于可缩放性和阻塞问题,迄今为止只有传统的单拷贝确认数据库布置可以应用。
本发明可以应用到其中事件数据可以从多个并行的数据库实例访问的任何信息系统。以下,描述应用图2的通信系统的本发明实施例。
所实施的通信系统提供了对具有用户终端和订购的多个用户的广范围访问。利用用户终端和订户身份的组合,用户可以访问通信系统的服务。图2的网络基础结构可以逻辑地分成内核网络20和无线电访问网络21基础结构。内核网络20是交换与基本传输设备的组合,它们一起提供网络服务的基础。无线电访问网络21提供对移动和固定原点的多个内核网络的移动访问。
图2所示简化的无线电访问网络配置是蜂窝系统,其中大区域被分成多个称为单元的子区域。每个单元22具有其自己的基站23,其中基站能够为多个同时的用户终端M 提供无线电链接。在图2中,每个单元对应于一个基站站点。然而,基站站点还可以包括不止一个基站,其中每个基站对应于一个单个的单元。单元在这里代表可单独识别的位置区域。
无线电访问网络可以包括独立的控制网络元件,该元件管理一组一个或多个基站的无线电资源的使用和完整性。然而,无线电网络控制功能还可以在各个基站中实现。本实施例应用后一种配置。图2的蜂窝系统代表移动通信系统,其中移动用户终端在移动的过程中也可以访问网络服务。然而,应当指出,即使该实施例是在移动通信系统中例示的, 但是它还适用于其中便携站可以点到点移动但在一个时刻在固定的接入点使用的配置。
无线电访问网络中和内核网络中的网络元件之间的连接可以是电路切换或者包切换的。电路切换类型的连接是当连接建立时为其分配专用网络资源并且当连接释放时释放该资源的连接。包切换类型的连接运输成包的用户信息,使得每个包可以独立于前一个包地被路由。包切换连接上的发送可以是有确认的或者不确认的。确认的发送自动重复, 直到所定址的目的地的实体确认其已经接收到了。确认的发送使得可以确保计划的信息是按时交换的,而且基于该信息的动作可以可靠地执行。另一方面,确认消息和重复的再次发送增加了流量并可能造成整体通信的显著延迟。不确认的发送很好地适于动态多用户包切换通信,其中不从目的地接收确认的事实使得不自动产生再次发送。
通信系统的内核网络包括用于静态和动态订户数据的若干个订户寄存器。静态数据是当提供订户时创建的,而且很少变化。因此,静态数据可以利用传统的复制机制在订户寄存器之间复制。动态订户数据包括可以根据对该订户发生的事件频繁变化的订户数据。 事件可能由于订户所采取的行动或者由于对该订户造成的或者发生的行动或者发生而产生。
图3A至3C例示了应用图2中所述的通信系统的实施例。蜂窝网络的一个基本处理是移动管理。移动管理的目的是跟踪移动订户位于什么地方,以便向他们传递呼叫、数据消息和其它服务。移动管理是基于位置更新过程,该过程允许用户终端通知蜂窝网络关于其位置的事件,例如,什么时候该终端从一个位置区域移动到了下一个位置区域。向网络提示更新后位置信息的提供有几个原因。任何时候当用户终端打开或者关闭时,网络可能要求其执行位置更新过程。而且,用户终端一般配置成使用周期性的位置更新过程来向网络定期地报告其位置。任何时候当用户终端从一个位置区域移动到下一个位置区域同时没有进行呼叫时,一般执行随机位置更新。随机位置更新还可以由由于信号衰减而从不同位置区域中的单元重新选择覆盖范围的静止用户终端执行。位置更新使得用户终端可以对网络具有可靠的访问而且可以进行呼叫,同时享受整个覆盖区域中移动的自由。
在本实施例中,参考图3A,通信系统的网络包括多个订户寄存器SRI、SR2、 SR3、. . . , SRn和多个基站BSl、BS2, ... , BSm,其连接到包数据网络,该包数据网络对经该包数据网络连接的元件提供包切换通信。应当指出,该实施例中所应用的配置仅仅是简化的例子。基站配置可以随实现而显著地变化。基站从用户终端UT1、UT2接收位置更新消息,并通过将位置更新消息作为事件数据项提供给将其作为事件数据存储的订户寄存器来充当事件源。在本实施例中,数据库是既包括所有用户终端UT1、UT2的静态订户数据实例 SSDl、SSD2、· · ·,SSDn又包括动态订户数据实例DSD1、DSD2、· · ·,DSDn的基本上并行数据库实例。
应当指出,本实施例处理由无线电访问网络的用户终端和/或基站提供的动态数据。传统上,通信网络包括用于基本上静态订户信息的主(home)位置寄存器和游客位置寄存器,其中只要移动订户在由游客位置寄存器控制的位置区域内,用于呼叫建立的所有订户参数就都被存储在该游客位置寄存器中。除了静态订户信息,主位置寄存器还维护指向用户终端当前所在的当前游客位置寄存器的动态元素。需要这种划分来最小化对动态数据的复制,并因此应对在网络中可用的更新资源。由于减轻的更新过程,本发明还允许用于静态和/或动态数据的新分布式配置,及由此就加载、地理距离或者其它考虑优化的很多新查询过程。在本说明书中更具体地讨论一些新的订户寄存器配置。
多个基站BS1、BS2,...,BSm中,一组基站BS1、BS2,BS3在具有用户终端UTl的订户A目前所在的区域内,而另一组基站BS4、BS5,BSm在具有用户终端UT2的另一订户 B目前所在的区域内。当基站BS4从用户终端UT2接收位置更新消息时,它利用所定义的不应用确认发送的包切换协议,将消息<lul>作为事件数据项发送到所有订户寄存器SR1、 SR2、SR3、. . .,Sto。根据早先的定义,当基站BS4将关于订户B的UT2的位置数据更新的信息发送到数据库实例SRl时,到SRl的位置更新的重新发送不依赖于来自SRl的确认,即, 即使没有从SRl接收到确认,BS3也不一定需要向SRl重新发送位置更新。
BS3可以配置成至少向SR2重新发送一次位置更新,不管其是否接收到了确认。这种布置实际上是优选的,因为它可以显著增加位置更新消息到达目的地的概率,但不会额外增加通信系统中的流量。为了有些其它目的,BS3还可以配置成要求来自一个或者多个数据库的确认,或者数据库可以配置成确认发送,而不管发送者是否实际要求它。在任何情况下,在BS3中,是否向数据库实例重新发送事件数据项的决定不是强制性地依赖于从该数据库实例接收到确认。
当目前位于BS3单元中的订户A希望呼叫订户B时,它启动UTl中的呼叫建立过程。该呼叫建立过程是应用移动管理的事件数据的任务。为了访问适当的呼叫建立参数, 需要访问相关的订户寄存器。在本实施例中,订户A的BS3可以自由地(即,随机地或者根据任何所定义的唯一或者普遍存在的选择标准)选择它要将请求关于订户B的目前单元的信息的查询发送到的数据库实例。在本应用中,让我们假设BS3配置成将查询<ql>发送到地理位置上最靠近其的SR2。SR2以包括UTl作为BS4的目前单元的消息<rl>来响应。
有了这个信息,BS3就将呼叫建立通知消息发送到BS4,而且,如果BS4相应地进行了响应,则呼叫建立继续正常进行。订户寄存器中位置信息正确的概率尤其依赖于用于传递该位置更新消息的传输机制。本实施例应用使用用户数据报协议(UDP)作为底层协议的 IP多播技术,而且不提供确保成功数据传输的机制。在不偏离所保护的范围的情况下,也可以应用其它满足所保护特征的对应包切换协议。例如,位置更新消息可以被复用并作为单播消息发送,每个数据库实例都有一个消息发送到其。
在UDP中,可靠性基于协议堆栈较低层(例如,以太网)的属性。在IP网络中,包传递概率的测量是由包丢失来测量的,即,没有正确传递的包的概率。例如,在良好设计并维护的IP网络中,可以容易地实现用于包丢失的典型的0.: Pr ( “ IP 包丢失”)=0.1%。
如果假定基站重复位置更新消息到订户寄存器的发送两次,以确保更新传递,而且两次相继重复消息的包丢失概率是独立且相等分布的,则位置更新丢失的概率可以如下计算 Pr (“位置更新消息丢失”)=Pr ("IP包丢失” )2 = (1 * 106)—1。在这种情况下, 来自任何订户寄存器的每个第一百万个位置信息应答将是不正确的。
为了控制由于不正确数据造成的不成功呼叫尝试的个数,事件消费者(在这里是查询基站)配置成检测从数据库实例查询的信息是否有效。对本领域技术人员来说,很清楚这种检查可以按照多种方式实现。在这种实施例中,基站BS3向BS4发送呼叫建立传送消息并等待响应达所定义的时段。如果BS4在该时段内肯定地响应了,则呼叫建立过程可以正常地继续。如果响应是否定的,例如指示UT2没有在BS4的单元内,或者在所定义的时段内没有接收到响应,则BS3确定所接收到的位置信息是无效的并向另一个目的地启动新的查询。
让我们假定,在呼叫建立之前,订户已经移动到BS5的单元,但BS5的位置更新消息由于某种原因没有到达SR2。相应地,查询如前面所述的那样前进,但是当BS3向BS4发送呼叫建立消息时,BS4没有在其单元中找到UT2并且否定地确认该消息。这造成新的查询,在所保护的范围内查询的格式和目的地可以显著变化。
图;3B例示了一种实施例,其中BS3检测到<rl>中的事件数据是无效的并向网络中的所有订户寄存器SRI、SR2、SR3、. . . , SRn发送对订户B目前位置的新查询。可能有一种流行的系统定义,其中来自订户寄存器的响应<rl>不仅包括订户B的目前位置,而且包括指示传递对应位置更新消息时间的时间戳。当来自订户寄存器的所有响应都到达时,根据时间戳BS3能够检测最近的数据并使用对应的单元作为下一次查询<q2>的目的地。这种方法的优点是它很简单,但仍然可以快速检测到最近的信息源并因此最小化了重复查询的量。作为一方面,在检测到正确的数据(在这里是最近的数据)后,BS3可以将其分发到所有数据库,以便改进它们后续请求中位置信息的有效性。
图3C例示了另一种方法,其中BS3检测到<rl>中的事件数据是无效的并且直接向所有其它的基站BS1、BS2,...,BSm发送对订户B目前位置的新查询。在UT2不在的单元中,基站BS1-BS2、BS4和BS6_BSm不对该查询作出响应或者否定地响应。在UT2所在的单元内,BS5对该查询肯定地响应,而且呼叫建立传送可以继续。同样,该方法是直接的,但非常有可能以最小重复的发送就获得成功。
在保护范围内,用于执行新查询的几种其它方法是可能的。例如,基站可以具有关于订户的可能位置的某种事先了解,并使用这种了解来约束在第二次查询中发送的消息的个数。例如,订户身份可以与网络中的特定域关联,而且查询基站可以将第二次查询约束到那些基站,或者最靠近那些基站的订户寄存器,并且只有在进行第三次尝试时才放宽查询到覆盖所有基站。
在不偏离保护范围的情况下,图3A-3C中所描述的有效性检测还可以变化。例如, 事件数据可以具备时间信息,然后,该时间信息可以用于估计事件数据的有效性。例如,可以定义事件数据必须定期地刷新;否则它将被归类为过时的。如果从订户寄存器中检索出这种过时的事件数据,则用户终端根据时间信息可以确定这条事件数据太旧并因此不太可靠。可选地,订户寄存器本身可以检查所关联的时间信息,并通过指示这条事件数据已经过时来应答。根据这种应答,用户终端启动新查询。
在图3A至3C的实施例中,数据库是既包括静态数据又包括动态数据的寄存器。很清楚,在有些实现中,不同的数据类型可以分到也不同地进行更新的不同数据库实例中。例如,极少进行更新和/或其正确性是必需的信息可以存储在一个或多个独立的数据库实例中并且根据最严格的交易复制过程来更新,而更多变化的动态信息存储在无需强制确认过程而更新的多个其它数据库实例中,如以上所描述的。可以应用多于两种类型的具有变化更新过程的数据库实例,例如,一个用于静态事件数据,一个用于动态事件数据,且一个用于半静态事件数据。动态数据的更新过程可以尽可能轻,而半静态数据的更新过程可以通过增强事件数据发送至其目的地的可能性的策略来增强。在本描述中随后更具体地讨论一些这种策略。
还有可能将静态和动态事件数据集成到相同的数据库实例中,但是根据所考虑的事件数据类型来执行更新。例如,在图3B的实施例中,基站可以如前所述地更新到动态订户数据实例部分DSD1、DSD2.....DSDn的位置数据,但连接到相同包数据网络的调度站可以利用确认的发送将它们的订户数据更新传递到静态订户数据实例部分SSD1、SSD2.....
SSDn。
本发明的随机数据库复制实施例提供了几个优点。在可以有若干个地理上分散的订户寄存器的网络中,这意味着来自数据库查询的发送成本可以优化。在一个寄存器不能提供服务的情况下,若干个基本上并行的订户寄存器提供了良好的恢复性。此外,如果大型网络由于传输服务中的中断而分成若干个子网,则网络的隔离部分可以按照正确的方式提供服务。在子网再次重新连接之后,订户寄存器将自动地朝使关于网络的正确信息成为整体的状态收敛。一些附加的同步机制可以用于在订户寄存器之间快速复制位置数据。还应当指出,具有较不严格更新过程的数据库实例可以利用相对适中的硬件和软件实现来实现,不一定需要载体分级和高可用性平台。这种更简单的配置是高度成本有效的更便宜而且更容易维护。
当讨论本发明的优缺点时,应当指出,补偿放松的更新过程的操作依赖于未确认发送成功的概率。很清楚,本发明还可以通过增加从事件源到数据库的成功发送的可能性的动作来增强。在图3A至3C的实施例中,该概率是通过在定义的时段后缺省地重新发送位置更新来增加的。也可以采取一些其它动作来增加概率。例如,有利地,携带更新消息的包数据网络是完全冗余的,即,对于从任何一个点到另一个点的所有连接,不存在任何单点故障(SPOF)。在实践当中,这需要复制的路由器、交换机和其它传输元件及复制的或另选的传送路径。有利地,网络中还有某种机制在传送设备或者传送链路故障之后恢复服务,例如象开放最短路径优先(OSPF)的路由协议。
该解决方案还允许根据实现最优地调整两次相继重复更新消息之间的时间段。这可以例如定义成事件源以之间的短间隔发送前两次发送,然后以显著更长的间隔重复发送。例如,在位置更新的情况下,基站可以配置成以几秒钟的间隔向所有数据库实例发送位置更新消息两次,然后以增加的间隔(如果使用确认发送的话)再次发送该消息。两次相继重复更新消息之间的时间段优选地比网络的收敛时间长,例如,对于0SPF,一般是从几秒到几十秒。否则,在服务中断期间,第一次发送和重新发送都有可能丢失。如果重新发送之间的时段足够长,则可以假定网络在该时段中从故障中恢复而且至少有一个消息传递到了数据库实例。
在图3A至3C的实施例中,基站既充当事件源,又充当事件消费者。很清楚,在信息系统中,角色可以根据事件信息的类型和应用其的处理而变化。例如,在通信系统的情况下,事件数据项可以生成、分发到数据库实例,并由用户终端或者任何网络元件在数据库实例中进行访问,其中的网络元件包括基站、调度工作站、应用服务器、交换器(exchange)、服务节点、接入节点、网关等。例如,事件数据项可以包括存储在XML文件中并由存在服务器应用的存在数据。事件数据项还可以包括由各个证券交易所发布、在多个证券汇率(stock rate)服务器的数据库中编译并由证券汇率服务器的多个客户端访问的证券汇率。可以针对例如天气预报信息、货币汇率等的收集和分发生成类似的例子。
图4例示了用于信息系统的事件源中的方法的实施例。相应地,该方法是在图3A 至3C的系统的基站中实现的,而且这些图及之后的描述也可以全面地应用到图4的解决方案。过程在基站连接到网络并准备好进行正常操作的阶段开始。(步骤40)在基站中存储一组并行订户数据库实例DBi的标识符或者地址,其中基站配置成向这些数据库实例发送事件数据项。组可以包括一个数据库实例、信息系统的所有数据库实例或者它们的一个子组。基站准备好(步骤41)用于关联到数据项的信息(由其自己生成,或者由连接到其的其它实体生成)。在所实施的例子中,基站准备好用于移动通信系统的用户终端的位置更新。当位置更新到达时,它生成(步骤42)包括位置更新信息的事件数据项q并利用包切换通信协议将其发送(步骤4 到所存储的数据库实例DBi的组,其中来自数据库实例的确认的不接收不会自动造成事件数据项到该数据库实例的重新发送。在这种实施例中,假定是IP多播。
在传统的通信系统中,不采用并行的订户数据库实例,而且动态信息只在一个实体(S卩,游客位置寄存器)中可以获得。所实施的机制建议了一种改进的机制,该机制使得订户数据可以分发到若干个并行的数据库实例,其中数据库实例可以根据例如它们关联的传输距离、传输链路的质量或者目前的可用性被选择作为访问实体。
该方法还可以通过其中基站至少重新发送一次(步骤44)信息元素的步骤进一步改进,而不管是否从任何数据库接收到了确认。这增加了数据库中信息正确的概率并由此减少了所关联的故障情况下新查询的需求。
该方法还可以通过其中基站检查(步骤4 是否从有些数据库实例接收到了至少一个响应的过程进一步改进。如果接收到了至少一个响应,则它认为吞吐率是适当的并继续到步骤41,准备好用于进一步的信息。如果没有,则基站调整(步骤46)到下一次发送的时段T,并在前进到步骤44以重新发送数据项之前等待(步骤47)这个时段T。根据应用, 时段T可以是恒定的,或者可以在连续的重新发送之间增加或者减小。这允许调整重新发送的量,以便匹配所应用系统的其它配置。
应当指出,在任何一个流程图中描述的步骤/点、传送消息和相关的功能都不是按照绝对的时间顺序,而且有些步骤/点可以同时执行或者以不同于所给定的次序执行。 也可以在步骤/点之间或者在步骤/点之内执行其它功能,而且其它传送消息也可以在所例示的消息之间发送。一些步骤/点或者部分步骤/点也可以略去或者由对应的步骤/点或者部分的步骤/点来代替。
图5例示了用在信息系统的事件消费者中的方法的实施例。相应地,该方法是在图3A至3C的系统的基站中实现的,而且对这些图及之后的描述也可以全面地应用到图5 的解决方案。过程在基站连接到网络并准备好进行正常操作的阶段开始。基站配置(步骤 500)成具有应用事件数据的处理,在这里是根据关于接收用户终端&的目前基站的信息转发呼叫建立消息的移动管理处理P。基站还存储(步骤50 —组并行订户数据库实例DBi 的标识符或者地址,所述数据库实例中存储了来自基站的基于位置更新的信息。以这种方式,基站准备好(步骤504)用于处理P对事件数据&的请求。
任何时候当检测(步骤506)到这种请求时,基站选择从其查询用于移动管理过程的事件数据的数据库DB(Ek)。由于本发明,这种决定可以根据例如传输成本、传输链路的质量或者并行数据库的目前可用性自由地作出。基站利用所选的数据库DB(Ek)形成查询(步骤510)并检查(步骤512)响应中信息的有效性。这可以通过例如利用处理P中的事件数据来实现,而且,基于结果的成功或者失败,确定所使用数据的有效性。如果(步骤514)结果是有效的,例如如果呼叫建立消息按时得到了确认,则过程继续到步骤504,准备好用于处理P的进一步信息需求。如果(步骤514)结果是无效的,例如呼叫建立消息没有得到回答,而且还有未查询的数据库(步骤516),则选择(步骤518)新的数据库,且过程继续到步骤510,以在新选择的数据库中实现查询。否则(步骤516)呼叫建立失败(步骤520)且过程移到步骤504,以准备好用于处理P的进一步信息需求。
图6中的框图示出了可用于先前实施例中所公开的用户终端、基站、数据库或者其它元件装置的参考硬件配置。
装置包括接口单元61,该接口单元具有用于将数据输入到装置的内部处理的至少一个输入单元和用于从装置的内部处理输出数据的至少一个输出单元。在用户终端装置中,接口单元一般包括具有用于输入数据的键板、触摸屏、传声器等和用于输出数据的屏幕、触摸屏、扬声器等的用户接口。在网络元件装置中,接口单元一般包括针对用于传递到其外部连接点的信息和用于馈送到与其外部连接点相连接的线路的信息充当网关的插件单元。
接口单元61电连接到用于执行对数据的操作的系统执行的处理器单元62。处理器单元62是基本上包括运算逻辑单元、多个专用寄存器和控制电路的中央元件。作为其中可以存储计算机可读数据或程序或者用户数据的数据介质的存储器单元63连接到处理器单元62。存储器单元23 —般包括易失性或者非易失性存储器,例如EEPROM、ROM、PROM、 RAM、DRAM、SRAM、固件、可编程逻辑,等等。
用户终端和基站装置包括无线电收发器单元64,该无线电收发器单元64包括发送器65和接收器66,而且还电连接到处理器单元62。发送器65从处理器单元62接收位流,并将其转换成用于由天线67发送的无线电信号。对应地,由天线67接收到的无线电信号被引导到接收器66,接收器66将该无线电信号转换成位流,该位流被转发到处理器单元 62以进行进一步处理。传输中由处理器单元622实现的功能一般包括编码、重新排序、交织、扰码、通道复用和突发脉冲建立。
有些其它网络元件装置的参考硬件配置对应于基站的配置,但一般不包括无线电收发器单元。
处理器单元62、存储器单元63、接口单元62和无线电收发器单元64电互连,以便提供用于根据装置的预定、基本上编程好的处理执行对所接收和/或所存储数据的操作的系统执行的功能性实体。在根据本发明的解决方案中,事件源装置的功能性实体至少包括 用于存储关于与通信单元相关联的一组数据库实例的信息的数据库记录,其中通信单元包括通信设备和用于识别使用该通信设备的订户的模块;用于生成与通信单元相关联的事件数据项的事件管理器;和用于将事件数据项发送到数据库记录中的数据库实例组的数据库接口。在根据本发明的解决方案中,事件消费者装置的功能性实体至少包括用于存储关于存储由处理所用事件数据的一组数据库实例的信息的数据库记录;用于从这组数据库实例确定一个数据库实例并从该数据库实例查询用于处理的事件数据的事件数据提供者;及用于检测从数据库实例查询的数据是否有效的有效性检测器。这些操作利用图2至5更详细地进行了描述。
本发明还可以在计算机程序产品中实施,该计算机程序产品可以由计算机读取并且编码用于执行控制信息系统的装置中的功能的计算机处理的计算机指令程序。
对本领域技术人员来说,很显然,随着技术的发展,该创造性概念可以按照各种方式实现。本发明及其实施例不限于以上所述的例子,而是可以在权利要求的范围内变化。
权利要求
1.一种信息系统,在该信息系统中到定址的目的地实体的数据项可以重新发送,直到所定址的目的地实体确认接收到了该数据项,该信息系统还提供不确认的包切换通信协议,在该协议中对到所定址的目的地的数据项的重新发送独立于从所定址目的地对所发送数据项的确认的接收,该信息系统的特征在于包括数据源(ES ;BS4),配置成利用所述不确认的包切换通信协议将数据项发送到一组复制数据库实例;两个或者更多个复制数据库实例(DBI ;SRl-Sfoi),其中每一个都配置成从所述数据源接收数据项,将该数据项存储为当前数据项,并开放对该当前数据项的访问;数据消费者(EC ;BS3),配置成从一个所述复制数据库实例查询关于所述当前数据项的信息所述数据消费者还配置成检测在来自所述一个复制数据库实例的对查询的响应中所包括的信息是否有效;而且响应于该信息无效,启动从另一目的地的新查询。
2.一种用于信息系统的装置(BS4),在该信息系统中到定址的目的地实体的数据项可以重新发送,直到所定址的目的地实体确认接收到了该数据项,该信息系统还提供不确认的包切换通信协议,在该协议中对到所定址的目的地的数据项的重新发送独立于从所定址目的地对所发送数据项的确认的接收,该装置的特征在于数据库记录(63),用于存储关于与通信单元(UT2)相关联的一组复制数据库实例 (SRl-SRn)的信息,其中通信单元(UD)包括通信设备和用于识别使用该通信设备的订户的模块;事件管理器,用于生成与所述通信单元(UD)相关联的数据项;数据库接口,用于利用所述不确认的包切换通信协议,将所述数据项发送到所述数据库记录中的所述一组复制数据库实例(SRl-Sfoi)。
3.如权利要求2所述的装置,其特征在于,所述数据库接口配置成根据预先定义的安排重新发送所述数据项。
4.如权利要求2或者3所述的装置,其特征在于,所述数据库接口配置成向所述一组数据库实例重新发送所述数据项,直到从至少一个数据库实例接收到确认。
5.如权利要求2、3或者4所述的装置,其特征在于,所述数据库接口配置成在距前一次发送的预定时段之后重新发送所述数据项。
6.如权利要求5所述的装置,其特征在于,所述时段随发送而增加。
7.如权利要求5所述的装置,其特征在于,所述时段比为网络定义的收敛时间长。
8.如权利要求2至7中任一项所述的装置,其特征在于,所述数据库记录包括并行维护与一个订户相关联的事件数据的两个或者更多个数据库实例。
9.如权利要求8所述的装置,其特征在于,所述数据项包括以下类型的订户数据中的至少一个移动管理数据、存在数据、呼叫控制数据、服务授权数据。
10.一种用于信息系统的装置(BS3),在该信息系统中到定址的目的地实体的数据项可以重新发送,直到所定址的目的地实体确认接收到了该数据项,该信息系统还提供不确认的包切换通信协议,在该协议中对到所定址的目的地的数据项的重新发送独立于从所定址目的地对所发送数据项的确认的接收,该装置包括处理器单元,配置成应用事件数据;其特征在于数据库记录,用于存储关于一组两个或者更多个复制数据库实例(SRl-Sfoi)的信息, 其中每个复制数据库实例存储由所述处理器单元应用的事件数据;事件数据提供器,用于从所述一组复制数据库实例(SRl-Sfoi)确定一个数据库实例 (SR2),并从该数据库实例查询用于处理的事件数据;有效性检测器,用于检测对查询的响应中所包括的信息是否有效;及事件提供器,配置成响应于信息无效而启动从另一目的地的新查询。
11.如权利要求10所述的装置,其特征在于,所述有效性检测器配置成检测应用所查询的事件数据的处理是否成功,及响应于该处理不成功,启动新查询。
12.如权利要求10或者11所述的装置,其特征在于,所述事件提供器配置成在一组其它数据库实例中执行新查询;接收包括事件数据和相关联的时间戳的响应; 将与最近时间戳相关联的事件数据提供给所述处理。
13.如权利要求10或者11所述的装置,其特征在于,所述事件提供器配置成向一个或多个事件源发送关于事件的查询,其中所述事件源将数据项发送到数据库实例;从事件源接收包括关于该事件的数据的响应; 将包括在所述响应中的事件数据提供给所述处理。
14.如权利要求13所述的装置,其特征在于,所述事件提供器配置成向将数据项发送到所述数据库记录中的数据库实例的所有事件源发送查询。
15.如权利要求10至14中任一项所述的装置,其特征在于,该装置是通信系统的基站或者用户终端。
16.如权利要求10至15中任一项所述的装置,其特征在于,所述处理是以下之一呼叫控制过程、移动管理过程、位置应用的过程和存在服务的过程。
17.一种方法,包括在信息系统中运行,在该信息系统中到定址的目的地实体的数据项可以重新发送,直到所定址的目的地实体确认接收到了该数据项,该信息系统还提供不确认的包切换通信协议,在该协议中对到所定址的目的地的数据项的重新发送独立于从所定址目的地对所发送数据项的确认的接收,该方法的特征在于存储GO)关于与通信单元相关联的一组两个或者更多个复制数据库实例的信息,其中通信单元包括通信设备和用于识别使用该通信设备的订户的模块; 生成0 与所述通信单元相关联的数据项;利用所述包切换通信协议,将所述数据项发送^幻到数据库记录中的所述一组复制数据库实例。
18.一种方法,包括 应用事件数据,其特征在于存储(502)关于一组两个或者更多个复制数据库实例的信息,其中每个复制数据库实例都存储由处理应用的事件数据;从所述一组两个或者更多个复制数据库实例确定(508) —个复制数据库实例,并从所述复制数据库实例查询(510)用于所述处理的事件数据; 检测(512)对查询的响应中所包括的信息是否有效;及响应于所述信息无效,启动(518)从另一目的地的新查询。
19. 一种计算机程序产品,其可由计算机读取并且编码用于执行控制信息系统的装置中的功能的计算机处理的计算机指令程序,其特征在于所述处理包括权利要求17至18的方法的步骤。
全文摘要
一种信息系统,该信息系统包括利用包切换通信协议将数据项发送到一组数据库实例的数据源,在所述协议中所述数据项到数据库实例的重新发送独立于从所述数据库实例对所发送数据项的确认的接收。数据库实例从所述数据源接收所述数据项、将该数据项存储为当前数据项,并开放对该当前数据项的访问。数据消费者从该数据库实例查询关于所述当前数据项的信息,并具备检测对查询的响应中所包括的信息是否有效的手段。如果所述信息无效,则数据消费者启动从另一目的地的新查询。
文档编号G06F17/30GK102187337SQ200980139522
公开日2011年9月14日 申请日期2009年9月30日 优先权日2008年10月7日
发明者T·萨武宁, H·萨洛沃里, O-P·拉蒂南 申请人:卡斯蒂安芬兰有限公司

最新回复(0)