CN102609496B - 批量项目导出/导入的web服务支持 - Google Patents

批量项目导出/导入的web服务支持 Download PDF

Info

Publication number
CN102609496B
CN102609496B CN201210020481.3A CN201210020481A CN102609496B CN 102609496 B CN102609496 B CN 102609496B CN 201210020481 A CN201210020481 A CN 201210020481A CN 102609496 B CN102609496 B CN 102609496B
Authority
CN
China
Prior art keywords
data
mailbox
web services
file
application apparatus
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.)
Expired - Fee Related
Application number
CN201210020481.3A
Other languages
English (en)
Other versions
CN102609496A (zh
Inventor
R·托马斯
P·威马
V·伊亚德瓦拉
H·鲁克
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.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Technology Licensing LLC
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
Application filed by Microsoft Technology Licensing LLC filed Critical Microsoft Technology Licensing LLC
Publication of CN102609496A publication Critical patent/CN102609496A/zh
Application granted granted Critical
Publication of CN102609496B publication Critical patent/CN102609496B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
    • G06F16/972Access to data in other repository systems, e.g. legacy data or dynamic Web page generation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/42Mailbox-related aspects, e.g. synchronisation of mailboxes

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了批量项目导出/导入的WEB服务支持。一种用于在联网计算环境中在第一设备与主存通信应用的第二设备之间迁移、存档或备份数据的方法。该方法包括从所述第二设备检索邮箱数据,其中,所述邮箱数据包括消息收发数据以及与所述邮箱数据相关联的通信应用的配置数据。该方法还包括将所述邮箱数据从第一数据格式映射到第二数据格式,以及将所映射的邮箱数据转移到所述第一设备作为第一文件。

Description

批量项目导出/导入的WEB服务支持
技术领域
本发明涉及通信领域,尤其涉及数据的导出/导入。
背景技术
出于批量导出/导入消息收发数据目的而对电子邮件系统的访问通常在每一项目的基础上执行。因此可要求开发者管理代码的大型语料库,来实现给定导出/导入数据迁移过程的大量项目专用的方法调用。然而,这样的实践是低效的,且不能正确地与电子邮件系统技术中的进展成比例扩展。
发明内容
在一方面,描述了一种用于在联网计算环境中在第一设备与主存通信应用的第二设备之间迁移数据的方法。该方法包括:从该第二设备检索邮箱数据,其中,该邮箱数据包括用户专用消息收发数据和与该邮箱数据相关联的通信应用的配置数据;将该邮箱数据从第一数据格式映射到第二数据格式;以及将所映射的邮箱数据转移到该第一设备作为第一文件。
在另一方面,公开了包括处理单元和连接到该处理单元的系统存储器的计算设备,其中,该系统存储器包括当由该处理单元执行时使得该处理单元实现web服务的指令,所述web服务包括被编程为在联网计算环境中在第一设备与主存通信服务器的第二设备之间迁移邮箱的导出模块和导入模块。该导出模块被编程为:接收导出方法调用;响应于接收到的导出方法调用,从该第二设备检索邮箱结构,该邮箱结构包括用户专用消息收发数据和与该邮箱结构相关联的通信服务器的配置数据;将该邮箱结构从第一数据格式映射到二进制大对象格式;以及将该邮箱结构转移到该第一设备作为第一文件。该导入模块被编程为:接收导入方法调用;响应于接收到的导入方法调用,从该第一设备检索该第一文件;将该第一文件从该二进制大对象格式变换成该第一数据格式,以重构该邮箱结构;以及将所重构的邮箱结构转移到该第二设备。
在又一个方面,公开了具有计算机可执行指令的计算机可读存储介质,当由计算设备执行所述指令时,使得所述计算设备执行步骤,包括:从第二设备检索邮箱数据,该邮箱数据包括选自包括以下各项的组的用户专用消息收发数据:电子邮件项目、约会项目、用户定义的项目、日历项目、任务项目、联系人项目、和杂志项目;以及选自包括以下各项的组的、与邮箱数据相关联的通信应用的配置数据:审计策略、存档策略、保存的视图、和许可;将该邮箱数据从第一数据格式映射到第二数据格式;将所映射的邮箱数据转移到第一设备作为第一文件;从第一设备检索第一文件;将第一文件从第二数据格式变换成第一数据格式,以重构该邮箱数据;将所重构的邮箱数据转移到第二设备;在该计算设备处接收暂停消息;响应于接收该暂停消息,web服务挂起从第二设备检索该邮箱数据;在该计算设备处接收恢复消息;以及响应于接收该恢复消息,web服务在指针所指定的位置处继续从第二设备检索该邮箱数据。
提供本发明内容是为了以简化的形式介绍将在以下具体实施方式中进一步描述的一些概念。本发明内容并不旨在标识所要求保护的主题的关键特征或必要特征,也决不旨在用于限制所要求保护的主题的范围。
附图说明
本公开的各方面在结合附图考虑以下各实施例的详细描述的情况下可被更全面地理解。
图1示出了示例联网计算环境。
图2示出了示例通用计算设备。
图3示出了示例示意性框图,该示例示意性框图示出了图1的联网计算环境的各设备之间的示例通信。
图4示出了用于导出由通信系统主存的邮箱的全保真副本的示例方法的流程图。
图5示出了用于导入由通信系统主存的邮箱的全保真副本的示例方法的流程图。
图6示出了用于合并由通信系统主存的邮箱的备份副本的示例方法的流程图。
图7示出了针对由通信系统主存的邮箱的全保真导入/导出来配置的系统的示例用户界面。
具体实施方式
本发明一般涉及用于在联网计算环境中导出和导入由通信系统主存的数据的各系统和方法。
在本文所描述的各示例实施例中,web服务被配置成生成由通信系统主存的邮箱的全保真(full fidelity)表示,以及使用单个“导出”web方法调用将邮箱表示返回给网络可访问的计算设备。邮箱表示是用户专用的,且包括用户专用消息收发数据以及与邮箱相关联的配置和系统数据。web服务还被配置成使用单个“导入”web方法调用来检索邮箱表示并将其写入通信系统以供无损数据还原。
尽管没有进行如此限制,但是对本发明的各个方面的理解鉴于以下提供的示例来认识。
现在参考图1,示出了示例联网计算环境100。联网计算环境100包括客户机设备105、web服务设备110、应用设备115、存储设备120和网络125。其他实施例是可能的。例如,联网计算环境100通常可按需包括更多或更少设备、网络和其他组件。
客户机设备105、web服务设备110和应用设备115是计算设备,下文结合图2来进一步描述它们。
在各示例实施例中,web服务设备110被配置成实现web服务,该web服务基于包括超文本传输协议(HTTP)、可扩展标记语言(XML)、简单对象访问协议(SAOP)、web服务描述语言(WSDL)及其他等开放标准,来动态地与其他web可访问的应用和服务进行交互。在一个实施例中,web服务设备110包括以WSDL格式、用于定义web服务能力的基于XML的语言、以及相应web服务所使用的协议和格式来描述的界面。其他实施例是可能的。
当客户机(例如,客户机设备105)想要使用由web服务设备110主存的web服务时,客户机查询web服务,web服务向客户机返回WSDL描述以允许客户机使用该服务。客户机与web服务之间的通信通常使用HTTP上的SOAP协议。其他实施例是可能的。例如,在另一实现中,可使用JavaScript对象符号(JSON)数据交换格式来支持客户机与web服务之间的数据传输。还有其它实施例也是可能的。
应用设备115是实现业务过程的业务服务器。示例业务过程包括消息接发和通信过程、协作过程、数据管理过程等。来自华盛顿州雷蒙德市的微软公司的协作服务器是实现支持协作、文件共享和web发布的业务过程的业务服务器的示例。同样来自微软公司的Exchange Server是实现支持电子邮件、日历、联系人、任务特征等的消息收发和协作业务过程的业务服务器的示例。其他业务过程是可能的。
在某些实施例中,web服务设备110和/或应用设备115分别包括在“场(Farm)”配置中一起操作以实现基于web的过程的多个互连的服务器设备。web服务设备110和应用设备115的其他实施例是可能的。
存储设备120是诸如关系数据库或任何其他类型的永久数据存储设备之类的数据存储设备。存储设备120按预定义格式来存储数据,以使得应用设备115可查询、修改、和管理其上存储的数据。这样的数据存储设备的一个示例包括邮箱存储和地址服务,诸如来自微软公司的ACTIVE目录服务。存储设备120的其他实施例是可能的。
网络125是用于一个或多个设备之间的数据转移的双向数据通信路径。在示例实施例中,网络125建立用于在相应的客户机设备105、web服务设备110和应用设备115之间进行选择性数据转移的通信路径。一般而言,网络125可以是多个无线或硬线连接的WAN、LAN、因特网或其他基于分组的通信网络中的任一种,以使得数据可在示例联网计算环境100的元件之间被转移。网络125的其他实施例是可能的。
现在参考图2,详细地示出了应用设备115。应用设备115是计算设备。计算设备的示例包括台式计算上、膝上型计算机、笔记本计算机、服务器计算机、个人数据助理、智能电话、蜂窝电话、以及其他类型的计算设备。
应用设备115包括至少一个处理单元205和系统存储器210。系统存储器210可以存储用于控制应用设备115和/或另一计算设备的操作的操作系统215。一个示例操作系统是来自微软公司的操作系统或服务器,诸如Exchange服务器、协作服务器以及其它。
系统存储器210还可以包括一个或多个软件应用220并且可以包括程序数据。软件应用220可包括许多不同类型的单个和多个功能的程序,诸如电子邮件程序、日历程序、因特网浏览程序、电子表格程序、用于跟踪和报告信息的程序、文字处理程序、即时消息收发程序、web会议服务程序以及许多其他程序。一个示例程序是来自微软公司的Office应用套件。另一示例程序是被配置成与驻留在应用设备115上和/或外置于应用设备115的其他程序的功能进行交互和/或对其调用的图形用户界面。这样的图形用户界面的示例在下文结合图3-7来描述。
系统存储器210可包括计算机可读介质。计算机可读介质的示例包括计算机可读存储介质和通信介质。
计算机可读存储介质是与通信介质不同的物理介质。
计算机可读存储介质可以包括以用于储存诸如计算机可读指令、数据结构、程序模块或其他数据等信息的任一方法或技术实现的物理易失性和非易失性,可移动和不可移动介质。计算机可读存储介质还包括,但不仅限于,RAM、ROM、EEPROM、闪存或其他存储器技术,CD-ROM、DVD或其他光学存储,磁带盒、磁带、磁盘存储或其他磁存储设备,或可以用来存储所需要的信息并可以被应用设备115访问的任何其他介质。任何这样的计算机存储介质都可以是应用设备115的一部分或外置于该应用设备115。这样存储在图2中由可移动存储225和不可移动存储230示出。
通信介质通常可具体化为诸如载波或其它传输机制等已调制数据信号中的计算机可读指令、数据结构、程序模块或其它数据,并且包括任何信息传递介质。术语“已调制数据信号”是指具有以在信号中编码信息的方式被设定或改变其一个或多个特征的信号。作为示例,通信介质包括有线介质,诸如有线网络或直接线连接,以及无线介质,诸如声学、RF、红外线和其他无线介质。
应用设备115还可具有任何数目或类型的输入设备235和输出设备240。示例输入设备235包括键盘、鼠标、笔、语音输入设备、触摸输入设备等。示例输出设备240包括显示器、扬声器、打印机等。应用设备115还可包括配置成在分布式计算系统环境中允许通过网络(例如,网络125)与其他计算设备通信的通信连接245。
图1所示联网计算环境100的客户机设备105和web服务设备110按与上述应用设备115相似的方式来配置。
现在参考图3,示意性框图300示出图1的客户机设备105、web服务设备110和应用设备115之间的示例通信。
在所示示例中,客户机设备105包括图形用户界面(GUI)305和本地存储310,web服务设备110包括web服务315,以及应用设备115包括web应用320。示例web服务315包括导出应用编程接口(API)325和导入API 330。示例web应用320包括邮箱335,该邮箱335包括用户数据340和系统数据345。图300的其他实施例是可能的。例如,图300一般可按需包括更多或更少的设备和其他组件。例如,在某些实施例中,在单个设备上包括web服务315和web应用230。还有其它实施例也是可能的。
客户机设备105的GUI 305包括在客户机设备105上执行的、被配置成使得用户(例如,管理员)能够与web服务315和web应用320的功能进行交互且对其调用的软件的逻辑模块。GUI 305的示例实施例在下文结合图7进一步描述。本地存储310包括可由客户机设备105和GUI 305访问的物理读/写计算机可读存储介质。
web服务315包括在web服务设备110上执行的、被配置成与GUI 305和web应用320进行动态交互的软件的逻辑模块。更具体地,web服务315的导出API 325被配置成支持数据导出消息收发,包括:从客户机设备105接收数据导出调用消息,响应于接收到的数据导出调用消息从web应用320下载邮箱335的全保真表示(即,用户数据340和系统数据345),将邮箱335的表示编码成单个不透明文件,以及将经编码的文件返回给客户机设备105,如下文将更详细地描述的。
web服务315的导入API 330被配置成支持数据导入消息收发,包括:从客户机设备105接收数据导入调用消息,响应于接收到的数据导入调用消息从本地存储310上传邮箱335的全保真表示(即,用户数据340和系统数据345),解码邮箱335的全保真表示,以及将经解码的数据写入web应用320,下文也将更详细地描述。
web应用320包括在应用设备115上执行的、被配置成实现支持电子邮件和其他电子消息收发的业务过程的软件的逻辑模块。在各示例实施例中,邮箱335是用户专用储存库,其中用户数据340一般包括用户专用消息收发数据,且系统数据345一般包括web应用320的配置和系统数据。
用户专用消息收发数据的示例包括电子邮件项目、约会项目、用户定义的项目、日历项目、任务项目、联系人项目、杂志项目等。配置和系统数据的示例包括审计策略、存档策略、保存的视图、许可等。以此方式,用户数据340和系统数据345一起表示邮箱335中项目、属性和设置的整体。在各示例实施例中,术语“全保真(full fidelity)”至少包含用户专用储存库(例如,邮箱335)中项目、属性和设置的整体。
web应用320的其他实施例是可能的。例如,web应用320可包括多个邮箱,各个邮箱分别与向web应用320(例如,Exchange Server企业实现)注册的多个用户中的单个用户相对应。
如上所述,web服务315的导出API 325被配置成支持数据导出消息收发。在各示例实施例中,图300内的数据导出消息收发最初包括将导出请求消息350从GUI 305转移到web服务315,以便启动对邮箱335的全保真表示的下载。
更具体地,导出API 325被配置成接收并解释导出请求消息350,以及将数据请求消息355转移到web应用320。web应用320被配置成接收并解释数据请求消息355,以及准许导出API 325根据导出请求消息350来检索邮箱335的用户数据340和系统数据345。在所示示例中,通过符号示出邮箱335的用户数据340和系统数据345作为附加到数据返回消息360被转移到导出API325。导出API 325被配置成接收和解释数据返回消息360,并将邮箱335的用户数据340和系统数据345编码成或映射到图像文件365。在一个实施例中,邮箱335的用户数据340和系统数据345到图像文件365的映射与形成二进制大对象相对应,二进制大对象是表示邮箱335的用户数据340和系统数据345的二进制数据集合。然而,其他实施例是可能的。例如,对邮箱335的用户数据340和系统数据345的映射或编码一般可包括将邮箱335中的数据变换成任何其他形式的有组织的数据。
在将邮箱335的用户数据340和系统数据345映射到图像文件365之后,导出API325被配置成生成导出回复消息370,并将导出回复消息370转移到客户机设备105。在所示示例中,通过符号将图像文件365示为被附加到导出回复消息370。在一个实施例中,随后将图像文件365转移到本地存储310,作为邮箱335的备份文件。然而,其他实施例是可能的。例如,一般可将图像文件365存储为外置于客户机设备105的任何类型的正确地配置的网络可访问存储(例如,存储区域网络(SAN)等)。
在各示例实施例中,示例图300内的数据导出消息收发使用自GUI 305发送到web服务315的单个web服务方法调用(即,导出请求消息350)与邮箱335的用户数据340和系统数据345的全保真备份相对应。图3的示例图300内的数据导出消息收发在下文结合图4更详细地描述。
如上所述,web服务315还包括被配置成支持数据导入消息收发的导入API330。在各示例实施例中,示例图300内的数据导入消息收发使用自GUI 305发送到web服务315的单个web服务方法调用与邮箱335的用户数据340和系统数据345的无损还原相对应。在下面的示例场景中,将数据导入消息收发描述为上述数据导出消息收发之后的动作。其他实施例是可能的。
在所示示例中,示例图300内的数据导入消息收发最初包括将邮箱删除消息375从GUI 305转移到web应用320,以便删除邮箱335的用户数据340和系统数据345。在删除邮箱335的用户数据340和系统数据345之后,数据导入消息收发继续将导入请求消息380从GUI305转移到web服务315,以便启动将图像文件365上传到web服务315。
更具体地,导入API 330被配置成接收并认证导入请求消息380。在认证之后,导入API 330被配置成从本地存储310接收图像文件365。在所示示例中,通过符号示出图像文件365作为附加到上传数据消息385被转移到导入API330。
其他实施例是可能的。例如,一般可从外置于客户机设备105的任何类型的正确地配置的网络可访问存储(例如,存储区域网络(SAN)等)中检索图像文件365。以此方式,web服务315对图像文件365的检索不必包括web服务315访问用于形成原始导入请求消息(例如,导入请求消息380)和/或导出请求消息(例如,导出请求消息350)的设备(例如,客户机设备105)。
接收到图像文件365之后,导入API 330被配置成解码图像文件365,并将邮箱335的用户数据340和系统数据345映射成web应用320优选的格式。解码图像文件365之后,导入API 330被配置成生成写数据消息390,并将写数据消息390转移到web应用320。在该示例实施例中,邮箱335的用户数据340和系统数据345通过符号被示为附加到写数据消息390。以此方式,示例图300内的数据导入消息收发与邮箱335的用户数据340和系统数据345的无损数据还原相对应,无损数据还原与邮箱335在图像文件365最初被获取的时间点处的快照相对应。无损数据还原使用自GUI 305发送到web服务315的单个web服务调用(即,导入请求消息380)来完成。
图3的示例图300内的数据导入消息收发在下文结合图5更详细地描述。
示例图300内web服务315所支持的其他消息收发场景也是可能的。例如,在某些实施例中,web服务315被配置成出于实现web服务315的各种附加功能的目的来从GUI 305接收功能选择消息395。web服务315的附加功能的示例包括暂停/恢复功能以及文件合并功能,诸如下文结合图5-7更详细地描述的。web服务315的其他类型的附加功能是可能的。
由图3的示图300内的web服务315所实现的示例消息收发场景在许多方面是有益的。例如,所公开的消息收发允许使用单个web服务方法调用来对整个邮箱进行全保真备份和还原。这通过简化备份和还原邮箱所需的代码来去除在每一项目的基础上管理邮箱项目的必要性,从而使开发者的开销最小化。在另一方面,所公开的消息收发对应于导出/导入二进制数据流,而不是逐个项目地被结构化为XML。就速度和其他性能参数而言,这提高了邮箱的备份和还原。
现在参考图4,示出了根据本发明的原理的、用于导出由通信系统主存的邮箱的全保真副本的示例方法400。在各示例实施例中,方法400全部或部分地由在web服务设备110上执行的web服务315的导出API 325和导入API 330中的一个或两者来实现,web服务设备110与上述结合图1-3来配置的客户机设备105和应用设备115通信。其他实施例是可能的。
方法400在操作405处开始。在操作405处,web服务315从客户机设备105接收导出请求消息(例如,导出请求消息350),来启动对应用设备115所管理的至少一个邮箱(例如,邮箱335)的全保真表示的下载。在一个实施例中,导出请求消息包括SOAP消息。然而,导出请求消息的其他实施例是可能的。
操作流程前进至操作410。在操作410处,web服务315向应用设备115发送数据请求消息(例如,数据请求消息355)以请求访问在操作405处接收到的导出请求消息中所指定的至少一个邮箱的用户数据和系统数据(例如,用户数据340、系统数据345)。在一个实施例中,数据请求消息包括SOAP消息。然而,数据请求消息的其他实施例是可能的。
操作流程前进至操作415。在操作415处,web服务315开始检索在操作405处接收到的导出请求消息中所指定的至少一个邮箱的用户数据和系统数据。
操作流程前进至操作420。在操作420处,web服务315从客户机设备105接收暂停消息(例如,功能选择消息395)。在接收到暂停消息之后,web服务315停止获取至少一个邮箱的用户数据和系统数据,并维护一引用指针,该引用指针指定了用户数据和系统数据内要在后续操作中恢复数据下载数据的位置。由web服务315所实现的示例“暂停”功能在下文结合图7更详细地描述。
操作流程前进至操作425。在操作425处,web服务315从客户机设备105接收恢复消息(例如,功能选择消息395)。在接收到恢复消息之后,web服务315标识用户数据和系统数据内由引用指针所指定的位置,并完成对至少一个邮箱的用户数据和系统数据的获取。由web服务315所实现的示例“恢复”功能在下文结合图7更详细地描述。
操作流程前进至操作430。在操作430处,web服务315将至少一个邮箱的用户数据和系统数据编码成二进制大对象(例如,图像文件365)。在以下示例实施例中:其中在操作405处从客户机设备105接收到的导出请求消息包括对下载一个以上的邮箱的全保真表示的请求,web服务315被配置成在操作430处编码每一指定的邮箱的单个二进制大对象。其他实施例是可能的。操作流程随后前进到操作435,在那里web服务315将在操作430处所形成的二进制大对象转移到客户机设备105。
现在参考图5,示出了根据本发明的原理的、用于导入由通信系统主存的邮箱的全保真副本的示例方法500。在各实施例中,方法500全部或部分地由在web服务设备110上执行的web服务315的导出API 325和导入API 330中的一个或两者来实现,web服务设备110与上述结合图1-4来配置的客户机设备105和应用设备115通信。
方法500在操作505处开始。在操作505处,web服务315从客户机设备105接收导入请求消息(例如,导入请求消息380),来启动将二进制大对象(例如,图像文件365)上传到web服务315。在一个实施例中,导入请求消息包括SOAP消息。然而,导入请求消息的其他实施例是可能的。
操作流程前进至操作510。在操作510处,web服务315认证在操作505处接收到的导入请求消息。接着,在操作515和以下认证处,web服务315接收由导入请求消息所指定的二进制大对象。操作流程前进至操作520。在操作520处,web服务315解码二进制大对象,并将邮箱的用户数据和系统数据形成为web应用320所优选的格式。其他实施例是可能的。
操作流程前进至操作525。在操作525处,web服务315将在操作520处解码的邮箱的用户数据和系统数据写到web应用320以供无损数据还原。
现在参考图6,示出了用于合并由通信系统主存的邮箱的差异图像的示例方法600。在各示例实施例中,方法600全部或部分地由在web服务设备110上执行的web服务315的导出API 325和导入API 330中的一个或两者来实现,web服务设备110与上述结合图1-5来配置的客户机设备105和应用设备115通信。其他实施例是可能的。
方法600在操作605处开始。在操作605处,web服务315从客户机设备105接收图像文件A。图像文件A与在日期/时间T1处所捕捉的邮箱335的用户数据340和系统数据345的第一备份副本相对应。在该示例实施例中,图像文件A是二进制大对象,该二进制大对象包括完整地且完全地表示在日期/时间T1处邮箱335的用户数据340和系统数据345的二进制数据集合。另外,在各示例实施例中,图像文件A是按与以上参考图3所描述的数据导入消息收发(例如,经由导入请求消息380和上传数据消息385)相似的方式经由导入API 330从客户机设备105检索的。
操作流程前进至操作610。在操作610处,web服务315从客户机设备105接收图像文件B。图像文件B与在日期/时间T2≠T1处所捕捉的邮箱335的用户数据340和系统数据345的第二备份副本相对应。在该示例实施例中,图像文件B是二进制大对象,该二进制大对象包括完整地且完全地表示在日期/时间T2处邮箱335的用户数据340和系统数据345的二进制数据集合。
操作流程前进至操作615。在操作615处,web服务315从客户机设备105接收合并消息(例如,功能选择消息395)。由web服务315所实现的示例“合并”功能在下文结合图7更详细地描述。
操作流程前进至操作620。在操作620处,web服务315将图像文件A和图像文件B合并以形成图像文件C。在该示例实施例中,合并与图像文件A和图像文件B的并集或相加以形成图像文件C相对应(例如,图像文件A+图像文件B=图像文件C)。以此方式,web服务315被配置成支持经由“差异副本”来对邮箱335的用户数据340和系统数据345的各种备份副本进行合并。其他实施例是可能的。
操作流程前进至操作625。在操作625处,web服务315将图像文件C转移到客户机设备105。其他实施例是可能的。例如,图像文件C可通过网络(例如,网络125)转移自/到任何正确地配置的web服务315可访问的设备。一般而言,用于为图像文件C的存储指定设备的“目的地”功能由web服务315支持,如下文结合图7更详细地描述的。
现在参考图7,示出了以上结合图1-6所描述的GUI 305的示例实施例。GUI 305包括显示可供用户选择的web服务315的示例功能的窗口705。在该示例实施例中,GUI 305显示了邮箱导出选择710、邮箱删除选择715、邮箱导入选择720、暂停操作选择725、恢复操作选择730、以及合并邮箱选择735。
邮箱导出选择710可由用户选择,以指导web服务315执行由web应用320主存的邮箱的用户数据和系统数据的全保真导出。在各示例实施例中,用户向第一输入区域740输入“邮箱335”,以使用自GUI 305发送到web服务315的单个web服务方法调用(即,导出请求消息350)来实现对邮箱335的用户数据340和系统数据345的全保真备份。其他实施例是可能的。
邮箱删除选择715可由用户选择,以指导web服务315执行删除由web应用320主存的邮箱的用户数据和系统数据。在各示例实施例中,用户向第二输入区域745输入“邮箱335”,以实现上述删除邮箱335的用户数据340和系统数据345。其他实施例是可能的。
邮箱导入选择720可由用户选择,以指导web服务315执行对web应用320所主存的邮箱的用户数据和系统数据进行的无损导入。在各示例实施例中,用户向第三输入区域750输入“邮箱335”,以使用自GUI 305发送到web服务315的单个web服务方法调用(即,导入请求消息380)来实现对邮箱335的用户数据340和系统数据345的全保真导入。其他实施例是可能的。
暂停操作选择725可由用户选择,以指导web服务315临时地或永久地停止与对web应用320所主存的邮箱的用户数据和系统数据的全保真导出或无损导入相对应的操作。web服务315被配置成维护一引用指针,该引用指针指定用户数据和系统数据内要后续操作中恢复数据下载或数据上传的位置。根据上述示例实施例,用户向第四输入区域755输入“暂停邮箱335下载”来实现暂停操作,以便临时地停止获取邮箱335的用户数据340和系统数据345。其他实施例是可能的。
恢复操作选择730可由用户选择,以指导web服务315恢复与对web应用320所主存的邮箱的用户数据和系统数据的全保真导出或无损导入相对应的操作(例如,在用户选择暂停操作选择725之后)。web服务315被配置成标识由引用指针所指定的用户数据和系统数据内的位置,并恢复数据下载或数据上传操作。根据上述示例实施例,用户向第五输入区域760输入“恢复邮箱335下载”来实现恢复操作,以便完成获取邮箱335的用户数据340和系统数据345。其他实施例是可能的。
合并邮箱选择735可由用户选择,以指导web服务315对web应用320所主存的邮箱的用户数据和系统数据的差异图像进行合并。根据上述示例实施例,用户向第六输入区域765输入“合并图像文件A和图像文件B”,以实现与图像文件A和图像文件B的并集或相加以形成图像文件C相对应的合并操作(例如,图像文件A+图像文件B=图像文件C)。用户在第六输入区域765内附加地将用于存储图像文件C的“目的地”指定为“目的地=本地存储310”。其他实施例是可能的。
本文中描述的示例实施例可被实现为联网计算系统环境中的计算设备内的逻辑操作。该逻辑操作可被实现为:(i)在计算设备上运行的计算机执行的指令、步骤或程序模块的序列;以及(ii)在计算设备内运行的内连逻辑或硬件模块。
例如,逻辑操作可用软件、固件、模拟/数字电路、和/或其任何组合来实现为算法,而不背离本公开的范围。软件、固件、或类似的计算机指令序列可被编码并存储在计算机可读介质上,并且还可被编码在载波信号内,以便在计算设备之间进行传输。
尽管用结构特征和/或方法动作专用的语言描述了本主题,但可以理解,所附权利要求书中定义的主题不必限于上述具体特征或动作。相反,上述具体特征和动作是作为实现权利要求的示例形式公开的。

Claims (11)

1.一种用于在联网计算环境中在客户机设备(105)和主存通信应用的应用设备(115)之间迁移数据的方法,所述方法包括:
由web服务设备(110)主存的web服务从所述客户机设备接收导出请求消息以便启动邮箱的表示的下载;
从所述web服务设备向所述应用设备(115)发送数据请求消息,其中,所述数据请求消息包括对与至少一个邮箱有关的信息的请求;
由所述web服务设备从所述应用设备(115)接收邮箱数据,其中,所述邮箱数据包括用户专用消息收发数据以及与所述邮箱数据相关联的web应用的配置数据;
由所述web服务设备将所述邮箱数据从第一数据格式映射到第二数据格式;以及
将所映射的邮箱数据转移到所述客户机设备(105)作为第一文件。
2.如权利要求1所述的方法,其特征在于,还包括:
在web服务设备(110)处接收暂停消息;以及
响应于接收到所述暂停消息,web服务(64)挂起从所述应用设备(115)对所述邮箱数据的检索。
3.如权利要求2所述的方法,其特征在于,还包括所述web服务(64)生成指定所述邮箱数据内要恢复对所述邮箱数据的检索的位置的指针。
4.如权利要求3所述的方法,其特征在于,还包括:
在所述web服务设备(110)处接收恢复消息;以及
响应于接收所述恢复消息,所述web服务(64)在所述指针所指定的位置处开始继续从所述应用设备检索所述邮箱数据。
5.如权利要求1所述的方法,其特征在于,还包括:
从所述应用设备(115)检索所述邮箱数据;
将所述邮箱数据从所述第一数据格式映射到所述第二数据格式;以及
将所映射的邮箱数据存储为第二文件。
6.如权利要求5所述的方法,其特征在于,还包括:
在web服务设备(110)处接收合并消息;以及
响应于接收到所述合并消息,web服务(64)将所述第一文件与所述第二文件相结合以形成第三文件。
7.如权利要求1所述的方法,其特征在于,所述第二数据格式包括二进制大对象。
8.一种计算设备(110),包括:
处理单元(205);以及
连接到所述处理单元的系统存储器(210),所述系统存储器包括当由所述处理单元执行时使得所述处理单元实现web服务(64)的软件应用(220),所述web服务(64)包括被编程为在联网计算环境中在客户机设备(105)和主存通信服务器的应用设备(115)之间迁移邮箱数据的导出模块和导入模块,其中:
所述导出模块被编程为:
从所述客户机设备(105)接收导出方法调用;
响应于接收到的导出方法调用,向所述应用设备发送数据请求消息以从所述应用设备(115)检索邮箱结构,其中,所述邮箱结构包括用户专用消息收发数据以及与所述邮箱结构相关联的通信服务器的配置数据;
将所述邮箱结构从第一数据格式映射到二进制大对象格式;以及
将所述邮箱结构转移到所述客户机设备(105)作为第一文件;以及
所述导入模块被编程为:
接收导入方法调用;
响应于接收到的导入方法调用,从所述客户机设备(105)检索所述第一文件;
将所述第一文件从所述二进制大对象格式变换成所述第一数据格式,以重构所述邮箱结构;以及
将所重构的邮箱结构转移到所述应用设备(115)。
9.如权利要求8所述的计算设备,其特征在于:
所述导出模块还被编程为:
接收第二导出方法调用;
响应于接收到的第二导出方法调用,从所述应用设备(115)检索所述邮箱结构;
将所述邮箱结构从所述第一数据格式映射到所述二进制大对象格式;以及
将所映射的邮箱结构存储在所述系统存储器(210)中作为第二文件;以及
所述导入模块还被编程为:
接收第二导入方法调用;
响应于接收到的第二导入方法调用,从所述客户机设备(105)检索所述第一文件;
接收合并消息;
响应于接收到的合并消息,将所述第一文件与所述第二文件相结合以形成第三文件;以及
将所述第三文件转移到所述客户机设备(105)。
10.一种方法,包括:
响应于来自客户机设备(105)的请求,从web服务设备向应用设备(115)发送数据请求消息以从所述应用设备(115)检索邮箱数据,所述邮箱数据包括选自包括以下各项的组的用户专用消息收发数据:电子邮件项目、约会项目、用户定义的项目、日历项目、任务项目、联系人项目、和杂志项目;以及选自包括以下各项的组的、与所述邮箱数据相关联的通信应用的配置数据:审计策略、存档策略、保留的视图、和许可;
将所述邮箱数据从第一数据格式映射成第二数据格式,其中,所述第二数据格式包括二进制大对象;
将所映射的邮箱数据转移到客户机设备(105)作为第一文件;
从所述客户机设备(105)检索所述第一文件;
将所述第一文件从所述第二数据格式变换成所述第一数据格式以重构所述邮箱数据;
将所重构的邮箱数据转移到所述应用设备(115);
在web服务设备(110)处接收暂停消息;
响应于接收到所述暂停消息,web服务(64)挂起从所述应用设备(115)对所述邮箱数据的检索;
在所述web服务设备(110)处接收恢复消息;以及
响应于接收所述恢复消息,所述web服务(64)在指针所指定的位置处开始继续从所述应用设备(115)检索所述邮箱数据。
11.一种系统,包括:
用于响应于来自客户机设备(105)的请求,从web服务设备向应用设备发送数据请求消息以从所述应用设备检索邮箱数据的装置,所述邮箱数据包括选自包括以下各项的组的用户专用消息收发数据:电子邮件项目、约会项目、用户定义的项目、日历项目、任务项目、联系人项目、和杂志项目;以及选自包括以下各项的组的、与所述邮箱数据相关联的通信应用的配置数据:审计策略、存档策略、保留的视图、和许可;
用于将所述邮箱数据从第一数据格式映射成第二数据格式的装置,其中,所述第二数据格式包括二进制大对象;
用于将所映射的邮箱数据转移到客户机设备作为第一文件的装置;
用于从所述客户机设备检索所述第一文件的装置;
用于将所述第一文件从所述第二数据格式变换成所述第一数据格式以重构所述邮箱数据的装置;
用于将所重构的邮箱数据转移到所述应用设备的装置;
用于在web服务设备处接收暂停消息的装置;
用于响应于接收到所述暂停消息,web服务挂起从所述应用设备对所述邮箱数据的检索的装置;
用于在所述web服务设备处接收恢复消息的装置;以及
用于响应于接收所述恢复消息,所述web服务在指针所指定的位置处开始继续从所述应用设备检索所述邮箱数据的装置。
CN201210020481.3A 2011-01-28 2012-01-29 批量项目导出/导入的web服务支持 Expired - Fee Related CN102609496B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/015,961 US20120198019A1 (en) 2011-01-28 2011-01-28 Web service support for bulk item export/import
US13/015,961 2011-01-28

Publications (2)

Publication Number Publication Date
CN102609496A CN102609496A (zh) 2012-07-25
CN102609496B true CN102609496B (zh) 2017-03-01

Family

ID=46526868

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210020481.3A Expired - Fee Related CN102609496B (zh) 2011-01-28 2012-01-29 批量项目导出/导入的web服务支持

Country Status (2)

Country Link
US (1) US20120198019A1 (zh)
CN (1) CN102609496B (zh)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9112935B2 (en) * 2012-03-05 2015-08-18 Microsoft Technology Licensing, Llc Manipulating binary large objects
US10282196B2 (en) 2012-04-06 2019-05-07 Oracle International Corporation System and method for moving enterprise software application components across environments
CN105279175B (zh) * 2014-07-01 2020-01-10 腾讯科技(北京)有限公司 数据传输的方法和装置
US20160019224A1 (en) * 2014-07-18 2016-01-21 Commvault Systems, Inc. File system content archiving based on third-party application archiving rules and metadata
US20160048654A1 (en) * 2014-08-12 2016-02-18 Allscripts Software, Llc Patient observations submission state engine
CN105959937A (zh) * 2016-07-06 2016-09-21 乐视控股(北京)有限公司 文件发送方法、装置及文件接收方法、装置
US10992593B2 (en) * 2017-10-06 2021-04-27 Bank Of America Corporation Persistent integration platform for multi-channel resource transfers
CN109936611B (zh) * 2017-12-19 2021-08-24 中标软件有限公司 邮件的数据迁移方法
CN109558089A (zh) * 2018-12-03 2019-04-02 湖南御家科技有限公司 一种数据迁移方法、装置、设备及可读存储介质
US11616742B2 (en) * 2021-01-07 2023-03-28 Whatsapp Llc Methods and systems for end-to-end encrypted message history exchange

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7552358B1 (en) * 2005-04-22 2009-06-23 Symantec Operating Corporation Efficient backup and restore using metadata mapping

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6823391B1 (en) * 2000-10-04 2004-11-23 Microsoft Corporation Routing client requests to back-end servers
US20040181580A1 (en) * 2003-03-11 2004-09-16 Etienne Baranshamaje Method, computer useable medium, and system for portable email messaging
CA2622833C (en) * 2005-09-29 2010-05-04 Teamon Systems, Inc. Email server performing email job processing for a given user and related methods
US20080228880A1 (en) * 2007-03-12 2008-09-18 Microsoft Corporation Managed code mapi apis
US7730147B1 (en) * 2007-03-30 2010-06-01 Emc Corporation Prioritizing archived email requests
US8429425B2 (en) * 2007-06-08 2013-04-23 Apple Inc. Electronic backup and restoration of encrypted data
US8307004B2 (en) * 2007-06-08 2012-11-06 Apple Inc. Manipulating electronic backups
US8938510B2 (en) * 2010-04-26 2015-01-20 Bittan Inc. On-demand mailbox synchronization and migration system

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7552358B1 (en) * 2005-04-22 2009-06-23 Symantec Operating Corporation Efficient backup and restore using metadata mapping

Also Published As

Publication number Publication date
CN102609496A (zh) 2012-07-25
US20120198019A1 (en) 2012-08-02

Similar Documents

Publication Publication Date Title
CN102609496B (zh) 批量项目导出/导入的web服务支持
US10261743B2 (en) Interactive group content systems and methods
JP6137505B2 (ja) ウェブアプリケーションのための軽量フレームワーク
CN106464746B (zh) 支持事件流处理系统中的故障转移的方法与非暂时性计算机可读媒体以及系统
CN105144153B (zh) 用于内容组织的方法和系统
US10491673B2 (en) Synchronization of conversation data
US20240031316A1 (en) Managing message attachments
AU2020327970B2 (en) Distributed queueing over a redis cluster
US10122665B2 (en) Distributed synchronization data in a message management service
US20060149828A1 (en) Method and system for conducting client-to-server or peer-to-peer or mixed mode data synchronization
CN109241033A (zh) 创建实时数据仓库的方法和装置
JP5561504B2 (ja) マルチメディアファイルの分散型ネットワークバックアップ
CN104094299B (zh) 从发布的日历检索可用性信息的方法和设备
CN102946407B (zh) 在重新连接时传递非预期协作服务器响应
US20050165888A1 (en) Peer-to-peer data binding
CN107220388A (zh) 一种上传文件的方法与装置
US10579265B2 (en) Cloud-synchronized local storage management
US9722961B2 (en) Transmission and presentation of private content in electronic messages
US10205768B2 (en) Facility for initiating automatic exchange of file(s) between mobile devices
JP2016518671A (ja) 最近の関連するコンテンツをユーザーに示すアクティビティのインターネットでアクセス可能なデータストレージビュー
CN102982438A (zh) 从多个联系人来构建人
US11189290B2 (en) Interactive selection and modification
US20230161789A1 (en) Realtime viewer in cloud storage environments
Ullah et al. Guidelines for Cloud Computing architecture: development process
WO2023163915A1 (en) Client-to-client message synchronization

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: 1172977

Country of ref document: HK

ASS Succession or assignment of patent right

Owner name: MICROSOFT TECHNOLOGY LICENSING LLC

Free format text: FORMER OWNER: MICROSOFT CORP.

Effective date: 20150728

C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20150728

Address after: Washington State

Applicant after: Micro soft technique license Co., Ltd

Address before: Washington State

Applicant before: Microsoft Corp.

GR01 Patent grant
GR01 Patent grant
REG Reference to a national code

Ref country code: HK

Ref legal event code: GR

Ref document number: 1172977

Country of ref document: HK

CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20170301

Termination date: 20190129

CF01 Termination of patent right due to non-payment of annual fee