买专利,只认龙图腾
首页 专利交易 科技果 科技人才 科技服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

【发明授权】通过多个邮箱在通信应用中进行海量数据管理的架构_微软技术许可有限责任公司_201680014731.9 

申请/专利权人:微软技术许可有限责任公司

申请日:2016-03-09

公开(公告)日:2021-04-13

公开(公告)号:CN107408239B

主分类号:G06Q10/10(20120101)

分类号:G06Q10/10(20120101);H04L12/58(20060101)

优先权:["20150309 US 62/130,475","20150611 US 14/737,458"]

专利状态码:有效-授权

法律状态:2021.04.13#授权;2017.12.22#实质审查的生效;2017.11.28#公开

摘要:描述了用于通过当原本的存档填满或者随后增加的存档邮箱填满时引入额外的存档邮箱来增加针对用户的数据限制的方法。因此,可以通过使用额外的存档邮箱来有效地移除用户的数据限制。在一些示例中,额外的邮箱可以被集成到通信应用的架构中,以使得通过使用针对序列化邮箱信息的所述通用存储的应用程序接口API,所述额外的邮箱的使用对通信应用或相关联的服务的用户和或管理员而言是透明的,所述API暴露单个多值强分类集合而不是处理多个属性并且每次需要添加新的类型时扩展所述方案。邮箱位置属性可以充当序列化邮箱位置的主存储,并且邮箱标识符属性可以用于进行索引。

主权项:1.一种在计算机设备上执行的方法,所述方法用于提供通过多个邮箱来进行通信应用中的海量数据管理的基础结构,所述方法包括:向存档存储和从存档取回与通信应用相关联的数据,其中,所述存档包括至少第一存档邮箱;以及响应于基于所述第一存档邮箱内存储的数据的量检测到所述第一存档邮箱的预先定义大小的阈值被达到:自动创建额外的存档邮箱以存储来自所述第一存档邮箱的过量数据;通过将所述额外的存档邮箱集成到所述存档以通过呈现给用户的单个邮箱来提供对存储在所述存档内的数据的访问,所述存档包括所述第一存档邮箱和所述额外的存档邮箱;以及通过所述单个邮箱来检测对存储在所述存档内的所述数据的部分的请求。

全文数据:通过多个邮箱在通信应用中进行海量数据管理的架构背景技术[0001]通信应用使得两个或更多个用户能够使用诸如电子邮件、文本消息传送、媒体交换、音频通信、视频通信、桌面共享、数据共享、应用共享等之类的多种通信模式来电子地进行通信。一些通信应用包括诸如日程安排、联系人列表管理、任务管理等之类的额外的功能。诸如电子邮件、所交换的文本消息、联系人、日历项目等之类的项目可以被保存在被称为邮箱的特殊的存储容器中。由于所使用的通信模式、所共享的数据的量、以及电子通信的扩展的增加,由通信应用所生成的数据可能快速地达到相当大的量。然而,由于涉及考虑、存储器限制、以及其他因素,邮箱通常限于预先定义的容量。[0002]例如,在一些电子邮件应用中,用户邮箱可能限于100或200GB。一些通信应用可以提供主要邮箱和在线存档邮箱,其中,可以将较旧的项目从主要邮箱中移动至在线存档邮箱。然而,存档邮箱通常具有与主要邮箱类似的大小限制。因此,用户生成大量的通信数据可能快速地达到限制从而降低他们的用户体验。传统的解决方案包括手动地或自动地将数据从通信应用中导出至其他数据存储例如,常规文件夹),但是这样的经导出的数据通常不容易对通信应用可用,这使得该类型的补救不能令用户满意。发明内容[0003]提供了该发明内容以用简化的形式引入在以下的具体实施方式中进一步描述的概念的选择。该发明内容不旨在标识所要求保护主题的关键特征或必要特征,也不旨在用于帮助确定所要求保护的主题的范围。[0004]实施例针对提供通过多个邮箱在通信应用中进行海量数据管理的基础结构。在一些示例中,可以针对与一个或多个额外的邮箱相关联的序列化邮箱信息而提供通用存储,其中,所述一个或多个额外的邮箱是在检测到达到与用户相关联的邮箱的预先定义的大小阈值时创建的。接着,可以通过使用针对序列化邮箱信息的通用存储的应用程序接口API、以对用户透明的方式、针对通信应用的一个或多个功能、在一个或多个额外的存档邮箱中使能对通信应用相关数据进行存储和取回。[0005]通过阅读以下详细描述并回顾附图,这些和其他特征和优点将是显而易见的。应当理解,前述简要说明和以下的详细描述两者仅仅是说明性的,而不限制所要求保护的方面。附图说明[0006]图IA到ID示出了通过多个邮箱在通信应用中进行海量数据管理的实现中的示例配置;[0007]图2示出了用于通过多个邮箱在通信应用中进行海量数据管理的实现的示例系统的层级;[0008]图3A和3B示出了对具有多个邮箱的通信系统的示例操作;[0009]图4是简化的网络化环境,其中实现根据实施例的系统;[0010]图5是示例计算设备的框图,所述示例计算设备可以用来实现用于通过多个邮箱在通信应用中进行海量数据管理的基础结构;并且[0011]图6示出了根据实施例的用于通过多个邮箱在通信应用中提供海量数据管理的方法的逻辑流程图。具体实施方式[0012]如在上文中简要描述的,可以通过在原本的存档填满或者随后增加的存档邮箱填满时引入额外的存档邮箱来增加针对用户的数据限制。因此,可以通过使用额外的存档邮箱来有效地移除用户的数据限制。可以将额外的邮箱集成到通信应用的架构中以使得通过使用应用程序接口(API,所述额外的邮箱的使用对通信应用或相关联的服务的用户和或管理员而言是透明的,其中,所述API暴露单个多值强分类集合而不是处理多个属性并且每次需要添加新的类型时扩展所述方案。邮箱位置属性可以充当序列化邮箱位置的主要存储并且邮箱标识符属性可以用于进行索引。[0013]在以下的详细描述中,对形成了其一部分并且其中作为说明而示出了具体的实施例或示例的附图进行了参考。可以组合这些方面、可以利用其他方面、并且可以进行结构改变而不脱离本公开的精神或范围。因此,以下的具体实施方式将不被看作是限制性意义,并且本发明的范围是由所附权利要求及其等同物所限定的。[0014]尽管将在结合在个人计算机上的操作系统上运行的应用程序而执行的程序模块的一般上下文中描述实施例,但本领域的技术人员将理解的是,也可以结合其他程序模块来实现这些方面。[0015]通常而言,程序模块包括例程、程序、组件、数据结构、以及执行特定的任务或实现特定的抽象数据类型的其他类型的结构。此外,本领域技术人员将理解的是,可以利用包括手持设备、多处理器系统、基于微处理器的或可编程的消费性电子产品、微型计算机、大型计算机、以及类似的计算设备在内的其他计算机系统配置来实践实施例。还可以在其中由通过通信网络所链接的远程处理设备来执行任务的分布式计算环境中实现实施例。在分布式计算环境中,程序模块既可以位于本地的存储器存储设备中,也可以位于远程的存储器存储设备中。[0016]可以将一些实施例实现为计算机实现的过程方法)、计算系统、或者诸如计算机程序产品或计算机可读介质之类的制品。计算机程序产品可以是这样一种计算机存储介质,其能够由计算机系统读取并且对包括用于使得计算机或计算机系统执行示例过程的指令的计算机程序进行编码。所述计算机可读存储介质是计算机可读存储器设备。计算机可读存储器设备可以例如是经由以下中的一个或多个来实现的:易失性计算机存储器、非易失性存储器、硬盘驱动器、闪速存储器、软盘、或者压缩盘、以及类似的硬件介质。[0017]在该说明书通篇中,术语“平台”可以是用于提供具有邮箱的通信应用或服务以存储数据的软件和硬件组件的组合。平台的示例包括但不限于:在多个服务器上执行的托管服务、在单个计算设备上执行的应用、以及类似的系统。术语“服务器”通常是指通常在网络化环境中执行一个或多个软件程序的计算设备。在下文中提供了关于这些技术和示例操作的更多的细节。[0018]如在本文中所使用的计算设备是指包括至少一个存储器和处理器的设备,所述设备包括台式计算机、膝上型计算机、平板计算机、智能电话、车载计算机、或者可穿戴计算机。[0019]图IA到ID示出了通过多个邮箱在通信应用中进行海量数据管理的实现中的示例配置。[0020]如在图IA中所示出的托管通信服务101可以在包括任何数量的服务器102和专用计算设备的一个或多个数据中心中执行,并且促进电子邮件交互、消息传送、在线会议音频通信、视频通信、数据共享、应用共享、桌面共享、以及类似的通信模式。通信服务101可以由多个租户(例如,租户1103、租户2105等通过一个或多个网络106来访问,并且通信服务可以由相应的租户的用户107和108来消费。可以使用如在本文中所讨论的邮箱来将与经促进的通信模式中的任何一个通信模式相关联的数据存储在数据存储104和或本地数据存储中。[0021]图IB示出了具体的实现示例,其中,通信服务在一个或多个服务102上被实现,并且促进诸如用户108之类的用户或订阅者之间通过一个或多个网络106的通信。通信服务可以通过诸如个体的客户端设备上的网络浏览器之类的瘦客户端来访问,或者通过诸如计算设备109上的邮件应用110之类的瘦客户端具有更多能力的本地安装的应用来访问。可以将与服务相关联的数据中的一些或全部数据存储在数据存储104和或客户端设备上的本地数据存储中。尽管邮件应用110在本文中被用作示例客户端应用,但实施例不限于电子邮件。[0022]根据实施例的通信服务可以通过将邮箱链接在一起来实现针对单个用户的“无限制的”存储。具有例如总共小于100GB的数据的普通用户可以仅仅具有一个主要邮箱112或者具有一个主要邮箱112和一个存档邮箱114。第一存档邮箱114可以被称为存档“层级”邮箱。然而,当用户超过预先定义的限制时,他们可以最终具有一个主要邮箱112、一个存档“层级”邮箱114、以及一个或多个存档“内容”邮箱116。[0023]尽管“存档”包括层级邮箱和内容邮箱,但对用户而言,它们可以表现为一个单个的邮箱。例如,用户可以看到两个节点:一个节点针对主要邮箱112而一个节点针对“存档”第一存档邮箱和额外的“内容”邮箱116。用户能够访问该用户所创建的所有文件夹以及该用户与诸如收件箱和已发送项目之类的系统文件夹一同导入的文件夹。[0024]当通信应用客户端从任何存档邮箱中的文件夹请求内容时,如果该内容在当前的存档邮箱中,则底层服务可以提供该内容。如果该内容不在所述邮箱中,则服务可以提供指向包含该内容的邮箱和文件夹的指针。允许客户端从合适的邮箱其可以与其他存档邮箱在不同的数据库服务器上直接地请求内容可以通过避免服务器端扇出调用来尊重砖块架构的原则。[0025]可以将完整的文件夹层级存储在存档“层级”邮箱和存档“内容”邮箱中。在一些情况下,存档层级邮箱可以具有文件夹层级的“可写的”最新副本。存档内容邮箱中的文件夹层级可以使用同步过程周期性地进行更新。当访问“存档”时,终端用户可以仅仅连接至存档层级邮箱。所有的文件夹内容请求可以从所述存档层级邮箱而被适当地重新引导。[0026]在图IB的示例配置中,将额外的邮箱116以对用户108透明的方式链接至第一存档邮箱114。然而,实施例不限于该示例配置。以下的图IC和ID示出了额外的配置。[0027]在图IC的示例配置中,邮件应用110被配置有高速缓存的)主要邮箱112以及直接地链接至主要邮箱112的额外的存档邮箱116。额外的存档邮箱116中的第一个可以被配置为包含如在上文中所描述的层级信息。[0028]自动划分或数据分区过程可以包括对基于邮箱大小、项目计数、和或摄入ingestion大小而即时地创建的分区进行链接。可以选择针对均勾分区的大小限制以确保最佳性能。可以使能自动大小平衡以及跨多个分区的搜索。此外,可以提供跨多个分区的基于文件夹的和基于其他元数据的视图。该系统可以智能地且安全地确定所请求的数据所驻留的分区。分区可以由摄入系统直接定向。该系统可以负责智能地分配数据以确保个体的分区限制得到尊重。分区对于合规管理过程可以是透明的。可以使能进行电子发现以从所述系统获得所有用户分区的知识从而安全地返回来自所拥有的所有分区的结果。挂起、记录管理、和类似的策略可以知晓用户的所有分区并且维护服务等级协定。[0029]在图ID的示例配置中,邮件应用110被配置有高速缓存的)主要邮箱112和存档邮箱114。在该情况下,将主要邮箱112和存档邮箱114与相应的额外的存档邮箱116和118相链接。因此,可以以对用户透明的方式在不同配置中执行额外的邮箱和分区。[0030]图2示出了通过多个邮箱来实现海量数据管理的示例系统的多个层。[0031]物理层206可以包括物理地存储如在本文中所讨论的划分并包含在邮箱中的数据的数据存储本地的或在线的)。物理层206还可以包括执行客户端应用的计算设备、执行底层通信服务的服务器等。[0032]抽象层204可以包括存储邮箱信息的数据库,并且允许用于针对给定的目录对象例如,分组邮箱而请求具有任何给定类型的邮箱位置的通用方式。抽象层可以使能对邮箱进行维护和平衡,并且允许在不考虑邮箱类型的情况下管理邮箱位置的通用方式。例如,可以对满足特定标准的所有邮箱进行负载平衡而不考虑它们的性质以及用于将该位置存储在目录条目上的属性。[0033]托管服务管理层202可以提供针对通信服务的各种方面的管理功能,包括当现有的邮箱达到预先定义的阈值时增加邮箱。[0034]图3A和3B示出了具有多个邮箱的通信系统上的示例操作。[0035]如先前所讨论的,可以以对用户透明的方式来实现额外的(或扩展)邮箱,其中诸如文件夹之类的项目可以被存储在各种邮箱中,其中指向其他邮箱中的那些项目的指针位于主要邮箱或第一存档邮箱中。因此,用户可以点击在不同邮箱中存在的文件夹,并且打开该文件夹并查看其内容而没有明显差异。[0036]在图3A的示例配置中,用户可以具有第一存档邮箱310和两个额外的存档邮箱320、330。当计算设备304上的客户端应用从任何存档邮箱中的文件夹请求内容时,如果该内容在第一存档邮箱310中,则通信服务可以提供该内容,如在针对文件夹312的图中由客户端-服务器交互1和2所示出的那样。如果内容不在第一存档文件夹中(例如,在“幽灵”文件夹314中),则通信服务可以提供指向包含该内容的邮箱额外的存档邮箱320和文件夹324的指针,如由客户端-服务器交互3、4、5、和6所示出的那样。具有内容的文件夹可以在任何邮箱中,例如额外的存档邮箱330中的文件夹336。可以出于冗余和效率的目的在其他邮箱中创建实际内容文件夹的幽灵版本。[0037]当存档层级内容邮箱中的任何一个达到邮箱配额时,该邮箱中的文件夹中的一个或几个文件夹就可以通过“自动划分”过程而被移动至其他存档“内容”邮箱,由此释放空间以供增长。在一些实现中,自动划分阈值可以处于租户等级。[0038]图3B示出了示例自动划分过程,其中,用户的两个存档邮箱302和310分别具有一开始为45GB和IOGB的文件夹分配。例如,假定针对该用户的个体存档邮箱的配额是50GB,则所述自动划分过程可以将市场文件夹304从第一存档邮箱302移动至第二存档邮箱310,以留下销售文件306和财务文件308在第一存档邮箱302中,而市场文件夹304和HR文件夹312在第二存档文件夹310中。因此,新的分配可以是在分别的存档邮箱中是25GB和30GB以提供负载平衡的文件夹存储。[0039]根据实施例的系统可以暴露单个多值强分类集合(例如,所谓的MailboxLocations邮箱位置),而不是处理多个属性并且每次需要添加新的类型时扩展所述方案)。以下是可以在API中使用的主接口的示例:[0040][0041]以下是可以或可以不包括在邮箱位置信息接口中的邮箱类型定义的示例。[0048]以下是主集合类的示例定义:[0049][0050][0051]所述集合可以被建立在现有的多值属性类之上以对改变追踪进行利用,但是不允许调用者直接地绕开验证来添加移除实体。在一些示例中,MailboxLocationsADPropertyDefinition可以在所有接受者类上可用。[0052]在一些实施例中,使用GUID的调用能够定位具有任何类型的邮箱。StoreMailboxLocation抽象可以将邮箱维护和负载平衡简化。该抽象可以实现IMaiIboxLocationInfo接口并且还可以经由命令集和移动请求针对文件夹和邮箱)中的Id持久性来进行可能的管理。示例StoreMaiIboxLocation对象可以看起来如:[0053][0054]GetOwner可以获得该特定邮箱相关联的用户分组与任何其他目录实体。StoreMaiIboxId可以针对搜索和其他操作而识别特定的邮箱。为了取回和提交,可以使用以下的示例内部接口:[0055][0056][0057]“Save”和FindStoreMaiIboxLocationById可以是IRecipientSession接口的一部分以使得它们可用于TenantRecipientSession和ADOrganizationRecipientSession.Save方法可以采用StoreMailboxLocation并且在拥有邮箱的目录服务用户(ADUser上更新DatabaseLocationaFindStoreMaiIboxLocationById可以在已知StoreMaiIBoxId租户分区提示和邮箱⑶ID的情况下取回邮箱信息。StoreMaiIboxIdParameter可以允许命令集发现针对特定的目录服务用户的MaiIboxLocation。在一些不例中,StoreMailboxIdParamter可以将RecipientIdParameter作为输入来接受并且可以返回关于主要邮箱信息的信息。在其他不例中,所有MaiIboxLocationType可以附加至RecipientI!Parameter,并且针对用户可以具有其类型的多个邮箱的邮箱类型,命令集可以返回关于其全部的StoreLocationMaiIbox信息。[0058]如在上文中所提及的,可以提供针对邮箱位置信息的通用存储而不是针对每种新类型的邮箱而增加新的属性。因为数据库指针是软链接,因此可以不需要使用分别的区分名称对象链接属性。因此,针对给定邮箱的有关邮箱的信息可以使用以下的分号分隔格式来与单个字符串结合:[0059]{MaiIboxGuid;MailboxType;DatabaseForestFqdn;DatabaseObjectGuid}[0060]可以使用两个额外的目录服务属性,一个针对邮箱位置,另一个针对邮箱GUID。第一属性可以是如在上文中所描述的序列化邮箱的主存储。其可以不是字符串类型,这是因为多值属性作为整体复制并且多个值的同时改变可能会引起数据丢失。因此,可以使用其中每个值独立地复制的链接。邮箱位置属性还可以承担包括序列化邮箱位置字符串的一些二进制有效负载例如,每个值一个邮箱位置)。所得出的邮箱属性的值可以不是可索引的,但是可以是多值字符串的邮箱GUID属性可以用于索引邮箱GUID。每当条目被添加至邮箱位置属性或者从邮箱位置属性移除条目时,邮箱GUID属性可以被更新,并且可以在邮箱移动期间不被修改,因此极大地降低了数据丢失的可能性。为了缓解潜在的数据丢失,可以使用对象等级的验证,其可以在每个对象读上进行。[0061]当文件夹被移动时,通信应用能够简单地更新视图并且在可接受的量的时间内在目标文件夹下示出经移动的文件夹及其成分。多个文件夹选择是可能的并且可以支持多个文件夹的移动操作。如果用户尝试移动少量的项目大小较小的项目,则通过客户端的跨服务器操作可能不是快速的。在这样的场景下,可以向用户显示消息以让他们知道操作已经排队并且可以在特定的时间内完成取决于所移动的项目的大小、对邮箱的其他操作、存储健康、网络健康等)。在操作排队期间,如果用户对源列表进行改变例如添加项目或删除项目),则所述改变可以被忽略、阻止、或考虑。一旦移动被排队,则对同一组项目项目的子集的另一移动复制就可能失败,其中向用户指示不同的移动的消息已经排队并且它们必须等待直到其完成为止。[0062]复制操作可以类似于如在上文中所描述的移动操作那样被对待。当创建新的文件夹时,视图可以被更新以反映该新的文件夹,所述新的文件夹可以继承母文件夹的许可。新的文件夹的创建可以通过层级更新操作来执行。[0063]经删除的项目可以被移动至指定的删除项目容器,所述经删除的项目能够从所述容器中被恢复。如果项目从删除项目容器中被恢复,则它们可以移动回它们的原本的位置文件夹)。[0064]利用具体的组件、数据类型、和配置示出了图IA至图3中的示例场景和方案。实施例不限于根据这些示例配置的系统。通过多个邮箱在通信应用中提供海量数据管理可以以在应用和用户界面中采用较少或额外组件的配置来实现。此外,在图IA至图3中所示出的示例方案和组件以及它们的子组件可以使用在本文中所描述原理利用其他值以类似的方式来实现。[0065]通过多个邮箱在通信应用中提供海量数据管理的技术优势可以包括通过允许在无需访问数据的额外步骤的情况下对大量及多种通信相关数据进行管理而增加的网络使用中的效率、降低的处理器使用(降低了访问导出的数据的需求)、改进的用户效率、以及高进的用户交互性能。[0066]图4是其中可以实现根据实施例的系统的示例网络化环境。被配置为以对用户透明的方式通过使用多个邮箱来管理大量数据的通信应用或服务可以经由在一个或多个服务器406上执行的软件例如,托管服务来实现。所述平台可以通过网络410与诸如智能电话413、移动计算机412、或台式计算机411“客户端设备”)之类的个体计算设备上的客户端应用进行通信。[0067]在客户端设备411-413中的任何一个客户端设备上执行的客户端应用可以促进经由由服务器406所执行或者在个体服务器404上执行的应用的通信。所述通信应用或服务可以配置所需要的数量的存档邮箱。额外的邮箱可以被集成到通信应用的架构中,以使得所述额外的邮箱的使用对于通信应用或相关联的服务的用户和或管理员而言是透明的。通信应用或服务可以直接地或通过数据服务器402将项目存储在数据存储408中。[0068]网络410可以包括服务器、客户端、互联网服务提供商、和通信介质的任何拓扑。根据实施例的系统可以具有静态或动态拓扑。网络410可以包括诸如企业网络之类的安全网络、诸如无线开放网络之类的非安全网络、或者互联网。网络410还可以对通过诸如公共交换电话网络PSTN或蜂窝网络之类的其他网络的通信进行协调。此外,网络410可以包括短程无线网络,例如蓝牙等。网络410在本文中所描述的节点之间提供通信。作为示例而非限制,网络410可以包括诸如声音、RF、红外、和其他无线介质之类的无线介质。[0069]可以采用计算设备、应用、数据源、和数据分布系统的许多其他配置来以对用户透明的方式通过使用多个邮箱而在通信应用中提供对大量数据的管理。此外,在图4中所讨论的联网环境仅仅是出于说明的目的。实施例不限于示例应用、模块、或过程。[0070]图5是示例计算设备的框图,其可以用于通过多个邮箱实现通信应用中的海量数据管理。[0071]例如,计算设备500可以用作服务器、台式机计算机、便携式计算机、智能电话、专用计算机、或类似的设备。在示例基本配置502中,计算设备500可以包括一个或多个处理器504和系统存储器506。存储器总线508可用于在处理器504与系统存储器506之间进行通信。在图5中由内部虚线内的那些组件示出了基本配置502。[0072]根据期望的配置,处理器504可以具有任何类型,包括但不限于:微处理器μΡ、微控制器OiC、数字信号处理器DSP、或其任何组合。处理器504可以包括一个以上层级的高速缓存,例如层级高速缓存存储器512、一个或多个处理器核心514、和寄存器516。示例处理器核心514可以每个包括算术逻辑单元ALU、浮点单元FPU、数字信号处理核心DSP核心)、或其任何组合。示例存储器控制器518还可以与处理器504—起使用,或者在一些实现中,存储器控制器518可以是处理器504的内部部件。[0073]根据期望的配置,系统存储器506可以具有任何类型,包括但不限于:易失性存储器例如,RAM、非易失性存储器例如,R0M、闪速存储器等)、或其任何组合。系统存储器506可以包括操作系统520、通信服务应用522、和程序数据524。通信服务应用522可以包括用于以多种模式促成用户之间的通信的通信模块525,以及用于通过当原本的存档填满或者随后增加的存档邮箱填满时引入额外的存档邮箱来增加针对用户的数据限制的邮箱管理模块526。额外的邮箱可以被集成到通信应用的架构中以使得它们的使用对通信应用服务522的用户和或管理员是透明的。邮箱管理模块526可以被称为数据管理应用。程序数据524可以包括可以用于促进如在本文中所描述的通信的邮箱数据528及其他数据。[0074]计算设备500可以具有额外的特征或功能,以及用于促进基本配置502与任何所期望设备和接口之间的通信的额外的接口。例如,总线接口控制器530可以用于促进基本配置502与一个或多个数据存储设备532之间经由存储接口总线534的通信。数据存储设备532可以是一个或多个可移动存储设备536、一个或多个不可移动存储设备538、或其组合。可移动存储设备和不可移动存储设备的示例可以包括:磁盘设备例如,软盘驱动器和硬盘驱动器HDD、光盘驱动器例如,压缩盘CD驱动器或数字通用盘DVD驱动器)、固态驱动器SSD、以及磁带驱动器等。示例计算机存储介质可以包括以用于存储诸如计算机可读指令、数据结构、程序模块、或其他数据之类的信息的任何方法或技术来实现的易失性和非易失性、可移动和不可移动介质。[0075]系统存储器506、可移动存储设备536、和不可移动存储设备538可以是计算机存储介质的示例。计算机存储介质可以包括但不限于:RAM、ROM、EEPROM、闪速存储器或其他存储器技术、CD-ROM、数字通用盘DVD、固态驱动器、或其他光存储、盒式磁带、磁带、磁盘存储设备或其他磁存储设备、或者可用于存储期望的信息并且可以由计算设备500来访问的任何其他介质。任何这样的计算机存储介质可以是计算设备500的一部分。[0076]计算设备500还可以包括用于促进经由总线接口控制器530从各种接口设备(例如,一个或多个输出设备542、一个或多个外围接口544、以及一个或多个通信设备546到基本配置502的通信的接口总线540。示例输出设备542中的一些输出设备可以包括图形处理单元548和音频处理单元550,它们可以被配置为经由一个或多个AV端口552而与诸如显示器或扬声器之类的各种外部设备进行通信。一个或多个示例外围接口544可以包括串行接口控制器554或并行接口控制器556,它们可以被配置为经由一个或多个IO端口558而与诸如输入设备例如,键盘,鼠标、笔、语音输入设备、触摸输入设备等或其他外围设备例如,打印机、扫描仪等之类的外围设备进行通信。示例通信设备546可以包括网络控制器560,其可以被布置为促进经由一个或多个通信端口564在网络通信链路上与一个或多个其他计算设备562的通信。一个或多个其他计算设备562可以包括服务器、计算设备、和类似设备。[0077]网络通信链路可以是通信介质的一个示例。通信介质通常可以由计算机可读指令、数据结构、程序模块、或经调制的数据信号例如载波或其他传输机制)中的其他数据来实施,并且可以包括任何信息传递介质。“经调制的数据信号”可以是具有经调制的数据信号的特征集合中的一个或多个特征的信号,或者以关于将信息在信号中进行编码的方式而改变。作为示例而非限制,通信介质可以包括有线介质例如,有线网络或直接有线连接和无线介质例如,声学、射频RF、微波、红外(IR和其他无线介质)。如在本文中所使用的术语计算机可读介质可以包括存储介质和通信介质两者。[0078]还可以将计算设备500实现为包括以上功能中的任何一种功能的通用或专用服务器、大型计算机、或类似的计算机的一部分。还可以将计算设备500实现为个人计算机,其包括膝上型计算机和非膝上型计算机配置两者。[0079]示例实施例还可以包括用于以对用户透明的方式通过多个邮箱在通信应用中提供海量数据管理的基础结构的方法。这些方法可以以包括在本文中所描述的结构在内的任何数量的方式来实现。一种这样的方式可以是通过在本公开中所描述类型的设备的机器操作。另一种可选的方式可以是针对结合执行一些操作的一个或多个人类操作者而将被执行的方法的独立操作中的一个或多个操作。这些人类操作者无需彼此处于同一位置,但每个操作者可以与执行程序的一部分的机器在一起。在其他示例中,人类交互可以例如通过可以是机器自动化的预先选择的标准而是自动化的。[0080]图6示出了根据实施例的用于通过多个邮箱在通信应用中提供海量数据管理的方法的逻辑流程图。过程600可以在诸如计算设备500或其他系统之类的计算设备上实现。[0081]过程600开始于操作610,其中,可以提供针对与一个或多个额外的邮箱相关联的序列化邮箱信息的一般存储。可以在检测到达到与用户相关联的邮箱的预先定义大小的阈值时创建一个或多个额外的邮箱。[0082]在操作620处,可以通过使用针对序列化邮箱信息的通用存储的API以对用户透明的方式在一个或多个额外的存档邮箱中使能对通信应用相关数据进行存储和取回,以用于通信应用的一个或多个功能。[0083]在过程600中所包括的操作是出于说明目的的。在计算设备上执行来以对用户透明的方式通过对多个邮箱的使用在通信应用中对海量数据进行管理的基础结构可以通过具有较少或额外的步骤的过程来实现,以及使用在本文中所描述的原理而以不同的操作顺序来实现。[0084]根据一些示例,描述了一种在计算机设备上执行以提供通过多个邮箱来进行海量数据管理的基础结构的方法。所述方法可以包括:提供与一个或多个额外的邮箱相关联的针对序列化邮箱信息的通用存储,其中,所述一个或多个额外的邮箱是在检测到达到与用户相关联的邮箱的预先定义大小的阈值时创建的;以及通过使用针对序列化邮箱信息的所述通用存储的应用程序接口(API而以对所述用户透明的方式使能在所述一个或多个额外的存档邮箱中存储和取回通信应用相关数据,以用于所述通信应用的一个或多个功能。[0085]根据其他示例,所述方法还可以包括暴露单个多值强分类集合以通过所述API来访问所述一个或多个额外的存档邮箱。所述单个多值强分类集合可以包括邮箱标识符属性、数据库位置属性、以及邮箱位置类型属性。所述方法还可以包括使得使用所述邮箱标识符属性的调用能够定位具有任何类型的邮箱和或将邮箱位置属性采用为序列化邮箱位置的主存储,其中,所述邮箱位置属性具有包括链接的值。所述邮箱位置属性还可以包括具有序列化邮箱位置字符串的二进制有效负载。[0086]根据进一步的示例,所述方法还可以包括采用所述邮箱标识符属性以用于索引,其中,所述邮箱标识符属性是多值字符串。所述方法还可以包括响应于向所述邮箱位置属性添加条目或者从所述邮箱位置属性移除条目而更新所述邮箱标识符属性,并且防止所述邮箱标识符属性在邮箱移动期间被修改以降低数据丢失的可能性。所述方法还可以包括采用对象等级验证来缓解所述数据丢失。[0087]根据其他示例,描述了一种计算机设备,其用于提供通过多个邮箱在通信应用中进行海量数据管理的基础结构。所述计算设备可以包括:存储器,其被配置为存储与所述通信服务相关联的指令;以及一个或多个处理器,其被配置为结合在所述存储器中存储的所述指令来执行与所述通信服务相关联的一个或多个应用。所述一个或多个应用可以包括:通信应用,其被配置为促进在用户之间以多个模式的通信的交换;以及数据管理应用,其被配置为通过与所述用户和用户分组相关联的邮箱来管理通信应用相关数据。所述数据管理应用还可以被配置为:提供与一个或多个额外的邮箱相关联的针对序列化邮箱信息的通用存储,其中,所述一个或多个额外的邮箱是在检测到达到与用户相关联的邮箱的预先定义大小的阈值时创建的;以及通过暴露单个多值强分类集合以访问所述一个或多个额外的存档邮箱的应用程序接口(API而以对所述用户透明的方式使能在所述一个或多个额外的存档邮箱中存储和取回通信应用相关数据,以用于所述通信应用的一个或多个功能。[0088]根据一些示例,所述数据管理应用还可以被配置为使能使用命令集来发现针对特定的目录服务用户的邮箱位置;使能使用命令集以通过将多个邮箱位置类型属性附加至搜索参数来发现与多个邮箱相关联的用户的多个邮箱位置;和或将邮箱位置属性采用为序列化邮箱位置的主存储,其中,所述邮箱位置属性具有包括链接的值以及具有序列化邮箱位置字符串的二进制有效负载。[0089]根据其他示例,所述数据管理应用还可以被配置为采用所述邮箱标识符属性以用于索引,其中,所述邮箱标识符属性是多值字符串,并且所述邮箱标识符属性是响应于向所述邮箱位置属性添加条目或者从所述邮箱位置属性移除条目而更新的;以及在抽象层处创建、修改、并且保持与单个多值强分类集合相关联的对象。所述通信应用相关数据可以包括以下中的一个或多个:电子邮件、日历项目、附件、任务、联系人卡片、在线会议记录、音频通信记录、视频通信记录、以及文本消息。所述多个模式可以包括以下中的一个或多个:电子邮件交换、消息传送交换、在线会议、音频通信、视频通信、数据共享会话、应用共享会话、以及桌面共享会话。[0090]根据进一步的示例,描述了一种具有存储在其上的指令的计算机可读存储器设备,其用于提供通过多个邮箱在通信应用中进行海量数据管理的基础结构。所述指令可以包括:提供与一个或多个额外的邮箱相关联的针对序列化邮箱信息的通用存储,其中,所述一个或多个额外的邮箱是在检测到达到与用户相关联的邮箱的预先定义大小的阈值时创建的;以及通过暴露单个多值强分类集合以通过应用程序接口(API访问所述一个或多个额外的存档邮箱的所述API而以对所述用户透明的方式使能在所述一个或多个额外的存档邮箱中存储和取回通信应用相关数据,以用于所述通信应用的一个或多个功能,其中,所述单个多值强分类集合包括邮箱标识符属性、数据库位置属性、以及邮箱位置类型属性。[0091]根据一些示例,所述指令还可以包括:在主存档邮箱中创建针对在所述一个或多个额外的存档邮箱中存储的文件夹的指针;以及将访问在所述一个或多个额外的存档邮箱中存储的所述文件夹中的内容的调用重新引导至所述一个或多个额外的存档邮箱中的相应的邮箱;和或与针对每个邮箱的指定存储配额相关地自动地将可用的存档邮箱中的文件夹移动至负载平衡存储的数据。[0092]以上的说明书、示例、和数据提供对实施例的组成的制造和使用的完整描述。尽管已经用特定于结构特性和或方法动作的语言描述了本主题,但应当理解的是,在所附权利要求中定义的主题不一定限于在上文中所描述的具体特征或动作。相反,在上文中所描述的具体特性和动作是作为实现权利要求和实施例的示例形式而公开的。

权利要求:1.一种在计算机设备上执行的方法,所述方法用于提供通过多个邮箱来进行通信应用中的海量数据管理的基础结构,所述方法包括:提供与一个或多个额外的邮箱相关联的针对序列化邮箱信息的通用存储,其中,所述一个或多个额外的邮箱是在检测到达到与用户相关联的邮箱的预先定义大小的阈值时创建的;以及通过使用针对序列化邮箱信息的所述通用存储的应用程序接口(API而以对所述用户透明的方式使能在所述一个或多个额外的存档邮箱中存储和取回通信应用相关数据,以用于所述通信应用的一个或多个功能。2.根据权利要求1所述的方法,还包括:暴露单个多值强分类集合以通过所述API来访问所述一个或多个额外的存档邮箱。3.根据权利要求2所述的方法,其中,所述单个多值强分类集合包括邮箱标识符属性、数据库位置属性、以及邮箱位置类型属性。4.根据权利要求3所述的方法,还包括:将邮箱位置属性作为序列化邮箱位置的主存储来采用,其中,所述邮箱位置属性具有包括链接的值。5.—种计算机设备,其用于提供通过多个邮箱在通信应用中进行海量数据管理的基础结构,所述计算设备包括:存储器,其被配置为存储与所述通信服务相关联的指令;以及一个或多个处理器,其被配置为结合在所述存储器中存储的所述指令来执行与所述通信服务相关联的一个或多个应用,其中,所述一个或多个应用包括:通信应用,其被配置为促进在用户之间以多个模式的通信的交换;以及数据管理应用,其被配置为通过与所述用户和用户分组相关联的邮箱来管理通信应用相关数据,其中,所述数据管理应用还被配置为:提供与一个或多个额外的邮箱相关联的针对序列化邮箱信息的通用存储,其中,所述一个或多个额外的邮箱是在检测到达到与用户相关联的邮箱的预先定义大小的阈值时创建的;以及通过暴露单个多值强分类集合以访问所述一个或多个额外的存档邮箱的应用程序接口(API而以对所述用户透明的方式使能在所述一个或多个额外的存档邮箱中存储和取回通信应用相关数据,以用于所述通信应用的一个或多个功能。6.根据权利要求5所述的计算设备,其中,所述数据管理应用还被配置为:使能使用命令集以通过将多个邮箱位置类型属性附加至搜索参数来发现与多个邮箱相关联的用户的多个邮箱位置。7.根据权利要求5所述的计算设备,其中,所述数据管理应用还被配置为:采用邮箱位置属性作为序列化邮箱位置的主存储,其中,所述邮箱位置属性具有包括链接的值以及具有序列化邮箱位置字符串的二进制有效负载。8.根据权利要求5所述的计算设备,其中,所述数据管理应用还被配置为:在抽象层处创建、修改、并且保持与单个多值强分类集合相关联的对象。9.根据权利要求5所述的计算设备,其中,所述通信应用相关数据包括以下中的一个或多个:电子邮件、日历项目、附件、任务、联系人卡片、在线会议记录、音频通信记录、视频通信记录、以及文本消息。10.—种具有存储在其上的指令的计算机可读存储器设备,其用于提供通过多个邮箱在通信应用中进行海量数据管理的基础结构,所述指令包括:提供与一个或多个额外的邮箱相关联的针对序列化邮箱信息的通用存储,其中,所述一个或多个额外的邮箱是在检测到达到与用户相关联的邮箱的预先定义大小的阈值时创建的;以及通过暴露单个多值强分类集合以通过应用程序接口(API访问所述一个或多个额外的存档邮箱来使用所述API以对所述用户透明的方式使能在所述一个或多个额外的存档邮箱中存储和取回通信应用相关数据,以用于所述通信应用的一个或多个功能,其中,所述单个多值强分类集合包括邮箱标识符属性、数据库位置属性、以及邮箱位置类型属性。11.根据权利要求10所述的计算机可读存储器设备,其中,所述指令还包括:在主存档邮箱中创建针对在所述一个或多个额外的存档邮箱中存储的文件夹的指针;以及将访问在所述一个或多个额外的存档邮箱中存储的所述文件夹中的内容的调用重新引导至所述一个或多个额外的存档邮箱中的相应的邮箱。

百度查询: 微软技术许可有限责任公司 通过多个邮箱在通信应用中进行海量数据管理的架构

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。