用于数据的复制、集成、合并和移动化的系统和方法

文档序号:6655913阅读:269来源:国知局
专利名称:用于数据的复制、集成、合并和移动化的系统和方法
技术领域
本发明涉及数据的集成和移动化以及人际通信。数据可以从任何类型的结构化数据存储库中取得,包括遗留系统。本发明采用可以在数据复制系统中实施的专门数据结构。具体地说,本发明涉及在集成和合并异类数据源时需要最大的灵活性并且在通信链路上分布这样的数据源的系统。本发明具体适用于在低带宽通信链路上的数据分发,具有可选的推压(push)功能。此外,根据本发明的系统在处理商业环境中的大型分布式数据源时具有鲁棒性,同时足够偏向于可选的个人使用。
背景技术
大多数公司都具有电子存储的、与客户、产品、职员、账户、股票、图形等有关的信息。然而,这些数据储备通常驻留在不同的系统中,它们之间的集成很有限。
此外,雇员之间以及雇员和客户之间的人际交往主要是以电子形式进行的。如今的趋势是更高的移动性和更短的反应时间,但至关重要的是要一直保证可以访问对任务至关重要的信息。
首先,当前只有通过冗长、昂贵的开发周期来实现数据的移动化。
其次,在后端系统中缺少集成妨碍了快速反应时间所需要的对任务至关重要的信息的合并查阅。
因此,缺少合并信息以及与大量人际通信的集成使得信息的移动使用实施起来成本很高,最终很费力,如果以自组织方式使用不是不可能的话。
移动数据传递系统的实施常常会迫使一家公司也投资于昂贵的支撑性基础设施和应用,例如web服务器和电子邮件服务器。
当试图开发用于数据移动传递的解决方案时,遍布的遗留系统的多样性成为主要的障碍,甚至在个体公司也是如此。这样的系统通常需要来自这样的多样性源和数据结构的数据的高度集成和合并。开发系统间接口的传统方法比较耗时,代价高昂而且易于出错。
此外,结果通常都过于静止不变,难以适应快速变化的用户需要,结果每次在任一端上发生改变,就要进行昂贵的再次开发。
传统的接口协议试图通过将数据打包(package)在描述性封装内,从而补偿它们的静态特性。然而,这种打包操作导致在数据传输需要在速度和体积上最优化的领域中开销昂贵。
需求很高的传统的推压(push)服务通常通过以下来实现(1)从客户端设备的定时拉取,(2)服务器发起的SMS(短消息服务),或(3)WAP Push(无线接入协议)。这些可替换的实施方案都是有缺点的。可替换方案(1)产生高流量,并且实际不是实时的。可替换方案(2)由于短消息服务的约束而大小受限,并被限制为每个地区一个带宽。可替换方案(3)需要启用WAP的设备,并且产生与其内容相比不成比例的过大的传输数据包。
考虑到以上问题,本发明的目的是提供一种通过在非常短的时间内根据需要简单地安装和配置系统,实现多样的数据源之间的集成的简易方式。
它的目标是促进来自这些数据源的信息的合并过程,以使对任务至关重要的信息可以访问并可以管理。
为了使它在集成多样性系统时的有效性最大,它的目标是提供延伸的最大自由度,即,源数据可以位于任何位置上并可以在任何结构化的数据源中。
为了简化任务并使任务流线化,一个目的是将人际通信,例如电子邮件、联系人、约会、任务、传真、语音等集成到与企业数据相同的传递过程中。

发明内容
根据本发明的用于数据移动化的系统包括三个具有不同功能的模块,也被称为组件。它们是数据连接器、复制服务器和通信服务器。所述模块以某种方式组合在一起,以提供至少以下之一数据的复制、集成、合并和移动化。复制服务器可以经由通信链路连接至数据连接器,而数据连接器自身可以连接到后端数据,例如数据库或其他结构化的数据源。替换地或附加地,复制服务器可以经由通信链路连接至通信服务器,而通信服务器自身可以经由通信链路连接至客户应用。替换地或附加地,复制服务器可以经由通信链路连接至另一个复制服务器,该复制服务器自身可以连接至任意数量的任一种上述模块。
任一种模块的一个或多个实例可以视需要实现在一起或单独实现。每个模块经由通信链路例如TCP/IP连接与另一个相邻的模块通信,从而允许分布式的实施方案。可确认的是,通信链路或连接可能不是一直都工作或运行。然而,就本发明而言,在两个模块之间存在着通信链路或连接,如果已配置或建立了任一种类的这样的链路或连接的话,尽管在某一特定的时间点上它不一定是存在的和可用的,例如移动电话链路,它就不是一直可用的。
换言之,数据连接器和通信服务器模块中的任何一个都可以实现为任意数量的实例,并且可以在一个或多个复制服务器周围合并在一起,以提供最大的合作分布。
每个模块可以自主地执行其任务,即在访问或不访问其他模块的情况下。为此,每个模块都配备有它自己的数据存储库,用于在本地保存相关的数据。优点就是分布式环境中,甚至在超出系统边界直至第三方的范围内的高效率。例如,即使数据连接器暂时没有连接到后端数据源,移动设备也可以连接到通信服务器进行更新。
每个模块都可以经由中央管理屏来配置。管理至少包括以下之一到后端源的数据连接的定义、用于复制目的的数据的字段级规定、系统间的集成规则、用户和设备的访问维护等等。
数据连接器被用来连接数据源并且定义打算移动化或集成的数据的子集。数据流可以是双向的。该过程不中断后端系统的正常操作。后端数据源可以是多样的,不限于以下例子数据库、桌面电子数据表、电子邮件系统、流媒体、声控系统。
复制服务器负责整个系统内数据的控制和分布。经由管理屏,形成控制界面,可以定义集成规则来组织及合并从不同的后端和移动源而来的信息。
复制服务器还负责维护用户和群组的数据访问权。这些权限可以一直配置到字段级,指示用户对于每个字段具有哪些访问权,例如读/写/删除。数据访问权的进一步规定包括改变的源,例如,用户可以从他的本地桌面计算机改变产品价格,但不能从他的移动设备改变。复制过程也促进了由服务器创建的指定数据的推压功能。
通信服务器负责与移动或桌面系统之间的连通性。它管理用户访问权,例如,谁在何时有权以哪些设备、哪些设备类型、何种连接速度和存储能力来访问系统。
上述系统独立于第三方系统运行。不需要提供功能性的支持系统,象web服务器,从而为公司节省了不必要的额外开支。
与静止或移动客户端系统间的通信可以通过以下标准来实现常见的IP Socket通信、HTTP(超文本传输协议)、WAP(无线接入协议)、XML(可扩展置标语言)或SyncML标准,连接服务器有利地用作这些标准中的任何一种或全部的主机,而不需要第三方软件。
本发明的优点在于促进了向移动的职员传递信息,不管他们偏好何种通信设备。由于灵活的模块,根据本发明的系统可以有利地在不超过5天的实施周期内全部完成。
一个优点在于将实现上述目标的过程简化到以下程度在本发明的帮助下,一家公司能够利用它自己的信息技术资源实现这些目标,而不需要外界的帮助、长的研发周期或高成本。
本发明的一个优点是处理数据以实现以上目的的新途径。本发明的另一个优点是在与其他系统集成期间实现最大自由度的数据结构。
关于以上方面,所采用的数据结构的优点在于它们可以容纳任意类型的数据表示法和类型。优点就是用在复制系统中的优化数据结构,所述复制系统也可能不得不在低带宽的通信链路上进行复制。
所述数据结构包括智能控制机制,它允许系统保持它自己的数据完整性以及面向它的源或目标位置的完整性。
本发明的一个优点在于将字段级访问权并入数据结构中,以适应与第三方系统之间的集成,并提供针对来自移动设备的数据的安全性。
一个优点在于同时适应动态数据元素以及本质上具有低命中率或者体积较大的数据元素。后者应当是可获得的并且象正常数据一样来对待,但是,复制应当仅在要求时才发生。
一个优点还是以下能力通过创建(一个或多个)数据源的新的合并形式,它使得结构更易于理解,易于实施、具有鲁棒性并且不会受到在后端或前端结构变化中的变化的损害,从而促进客户开发,象移动应用。
除此之外,本发明允许简化使用并最大化数据的可用性,并通过对任意类型数据的高效的推压服务来降低传输成本。
一个优点在于通过优化的推压服务向并不固有地适于该功能的设备传递内容的能力。进一步的优点还是在数据集成和移动化过程的安装、实施和建立期间避免系统中断的能力。
另一个优点还是在初始实施的移动性方案的再调整期间提供灵活性和自动完整性的能力。这允许在满足个体用户的变动需求时很快的响应时间。
另外,一个优点是与现有系统并行地实施和操作本系统,而本系统并不影响或取代这些现有系统的功能。这允许自组织的改变,还允许反复试验开发以及无故障地解除安装。
通过以上特征的组合,本系统有利地为用户提供了满足他们的移动化、集成、合并和复制需要的简单、经济、全面的解决方案。


本发明的上述主要优点是提供用于集成、合并、复制和/或使数据移动化的高度灵活并易于实现的系统,该系统也可以存在于传统系统中。因此,以下提出的优选的、可替换的实施方式仅仅构成了从多种可能的实施方式中选出的一小部分。将参考附图对它们进行描述,其中图1示出了根据本发明的系统的总图,简要描绘了其实施的方式、组件以及通信方式;图2显示了根据本发明的系统,它实现了到多个后端数据源的连接,包括本地数据源和分布式数据源;图3示出了实施两个复制服务器的根据本发明的系统;图4着重示出了数据连接器的功能单元;图5图示了复制服务器的组件;图6代表通信服务器的组件;图7显示了如图6所示的根据本发明的公共通信模块的详细图;图8图示了在图5的复制服务器、图6的通信服务器和图4的数据连接器之间为通信目的所采用的私有通信模块;图9表示根据本发明被用来在私有数据存储库中存储复制数据的表结构;图10表示根据本发明被用来存储数据库连接设置的表结构;图11表示根据本发明被用来存储选定的用于复制的表定义的表结构;图12表示根据本发明被用来存储用户/设备定义的表结构;图13表示根据本发明被用来存储每个用户的字段级访问权的表结构;图14表示根据本发明被用来存储字段定义的表结构;图15图示了根据本发明的系统中的事务;图16描述了根据本发明的流出事务所遵循的过程;图17描述了根据本发明的流入事务所遵循的过程;图18描述了根据本发明在移动设备上实现功能的客户端设备模块;
图19、20和21根据本发明图示了连接到本地数据源进行集成、合并、复制和可能的移动化的可能方式;图22、23和24根据本发明图示了连接到成批的远程数据源进行集成、复制和可能的移动化的可能方式;图25、26和27根据本发明图示了连接到个人数据源以及PIM系统(个人集成管理器)的电子邮件、日历、联络数据和其他内容,以进行集成、复制和可能的移动化的可能方式;图28、29和30图示了远程/移动设备可以连接到根据本发明的系统的方式;所述系统包括对于数据、邮件、联络信息、日历等的端到端推压功能;图31图示了根据本发明可以使用的不同远程/移动客户端设备的例子;图32根据本发明图示了利用供应商(Provider)的特殊主机服务(hosting)的可能性;图33、34和35根据本发明图示了用于个人和企业使用的特殊主机服务的可能性;以及图36图示了根据本发明的典型的集成和复制过程。
具体实施例方式
现在结合附图来详细描述本发明。无论在何处使用术语“复制”,它都也可以代表数据源的集成和合并以及分布、移动方式的数据的传递和接收中的一种或多种。
无论在何处提到加密例程,它也意味着可以采用其他加密方案,例如RSA、RSA-E、RSA-S、ELG-E、DSA、ELG、3DES、CAST5、BLOWFISH、AES、AES192、AES256、TWOFISH。
无论在何处提到压缩例程,它也意味着可以采用商业压缩例程,例如Lempel-Ziv或LZ77、bzip2或zip压缩。
无论在说明书和附图中何处提到通信链路,也被称为LAN连接、基于有线的或无线的通信链路,都可以替换地采用任何基于有线的通信或无线通信,例如基于有线的或无线的IP通信、WLAN、Bluetooth等,即使它没有在图中直接示出,例如在工厂的监控系统上的复制服务器和数据连接器之间的Bluetooth连接。
无论说明书和附图在何处提及移动/远程用户、移动/远程设备、输入/输出设备、移动/远程客户机、连接到通信服务器的连通设备,任何种类的I/O设备都可以形成上述设备,例如移动(蜂窝)电话、智能电话、PDA(个人数字助理)、(亚)笔记本电脑、膝上型计算机、桌面计算机、服务器、游戏机、条形码设备(例如条形码读取器)、传感器(例如温度计、气压计等)、启用IP的家用电器、启用IP的生产机器、汽车、汽车收音机、导航系统、汽车设备。应当指出,在本发明的上下文中用作I/O设备的多种设备仅由这样的设备与相应的通信服务器通信的能力来限制。现在优选的是IP连接(因特网协议),但是也可以用其他种类的连接取而代之。
无论在何处示出输入/输出设备和通信服务器之间的传输,该传输都可以是应需通信或者推压式通信,即使在附图中没有明确示出或者在申请文件中没有明确提到。
推压式通信、推压通信或者推压服务是一种传输数据的方式,其中传输是由源,即发送方发起的,而不是由目标,即接收方发起的。
系统主要包括三个组成部分,即复制服务器、可选的数据连接器和可选的通信服务器。系统的基本组成部分是复制服务器。与一个或多个复制服务器一起,任意数量的其他组件可以构成一个功能系统,该系统可以通过一个或多个管理界面来管理。只要遵守以下规则,以上组件的任意组合和数量都是可行的(i)后端数据源只能连接到数据连接器;直接连接是优选的;很多后端数据源可以连接到一个数据连接器,反之亦然;(ii)一个数据连接器只能连接到一个复制服务器;但是,复制服务器可以连接到一个以上的数据连接器;(iii)通信服务器不能直接连接到数据连接器;(iv)输入/输出设备只能经由通信服务器连接到该系统;很多输入/输出设备都可以连接到一个通信服务器;(v)一个通信服务器只能连接到一个复制服务器;但是,复制服务器可以连接到一个以上的通信服务器;(vi)通信服务器不能直接连接到它自身的另一个实例;(vii)数据连接器不能直接连接到它自身的另一个实例。
如上所述,每个I/O设备都被使能与系统的通信服务器进行通信。通信功能例如可以由基于HTTP(超文本传输协议)或WAP(无线接入协议)的浏览器界面或者定制的开发应用程序(也被称为客户应用程序)来提供。
由于从本质上说,提供实施灵活性是本发明的一个优点,所以附图不能演示所有可能的实施方案。因此,以下附图代表选出的一部分优选的实施可能性。
图1示出了根据本发明的系统的总图,简要描绘了其实施的方式、组件以及通信方式。系统100包括第一后端数据105,它经由第一通信链路115连接到第一数据连接器110。第二后端数据120经由第二通信链路125连接到第一数据连接器110,并经由第三通信链路135连接到第二数据连接器130。第一数据连接器110和第二数据连接器130分别经由第四通信链路145和第五通信链路150链接到复制服务器140。复制服务器140经由第六通信链路160连接到通信服务器155。通信服务器155自身一边经由第七通信链路170连接到移动设备165,另一边经由第八通信链路180连接到桌面计算机175。
第一后端数据105和/或第二后端数据120可以由可访问的任意种类的结构化数据组成。可访问能力有利地可以通过本机软件驱动程序来提供,例如ODBC(开放式数据库互连)、POP3(邮局协议)、SMTP(简单邮件传输协议)、LDAP(轻量级目录访问协议)、ActiveDirectory或者结构化文件访问。数据源的例子是Oracle数据库、Microsoft SQL、Access、Exchange、Excel、平面文件、公共邮件帐户等等。
移动设备165例如可以由膝上型计算机、移动电话或者PDA(个人数字助理)构成,它们例如通过GPRS(通用无线信号)、UMTS(通用移动电信系统)、Bluetooth或WLAN(无线局域网)无线接入到因特网或者VPN(虚拟私人网络)。也可以支持任何其他形式的基于IP(因特网协议)的无线连接。
桌面计算机175可以由例如通过LAN(局域网)、WAN(广域网)、因特网或VPN(虚拟私人网络)接入网络的个人计算机构成。
通信链路115、125、135、145、150、160、180可以由例如LAN(局域网)、WAN(广域网)或者VPN(虚拟私人网络)上的单向和/或双向网络连接构成。在某些情况下,该通信也可以是非安全的因特网连接,此时,在本发明中加入可选的加密提供了必要的安全性。
第七通信链路170可以由穿过因特网的单向和/或双向连接构成,例如TCP/IP连接(基于因特网协议的传输控制协议)。通信服务器155可以接入因特网,并可以通过固定IP地址或URL(统一资源定位符),或者基于动态IP地址在外部服务器(未示出)的干预下到达。在后面的情况中,托管服务(hosted service)轮询当前的服务器IP地址。移动设备165首先连接到托管服务,接着托管服务识别它并传过去当前IP地址。然后,移动设备165自动从托管服务断开,并经由已知的IP地址建立到服务器的连接。
复制服务器140负责移动设备165与第一和第二后端数据105、120中任一个,桌面计算机175与第一或第二后端数据105、120和/或第一后端数据105和第二后端数据120之间,以及移动设备165和桌面计算机175之间的事务的重新定向。复制服务器140还负责数据源之间的集成功能、与用户和设备访问权有关的字段级事务安全、和数据完整性。复制服务器140连接到一个或多个数据连接器(例如第一和第二数据连接器110、130)和一个或多个通信服务器(这里是通信服务器155)。复制服务器140还可以连接到它自身的多个分布式实例(未示出)。
一种可能的实施方案可以是使部门之间的复制最优,其中每个部门都有复制服务器,或者使两个公司的连接最优,每个公司都配备了复制服务器,目的是在它们各自的后端系统之间互换数据,使得公司间的团队能够在一个公共的数据池上工作。
数据连接器110、130中的每一个都允许容易地访问后端数据源。数据连接器被配置来定义现有数据的子集用于移动化和集成的目的。根据需要,可以定义新的数据源。可以在每个数据连接器110、130中定义诸如复制频率的行为、对表和字段的读写访问以及完整性规则。两个数据连接器110、130可被实现在与数据源相同的计算机上,可被实现在网络中一个不同的计算机上,或者通过因特网连接到远程数据源。一个数据连接器,例如图1中的第一数据连接器110可以连接到后端数据的多个实例以及副本,即这里的第一和第二后端数据105、120。两个数据连接器,即图1中的第一和第二数据连接器110、130可以连接到相同的后端数据源,即这里的第二后端数据120。数据连接器的大量实例也可以实现在同一系统中。两个数据连接器都可以实现在与复制服务器相同的计算机系统上,或者实现在一个不同的计算机系统上。
通信服务器155负责对系统的客户访问。客户访问可以是来自移动设备,例如图1的移动设备165,或者是来自个人计算机,例如图1的桌面计算机175。通信服务器155负责用户和设备级访问权。通信服务器155通过确保数据传递来保持在通信过程期间的事务完整性。通信服务器可被实现在与复制服务器相同的计算机系统上,或者实现在一个不同的计算机系统上。
图2显示了根据本发明的系统200,它实现了到多个后端数据源,即本地数据源和分布式数据源的连接。系统200包括第一后端数据205,它经由第一通信链路215连接到第一数据连接器210。第二后端数据220经由第二通信链路235连接到第二数据连接器230。第一数据连接器210和第二数据连接器230分别经由第三通信链路245和第四通信链路250链接到复制服务器240。复制服务器240经由第五通信链路260连接到第三数据连接器255,第三数据连接器255经由第六通信链路270连接到第三后端数据265。
通信链路215、235、245、250和270是由LAN、WAN或VPN上的双向网络连接构成的。第五通信链路260是由穿过因特网的双向IP(因特网协议)连接构成的。
图3示出了实施两个复制服务器的根据本发明的系统300。应当指出,在一个系统中可以提供两个以上的复制服务器。
系统300包括第一后端数据305,它经由第一通信链路315连接到第一数据连接器310。第二后端数据320经由第二通信链路335连接到第二数据连接器330。第一数据连接器310经由第三通信链路345链接到第一复制服务器340。第二数据连接器330经由第四通信链路350链接到第二复制服务器348。第一复制服务器340经由第五通信链路360连接到第二复制服务器348。
如果数据源是分布式的,则该结构具有产生更高的数据可用性的优点。通信链路315、335、345和350是由LAN、WAN或VPN上的双向网络连接构成的。第五通信链路360代表穿过因特网(或者LAN、VPN等之上)的双向IP连接。
图4着重示出了数据连接器400的功能单元。数据连接器400包括与各种数据源之间的接口408。数据连接器可被配置为自动检测数据源和/或检测来自互接的后端数据源的可用数据字段。可能的后端数据源可以由包括Oracle或Access的关系数据库401,包括PIM服务(个人信息管理器)、POP3(邮局协议)和SMTP(简单邮件传输协议)的电子邮件服务器402,基于web的邮件源403,电子数据表404,诸如CSV(逗号分割)的结构化文件405或者XML(可扩展置标语言)406等构成。通过综合管理屏(未示出),可以定义很多结构化的数据源。此外,数据连接器包括私有通信模块409和字段定义模块410,其中私有通信模块409被配置为与复制服务器通信,字段定义模块410被配置为允许通过GUI(图形用户界面)定义将被公布来复制的字段子集。字段定义模块410也用于定义表和字段级的完整性和复制规则。此外,配备私有数据存储库407用于促进针对非智能数据源的高效复制,预先结构化专有格式的数据并且使数据在后端当机期间仍可访问。
只要有可能,数据连接器就分析后端数据源,以建立完整性规则并在复制过程期间维持这些规则以保持数据完整性。这些完整性规则可以通过管理屏来调整或扩展。
图5图示了复制服务器500的组件。复制服务器500包括字段级安全模块501、复制模块502、集成模块503、管理模块504、负载均衡器505、报告模块506、私有数据存储库507和私有通信模块509。
私有通信模块509负责与数据连接器、通信服务器和其他复制服务器通信。私有数据存储库507用于照顾总数据负载。私有数据存储库507还负责在验证和冲突管理期间的事务处理。
字段级安全模块501被配置为在开始复制前检查用户和设备的字段级权限。复制模块502用于将数据变化传遍整个系统。集成模块503包括GUI(图形用户界面)(未示出),通过该界面可以定义数据源之间的集成规则。管理模块504被允许定义哪些连接、用户访问和服务器状态要被监视。这有利地允许定义每个用户直至字段级的详细访问规则,同时使访问类型之间相互区分开。例如,当用户从LAN局域网或VPN虚拟私有网,而不是从移动设备或者通过因特网访问系统时可以改变后端数据。
在定义的用户群组规则的帮助下维持规则简化了个体用户的管理,但仍提供了视需要对个体进行微调的灵活性。
负载均衡模块505负责在多个复制服务器、互连的数据连接器和通信服务器之间的高效事务处理。报告模块506通知在复制过程期间的问题将在哪里解决。
图6代表通信服务器600的组件。通信服务器600包括用户/设备级安全模块601、版本控制模块602、公共通信模块603、HTTP(超文本传输协议)服务器模块604、WAP(无线接入协议)服务器模块605、IP服务模块606、Proxy(代理)服务模块607、私有数据存储库608和私有通信模块609。
私有通信模块609被配置为与一个复制服务器通信。私有数据存储库608用于打算送给或者来自由适当的通信服务器管理的用户和设备的复制数据。用户/设备级安全模块601负责用户和设备访问安全性。在接受事务之前,该模块验证连接的用户或设备所具有的权限。着重要指出的是,同一用户根据与他/她相连的设备可能具有不同的权限。例如,用户可能被允许从局域网中的桌面计算机来改变产品定价,但是不允许经由因特网连接从他的移动设备来改变。
公共通信模块603为系统提供了多种不同的通信手段。Web服务器604用于在浏览器上进行数据访问,定制HTML页可被配置用于此界面,主要用于报告,但是很多其他的实施方案也是可行的。WAP服务器605用于来自移动设备的浏览器访问,用途和可能性与Web服务器相同。IP服务606通过预先定义的端口提供IP通信。这是与系统间的客户通信的标准预计形式。Proxy模块607服务于通过Proxy服务器的通信。版本控制模块602处理移动设备上的客户应用程序的版本控制。
图7显示了如图6中的603项所示的根据本发明的公共通信模块700的详细图。公共通信模块700包括访问管理模块701、加密模块702、压缩模块703、HTTP服务模块704、WAP服务模块705、IP服务模块706、Proxy服务模块707、与因特网之间的接口708和与LAN、VPN等之间的接口709。所述接口可以通过到因特网、LAN、VPN等的相应连接来实现。
Proxy服务模块707是用于Proxy处理的接口。HTTP服务模块704和WAP服务模块705被用于数据传输。
这两种服务可以向客户浏览器传递定制界面。IP服务模块706实现Socket服务,用于复制的优选通信路线。
压缩模块703负责数据传输期间的压缩。压缩算法专属于系统。然而,也可以使用任何其他压缩算法,例如前面列举的算法。加密模块702负责在通信过程期间的加密。加密系统被实现在所述系统中,但是可以被商业替代品取代,例如前面列举的那些。加密使用具有可变加密级,例如8比特或128比特的公钥-私钥方案。
访问管理模块701负责访问管理。该组件验证用户和设备访问权,监视客户设备状态例如存储器需求,并验证事务。
图8图示了在图5中509所示的复制服务器、图6中609所示的通信服务器和图4中409所示的数据连接器之间用于通信的私有通信模块800。私有通信模块800包括访问管理模块801、加密模块802、压缩模块803、IP服务模块806、proxy(代理)服务模块807以及分别到因特网的接口808和到LAN、VPN等的接口809。
接口808和809可以通过到因特网、LAN、VPN等的连接来实现。proxy服务模块807是用于Proxy处理的接口。IP服务模块806实现Socket服务,用于复制的优选通信路线。压缩服务模块803负责数据传输期间的压缩。压缩算法专属于该系统,如上所述也可以使用其他算法。
加密模块802负责通信过程期间的加密。加密系统被实现在所述系统中,但是可以被前面列举的(商业)替代品来取代。加密使用具有可变加密级,例如8比特或128比特的公钥-私钥方案。
访问管理模块801负责访问管理。该组件验证模块访问权,监视连接状态,并验证事务。
图9表示根据本发明被用来在私有数据存储库中存储复制数据的表结构。每条记录代表在后端系统中的字段的内容。在这种方式下产生的平均开销被平衡掉了,这是因为在该方式下只有指定来复制的字段和选择结果才被保持。此外,该方案在多种不同数据源的集成期间在灵活性方面以及在复制期间在控制方面带来的优点证明了这样一种结构的合理性。高效复制例程的关键是按以下方式的索引唯一数据库标识符、唯一表标识符、改变的时间戳(Timestamp of the change)、被标识符改变(Changed By identifier)、唯一字段标识符。虚拟字段标志指示实际数据是否代表仅应当通过引用来复制的大数据量。然后,应要求从后端源取回实际数据。典型的实施方案将是针对大数据对象或电子邮件文本和附件。应当指出,示出的是字段的优选选择结果。但是,视需要也可以增加其他字段,或者将其他字段用于扩展功能。
图10表示根据本发明被用来存储数据库连接设置的表结构。这些设置包括复制规则。提供字段用于以下数据唯一数据库标识符、后端数据源连接字符串、后端数据位置、对数据库的全局访问权、数据源的后端名称、数据源的服务器内部名称、数据库的全局复制规则以及标识所有权的数据连接器ID。应当指出,示出的是字段中的优选选择结果。但是,视需要也可以增加其他字段,或者将其他字段用于扩展功能。
图11表示根据本发明被用来存储选定的用于复制的表定义的表结构。这些定义包括复制规则。提供字段用于以下数据唯一表标识符、唯一数据库标识符、后端表名称、服务器内部表名称以及用于该表的全局复制规则。应当指出,示出的是字段中的优选选择结果。但是,视需要也可以增加其他字段,或者将其他字段用于扩展功能。
图12表示根据本发明被用来存储用户/设备定义的表结构。这些定义包括每个用户可允许的设备和连接类型,还指定访问时间。提供字段用于以下数据唯一用户标识、用于读/写/删除访问的全局访问权、设备类型、连接类型以及访问时间。应当指出,示出的是字段中的优选选择结果。但是,视需要也可以增加其他字段,或者将其他字段用于扩展功能。
图13表示根据本发明被用来存储每个用户的字段级访问权的表结构。提供字段用于以下数据唯一用户标识、唯一字段标识以及用于读/写访问的全局访问权。应当指出,示出的是字段中的优选选择结果。但是,视需要也可以增加其他字段,或者将其他字段用于扩展功能。
图14表示根据本发明被用来存储字段定义的表结构。提供字段用于以下数据唯一字段标识、唯一数据库标识、唯一表标识、后端字段名称、服务器内部字段名称、字段数据类型、用于数据类型转换的变换规则、全局复制规则、指定虚拟字段的标志、指定可应用于连接类型的访问的标志、用于非安全连接的读/写访问规则、用于安全连接的读/写访问规则、默认字段值、完整性占位符(Integrity PlaceHolder)以及指示字段是否被索引的标志。这代表了在复制过程中使用的选定字段子集。它包含着允许多样的数据类型在集成过程期间遵守的全面的变换规则。应当指出,示出的是字段中的优选选择结果。但是,视需要也可以增加其他字段,或者将其他字段用于扩展功能。
以下三幅图集中于本发明的方法。根据本发明的用于管理各个组件之间的事务传输的方法包括以下步骤。一旦接收到数据,接收的组件就首先验证发送组件的访问权。对于合法的连接,接收组件接着收集所接收的数据,并检验事务完整性。然后,接收组件决定目的地组件,检查该目的地组件的可用性,登录到该组件,并且一旦连接成功,就发送事务到该目的地组件。
该方法还包括以下步骤在前往目的地组件的事务已被发送后,保留传递状态,并且在必要时重新发送该事务。该方法还可以包括与压缩和加密有关的步骤。
图15图示了根据本发明的系统1500中的事务。流出事务将来自后端数据源1510的后端数据通过数据连接器1515、复制服务器1520和通信服务器1525传送到输入/输出设备1530(箭头1540)。流入事务将来自输入/输出设备1530的数据通过通信服务器1525、复制服务器1520和数据连接器1515传送到后端数据源1510(箭头1550)。
图16描述了流出事务所遵循的根据本发明的过程。在数据连接器中执行以下步骤检查后端数据,收集事务,存储在私有数据存储库中,收集数据,决定路由,检查可用的复制服务器,发送事务,检查接收到的状态。复制服务器执行以下步骤检查数据包(package),检查连接源,收集事务,存储在私有数据存储库中,开始集成,收集数据,决定路由,检查可用的通信服务器,发送事务,检查接收到的状态。在通信服务器中执行以下步骤检查数据包,检查连接源,收集事务,存储在私有数据存储库中,收集数据,检查可用的用户/设备,检查设备存储器状态,发送事务以及检查接收到的状态。
图17描述了流入事务所遵循的根据本发明的过程。在通信服务器中执行以下步骤检查数据包有效性,检查用户/设备访问权,收集事务,存储在私有数据存储库中,决定路由,传递到复制服务器(如果可用的话)。在复制服务器中执行以下步骤检查数据包有效性,检查连接源,收集事务,检查用户/设备字段级权限,存储在私有数据存储库中,建立集成规则,决定路由,传递到数据连接器(如果可用的话)。在数据连接器中执行以下步骤检查数据包有效性,检查连接源,收集事务,存储在私有数据存储库中,检查数据库可用性,进行完整性检查,以及存储在后端数据源中。
图18描述了根据本发明在移动设备上实施功能的客户端设备模块1800。移动设备可以包括所有种类的I/O设备,例如移动(蜂窝)电话、智能电话、PDA(个人数字助理)、基于PocketPC和PalmOS的PDA以及基于Symbian、启用JAVA的移动电话、(亚)笔记本电脑、膝上型计算机、桌面计算机、服务器、条形码设备(例如条形码读取器)、传感器(例如温度计、气压计等)、启用IP的家用电器、启用IP的生产机器、汽车、汽车收音机、导航系统、汽车设备。应当指出,在本发明的上下文中用作I/O设备的多种设备仅由这样的设备与相应的通信服务器通信的能力来限制。现在优选的是IP连接(因特网协议),但是也可以用其他种类的连接取而代之。
客户端设备模块包括第一组模块(即设备专用模块)和第二组模块(即定制应用程序专用模块)。设备专用模块包括移动通信模块1801、压缩模块1802、加密模块1803、数据处理模块1804和版本控制模块1805。移动通信模块1801可经由各自的接口1806连接到因特网和LAN、VPN。定制应用程序专用模块包括模板开发模块1807。这些组件可以在线安装。
通信模块1801负责处理通信。此外,它提供对压缩模块1802、加密模块1803以及事务和数据存储装置(未示出)的访问。此外,它提供对客户应用程序的版本控制模块1805的访问。
客户应用程序是基于预先定义的模板开发的,这些模板通过移动设备上的通信服务器1801以及加密数据存储和处理模块1804来管理通信和数据安全性。客户应用程序的开发独立于目标设备和操作。只需要考虑显示器尺寸。
然后,针对预期的目标设备或操作系统来编译客户应用程序,并准备好交付。移动应用程序可选地具有两级口令安全。应用程序访问和特定的应需口令对虚拟字段进行数据访问。典型的使用是移动电子邮件客户端,在对每个单独的消息取回文本时具有附加的口令请求。
以下附图示出了根据本发明的原理的多种实施可能性和相伴的灵活性。
图19、20和21图示了根据本发明与本地数据源的集成、合并、复制和可能的移动化有关的可能的实施方案。
图19图示了为集成、复制、合并和可能的移动化的目的,连接到局域网中的一个或多个数据源的系统1900。第一数据源1910经由第一LAN连接1915连接到数据连接器1920。第二数据源1930经由第二LAN连接1935连接到数据连接器1920。在与数据连接器相同的计算机系统(未示出)上安装复制服务器1950,它能够与数据连接器1920通信。这样的配置的例子将是ERP(企业资源规划)、库存和生产系统之间可能的集成和状态更新,而无需接口编程。这将通过在网络中的单个计算机上安装组件来实现。优点是安装和维护简便。
图20示出了用于数据集成的系统2000。第一数据源2010直接连接到第一数据连接器2015,二者安装在同一计算机系统(未示出)上。第二数据源2030直接连接到第二数据连接器2035,二者运行在同一计算机系统(未示出)上,该计算机系统可以不同于第一数据连接器2015正在运行的计算机系统。第一数据连接器2015和第二数据连接器2035二者分别经由第一LAN连接2040和第二LAN连接2045连接到复制服务器2050。出于和图19中相同的目的,图20将每个数据连接器2015、2035安装在正在运行数据服务器的计算机系统上,将复制服务器安装在单独的一台机器上。优点是通过数据连接器2015、2035和复制服务器2050之间的优化复制而使网络流量减少。
图21示出了用于数据集成的系统2100。数据源2110经由第一LAN连接2115连接到数据连接器2120。数据连接器2120经由第二LAN连接2125连接到复制服务器2130。出于和图19中相同的目的,图21图示的组件和数据源每一个都驻留在单独的机器(未示出)上。这进一步表明了实施的灵活性。
图22、23和24图示了根据本发明,连接到成批的远程数据源进行集成、复制、合并和可能的移动化的可能方式。
图22图示了用于从其他系统输入(import)和输出(export)批传递数据的系统2200。第一数据库2210和第二数据库2215分别经由第一LAN连接2225和第二LAN连接2230连接到数据连接器2220。复制服务器2235被安装在与数据连接器2220相同的计算机系统(未示出)上,二者可以相互通信。用于时间或事件驱动的输入/输出的第一接口2240被提供给数据连接器2220来访问XML批处理文件2255。用于时间或事件驱动的输入/输出的第二接口2245被提供给数据连接器2220来访问TXT/CVS批处理文件2260。用于时间或事件驱动的输入/输出的第三接口2250被提供给数据连接器2220来访问SyncML批处理文件2265。用于这种布局的例子是与传递和接受仅平面文件、XML等内容的第三方系统之间的集成。为了实施,输入/输出结构被限定在数据连接器中。输入/输出可以是定时或事件驱动的。
图23示出了用于远程系统之间的集成和复制的系统2300。第一数据库2310经由第一LAN连接2315连接到第一数据连接器2320,该数据连接器自身又经由第二LAN连接2325连接到复制服务器2330。所有这些组件都和一个地点,例如公司有关。第二数据库2335经由第三LAN连接2340连接到第二数据连接器2345。这些组件和一个不同的地点,例如分部或B2B(企业对企业)伙伴有关。第二数据连接器2345通过因特网、DSL(数字用户线)、GPRS、UMTS、WLAN、WAN或VPN或任何其他具有IP能力的连接2350被连接到复制服务器,以连接两个地点。使用的例子是在分部之间或者与其他公司的数据交换。为了实施,总部安装与远程数据连接器通信的复制服务器。管理可以集中在中央进行,或者下放到数据连接器。优点是远程系统与集中式管理的实时集成和复制。
出于和图23相同的目的,图24示出了系统2400的一个例子,其中两个远程位置实施相互通信的复制服务器。第一数据库2410经由第一LAN连接2415连接到第一数据连接器2420,该数据连接器自身又经由第二LAN连接2425连接到第一复制服务器2430。所有这些组件都和一个地点,例如公司有关。第二数据库2435经由第三LAN连接2440连接到第二数据连接器2445,该数据连接器自身又经由第四LAN连接2450连接到第二复制服务器2455。这些组件和一个不同的地点,例如分部或B2B(企业到企业)伙伴相关。第二复制服务器2455通过因特网、DSL(数字用户线)、GPRS、UMTS、WLAN、WAN或VPN或任何其他具有IP能力的连接2460被连接到第一复制服务器2430,以连接两个地点。管理可以集中起来,或者下放到数据连接器。优点是远程系统的实时集成和复制,还有更好的负载平衡。根据哪个留在本地,哪个被传递到远程系统来指定数据流,这样导致优化的复制。
图25、26和27图示了连接到诸如电子邮件、日历、联络数据一类的个人数据源以及PIM系统(个人信息管理器)的任何其他内容,以根据本发明进行集成、复制、合并和可能的移动化的可能方式。
图25图示了用于与桌面计算机上的个人数据集成的系统2500。系统2500包括经由第一LAN连接2515连接到数据连接器2520的数据库2510,这里数据连接器2520经由第二LAN连接2525连接到复制服务器2530。数据连接器2520经由第三LAN连接2550连接到计算机系统2535。计算机系统2535为管理(例如由MS Outlook、电子数据表程序和/或ODBC源提供的)电子邮件、联系人、日历等的程序提供主机服务。使用的例子可以是将个人地址列表包括到CRM(消费者关系管理)系统中,或者将在计划阶段含入试验的财务电子数据表内容。为了实施,数据连接器连接到个人桌面数据源,例如Outlook联系人、Spreadsheets(电子数据表)或Access数据库。优点是用于自组织报告或管理支持的个人数据的可能性和简单集成。
图26示出了用于与本地电子邮件系统集成,为复制过程提供电子邮件内容的系统2600。该系统2600包括经由第一LAN连接2615连接到数据连接器2620的数据库2610,其中数据连接器2620经由第二LAN连接2625连接到复制服务器2630。数据连接器2620经由第三LAN连接2540连接到数据源2635。数据源2635是互换服务器、POP邮件服务器和/或SMTP邮件服务器的主机。为了实施这样的系统,数据连接器连接到象Exchange这样的电子邮件系统或经由POP/SMTP服务连接。
图27示出了用于与远程电子邮件系统集成,以直接从供应商提供用于复制的电子邮件内容的系统2700。系统2700包括经由第一LAN连接2715连接到数据连接器2720的数据库2710,其中数据连接器2720经由第二LAN连接2725连接到复制服务器2730。所有这些组件都和一个地点,例如公司有关。系统2700还包括数据源2735,它位于一个不同的地点,例如电子邮件服务供应商。数据源2735通过因特网、DSL(数字用户线)、GPRS、UMTS、WLAN、WAN或VPN或任何其他具有IP能力的连接2740被连接到复制服务器2730,以便连接两个地点。数据源2735是POP邮件服务器和/或SMTP邮件服务器的主机。为了实施,数据连接器经由POP/SMTP服务连接到基于web的电子邮件系统。这产生的优点是企业不需要具有可选的推压(push)特性的、用于邮件发送的本地电子邮件服务器。
图28、29和30图示了远程/移动设备可以连接到根据本发明的系统的方式。该系统包括对于数据、邮件、联系人、日历等任一种类型的端到端推压功能,即使在附图和相应描述中没有明确示出。
图28图示了远程用户如何在他们的桌面机器和公司之间建立连接的实施方案。它示出了系统2800,包括经由第一LAN连接2815连接到数据连接器2820的数据库2810,其中数据连接器2820经由第二LAN连接2825连接到复制服务器2830。系统2800还包括通信服务器2840,它运行在与复制服务器2830相同的计算机系统(未示出)上。二者被配置为相互通信。第一移动/远程用户2845通过因特网、DSL(数字用户线)、GPRS、UMTS、WLAN、WAN或VPN或任何其他具有IP能力的连接2855被连接到通信服务器2840。移动/远程用户是由作为定制客户应用程序和定制web接口的主机的计算机系统构成的。此外,可以提供个人电子邮件系统,包括联系人和日历等多种。
图29图示了为很多远程用户提供远程连接的通信服务器。它示出了系统2900,其包括经由第一LAN连接2915连接到数据连接器2920的数据库2910,数据连接器2920经由第二LAN连接2925连接到复制服务器2930。系统2900还包括通信服务器2940,它运行在与复制服务器2930相同的计算机系统(未示出)上。二者被配置为相互通信。第一移动/远程用户2945和第二移动/远程用户2950通过因特网、DSL(数字用户线)、GPRS、UMTS、WLAN、WAN或VPN或任何其他具有IP能力的连接2955被连接到通信服务器2940。
图30代表在系统3000中实现的图29的一个变形。系统3000包括经由第一LAN连接3015连接到数据连接器3020的数据库3010,数据连接器3020经由第二LAN连接3025连接到复制服务器3030,而复制服务器3030经由第三LAN连接3035连接到通信服务器3040。所有这些组件都和一个地点,例如一个公司有关。第一移动/远程用户3045和第二移动/远程用户3050通过因特网、DSL(数字用户线)、GPRS、UMTS、WLAN、WAN或VPN或任何其他具有IP能力的连接3055被连接到通信服务器3040。系统3000还包括第二通信服务器3060。该组件与一个不同的地点,例如分部或B2B(企业到企业)伙伴有关,并通过另一个因特网、DSL(数字用户线)、GPRS、UMTS、WLAN、WAN或VPN或任何其他具有IP能力的连接3065连接到复制服务器3030。第三移动/远程用户3070和第四移动/远程用户3075通过另一个因特网、DSL(数字用户线)、GPRS、UMTS、WLAN、WAN或VPN或任何其他具有IP能力的连接3080连接到第二通信服务器3060。这里,通信服务器被额外地实施在分部处,以使到本地远程用户的连接更便宜。对于在不同国家都有分部的公司而言是有益处的。
图31图示了根据本发明可以使用的不同远程/移动客户端设备的样本,并图示了不同的设备类型可被同时连接到同一通信服务器的情况。示出的系统3100包括对于数据、邮件、联系人、日历等任一种类型的端到端推压功能。系统3100包括数据连接器3110、复制服务器3115和通信服务器3120,它们全都运行在同一计算机系统(未示出)上。数据库服务器3125、交换服务器3130和通信服务器3135(提供电子邮件、联系人、日历等),例如MS Outlook分别经由第一LAN连接3140、第二LAN连接3145和第三LAN连接3150连接到数据连接器3110。在笔记本电脑/PC上为定制客户应用程序和定制的电子邮件、联系人、日历程序提供主机服务的第一远程用户3155通过因特网、DSL(数字用户线)、GPRS、UMTS、WLAN、WAN或VPN或任何其他具有IP能力的连接3170连接到通信服务器3120。在移动(蜂窝)电话上为定制客户应用程序、定制的电子邮件、联系人、日历程序和定制的WAP接口提供主机服务的第二远程用户3160通过因特网、DSL(数字用户线)、GPRS、UMTS、WLAN、WAN或VPN或任何其他具有IP能力的连接3170连接到通信服务器3120。在PDA(个人数字助理)上为定制客户应用程序、定制的电子邮件、联系人、日历程序和定制的web接口提供主机服务的第三远程用户3165通过因特网、DSL(数字用户线)、GPRS、UMTS、WLAN、WAN或VPN或任何其他具有IP能力的连接3170连接到通信服务器3120。在条形码设备(例如条形码读取器)上为定制客户应用程序提供主机服务的第四远程用户3180通过因特网、DSL(数字用户线)、GPRS、UMTS、WLAN、WAN或VPN或任何其他具有IP能力的连接3170连接到通信服务器3120。在桌面计算机或者游戏机上为定制客户应用程序(例如多玩家游戏)提供主机服务的第五远程用户3190通过因特网、DSL(数字用户线)、GPRS、UMTS、WLAN、WAN或VPN或任何其他具有IP能力的连接3170连接到通信服务器3120。其他可能的设备被列举在上面。
用于桌面PC的客户应用程序运行在从Windows98以来的所有Windows操作系统版本下。对于基于浏览器的访问,支持所有常见的浏览器类型。对于在可编程的移动电话上的客户应用程序,所有的平台都可以适用,包括PocketPC、WindowsMobile、Symbian和Java。对于移动电话上基于浏览器的访问,支持Web和WAP浏览器。用于PDA的客户应用程序可以被定制开发,并被交付用于移动操作平台,包括PocketPC、WindowsMobile、Symbian、PalmOS、Java-Enabled。对于PDA上基于浏览器的访问,支持Web和WAP浏览器。
图32图示了根据本发明的、经由供应商的特殊主机服务可能性。系统3200示为包括公司地点,它具有经由第一LAN连接3215连接到第一数据连接器3220的数据库3210以及运行在一个计算机系统上的定制客户应用程序3225。系统3200还包括供应商地点,它具有复制服务器3230和第二数据连接器3235,二者运行在同一计算机系统(未示出)上并能够相互通信。供应商地点还包括作为POP邮件和SMTP邮件服务器的主机的数据源3245,它经由第二LAN连接3240连接到第二数据连接器3235,还包括通信服务器3235,它经由第三LAN连接3255连接到复制服务器3230。供应商地点和公司地点经由从第一数据连接器3220连到复制服务器3230的第四LAN连接3260,经由同样从第一数据连接器3220连到复制服务器3230的因特网、DSL(数字用户线)、GPRS、UMTS、WLAN、WAN或VPN或任何其他具有IP能力的连接3265,并经由从定制客户应用程序3225连到通信服务器3250的因特网、DSL(数字用户线)、GPRS、UMTS、WLAN、WAN或VPN或任何其他具有IP能力的连接3270相互连接。第一移动用户3275、第二移动用户3280和第三移动用户3285通过因特网、DSL(数字用户线)、GPRS、UMTS、WLAN、WAN或VPN或任何其他具有IP能力的连接3290连接到通信服务器3250。
该系统包括对于数据、邮件、联系人、日历等任一种数据类型的端到端推压功能。这里,供应商可以代表公司提供电子邮件和复制服务。公司可以连接到来自移动设备的服务或者来自公司内部的桌面计算机的服务。供应商可以使用该实施方案使他们的企业ASP服务更加完善。该方案为他们提供了集成客户后端数据的一种简单方式,而无需昂贵、耗时的集成开发。
图33、34和35图示了根据本发明的、用于个人和企业使用的特殊主机服务的可能性。
图33图示了将被用在独立的计算机系统(例如PC)上的系统3300,这些独立的计算机系统是由具有专用因特网连接和固定IP地址,甚至DNS条目(域名服务器)的消费者、小办公室/家庭办公室(SoHo)使用的,可以在他们的家庭PC上配备服务器技术。在本地计算机系统(未示出)上,提供用于管理电子邮件、联系人和/或日历数据的程序3310,例如MS Outlook。在同一计算机系统上,安装了数据连接器3315、复制服务器3320和通信服务器3325。系统3300被配置为允许数据连接器3315和复制服务器3320之间、以及复制服务器3320和通信服务器3325之间的通信。通过因特网、DSL(数字用户线)、GPRS、UMTS、WLAN、WAN或VPN或任何其他具有IP能力的连接3330,通信服务器3325与移动/远程设备3335相连,后者例如是PDA(个人数字助理)或移动(蜂窝)电话。提供管理电子邮件、联系人和/或日历数据的定制应用程序。
通过该方案的变形,一个家庭的用户或任何定义的用户群组都可以实施例如联合联系人列表和日历。联系人变更和日历数据可以作为可选的推压服务来传递。该服务可以仅使用复制服务器3320、通信服务器3325和多个输入/输出设备(这里3335)来实现。在该布局中,在实现两个不同的输入/输出设备之间的复制时无需到后端数据源的连接。
图34图示了在消费者、小办公室/家庭办公室(SoHo)使用的独立计算机系统(例如PC)缺少固定IP地址的情况下提供解决方案的系统3400。在本地计算机系统上,提供用于管理电子邮件、联系人和/或日历数据的程序3410,例如MS Outlook。在同一计算机系统上,安装了数据连接器3415、复制服务器3420和通信服务器3425。系统3400被配置为允许数据连接器3415和复制服务器3420之间、以及复制服务器3420和通信服务器3425之间的通信。通过第一因特网、DSL(数字用户线)、GPRS、UMTS、WLAN、WAN或VPN或任何其他具有IP能力的连接3430,通信服务器3425与移动/远程设备3435相连,后者例如是PDA(个人数字助理)或移动(蜂窝)电话。提供管理电子邮件、联系人和/或日历数据的定制应用程序。为了动态地确定动态IP地址,提供了动态DNS(域名服务器)服务3440。动态DNS服务3440一方面经由第二因特网、DSL(数字用户线)、GPRS、UMTS、WLAN、WAN或VPN或任何其他具有IP能力的连接3445连接到通信服务器,另一方面经由第三因特网、DSL(数字用户线)、GPRS、UMTS、WLAN、WAN或VPN或任何其他具有IP能力的连接3450连接到移动/远程设备3435。
动态DNS服务3440于是可被用来建立到私有安装的通信服务器3425的连接,用于确定IP地址。没有任何个人数据经过第三方之手。邮件、联系人变更和日历数据可以作为可选的推压服务从通信服务器3425被传递到移动/远程设备3435。
图35图示了使用托管服务(hosted service)的系统3500。系统3500包括为POP邮件服务器和/或SMTP邮件服务器提供主机服务的供应商3510。托管服务3520可以经由第一因特网、DSL(数字用户线)、GPRS、UMTS、WLAN、WAN或VPN或任何其他具有IP能力的连接3515到达这些服务器。托管服务经由第二因特网、DSL(数字用户线)、GPRS、UMTS、WLAN、WAN或VPN或任何其他具有IP能力的连接3530与移动/远程设备3525相连。在移动/远程设备3525上提供了管理电子邮件、联系人和/或日历数据的定制应用程序。托管服务3520代表客户端从供应商取回电子邮件。邮件、联系人变更和日历数据可以作为可选的推压服务被传递到移动/远程设备3525。
图36图示了根据本发明的典型的集成和复制过程。涉及以下组件后端数据3614、数据连接器3615、复制服务器3616、第一通信服务器3617、第二通信服务器3618、第一移动用户3619和第二移动用户3620。所描绘的每一列都代表一个上述服务器组件或移动设备。
第一和第二通信服务器3617和3618是两个独立的通信服务器。第一和第二移动用户3619和3620是两个独立的移动设备,分别连接到第一和第二通信服务器3617和3618。
时间线在垂直方向上用数据流来表示。
后端数据3614下的四个栏代表来自后端源数据库的样本数据。它们是客户表、具有每个客户的地址的地址表,它们用ID键来链接。来自会计系统的薪水表,其中客户键不同于客户表中的。还有一个链接表,它链接客户表和薪水表中的键字段。在表栏中的x代表被选中复制到移动设备的字段。链接表中的字段已在数据连接器中作为集成过程的引用字段被定义,不包括在复制过程中。
假定在后端数据3614中有新的一组数据变为可用。此时,数据连接器3615将使用管理员给定的集成规则将适当的数据复制到它自身(箭头3601)。数据连接器通过将每个字段内部链接到它起源的数据库、表、行和字段,保持后端数据的完整性。除了字段级时间戳外,该数据现在被标记为“被后端改变”,并且将被复制到复制服务器3616。
该数据的拷贝保存在数据连接器3615中。这是本发明期望的特征,用以促进在分布式系统中的数据可用性。该数据被传输到复制服务器3616(箭头3602)。在复制服务器3616中,数据现在被标记为“被数据连接器改变”。由该标记触发,复制服务器3616根据预先定义的复制规则将该数据分发到两个相应的通信服务器3617、3618(箭头3603和3604)。
在通信服务器3617和3618中,数据被标记为“被复制服务器改变”。现在,数据将应要求或者通过可选的推压功能,复制到任何连接的并被授权的设备(箭头3605和3606)。
假设第一移动设备3619的用户改变了客户的名称(箭头3607)并被管理过程批准这样做。这将引起应要求或者可选地经由反向推压向回复制到可应用的通信服务器3617(箭头3608)。这里,数据现在被标记为“被移动设备改变”并将向回复制复制服务器3616(箭头3609)。标记“被第一通信服务器改变”将引起复制到第二通信服务器3618(箭头3611)以及向回复制到数据连接器3615(箭头3610)。数据连接器将执行其预先定义的集成规则,该改变后的字段与它的原始表、行和字段进行匹配;进行完整性检查并向后端数据3614提交改变(箭头3612)。第二通信服务器3618将应要求或者通过可选的推压功能,与第二移动设备3620进行复制(箭头3613)。
本描述只是为了表示在复制和集成过程中涉及的过程。
可以通过以下操作来管理事务和完整性方案使更新优先级基于时间,例如谁在哪个方向上首先改变,例如后端改变比移动改变占优;使更新优先级基于用户和设备,例如流动销售比电话销售占优。这些的级联组合也是可能性的。
还可以实施复制过程的通道化,例如强迫经过通信服务器的移动改变在可以复制到与通信服务器相连的其他移动设备之前,首先要经过复制服务器进行完整性检查。
上面的

了主要目标为简化数据集成,产生可以适应后端结构性改变的集成结构,并可以应对高度分布的数据源的灵活的集成系统的框架。另外,它建立了一种用于将高度可访问的、安全的数据传递到移动环境,而使发送和接收期间的传输负载最小,并且在移动客户端设备上具有安全数据的框架。除此之外,利用当前的移动连接类型传递来自多种设备的推压内容和/或向多种设备传递推压内容。下面将描述实现本发明的具体方法。
复制机制利用基于时间的仲裁规则来解决冲突。本发明在字段级上指定了该时间戳。对于该机制,在事务处理之前建立服务器和客户端设备之间的时间同步。因此,来自任意源的改变的时间戳是改变被记录的实际时间,而不是复制时间。这提高了准确性,并使复制期间的冲突最小化。解决冲突的进一步规定可以如下来定义给予特定用户和/或设备和/或连接类型以优先级。例如,通过使LAN连接上的用户相对于移动用户具有优先级,就可以解决冲突状况,反之亦然。
为了复制的目的,进一步的增强手段是登录哪个源引发改变的字段级增加。在需要人工冲突解决的情况下,该加入优化了系统中的内部复制过程,并提供了完全的事务透明度。
为了在数据传输期间的安全事务处理,内嵌的事务规则可以被定义用于数据完整性和商业规则的定义。在最简单的形式下,它可能意味着来自形成一个整体的、相互独立的表的数据在复制或集成过程开始前必须是完整的。例如,在复制联系人期间,在数据被复制之前,复制过程要一直等到相应的公司信息被找到为止。更复杂的例子可以如下所述从一个移动设备发出订单应用。复制服务器在将订单发送到货运部分并向发送设备确认之前,需要检查客户信用额度以及现有的库存情况。
安装过程都包含了。与其他可能提供服务器方案的若干部分,但仍严重依赖于预安装的软件的功能的那些产品不同,对于本系统的操作而言不需要任何象web服务器或电子邮件服务器一类的其他第三方软件。
软件的服务器组件可以通过CD压缩盘来交付,通过下载来提供,或者任何其他常见的数据存储手段。可以通过相同的方式来获取服务器更新,优选地,通过由供货商提供的自动在线更新服务来获取。
服务器组件例如复制服务器、通信服务器和数据连接器可以作为一个整体被安装在一台机器上。可替换地,一个或多个组件可被独自安装在单独的机器上,这取决于实施计划。
用于桌面计算机的客户端组件可以经由CD来交付安装,通过下载来提供,或者通过任何其他数据存储手段。可以通过相同的方式来获取客户端更新,或者优选地,通过包括在服务器软件中的自动在线更新服务来获取。客户端软件的版本控制由服务器来监视,更新可以是自动的或者在服务器通知后应要求进行。
用于移动设备例如PDA、移动电话等的客户端组件也可以经由CD、下载或者任何其他常见的数据传输介质手段来交付。可以从PC向经由例如串行支架连接(例如USB)、无线Bluetooth连接或任何其他连接与该PC相连的移动设备发起安装过程。集成到服务器中的web服务也可以被用来通过因特网提供在线安装和更新过程。
在设置(setup)过程中,必须用一个唯一CUID(组件唯一标识)来注册每个组件。该CUID是由供货商分配的,在世界范围内一定是唯一的ID。该ID被用于在复制和集成期间进行控制,并允许来自不同公司的服务器之间后面可以相互操作。
每个用户和设备也被分配了一个唯一ID。这些ID由服务器来管理,是从专用于一个通信服务器的ID池中抽出的。这有利于移动复制,并且在事务登录期间提供高度的控制和安全性。
整个系统的管理可以从一个或多个与连接到系统的组件的数量无关的管理台来完成。可以从任何一个服务器组件来访问管理台,而与它们的位置无关。例如,这意味着可以在安装有数据连接器的计算机上启动管理台,以管理对于可被安装在与系统相连的不同位置中的一个不同机器上的通信服务器的用户访问。此外,管理台可以经由Web接口或WAP接口来访问,例如包括在通信服务器中的接口。这允许在分布式环境中的更多访问以及管理员实现管理功能的灵活性。
对管理台的访问通过合法的用户名和口令来准许。
为了基于Web和WAP管理的更多安全性,管理员可以设置第三个有限时间的标识符。
管理台也可以作为一个客户端组件运行在移动设备上,该移动设备又经由通信服务器与服务器通信。这允许在管理会话期间充分地利用压缩和公钥-私钥加密特性。
在实施多个组件的情况下,例如两个复制服务器或多个通信服务器,管理可以被划分为多个责任区。一种可能的实施方式是委派用户管理。部门领导可以有权在他们的责任范围内管理移动用户。另一种实施方式是将来自不同公司的两个复制服务器连接在一起,用于复制和集成目的。其中,每家公司仅可以访问属于他们的管理区。这是CUID(组件唯一ID)发挥作用的另一个方面。
权利要求
1.一种用于数据的复制、集成、合并和移动化中的至少一种的系统,该系统包括用于管理(i)在至少两个后端数据源之间,和/或(ii)在至少一个后端数据源和至少一个输入/输出设备之间,和/或(iii)在至少两个输入/输出设备之间的数据复制的复制服务器;用于连接到任何一种类型的结构化数据的数据连接器;用于通过通信链路对所述输入/输出设备进行访问以及从所述输入/输出设备进行访问的通信服务器;和共用的管理。
2.根据权利要求1所述的系统,其中,以下模块复制服务器、数据连接器和通信服务器中的一个或多个模块可被实施为相对于其他模块自主地工作。
3.根据以上权利要求之一所述的系统,其中,所述数据连接器适于与至少一个后端数据源和至少一个复制服务器通信,因而所述数据连接器独立于所述复制服务器地被实施,以便实现灵活性和可扩展性,达到数据流量最优化。
4.根据以上权利要求之一所述的系统,其中,所述通信服务器适于与至少一个输入/输出设备和至少一个复制服务器通信,因而所述通信服务器独立于所述复制服务器地被实施,以便实现灵活性和可扩展性,达到数据流量最优化。
5.根据以上权利要求之一所述的系统,其中,所述系统包括多个复制服务器,并且其中,所述数据连接器被设为与所述多个复制服务器中的至少两个进行通信。
6.根据以上权利要求之一所述的系统,其中,所述系统包括多个复制服务器,并且其中,所述通信服务器被设为与所述多个复制服务器中的至少两个进行通信。
7.根据以上权利要求之一所述的系统,其中,所述复制服务器适于与至少一个数据连接器和至少一个通信服务器通信,因而所述复制服务器独立于所述数据连接器和所述通信服务器地被实施,以便实现灵活性和可扩展性,达到数据流量最优化。
8.根据以上权利要求之一所述的系统,其中,所述系统包括多个通信服务器,并且其中,所述复制服务器被设为与所述多个通信服务器中的至少两个进行通信。
9.根据以上权利要求之一所述的系统,其中,所述系统包括多个输入/输出设备,并且其中,所述通信服务器被设为与所述多个输入/输出设备中的至少两个设备通信。
10.根据以上权利要求之一所述的系统,其中,所述输入/输出设备配备有客户应用程序和/或移动客户应用程序。
11.根据以上权利要求之一所述的系统,其中,所述至少两个输入/输出设备的至少一个子集配备有客户应用程序和/或移动客户应用程序。
12.根据权利要求10或11所述的系统,其中,所述客户应用程序是由至少两个不同的客户应用程序形成的。
13.根据以上权利要求之一所述的系统,其中,所述通信链路是由无线连接形成的。
14.根据以上权利要求之一所述的系统,其中,所述通信链路是由基于有线线路的连接形成的。
15.根据以上权利要求之一所述的系统,其中,在所述复制服务器、所述数据连接器和所述通信服务器的任一种模块当中,都提供了一个以上的实例。
16.根据权利要求15所述的系统,其中,所述模块的每个实例都具有它自己的用于促进独立操作的数据存储装置。
17.根据以上权利要求之一所述的系统,其中,所述共用的管理是由单个管理单元形成的。
18.根据权利要求1到16之一所述的系统,其中,借助于访问权将所述共用的管理划分为具有预定责任区的、相互独立的管理单元。
19.根据以上权利要求之一所述的系统,其中,从所述数据连接器通过所述复制服务器向所述通信服务器提供共用的数据结构,从而提供集成期间的灵活性。
20.根据权利要求19所述的系统,其中,所述共用的数据结构被配置为提供用户级访问权控制,直至字段级。
21.根据权利要求19或20所述的系统,其中,所述共用的数据结构被配置为提供设备级访问权控制,直至字段级。
22.根据权利要求19到21之一所述的系统,其中,所述共用的数据结构被配置为提供连接类型级访问权控制,直至字段级。
23.根据以上权利要求之一所述的系统,其中,所述数据连接器和所述通信服务器中的任一种模块可被实施为任意数量的实例,并被组合在一个或多个复制服务器的周围,以提供最大协同分布。
24.根据以上权利要求之一所述的系统,其中,所述复制服务器、所述数据连接器和所述通信服务器中的任一种模块的至少一个实例可被配置为发起推压事务,以传送数据到目标模块或基于静止线路的设备或移动的无线设备。
25.根据权利要求24所述的系统,其中,用于推压事务的配置可被设置为事件驱动的和/或基于时间的规则。
26.根据以上权利要求之一所述的系统,其中,所述系统被配置为采用字段驱动的数据结构,该数据结构被设计来解决复制和集成两方面的需要。
27.根据以上权利要求之一所述的系统,其中,所述系统被配置为管理对客户应用程序的版本控制。
28.根据以上权利要求之一所述的系统,其中,所述系统被配置为自动分发版本更新。
29.根据以上权利要求之一所述的系统,其中,所述系统被配置为管理对它自己的模块,即复制服务器、数据连接器和通信服务器的版本控制,以便促进分布式环境中的自动版本更新。
30.根据以上权利要求之一所述的系统,其中,所述系统被配置为根据数据结构和/或访问权的改变,管理对客户应用程序的动态模板调整。
31.一种用于管理在单独的模块之间的事务传输的方法,该方法包括以下步骤一旦接收到数据,接收模块就首先验证发送模块的访问权;对于合法的连接,接收模块接着收集所接收的数据并检验事务完整性;然后,接收模块决定目的地模块,检查目的地模块的可用性,登录到该模块上;以及一旦连接成功,就向目的地模块发送事务。
32.根据权利要求31所述的方法,还包括以下步骤在向目的地模块发送事务后,发送模块监视传递状态,并且在必要时重新发送所述事务。
33.一种用作根据权利要求1到30之一所述的系统中的输入/输出设备的移动设备。
34.一种用作根据权利要求1到30之一所述的系统中的输入/输出设备的基于静止线路的设备。
全文摘要
根据本发明的用于数据的复制、集成、合并和移动化的系统提供了具有功能上自主的分布式模块的灵活框架,主要优点是可扩展性,用以简化数据集成,产生可以适应后端结构变化并可以应对高度分散的数据源集成结构。另外,它建立了一种用于向移动环境传递高度可访问的安全数据,而在发送和接收期间使传输负载最小,并在移动客户端设备上具有安全数据的框架。除此以外,利用当前的移动连接类型传递来自多种设备的推压内容和/或向多种设备传递推压内容。
文档编号G06F17/30GK1998217SQ200580017321
公开日2007年7月11日 申请日期2005年5月27日 优先权日2004年5月28日
发明者罗兰德·沃特罗特, 尤斯图斯·罗兰兹 申请人:慕斯特有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1