分布式计算环境中的数据同步的制作方法

文档序号:7885649阅读:210来源:国知局
专利名称:分布式计算环境中的数据同步的制作方法
技术领域
本公开涉及用于在诸如例如云计算环境之类的分布式数据网络环境中从设备到多个位置的数据同步的方法和系统。
背景技术
在诸如例如云计算环境之类的分布式计算环境中,数据存储于分布式的多个位置处。目前,没有容易的方式来全球性地从本地设备到“云”中的多个位置或到其它设备同步数据。

发明内容
本公开包括用于跨计算机网络中的多个目标目的地的数据同步的示范性方法。该方法的实施例包括获取关于目标目的地的信息,其中:该目标目的地包含计算机网络中的网络账号或者耦接于计算机网络或与网络账号相关联的目标设备中的至少一个;并且所获取的信息包括与目标目的地相关联的识别信息。该方法的实施例还可以包括:在用户设备处接收来自数据源的数据;基于包括在所接收的数据和识别信息中的信息对所接收的数据进行过滤;基于该过滤,识别用于接收所过滤的数据的所选择的目标目的地;以及将所过滤的数据发送到所识别的所选择的目标目的地。根据本公开的示范性系统包含接收数据的用户设备和耦接于该用户设备的自动同步引擎。该自动同步引擎获取关于目标目的地的信息,其中:该目标目的地包含计算机网络中的网络账号或者耦接于计算机网络或与网络账号相关联的目标设备中的至少一个;并且所获取的信息包括与目标目的地相关联的识别信息。在一些实施例中,该自动同步引擎还基于在所接收的数据和识别信息中包括的信息过滤所接收的数据;基于该过滤识别用于接收所过滤的数据的所选择的目标目的地;以及将所过滤的数据发送到所识别的所选择的目标目的地。应当理解,上述一般性的描述和以下详细的描述都仅仅是示范性的和说明性的,并非限制所要求保护的本发明。


图1示出了符合本发明的示范性系统的方框图。图2为示出了用于数据同步的示范性实施例的流程图。图3为示出了用于创建分布列表的示范实施例的流程图。图4为示出了用于使用图形用户界面进行数据同步的示范性实施例的流程图。图5示出了用于数据同步的示范性图形用户界面。图6为示出了用于管道感知的数据同步的示范性实施例的流程图。图7为示出了用于设备感知的数据同步的示范性实施例的流程图。图8为示出了在图1的示范性系统100中的自动同步引擎106的一个示范性实施例的方框图。
具体实施例方式现在将详细地参考附图中所示的示范性实施例。只要可能,贯穿附图将使用相同的参考数字来指代相同的或相似的部分。这里公开的方法和系统解决以上描述的需求。例如,示范性实施例可以用来自动地识别目的地并同步从本地设备到一个或多个计算机网络中的多个识别的目的地的数据。图1示出了符合当前保护的发明的示范性系统100的方框图。如图1所示,示范性系统100可以包含数据源102、用户设备104、自动同步引擎106、一个或更多个网络账号110-112以及一个或更多个目标设备114-116,它们可操作地彼此连接并经由允许从一个部件向另一个部件传输数据的一个或更多个网络(例如,网络108)或任何类型的通信链路。该网络可以包括局域网(LAN)和/或广域网(WAN),并且可以是无线的、有线的或者其组合。数据源102可以是能够储存数据的任何类型的存储媒体,所述数据诸如例如包括听觉和/或视觉内容、文本内容、它们的组合的媒体数据或任何其它类型的数据。例如,数据源102可以被提供为视频⑶、DVD、蓝光光盘、硬盘、磁带、闪存卡/驱动器、易失或非易失性存储器、全息数据存储器以及任何其它类型的存储媒体。数据源102还可以是数据捕获设备或能够提供数据给用户设备104的计算机。例如,数据源102可以是捕获成像数据并将所捕获的成像数据提供给用户设备104的照相机。作为另一个例子,数据源102可以是网络服务器、企业服务器或者任何其它类型的计算机服务器。数据源102可以是被编程为从用户设备104接受请求(例如,HTTP,或可以启动数据传输的其它协议)并用请求的数据服务用户设备104的计算机。此外,数据源102可以是用于分布数据的广播装置,比如免费广播、线缆、卫星,以及其他广播装置。用户设备104可以是例如计算机、个人数字助理(PDA)、蜂窝电话或智能电话、膝上型计算机、桌上型计算机、媒体内容播放器、机顶盒、包括广播调谐器的电视机、视频游戏控制器或者能够访问数据网络和/或提供数据的任何电子设备。用户设备104可以包括允许用户设备104与网络或本地存储媒体通信并从网络或本地存储媒体接收数据的软件应用。如上所述,用户设备104可以接收来自数据源102的数据,数据源102的例子在上文提供。自动同步引擎106可以被实现为在处理器中执行的软件程序和/或执行数据同步的硬件。自动同步引擎106可以同步从用户设备104到一个或更多个目的地的数据。目的地可以包括例如一个或更多个计算机网络中的一个或更多个网络账号(例如,网络账号110、112)、一个或更多个目标设备(例如,目标设备114、116)、或者能访问用户设备的其它位置或设备。以下将进一步描述数据同步。网络108可以是一个或更多个计算机网络,并且可以包括或连接于一个或更多个网络账号110、112和/或一个或更多个目标设备114、116。尽管图1仅显示了两个网络账号110、112和两个目标设备114、116,但是应当理解每个都可以使用更多个。网络账号110、112可以是例如与网络108相关联的用户账号,或者关于网络位置或网络108中的存储空间的标识符。在一些实施例中,一个或更多个网络账号可以与网络108中的一个或更多个存储空间相关联。
目标设备114、116可以是例如计算机、个人数字助理(PDA)、蜂窝电话或智能电话、膝上型计算机、桌上型计算机、媒体内容播安置器、机顶盒、包括广播调谐器的电视机、视频游戏控制器,或者能够访问数据网络和/或接收数据的任何电子设备。在一些实施例中,目标设备114、116可以是诸如例如电视机、监视器、放映机、数码相框、显示面板和任何其它显示设备之类的显示设备。在一些实施例中,网络账号110、112中的一些可以关联于或附接于目标设备114、116中的一些。例如,目标设备114关联于或附接于网络账号112。在一些实施例中,网络账号110、112和目标设备114、116可以请求数据的同步和/或接收来自用户设备104和/或自动同步引擎106的数据。在一些实施例中,网络108可以包括诸如例如FLICKR 、FACEB00K、MYSPACE、twitter、LINKEDIN 等之类的一个或更多个因特网社交网络,并且网络账号ιιο、ι 2可以是在一个或更多个因特网社交网络中的账号。用户设备104的用户可以通过一个或更多个因特网社交网络与网络账号110、112相关联。例如,一个或更多个网络账号110、112可以是一个或更多个因特网社交网络中的用户的联系人。尽管图1中显示为可操作地连接的分离的部件,但是数据源102、用户设备104和自动同步引擎106中的任何一个或全部可以共同位于一个设备中。例如,数据源102可以位于用户设备104的内部或者形成用户设备104的一部分,并且自动同步引擎106可以位于数据源102或用户设备104内部或者形成数据源102或用户设备104的一部分。需要了解的是,图1中所示的配置仅用于说明性的目的。可以去除或组合某些部件或设备,并且可以添加其它部件或设备。图2为示出了用于数据同步的示范性方法的流程图。如图所示2,在同步从用户设备到一个或更多个目的地的数据之前,可以生成包含多个目的地的分布列表(步骤202)。例如,图3为示出了用于生成分布列表的示范性方法的流程图。如图3中所示,自动同步引擎可以与诸如例如一个或更多个因特网社交网络之类的一个或更多个计算机网络通信(步骤302)。可以提供验证信息,比如登录识别和口令,以促成通信。一旦建立与网络的通信,自动同步引擎可以下载同步目的地信息,比如例如用户加入的因特网社交网络中的联系人信息、目标设备信息和/或关于从网络可访问该用户设备的其它位置的信息(步骤304)。然后可以集合和/或分析从每一网络下载的信息(步骤306)。基于所集合的信息,可以生成分布列表(步骤308)。分布列表可以包括例如网络账号(例如,因特网社交网络联系人)、目标设备或可访问该用户设备的其它位置。在一些实施例中,分布列表可以包括一个或更多个子列表,比如例如由联系人组成的朋友列表和/或标记为朋友的目标设备,或由联系人组成的家人列表和/或标记为家人的目标设备。在一些实施例中,所下载的同步目的地信息可用来更新现有的分布列表。在一些实施例中,分布列表上的目的地可以具有与该目的地相关联的、关于该目的地的或识别该目的地的识别信息。识别信息可以包括下列中的一个或更多个:比如例如姓名(例如,Bob, Bob的蜂窝电话,等等),分类信息(例如,朋友,同学,或家庭成员),地理信息,人脸图像,人的语音,或识别目的地的其它信息。在一些实施例中,自动同步引擎可以使用由用户或分布列表的成员 控制的数据来配置识别信息。例如,自动同步引擎可以下载和分析寄往用户或他的/她的联系人的因特网社交网络位置的内容项,并提取可用来将该内容项与任何目的地相关联的信息。基于所提取的信息,可以更新所关联的目的地的识别信息,由此提高将来自用户设备的数据与正确的目的地同步的机会或概率。回头参考图2,在步骤204中,从数据源接收数据(步骤204)。自动同步引擎可以将包括在所接收的数据内的信息与如上所述的识别信息相比较。基于该比较,自动同步引擎可以确定包括在所接收的数据内的信息是否包含或匹配与一个或更多个目的地相关联的、关于一个或更多个目的地的或识别一个或更多个目的地的任一识别信息(步骤206)。要匹配的信息可以采取例如元数据(例如,标记信息,比如地理标记、社交网络标记或其它数据标记)、所接收的数据的一部分(例如,用于面部识别的图像或用于语音识别的语音等等)、内容项名称等的形式。如果没有发现匹配的信息,则进程前进到步骤212以检查更多的数据。如果发现匹配的信息,则自动同步引擎基于匹配的信息和/或识别信息过滤器所接收的数据(步骤208 )。在一些实施例中,步骤206可以是过滤进程的一部分或者可以包括附加步骤以识别一个或更多个目的地。在一些实施例中,过滤进程还可以包括例如将所接收的数据与分布列表中的一个或更多个目的地相关联,和/或将所接收的数据分类为要发送给分布列表中的一个或更多个目的地的数据。在一些实施例中,基于关联或分类,所过滤的数据可以被配置为包括允许向某些人或一组人授予某些许可的访问许可元数据。例如,如果要同步的数据与因特网社交网络的家庭联系人相关联,则所过滤的数据可以被配置为包括符合目的地网络的约定的许可元数据。然后可以将所过滤的数据寄往公共网络位置,但是只能够依照该许可被访问。在一些实施例中,在过滤进程期间,可以更新包括在所接收的数据内的信息,并且可以基于所更新的信息对所接收的数据执行过滤进程。例如,如果所接收的数据包含链接到特定目的地的信息,则可以将附加元数据或标记信息添加到所接收的数据,例如,如果面部图像链接到因特网社交网络联系人“Bob Smith”,则可以添加数据标记“用于BobSmith,,。另外,地理元数据或标记信息可以添加给所接收的数据,或者在从具有全球定位系统(“GPS”)能力的用户设备同步时可以被更新。例如,在从具有GPS能力的图像捕获设备接收到媒体内容(例如,图像或视频)时,如果图像捕获设备已经捕获到了该媒体内容被捕获所处的地方的信息,则GPS或地理数据标记,例如,具有字符串“圣地亚哥动物园,圣地亚哥,力口州”的数据标记,可以附于或包括在所接收的媒体内容内。更进一步,自动同步引擎可以提供允许用户更新数据标记、改变内容项名称或将附加信息包括在所接收的数据的元数据或标记内的用户接口。例如,可以为用户提供图形用户接口来更新上述例子的数据标记以包括附加信息,例如,“斑马,圣地亚哥动物园,圣地亚哥,圣地亚哥,加州,09-15-2010,Bob Smith"。因此,基于包括在所接收的数据内的所更新的信息,通过将所接收的数据与叫做“Bob Smith”、位于加利福尼亚圣地亚哥、与该用户访问过圣地亚哥动物园、喜欢斑马或其他类似动物等的因特网社交网络联系人相关联,自动同步引擎可以自动地过滤所接收的数据。自动同步引擎可以还将所接收的数据与联系人的一个或更多个关联的目标设备相关联。在一些实施例中,在过滤进程期间,所接收的数据可以被转换为新的内容项或在传输给目标目的地之前与其它内容项合并。例如,自动同步引擎可以提供提示用户选择或决定是否将数据或内容项合并到电影或照片拼贴画的界面。根据用户的选择,可以自动生成电影或照片拼贴画。自动同步引擎于是可以准备将合并的内容项传输给目标目的地。回头参考图2,在步骤210中,自动同步引擎将所过滤的数据传输给目标目的地。进程然后跳到步骤212,以检查是否存在更多要过滤的数据。如果没有,则进程结束。如果存在更多要过滤的数据,进程跳到步骤204以接收更多的数据。在一些实施例中,数据同步进程可以使所传输的数据被自动地填充并显示在目标设备上。例如,用户不需要上载媒体内容(例如,照片或视频)到存储站点然后让朋友或家庭成员手动地下载它。取而代之,媒体内容可以直接从设备发送到设备,例如,从用户设备直接发送照片给在国家另一边的目标设备(例如,数码相框),所以媒体内容可以被自动地填充并显示在目标设备上。这可以例如通过使能可以从数据源下载数据、自动地过滤数据并将所过滤的数据上载到云或到跨国的目标设备的自动启动实时同步功能来完成。图4是示出了用于使用图形用户界面(GUI)的数据同步的示范性方法的流程图。如图4所示,在步骤402中,可以在用户设备处提供第一 GUI,其显示存储在用户设备本地和/或远离用户设备的多个位置处的数据的表示。该表示可以是图形对象、字符序列或它们的组合。例如,图5示出了用于数据同步的示范性⑶1500。用户可以使用GUI管理和共享数据。例如,用户可以使用窗格风格的查看器,例如,图5中所示的⑶1500,用于管理多个同步账号和云存储器、站点或设备。⑶1500显示表示来自本地系统的本地内容502的图标502a-d、用于与因特网社交网络联系人共享的图库共享内容504的项504a-d、以及来自多个因特网社交网络位置508的因特网社交网络内容506的项506a-d。⑶1500还显示因特网社交网络联系人510、目标设备512和动作按钮514-524的列表。在一些实施例中,自动同步引擎可以下载寄往或存储于用户和/或他/她的联系人的因特网社交网络、附接的设备或任意网络位置处的内容。下载的内容可以被集合、分类并列出,如在GUI500上所示。在一些实施例中,自动同步引擎可以通过提供到该内容项的链接但是不下载它们来管理并共享该内容。用户可以编辑该内容。例如,用户可以把内容项从一个位置/设备复制或移动到另一个位置/设备、删除内容项、重命名内容项、编辑内容项的元数据或标记,等等。在一些实施例中,例如,用户可以点击如图5中所示的动作按钮514,以将所选内容或全部内容从一个位置/设备同步到全部其它位置/设备。回头参考图4,自动同步引擎可以检测到用户选择了一些数据表示(步骤404),并且接收来自用户的指令以同步所选数据(步骤406)。用户可以通过命令数据同步的任一动作给出该指令,例如,通过执行拖放动作、点击动作按钮,等等。一旦接收该指令,自动同步引擎可以过滤所选数据(步骤408),然后将所过滤的数据传输到一个或更多个目标目的地(步骤410),如上所述。在一些实施例中,通过例如使用⑶1(比如图5中所示的⑶1500),用户可以选择一个或更多个列出的内容项。然后,通过将所选内容项拖放到列在GUI上的表示因特网社交网络联系人或目标设备的目标图形对象上,用户可以发送所选内容项。例如,可以使能“电视上的Facebook”功能以由一个或更多个社交网络内容项生成诸如例如照片拼贴画、屏幕保护器或电影之类的媒体内容,并将所拖放的内容项自动地发送或投射到诸如例如电视机之类的目标设备以用于显示。在一些实施例中,例如,用户可能使用即时消息界面与他/她的联系人中的一个聊天。即时消息界面(没有显示在图5中)可以位于数据同步⑶I之内,比如图5中所示的⑶1500,或者可以是分离的⑶I。例如,可以通过选择联系人并点击聊天按钮524来打开聊天窗口。在聊天期间,用户可以决定与当前联系人共享他的数据。用户可以选择一个或更多个列出内容项,并将所选内容项拖放到即时消息界面上。在一些实施例中,例如,通过使用⑶I,比如图5中所示的⑶1500,用户可以选择一个或更多个列出的内容项,并点击动作按钮516以发送所选内容项给朋友,即,标记为朋友的联系人和/或相关的目标设备。用户还可以点击动作按钮518以发送所选内容项给家庭,即,标记为家人的联系人和/或相关的目标设备。此外,用户可以点击动作按钮520以发送所选内容项给所有联系人和/或相关的目标设备。进一步地,用户可以选择一个或更多个列在CTI上的表示因特网社交网络联系人或目标设备的目标图形对象,然后点击动作按钮522以发送所选内容项给所选联系人和/或目标设备。在一些实施例中,如果没有选择各个内容项,则可以认为全部列出的内容项被选择用于同步或传输。在检测到用户的拖放动作或点击发送按钮动作之后,自动同步引擎可以执行以上所述的数据过滤进程,并将所过滤的数据传输给预期的目的地,比如例如,预期的社交网络联系人和/或目标设备。在一些实施例中,自动同步引擎可以管理目的地的存储空间、提供通知或警告给用户以及提示用户选择或确认动作。例如,使用GUI,比如图5中所示的GUI500,用户可以使用以上所述的方法来从任一网络位置、附接的设备或社交网络站点发送媒体内容(例如,视频、照片、幻灯片或音乐片段)到目标目的地。在一些实施例中,在传输内容时,自动同步引擎可以提示用户选择是否将该内容存储为永久的或暂时的内容。永久的内容可以从不过期并不能被改写,而暂时的内容可以在某一时段之后过期并在过期之后可以被改写。此外,如果检测到在目标目的地上的某些存储的内容即将过期或被改写,则自动同步引擎可以警告用户并提示用户确认改写。此外,在一些实施例中,如果检测到目标目的地的可用存储空间在阈值之下(例如,剩余15%空间),则自动同步引擎可以警告用户(或管理目的地的联系人)释放一些存储空间。进一步地,在一些实施例中,在传输内容时,自动同步引擎可以提示用户选择将该内容存在目标目的地上的特定位置(例如,特定文件夹或特定类别,比如例如最喜爱的电视节目或即将上映的电影)中。需要了解的是,图5中所示的功能和图形部件仅用于说明性的目的。某些功能或图形部件可以被删除、组合或重新布置,并且可以添加其他功能或图形部件。图6是示出了用于“管道感知”数据同步,即,其中进程根据通信信道或“管道”的容量(例如,宽带连接、无线连接、拨号连接等等)而变化的数据同步,的示范性实施例的流程图。在一些实施例中,自动同步引擎可以确定用于执行数据同步和传输数据的通信管道的状态,例如,连接和/或用户设备的状态,然后决定是否继续或完成数据同步。例如,在一些实施例中,自动同步引擎可以检测到来自用户设备的数据传输在慢速的连接上,或在达到了带宽使用或成本限制的连接上,然后等待更快的或更便宜的连接。在一些实施例中,自动同步引擎还可以检测到在用户设备上的可用资源不允许完成数据同步。自动同步引擎于是将等待足够资源变为可用的。如在图6中示出的,在开始从用户设备经由计算机网络到目标目的地的数据的同步(步骤602)之后,自动同步引擎可以检查到计算机网络的连接是否是活动的(步骤604)。如果没有建立活动的连接,则自动同步引擎可以暂停或停止数据同步进程(步骤606)。如果建立了活动的连接,则自动同步引擎可以检查该活动的连接是快速的还是慢速的连接,或是具有还是没有带宽使用或成本限制的连接(608)。如果是慢速的连接或具有带宽使用或成本限制的连接(例如,具有100兆字节每月数据上载使用限制的无线连接),则自动同步引擎可以进一步检查是否达到了每月的带宽使用或成本阈值(步骤610)。如果达到了阈值,则经由该连接的任何数据传输由于其太昂贵而可以被禁止。在那种情况下,自动同步引擎可以暂停或停止数据同步进程,直到快速连接或没有限制的连接(例如,有线连接)变为可用的(步骤612)。如果建立了快速连接(例如,有线连接)或没有带宽使用或成本限制的连接,则自动同步引擎可以确定用户设备是否具有足够可用的资源(例如,电池寿命)来完成数据同步(步骤614)。如果没有,则自动同步引擎可以暂停或停止数据同步进程直到足够的资源(例如,电源变为已接通)可用(步骤616)。如果有足够资源可用,则自动同步引擎可以完成以上所述的数据同步(步骤618)。当然,除电池寿命之外,可以用这样的方式分析其它类型的资源。在一些实施例中,自动同步引擎可以能够获取目的地一方的管道状态。基于在目的地一方的管道状态,自动同步引擎可以执行以上所述的管道感知的数据同步。图7为示出了用于设备感知的数据同步的示范性实施例的流程图。在一些实施例中,在发送数据到目标目的地之前,自动同步引擎可以基于目标目的地的特征信息修改(例如,调节或优化等)数据。特征信息可以包括例如显示屏尺寸,最大分辨率,(设备或服务)可接受的文件大小,带宽限制,等等。例如,基于特征信息,自动同步引擎可以自动为具有小显示屏的目标设备缩小数据的投影尺寸,将数据的分辨率缩减到与目标设备的最大分辨率匹配的较低的分辨率,将数据压缩至目标设备或服务(例如,因特网服务)可接受的较小的大小,调整数据的比特率(即数据传送率)以匹配目标设备或服务的带宽,等等。例如,将全高清视频发送到手持设备可以意味着不仅调整图像投影大小而且调整文件大小本身。通过执行数据修改(例如,调节,优化,等等.),自动同步引擎可以只发送与目的地显示数据所需要的数据同样多的数据,和/或发送与目的地可以接受的数据同样多的数据。数据修改可以减少数据传输时间、节省带宽,并在数据传输和目的地各方两方面改善用户体验。例如,如图7所示,在步骤702中,自动同步引擎可以对要同步的数据执行以上所述的过滤进程,并识别用于接收所过滤的数据的目标设备。自动同步引擎可以获取目标设备的特征信息(步骤704)。在一些实施例中,自动同步引擎可以为了特征信息询问目标设备。在一些实施例中,特征信息可以已经在生成上述分布列表时被集合并存储。自动同步引擎可以检索存储的特征信息,而不询问目标设备。在获得特征信息以后,自动同步引擎可以比较特征信息与关于所过滤的数据的信息。基于比较,自动同步引擎可以确定是否修改所过滤的数据。例如,自动同步引擎可以检查目标设备的分辨率是否低于所过滤的数据的分辨率(步骤706)。倘若如此,则自动同步引擎可以更新需要缩减所过滤的数据的修改配置(步骤708)。如果目标设备的分辨率不低于所过滤的数据,则自动同步引擎可以检查目标设备是否有带宽或数据流限制(步骤710)。倘若如此,则自动同步引擎可以更新需要比特率调整的修改配置(步骤712)。
如果目标设备没有带宽或数据流限制,则自动同步引擎可以检查目标设备是否有文件大小限制以及所过滤的数据的大小是否达到限制(步骤714)。如果任一检查是肯定的,则自动同步引擎可以更新需要压缩所过滤的数据的修改配置(步骤716)。在一些实施例中,目标设备可以具有文件类型限制。例如,因流数据的大的文件大小,目标设备可以不接受流数据。如果目标设备没有文件大小限制或所过滤的数据的大小没有达到该限制,则进程可以前进到步骤718以进行数据修改。基于所更新的修改配置,自动同步引擎可以对所过滤的数据执行以上所述的数据修改(步骤718),并传输所修改的数据到目标设备(步骤720)。方法然后结束。在一些实施例中,如果数据修改不能解决任何以上所述的由目标设备的特征所施加的限制,则自动同步引擎可以警告用户。自动同步引擎还可以提示用户确认数据传输或选择可替换的动作。需要理解的是,以上所述在图2_4、6和7中的示范性进程流程仅用于说明性目的。可以删除、组合或重排某些步骤,并可以添加附加步骤。图8为示出了在图1的示范性系统100中自动同步引擎106的一个示范性实施例的方框图。如图8所示,自动同步引擎106可以包括同步管理器802、同步数据库804、数据分析器806、数据过滤器808、数据传输器810和数据优化器812。需要理解的是,图8中所示的自动同步引擎106的部件仅用于说明性的目的。可以去除或组合某些部件,并且可以添加其它部件。此外,在图8中所描述的部件中的一个或更多个可以在一个或更多个计算系统上的软件中实现。例如,这样的部件可以包括一个或更多个软件应用,其可以包括一个或更多个计算机单元,所述计算机单元包括包含计算机可读指令的存储设备,当计算机可读指令由处理器运行时,促使计算机执行方法的步骤。计算机可读指令可以存储在有形的非瞬时计算机可读媒体(比如固态存储器或盘存储器)上。可替换地,在图8中描述的部件中的一个或更多个可以被实现在硬件部件或硬件和软件的组合中,比如,例如,专用集成电路(ASIC),专用计算机或通用计算机。参考图8,自动同步引擎106接收来自数据源的要同步的数据(814)。在一些实施例中,同步管理器802可以将所接收的数据存储在同步数据库804中(816),或者将所接收的数据传递给数据分析器806以用于进一步的处理(818)。在一些实施例中,数据可以已被接收并存储在同步数据库804中,并且可以由同步管理器802检索以用于同步(步骤816)。同步管理器802可以管理要同步的数据、配置和提供促进数据修改的信息,以及协调数据修改。例如,同步管理器802可以生成和配置包含用于接收同步数据的目标目的地的分布列表,获取和配置用户设备和/或目标目的地的状态信息,以及获取和配置特征信息、数据修改配置和用于目标目的地的识别信息,如上所述。另外,在一些实施例中,同步管理器802可以例如通过收集和集合来自各个位置或设备的数据,更新数据的元数据/标记信息,编辑数据,配置访问许可信息等,来管理要同步的数据,如上所述。在一些实施例中,同步管理器802可以提供GUI来执行以上所述的功能中的一个或更多个。在一些实施例中,同步管理器802可以利用同步数据库804来存储以上所述的数据和信息。在一些实施例中,可以采用同步管理器802来获取用于将所过滤的数据发送到目标目的地的用户设备的状态信息。该状态信息可以从用户设备或者从同步数据库804获取(816)。基于所获取的状态信息,同步管理器802可以协调执行以上所述的管道感知的数据同步。在一些实施例中,同步管理器802可以基于目标目的地的状态信息协调执行以上所述的管道感知的数据同步。同步数据库804可以用于存储数据同步相关的信息的集合。存储器可以被组织为队列的集合、结构化的文件、关系数据库、面向对象的数据库或任何其它合适的数据库。比如数据库管理系统的计算机软件可以用来管理和提供对存储在同步数据库804中的数据的访问。同步数据库804可以存储要同步的数据和能够促进数据修改的任何信息,如上所述。在一些实施例中,可以采用数据分析器806来分析所接收的数据,并确定所接收的数据是否包含匹配与目标目的地相关联的识别信息的任何信息,如上所述。在一些实施例中,数据分析器806能基于该确定来识别目标目的地。能够直接从例如同步数据库804或通过同步管理器802获取识别信息(816和818)。在一些实施例中,数据分析器806可以提取匹配的信息,并与所分析的数据一起传递给数据过滤器808以用于进一步的处理(828)基于匹配的信息和从数据分析器806或同步数据库804接收的识别信息(816和822),数据过滤器808能够对所分析的数据执行以上所述的数据过滤进程。所过滤的数据传递给数据传输器810以用于传输(824和826)。在一些实施例中,还可以采用数据优化器812来获取目标目的地的特征信息。能直接从目标目的地或同步数据库804或通过同步管理器802获取特征信息(816和830)。基于所获取的特征信息,数据优化器812能对所过滤的数据执行以上所述的设备感知数据修改。数据优化器812然后能将所修改的数据传递给数据传输器810以用于传输(832和826)。在以上所述的数据同步进程期间,自动同步引擎106的每一部件可以将它的计算/确定结果存储在同步数据库804中以用于以后的检索或训练目的。基于历史数据,自动同步引擎106可以训练自己以获得在过滤数据和将数据发送到正确的目的地方面的改进的性能。公开于此的方法可以被实现为计算机程序产品,S卩,计算机程序,其有形地具体化在非瞬时信息载体内,例如,在机器可读的存储设备或有形的非瞬时计算机可读媒体内,用于被数据处理设备运行或控制数据处理设备的操作,数据处理设备例如可编程处理器,计算机或多个计算机。可以用任何形式的程序语言编写计算机程序,包括编译语言或解释语言,并且其可以以任何形式开发,包括作为独立程序或作为模块、部件、子例程或其它适于在计算环境中使用的单元。计算机程序可以被开发为在一个计算机上或处于一个站点或分布于多个站点并通过通信网络互连的多个计算机上运行。公开于此的方法的部分或全部还可以由专用集成电路(ASIC)、现场可编程门阵列(FPGA)、复杂可编程逻辑器件(CPLD)、印刷电路板(PCB)、数字信号处理器(DSP)、可编程逻辑部件和可编程互连的组合、单个中央处理器(CPU)芯片、组合在主板上的CPU芯片、通用计算机或能够执行公开于此的数据同步的设备或模块的任何其它组合来实现。在前面的说明书中,已参考具体的示范性实施例描述了本发明。然而,显而易见的是,可对本发明作出各种修改和改变而不会背离随后的权利要求中所阐述的本发明的最宽的精神实质和范围。说明书和附图都因此被认为是说明性的,而不是限制性的。出于对公开于此的本发明的说明书和实践的考虑,本发明的其它实施例对本领域技术人员来说是显而易见的。
权利要求
1.一种用于跨计算机网络中的多个目标目的地的数据同步的计算机实现的方法,该方法包括: 获取关于目标目的地的信息,其中: 所述目标目的地包括以下中的至少一个: 在计算机网络中的网络账号;或 耦接于计算机网络或与 网络账号相关联的目标设备;以及 所获取的信息包括与目标目的地相关联的识别信息; 在用户设备处接收来自数据源的数据; 基于包括在所接收的数据和识别信息中的信息,过滤所接收的数据; 基于该过滤,识别用于接收所过滤的数据的选择的目标目的地;以及 将所过滤的数据传输到所识别的所选择的目标目的地。
2.如权利要求1所述的方法,其中过滤所接收的数据包括: 比较包括在所接收的数据中的信息和与目标目的地相关联的识别信息,其中: 该识别信息包括以下中的至少一个: 地理识别信息, 人脸的图像, 人的语音,或 关于所述目标目的地中的任何一个的信息; 确定所接收的数据的信息是否匹配与目标目的地中的任何一个相关联的识别信息; 基于该确定识别所选择的目标目的地;以及 将所接收的数据与所识别的所选择的目标目的地相关联。
3.如权利要求1所述的方法,其中过滤所接收的数据包括: 接收用户输入以手动地更新包括在所接收的数据中的信息;以及 基于所更新的信息和与目标目的地相关联的识别信息,过滤所接收的数据。
4.如权利要求1所述的方法,其中过滤所接收的数据包括: 自动地更新包括在所接收的数据中的信息;以及 基于所更新的信息和与目标目的地相关联的识别信息,过滤所接收的数据。
5.如权利要求1所述的方法,进一步包括: 配置所过滤的数据的访问许可元数据以提供准则,以使得仅仅向满足该准则的用户提供对所传输的数据的访问。
6.如权利要求1所述的方法,进一步包括: 接收用户输入,以通过将所过滤的数据的内容项转换为新的格式或者将所过滤的数据的内容项与第二内容项合并中的一个,来选择第一内容项的生成; 根据用户选择生成第一内容项;以及 将所生成的第一内容项传输到所识别的所选择的目标目的地。
7.如权利要求1所述的方法,进一步包括: 获取所识别的所选择的目标目的地的特征信息,其中 所获取的特征信息包括以下中的至少一个: 显示屏大小,最大分辨率, 可接受的文件大小,或 带览限制; 基于所获取的特征信息修改所过滤的数据;以及 将所修改的数据传输到所识别的所选择的目标目的地。
8.如权利要求1所述的方法,进一步包括: 获取用户设备或所识别的所选择的目标目的地的状态信息; 基于所获取的状态信息,确定是否达到限定阈值;以及 如果该确定显示没有达到该阈值,则执行数据同步, 其中该限定阈值与连接带宽或可用资源有关。
9.如权利要求1所述的方法,进一步包括: 在所识别的选择的目的地处启动所传输的数据的显示。
10.如权利要求1所述的方法,进一步包括: 在该用户设备处提供用于显示所接收的数据的表示的第一图形用户界面; 检测该数据的表示的子集的选择; 接收来自用户的用于将由所选择的表示的子集所表示的所选择的数据传输到所选择的目标目的地的指令; 在接收到该指令之后,基于包括在所选择的数据中的信息和与目标目的地中的至少一个相关联的识别信息过滤所选择的数据;以及将所过滤的数据传输到所选择的目标目的地。
11.如权利要求10所述的方法,进一步包括: 接收来自该用户的表示所选择的目标目的地的目标图形对象的选择,其中: 该目标图形对象被显示在第一图形用户界面之内;以及 将所过滤的数据传输到由所选择的目标图形对象所表示的所选择的目标目的地。
12.如权利要求10所述的方法,其中接收来自用户的用于将所选择的数据传输到所选择的目标目的地的指令包括: 检测该数据的表示的所选子集被拖动并放置于链接到所选择的目标目的地的目标图形对象上。
13.如权利要求12所述的方法,其中该目标图形对象处于促进用户和所选择的目标目的地之间的通信的第二图形用户界面之内。
14.如权利要求10所述的方法,其中接收来自用户的用于将所选择的数据传输到所选择的目标目的地的指令包括: 检测该用户按压指示将所选择的数据传输到所选择的目标目的地的图形动作对象。
15.如权利要求10所述的方法,进一步包括: 接收用户输入来编辑列在第一图形用户界面中的所接收的数据。
16.一种用于跨计算机网络中的多个目标目的地同步数据的装置,该装置包括: 同步管理器,其获取关于目标目的地的信息,其中: 该目标目的地包括以下中的至少一个: 在计算机网络中的网络账号;或耦接于计算机网络或与网络账号相关联的目标设备;以及 所获取的信息包括与目标目的地相关联的识别信息; 数据分析器,其确定包括在所接收的数据中的信息是否匹配与所选择的目标目的地相关联的识别息; 数据过滤器,其基于该确定过滤该所接收的数据;以及 数据传输器,其将所过滤的数据传输到所选择的目标目的地。
17.如权利要求16所述的装置,其中该同步管理器: 获取该装置或所选择的目标目的地的状态信息; 基于所获取的状态信息,确定是否达到限定阈值,其中: 该限定阈值与连接带宽或可用资源有关;以及 基于该确定指示该数据传输器传输所过滤的数据。
18.如权利要求16所述的装置,还包括数据优化器,其用于: 获取所选择的目标目的地的特征信息,其中: 所获取的特征信息包括以下中的至少一个: 显示屏大小, 最大分辨率, 可接受的文件大小,或 带览限制; 基于所获取的特征信息修改所过滤的数据;以及 指示该数据传输器将所修改的数据传输到所选择的目标目的地。
19.一种系统,包括: 用户设备,其接收数据;以及 自动同步引擎,耦接于该用户设备,其用于 获取关于目标目的地的信息,其中: 所述目标目的地包括以下中的至少一个: 在计算机网络中的网络账号;或 耦接于计算机网络或与网络账号相关联的目标设备;以及 所获取的信息包括与目标目的地相关联的识别信息; 基于包括在所接收的数据和识别信息中的信息,过滤所接收的数据; 基于该过滤,识别用于接收所过滤的数据的选择的目标目的地;以及 将所过滤的数据传输到所识别的所选择的目标目的地。
20.一种存储指令的非瞬时计算机可读介质,该指令在被执行时使得计算机执行用于跨计算机网络中的多个目标目的地的数据同步的方法,该方法包括: 获取关于目标目的地的信息,其中: 所述目标目的地包括以下中的至少一个: 在计算机网络中的网络账号;或 耦接于计算机网络或与网络账号相关联的目标设备;以及 所获取的信息包括与目标目的地相关联的识别信息; 接收来自数据源的数据;基于包括在所接收的数据和识别信息中的信息,过滤所接收的数据;基于该过滤,识别用于接收所过滤的数据的选择的目标目的地;以及将所过滤的数据 传输到所识别的所选择的目标目的地。
全文摘要
一种用于跨计算机网络中的多个目标目的地的数据同步的方法包括获取关于目标目的地的信息,其中目标目的地包括计算机网络中的网络账号或耦接于计算机网络或与网络账号相关联的目标设备中的至少一个;以及所获取的信息包括与目标目的地相关联的识别信息。该方法还包括在用户设备处接收来自数据源的数据;基于包括在所接收的数据和识别信息中的信息,过滤所接收的数据;基于该过滤,识别用于接收所过滤的数据的选择的目标目的地;以及将所过滤的数据传输到所识别的所选择的目标目的地。
文档编号H04L7/00GK103155477SQ201180049627
公开日2013年6月12日 申请日期2011年10月14日 优先权日2010年11月5日
发明者S·P·肯尼迪, G·R·莱昂斯, M·常, R·M·佳拉伊, E·T·温特, A·L·劳顿, F·卡皮欧, A·克里桑, T·克什莫托 申请人:索尼公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1