CN110192190A - 划分存储 - Google Patents
划分存储 Download PDFInfo
- Publication number
- CN110192190A CN110192190A CN201880007491.9A CN201880007491A CN110192190A CN 110192190 A CN110192190 A CN 110192190A CN 201880007491 A CN201880007491 A CN 201880007491A CN 110192190 A CN110192190 A CN 110192190A
- Authority
- CN
- China
- Prior art keywords
- party
- resource
- storage region
- master instance
- user
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
- G06F16/273—Asynchronous replication or reconciliation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/12—Discovery or management of network topologies
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/04—Real-time or near real-time messaging, e.g. instant messaging [IM]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/21—Monitoring or handling of messages
- H04L51/216—Handling conversation history, e.g. grouping of messages in sessions or threads
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/2866—Architectures; Arrangements
- H04L67/30—Profiles
- H04L67/306—User profiles
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
一种服务器系统,包括用于包括第一方和第二方的多个相应方中的每一方的物理上分离的存储区域,以及用于管理存储的管理器功能单元。例如,存储区域中的一些存储区域可以在不同的服务器单元中,也可以位于不同的地理位置。这些存储区域中的至少一些存储区域中的每一个存储区域存储相应方的一个或多个数据资源的主实例。管理器功能单元被配置为:响应于第二方与第一方的所述资源中的一个资源形成关系,在第二方的相应存储区域中建立第一方的所述资源中的所述一个资源的辅助副本。此外,当主实例通过更改进行更新时,管理器功能单元将主副本中的更改传播到第二方的存储区域中的辅助副本。
Description
背景技术
随着全球用户和应用程序数量的增长,越来越需要越来越多的数据存储来存储各种各样的资源。例如,这些资源可以包括:诸如电子表格、文字处理文档、幻灯片演示、图像、视频等等之类的文件;诸如电子邮件、IM聊天记录等等之类的存储的通信历史记录;诸如联系方式、社交媒体简档等等之类的用户个人资料信息;和/或诸如网站、文档共享站点等等之类的站点。这些资源可以源自于安装在用户终端上和/或在线托管的各种应用程序,比如文字处理应用程序、电子表格应用程序、社交媒体应用程序、文件共享应用程序等等。
在线存储越来越流行。使用在线存储,可以将资源在线地存储在“云”上,这意味着将资源存储在可通过互联网访问的服务器系统上,该服务器系统通常包括在一个以上数据中心和/或地理位置中实现的多个服务器单元。用于通过诸如互联网之类的网络进行分布式存储和处理的技术在本领域中是公知的。
众所周知,用户可以将他们自己的资源提供给其他用户,例如同一组织(例如,公司)内的用户。例如,这可以允许一个或多个其他用户查看资源、订阅资源更新、或者甚至修改资源。
发明内容
但是,现有系统不能很好地进行扩展。在传统系统中,在与拥有给定资源(例如,文件、站点等)的用户相关联的单个存储位置中,存储该资源的单个主副本。如果该资源可供一个或多个其他用户查看、修改等等,则所有用户访问相同的集中式主副本。为了扩展这样的系统以使资源可用于更多的用户,必须升级存储资源的服务器单元的处理资源,例如通过升级CPU或添加更多RAM。
另一方面,在本公开内容中,当第一用户的资源(例如,文件等)可用于第二其他用户时,将该资源复制到第二用户的存储位置(或者更一般地,这可以应用于第一方和第二方的存储区域,其中每一方可以是个人用户或一组用户,比如组织内的一个团队)。
因此,根据本文所公开的一个方面,提供了一种服务器系统,该服务器系统包括用于包括第一方和第二方的多个相应方中的每一方的物理上分离的存储区域,该服务器系统还包括用于管理存储的管理器功能单元。例如,存储区域中的一些存储区域(例如,第一方和第二方的存储区域)可以在具有单独壳体或者甚至在不同地理位置的单独服务器单元中实现。这些存储区域中的至少一些存储区域中的每一个存储区域存储相应方的一个或多个数据资源的主实例。管理器功能单元被配置为:响应于第二方与第一方的所述资源中的一个资源形成关系,在第二方的相应存储区域中建立第一方的所述资源中的所述一个资源的辅助副本。此外,当主实例通过更改进行更新时,管理器功能单元将主副本中的更改传播到第二方的存储区域中的辅助副本。
通过在第二用户的存储位置中复制第一用户的资源,这意味着为了扩展系统,只需要增加更多的具有传统处理能力的服务器单元,而不需要升级给定单元的处理能力。因此,所公开的系统有利地平衡了增加的冗余度以提高可扩展性。
提供本概括部分以便用简化的形式介绍将在以下的详细描述中进一步描述的概念选择。本概括部分并不是旨在标识本发明的关键特征或本质特征,也不是用于限制本发明的保护范围。也不是将本发明限制于解决本文所陈述的缺点中的任何一个或全部的实施方式。
附图说明
为了有助于本公开内容的理解以及说明实施例如何付诸于实施,通过示例的方式来参考附图,其中:
图1是存储系统的示意性框图,
图2是存储系统的逻辑和物理模型的示意性视图,
图3是用户和资源之间的示例性关系的示意性视图,
图4示意性地示出了用户和资源之间的关系的图,以及
图5示意性地示出了对图4的图的划分。
具体实施方式
图1示出了根据本公开内容的实施例的服务器系统。该服务器系统包括多个服务器单元104,每个服务器单元104例如是服务器机架上的不同模块(单独的外壳),或者位于不同的房间或数据中心。服务器单元104中的一些或全部甚至可以位于不同的地理位置,其包括位于不同城镇、城市、县、州、国家甚至大陆的可能性。每个服务器单元包括由一个或多个存储器设备形成的相应存储器105,这些存储器设备可以包括例如一个或多个磁存储器设备(例如,一个或多个硬盘驱动器)和/或一个或多个电子存储器设备(例如,一个或多个固态驱动器(SSD))、或者任何这种存储器设备的组合。通过示例的方式,在图1中仅示出了三个服务器单元104i、104ii、104iii和它们各自的存储器105i、105ii、105iii,但是应当理解,实际上可以在系统中包括更多的存储器。
服务器单元104通过适当的分组交换网络101(例如,诸如通常称为互联网的广域互联网络或者专用内联网)联网在一起。网络可以通过任何适当的有线和/或无线通信介质或媒体(例如,互联网的有线基础设施、和/或诸如无线蜂窝网络、无线局域网等等之类的一个或多个无线网络)来实现。通过实现的任何方式,网络101使服务器单元104能够一起操作以经由网络101向用户103提供可从其各自的用户终端102访问的分布式存储系统。每个用户终端102可以采用任何适合于经由有线或无线连接来访问网络101的形式,例如,桌面型计算机、膝上型计算机、平板设备、智能手机、智能手表或一副智能眼镜(不同的用户终端并不必采用相同的形式)。在图1中以举例说明的方式示出了两个特定用户103a(第一用户,Alice)和103b(第二用户,Bob)和它们各自的用户终端102a、102b,但是应当理解,该系统可以服务于许多用户103,这些用户103从许多相应的用户终端102访问系统。
举例而言,服务器系统可以被布置为向作为系统提供者的客户或“租户”的多个组织提供存储服务。
还参考图4,服务器系统存储数据资源201,其中每个数据资源可以包括数字信息的任何项或集合(例如,文件、存储的通信、用户简档信息或某种类型的站点)。文件的例子包括文字处理文档、电子表格、幻灯片、图像、视频等等。存储的通信的例子包括电子邮件或IM(即时消息)聊天历史记录。用户简档信息的例子包括联系人详细信息(例如,“联系人卡片”)和社交媒体简档。站点的例子包括文档共享站点、网站和协作站点。在本文引用资源的任何地方,这可以指代任何上述资源或其它资源(并且不同的资源不需要全部具有相同的类型)。
服务器单元104的存储器105存储各种用户103的资源201(例如,文件、电子邮件等),其中用户可以使这些存储的资源可用于组织内的其他用户以使他们能够执行某种动作或某些动作,例如查看或修改他们有权访问的资源。在用户访问某个资源的情况下,可以将用户描述为与该资源具有关系,其中该关系可以根据允许用户执行什么动作(例如,查看、修改)和/或用户与资源联系的方式(例如,与用户共享、用户周围的趋势等等)来限定。服务器系统维护组织中用户和资源之间的所有关系的图。该图还记录了关系的质量,即用户与资源相关的方式(由用户查看、由用户修改、与用户共享、在用户周围的趋势等等)。
该图由管理器功能单元106来维护。根据本文所公开的实施例,管理器功能单元106以分布式功能的形式实现,即,管理器功能单元106i、106ii、106iii的相应实例运行在服务器单元104i、104ii、104iii中的每一个之上。管理器功能单元106的每个实例采用存储在相应服务器单元104的存储器105的一部分上的软件的形式,并且被布置为在相应服务器单元104的相应处理装置(没有示出)上运行(该处理装置包括一个或多个微处理器,每个微处理器具有一个或多个核)。另外,还应当注意,不排除集中式管理器功能单元的可能性。
在图3中,示意性地示出了图关系的一些例子。图3中的顶部图示出了基本关系的例子,其中基本关系是从一个对象到另一个对象的直接导航。也就是说,该关系定义了用户103如何与所讨论的资源201相关,例如用户103已经相对于资源201执行的动作(例如,该资源最后被该用户修改的事实)和/或用户103与资源201联系的方式(例如,另一个用户与该用户共享)。这种关系的另一个例子是用户103订阅了给定资源201的时间。在这种情况下,用户103向管理器功能单元106进行注册,以每当指定资源201被另一个用户更新时接收通知,并且管理器功能单元106在发生这种更新时自动提供通知。
图3中的中间图示出了丰富关系的例子。丰富的关系是通过元数据补充的关系,其可以连接到一个或多个对象。元数据可以例如定义用户103相对于资源201执行特定动作(活动)的时间,例如该用户最后修改它的时间。
图3中的底部图示出了“洞察力”的例子。洞察力是由管理器功能单元106的智能层自动创建的推断的丰富关系。推断关系的例子是趋势。当管理器功能单元106检测到与所讨论的用户103相关联的一个或多个预定义其他用户关于给定资源201执行了超过阈值数量的预定义动作时,发生趋势。例如,预定义的用户可以是目标用户103的联系人,或者是同一组(例如,组织内的相同部门或相同兴趣组)中的用户。例如,如果用户的联系人或者某个指定组中的其他用户已经查看了给定资源201(例如,文件)超过X次,则将该资源声明为围绕该用户的趋势。
管理器功能单元106在图中维护所有这些信息,在创建或改变关系时更新这些信息。
如果要将该图实现为单个组织范围的图,那么为了扩展具有许多用户的大型系统,该图只能通过增加更强大的硬件(例如,更强大的CPU、更多的RAM等)来增长。取而代之的,当前公开的系统通过跨多个每用户邮箱划分和部分复制该图的一部分来提供解决方案,从而允许通过进一步增加服务器单元而不是升级给定单元的计算能力来扩展该图大小。
该图在概念上是整个组织的全局互连图(“租用权”)。但是,根据目前公开的技术,它还被划分成具有个性化视图的个人的、特定于用户站点的图。
再次参考图1在一个或多个服务器单元104的存储器中向每个用户103分配他/她自己的主分区107或“分片”。该分区包括相应用户的个人邮箱。此外,将该图划分为用于每个用户103的图的个人视图501(参见图5),该图的这种片段连同相应用户103通过该图的片段501相关的资源201存储在该用户的相应邮箱107中。在两个用户与同一资源201相关的情况下,将该资源复制到其中一个用户的邮箱中。资源201的主副本存储在拥有数据的用户的邮箱中,辅助副本存储在图中与具有资源201具有关系的每个其他用户103的邮箱中。
因此,诸如图4中所示的租户范围的图(其示出了许多用户、文件、其它项和用户对对象的动作)被分割成邮箱(“分片”),如图5中所示。
邮箱107中的每一个邮箱是在物理上分离的相应存储器区域上实现的。任意两个给定用户102a、102b的邮箱107a、107b可以在不同服务器单元104i、104ii的存储器105i、105ii中实现,这些存储器可以在同一数据中心的不同的可移动和可替换的物理模块中、或者在不同的数据中心中、或者甚至在不同的地理区域(如不同的城镇、城市、县、州或国家或者甚至大陆)。各个服务器单元104经由网络101联网在一起并且由分布式管理器功能单元106控制,以便一起工作来提供本文所描述的功能。有时,任何两个给定用户的邮箱可能碰巧发生在同一服务器单元的存储器105的不同物理区域中,但这些邮箱仍然保持图的不同视图501以及在存储器的不同区域中维持相应资源201的不同副本。
无论在何处实现邮箱107a、107b,管理器功能单元106都被配置为在用户邮箱107的每一个邮箱中建立对于一个以上用户103来说共同(在图中)的任何资源(文件、电子邮件等)的相应副本。
拥有资源的用户的邮箱中的副本被视为主副本或者同义地“主要”副本。所有者可以例如是资源的作者或者首先将资源引入系统的用户。在实施例中,管理器功能单元106配置有一个或多个所有权规则的集合,以用于规定谁是给定资源的所有者201,以及要存储每个资源的主(即,主要)实例的地方(即,哪个用户的邮箱107或“分片”)。稍后将更详细地讨论这些所有权规则的示例。
将任何其他用户的邮箱107中的副本视作为辅助副本。当任何这样的其他用户希望访问资源(例如,查看资源)时,他们在他们自己的邮箱107中查看该副本。如果对资源有任何后续修改,则对主副本进行修改,并且管理器106被配置为随后自动地将该修改传播到连接到图的主副本的每个辅助副本。
与本公开内容相比而言,在传统系统中,将存在任何给定资源的仅仅一个主实例,由此,如果使其可用于其他用户,则所有用户将访问相同的单个主副本。这将遇到类似于上面所描述的可扩展性问题。但是,利用图的相应片段501和各个资源201的副本在每个相应用户103的不同邮箱107上复制,每个邮箱可以在任何服务器单元上实现,以模块化方式在服务器单元104之间移动。因此,为了扩展系统以适应图中的更多连接,提供商可以根据需要简单地添加更多的服务器单元104,并且在服务器单元104之间重新分配不同用户103的邮箱107。
优选地,给定用户103的邮箱107位于与该相应用户103处于相同地理区域的服务器单元104上。如果管理器功能单元106被通知或检测到(例如,来自新IP地址的持久使用)用户103已经移回到新的地理位置,则它可以相应地将邮箱107迁移到该新地理区域内的新地理位置。因为邮箱107都是模块化的,因此这可以容易地实现。
每个邮箱中的每个副本还可以包括记录资源的一个或多个属性的元数据(即,“标签”或标记),例如,其限定相应用户和资源之间的关系、和/或资源的某种绝对属性(例如,上次被任何用户修改的属性)。将限定该关系的元数据存储为关于该关系的直接对象的属性。当创建辅助副本时,可以在辅助副本中复制来自主副本的一些(但不一定是全部)元数据;并且当修改主副本时,可以将元数据中的任何相应更改中的一些(但不一定是全部)传播到辅助副本/副本集。稍后将参照图2更详细地描述这一点。
主副本可以包括用于规定允许哪些其他用户或用户组访问资源的列表。即,并非所有用户都必须获得给定资源201的辅助副本:管理器功能单元106可以被配置为查询该列表以判断给定的其他用户是否有权连接到图中的该资源并且获得他/她的邮箱中的辅助副本。
在实施例中,将图限制于给定的组织(例如,公司),使得组织之外的用户不能与组织内的用户的资源形成关系,也不能获得对组织内的用户的资源的访问。这有利地允许服务器系统的提供商向多个组织提供存储服务,而不在组织之间公开潜在的敏感信息。例如,如果提供商向两个竞争对手的可乐公司提供存储服务,那么这两个公司将希望保持他们的数据彼此牢固地保密。但是,并不排除在其它实施例中该图可以跨度多个组织或者甚至对所有用户是全局的。
在术语上,应当注意,在本文中使用的术语“副本”是同一文档或其它此类资源的多个实例之一。“主副本”或“主要副本”不一定必需意味着主实例或主要实例是从某个其它原件复制或重复的副本。主/主要副本可以是原始实例,也可以源自于存储在其它地方的原始实例(不是图系统的一部分),使得主副本是图中的主控者但不是最终的原始副本,并且可以例如包含刚从原始实例中提取的文本或其它内容,或者可以包括指向原始实例的内容的链接。但是,“辅助”确实意味着辅助副本是从主副本(主要副本)生成的。
还应当注意,虽然本文根据个人用户103描述了实施例,但是一个、一些或所有邮箱(以及资源201的副本和存储在其中的图501的片段)实际上可以是特定用户组(例如,组织中的某个团队)的邮箱。因此,诸如群组对话、协作文档或协作工作站点之类的组数据可以存储在组邮箱中,可以与其他用户或其他组共享这样的组内容。无论在本说明书中何处引用用户,用户通常都可以是由单个用户或规定的用户组所组成的任何一方。
此外,在本文的描述中使用术语“邮箱”并不意味着将资源201限制于是电子邮件或者任何其它形式的邮件。如上所述,其主副本和辅助副本存储在各个用户的邮箱107中的资源201,可以采用诸如文件、通信、站点、和/或用户简档信息之类的各种形式中的任何一种。
在实施例中,管理器功能单元106使用电子邮件作为用于将主副本中的更改传播到辅助副本的介质,和/或作为用于将数据从一个用户的存储区域107发送到另一个用户的存储区域以便根据主副本创建辅助副本的介质。这并不意味着最终用户103接收电子邮件,而是管理器功能单元106“在后台”使用电子邮件。例如,考虑在第二服务器单元104ii上根据第一服务器单元104a上的第一用户103a的邮箱107a中的主副本,将资源的辅助副本创建到第二用户103b的邮箱107b中,或者将修改从主副本到传播辅助副本。第一服务器单元104i上的管理器功能单元106i的实例向第二服务器单元104ii上的实例106ii发送电子邮件,该电子邮件包含用于制作辅助副本或者用于传播更改的数据,管理器功能单元的接收实例106ii拦截该电子邮件并对其进行操作,而不实际向最终用户103b将该电子邮件呈现为接收邮箱107ii的所接收电子邮件。因此在实施例中,图被分割成电子邮件邮箱以使其能够通过电子邮件平台来实现。电子邮件平台提供了用于通过异步消息传递来维护辅助副本的持久消息队列。
但是,这并不是限制性的,在其它实施例中,可以使用其它通信介质,例如,用于传播辅助副本和修改的专有协议。为避免疑义起见,在本说明书中引用邮箱的任何地方,其可以等同地替换为诸如“存储区域”、“用户区域”、“存储隔间”等等之类的替代术语。根据本文所引入的术语,其也可以称为“分片”。
无论通过什么介质来传播更改,管理器功能单元106都实现用于确定对资源201进行掌控的位置的所有权规则、以及用于建立和维护辅助副本的规则。
所有权规则规定了哪个用户103是每个给定资源201的所有者,因此其邮箱107存储主副本。在实施例中,所公开的服务器系统(其包括管理器功能单元106和它维护的图)被配置为与由服务器系统的提供者操作的底层文件系统一起工作,和/或与第三方操作的伙伴文件系统一起工作或者类似情形。例如,这些可以包括云存储服务、文件共享服务或站点、协作文档共享站点等等。替代地或另外地,服务器系统可以被配置为与用户的用户终端102中的一个或多个中的每一个上的本地文件系统一起工作。通过管理器功能单元106被配置为将用户的本地或在线文件库、帐户和/或站点等中的资源映射到用户103的邮箱107中的主实例上,来实现所有权规则,从而创建将全局图中的节点和关系一致地映射到邮箱107(或者更一般地,存储区域或“分片”)。
例如,给定用户103可以具有文件库,该文件库包括本地存储在他/她的计算机上或者在线存储在云存储服务上的一个或多个文件夹。所有权规则可以规定:该文件库中的任何和所有文件、或者该文件库中的一个或多个所选文件夹,将其主实例存储在该用户103的邮箱107中。访问这些文件中的任何文件的任何其他用户103,将在他/她的邮箱107中维护辅助副本。再举一个例子,给定用户103可以具有包括一个或多个文件夹的在线文件共享帐户。这些规则可以规定:该文件共享帐户中的任何和所有文件、或者该文件共享帐户中的一个或多个所选文件夹,将其主实例存储在该用户103的邮箱107中。再次,访问这些文件中的文件的任何其他用户103,将在他/她的邮箱107中维护辅助副本。再举一个例子,给定用户103可以在包括一个或多个文件夹的站点的在线协作工作空间上具有帐户,这些规则可以规定:用户的工作空间、站点或站点集合中的任何和所有文件、或者该工作空间、站点或多个集合中的一个或多个所选文件夹,由该用户拥有,因此在该用户的邮箱中具有其主副本。通常,这种所有权规则可以适用于任何资源库(例如,文件库、文件集合、站点、站点集合、工作空间等等)。
应当注意,在本文提及所有权或所有权规则或类似情况时,这并不一定意味着用户是任何其它意义上的所有者,而意味着他或她是将主副本存储在他/她的邮箱(即,存储区域)107中的用户。例如,它并不一定意味着用户是版权所有者。或者,例如,某些资源或库等等在法律意义上由组织拥有,而不是由一个用户拥有。此外,如上所述,本文关于单个用户描述的任何内容也可以涉及一组用户。因此,对于一些资源201,即使在将主副本存储在单个用户的邮箱中的意义上,资源201也不归单个用户拥有,而是资源201可以存储在“属于”多个用户(例如,组织内的某个团队或者甚至整个组织)的邮箱中。对于这些库,系统可以创建“仲裁邮箱”(即,并非特定地由任何用户拥有的邮箱),可以将每个库(以某个级别)确定性地映射到一个这样的邮箱中。
除了所有权规则之外,管理器功能单元106还应用一个或多个其它规则来创建和维护辅助副本。所有权规则和/或其它规则可以被配置为有利于性能和/或位置。对于位置,根据简单规则,使“正确”对象在本地可用。例如,根据管理器功能单元106实现的一个优选规则,给定用户103访问过的每个资源201都在他/她的各自邮箱107中。在实施例中,被认为是用户103“周围趋势”的资源201,也可以包括在他/她的各自邮箱107中。可以基于活动订阅机制来生成趋势资源。例如,用户获得他/她工作最多的40个人的所有活动,并且当本地认为感兴趣时,在用户的邮箱107中对相关项目进行复制(建立的辅助副本)。
图2示出了从在线存储库映射到邮箱的系统的逻辑模型和物理模型。顶部图显示了逻辑模型,底部图显示了物理模型。图2还示出了在邮箱107之间共享和同步的属性的例子,以及相比而言,特定于给定用户的邮箱的个人属性。
图2通过参考涉及第一用户103a(Alice)和第二用户(Bob)的例子来说明这些概念,第一用户103a(Alice)具有在第一服务器单元104i上实例化的相应邮箱107a,第二用户Bob具有碰巧在第二服务器单元104ii上实例化的单独的相应邮箱107b。在所示出的例子中,存在三个资源:第一文件201A(“文件A”)、第二文件201B(“文件B”)和第三文件201C(“文件C”)。应当理解的是,实际上,邮箱107在事实上可以存储比这更多的资源,并且还可能存在涉及更多用户的许多更多关系的更复杂的网络。此外,资源也不仅限于文件。仅通过示例的方式,给出了两个用户和三个文件的这个特定示例。
文件A和文件B属于Alice。因此,文件A和文件B中的每一个的主(主要)副本201AI、201AII各自存储在Alice的邮箱107a中。文件C属于Bob,因此主(主要)副本201CI存储在Bob的邮箱107b中。在某个时间点,Alice已经与文件B连接,例如Alice与Bob共享文件B,或者Bob因为订阅而接收到关于文件B的通知(例如,因为它是趋势、或者因为Bob订阅了来自Alice的所有内容、或者搜索了来自Alice的内容等等)。作为响应,管理器功能单元106自动地在Bob的邮箱107b中创建文件B的辅助副本。
类似地,在某个时间点,Alice已经接触了文件C、Bob的文件。同样,这可能是例如因为Bob与Alice共享文件C,或者因为Alice已向Bob通知其内容的订阅,或者作为搜索查询的结果等等。作为响应,管理器功能单元106在Alice的邮箱107a中自动地创建文件C的辅助副本。
应当注意,在实施例中,系统允许除了所有者之外的另一个用户修改资源201,例如,尽管他/她不是作者,但要对文件进行更改。在该情况下,其他用户修改主副本201I(即,所有者的副本),然后管理器功能单元106将修改传播回到其他用户的邮箱107。因此,如果Alice创作或发布了文件B,Bob可以编辑它,在这种情况下,他编辑Alice的邮箱107a中的主副本201B,然后将编辑结果传播回他自己的邮箱107b上的他的辅助副本。但是,当Bob查看文件B时,他从他自己的邮箱107b查看本地辅助副本。
在进一步的实施例中,任何给定资源的主副本201I和辅助副本201II中的一个或两个可以是绝对副本。也就是说,文件的实际数据内容显式地(即,直接地)存储在相应的邮箱107本身中(而不是以链接的形式进行存储)。但是,另一种可能性是任何给定资源的主副本201I和辅助副本201II中的一个或两个可以是“浅(shallow)”副本。浅副本是以链接形式存储在相应邮箱107中的副本,该链接链接到存储在其它地方(例如,在服务器系统外部(如第三方服务器))的资源的实际数据内容。因此,应当注意,如本文所使用的术语“副本”并不一定是指资源的实际数据内容的完整复制,还可以指代以链接形式存储的副本。在一个特定的例子中,可以将主副本201I中的一个、一些或全部存储为绝对副本,可以将相应的辅助副本存储为链接到绝对主副本的浅副本。再举一个例子,主副本中的一个、一些或全部本身可以是链接到如存储在别处(例如,在线文件系统)的相应资源的内容的浅副本。例如,主副本链接到的最终源可以是底层在线云文件系统或者由服务器系统的提供商运行的文件共享服务、或者第三方文件共享或云存储服务。
无论资源201的内容是以绝对项还是以浅副本进行存储,主副本2011和辅助副本201II中的每一个都包括元数据。
元数据至少包括元数据202的第一部分,其可以称为连接元数据。该元数据202指定该副本是主副本(即,主要副本)还是辅助副本,如果它是主副本,则存在哪些辅助副本(如果有的话),或者如果它是辅助副本,则哪个是主副本。例如,前者可以根据哪个用户103具有辅助副本(如果有的话)来指定,后者可以根据哪个用户103拥有主副本来指定。无论资源的内容是以绝对项还是以浅层形式进行存储,元数据始终优选地以绝对项(即,直接地/显式地)存储在相应邮箱107本身上(即,不以链接的形式)。
元数据还可以包括公共元数据203,公共元数据203在相同资源201的所有主实例和辅助实例201I、201II中是共同的。一个例子是任何用户对资源201进行修改的最后时间或日期、修改资源201的最后一个用户的标识、资源201的标题和/或文件大小。无论副本所在的邮箱107是什么,该信息都是相同的。因此,可以以绝对项或浅层形式来存储该元数据。
替代地或另外地,元数据可以包括个人元数据204(个人的,即它是特定于特定用户的,而不一定是私人的)。一个例子是特定用户103对资源201进行修改的最后时间或日期,其中该特定用户103的邮箱107存储所讨论的特定副本(因此,在文件B的辅助副本的情况下,Bob最后一次修改的时间)。这样的元数据特定于副本存储在其邮箱107中的个人用户103。因此,无论资源的内容是以绝对项还是以浅层形式进行存储,该元数据优选地始终以绝对项(即,直接地/显式地)存储在相应邮箱107本身上(即,不以链接的形式)。
在图2中,仅针对文件B(201BII)的辅助副本,示出了用于元数据202、203、204的不同部分的附图标记,但应当理解的是,在每个文件或资源的每个实例中可以存在类似的元数据。
由于在同一资源201的不同实例之间共享一些元数据,而一些元数据特定于特定副本201I、201II,因此管理器功能单元被配置为在建立辅助副本201II时不同地处理两种不同类别的元数据,并且还在将修改从主副本201I传播到辅助副本201II时不同地处理这两种不同类别的元数据。
也就是说,当管理器功能单元106从所有者的邮箱107中复制资源201的主副本201I、复制到其他用户103的邮箱中时,管理器功能单元仅复制共同元数据203(即,在给定资源201的不同实例201I、201II之间共同的元数据)。连接元数据202和个人元数据204将是特定于特定辅助副本201II的,因此管理器功能单元106将替代地针对当前正在创建的特定辅助副本201II来创建这些元数据元素的专用值。
此外,当管理器功能单元106传播来自所有者的邮箱107的资源201的主副本201I的修改(其传播到其他用户103的邮箱107)时,则管理器功能单元106仅传播对公共元数据203(即,再次在给定资源201的不同实例201I、201II中共同的元数据)的修改。由于连接元数据202和个人元数据204特定于每个特定辅助副本201II,因此管理器功能单元106在传播更改时,将不会在辅助副本201II中覆盖这些元数据值的值。
举例而言,考虑图2中所示的文件B,其中Alice是所有者,而Bob具有辅助副本201BII。指示资源最后被修改的时间的元数据203(全局)对于主副本201BI和辅助副本201BII是共同的。当文件B在12月3日被修改时(例如,由Alice进行修改),通过图将该公共数据的这个新值传播到包括Bob的辅助副本201BII的所有辅助副本。另一方面,指示Alice最后专门地访问该资源的时间的元数据204仅与Alice自己的邮箱107a本地相关,具体指示Bob上次访问该资源的该元数据204的对应值仅与Bob自己的邮箱107b相关。因此,当文件B被例如Alice修改时,不将该更改传播到Bob的邮箱107b。或者,如果Bob修改了文件b,则在主副本上的Alice的个人元数据204中,没有修改个人最后修改的值。
应当理解的是,仅通过示例的方式描述了上述实施例。
更一般地,根据本文所公开的一个方面,提供了一种服务器系统,该服务器系统包括:用于包括第一方和第二方的多个相应方中的每一方的物理上分离的存储区域,所述存储区域中的至少一些存储区域中的每一个存储区域存储所述相应方的一个或多个数据资源的主实例;管理器功能单元,其被配置为执行以下操作:响应于所述第二方与所述第一方的所述资源中的一个资源形成关系,在所述第二方的所述相应存储区域中建立所述第一方的所述资源中的所述一个资源的辅助副本;当所述主实例通过更改进行更新时,将所述主实例中的所述更改传播到所述第二方的存储区域中的所述辅助副本。
在实施例中,至少包括所述第一方和所述第二方的所述相应存储区域的所述分离的存储区域中的至少一些存储区域可以在单独的壳体、机架、房间、建筑物或地理位置中的单独服务器单元上实现。
在实施例中,所述管理器功能单元可以以分布式形式实现,所述分布式形式包括所述管理器功能单元在所述服务器单元中的每个服务器单元处的相应实例。
在实施例中,所述管理器功能单元可以被配置为通过电子邮件实现所述服务器单元之间的所述传播,以及在接收到所述电子邮件时拦截所述电子邮件,使得不向所述第二用户呈现所述电子邮件,而是用于自动更新所述辅助副本。
在实施例中,所述管理器功能单元还可以被配置为:如果所述第二方修改所述第一用户的所述资源中的所述一个资源以产生所述更改,则所述管理器功能单元实现对所述第一方的所述存储区域中的所述主实例的所述更改,并且将所述更改传播到所述第二方的所述存储区域中的所述辅助副本,并且将所述更改传播到各方中的与所述资源中的所述一个资源具有关系的任何其他方的所述存储区域中的辅助副本。
在实施例中,所述辅助副本可以以针对所述资源的链接的形式存储在所述第二方的所述存储区域中。替代地,所述辅助副本可以作为包括所述主实例的所述内容的复制的绝对副本而存储在所述存储区域上。
在实施例中,所述主实例可以以针对其他地方存储的所述资源的链接的形式存储在所述第一方的所述存储区域中。替代地,所述主实例可以是包括存储在所述第一方的所述存储区域上的所述资源的所述内容的绝对实例。
在实施例中,所述资源中的每个资源包括资源类型的集合中的任何一个资源类型,所述资源类型的集合包括以下中的任何两个或更多:文件、存储的通信、站点、和/或用户简档信息。
在实施例中,所述关系的所述形成可以包括:查看所述资源、修改所述资源、订阅所述资源、或围绕所述第二用户的资源趋势。
在实施例中,所述资源可以包括来自多种应用程序类型的集合中的资源,所述应用程序类型的集合包括以下中的任何两个或更多:文字处理应用程序、电子表格应用程序、幻灯片应用程序、日历应用程序、电子邮件客户端、IM客户端、社交媒体应用程序、和/或文件共享应用程序。
在实施例中,包括所述第一方和多个其他方的多个所述各方中的每一方的所述存储区域可以存储该方自己各自资源中的一个或多个资源的主实例,其中所述各方的相应一个或多个其他方与该资源具有关系,所述管理器功能单元将相应的一个或多个辅助副本存储在相应其他方的所述存储区域中;所述管理器功能单元可以被配置为将对所述主实例中的任何主实例的更改传播到相应的辅助副本中的每一个辅助副本;所述管理器功能单元可以被配置为维护各方和所述资源之间的关系的图,并且使用所述图来执行所述传播。
在实施例中,所述管理器功能单元可以被配置为应用一个或多个映射规则来确定所述资源中的哪一个或多个资源将所述主实例存储在所述各方中的哪一方的存储区域上,所述一个或多个规则包括以下中的任何一个或多个:来自所述相应方的文件库的所有文件、或者所述文件库的所选一个或多个文件夹内的所有文件,将所述主实例存储在所述相应方的所述存储区域中;来自所述相应方的云存储帐户的所有文件、或者所述云存储帐户的所选一个或多个文件夹内的所有文件,将所述主实例存储在所述相应方的所述存储区域中;来自所述相应方的在线文件共享帐户的所有文件、或者所述文件共享帐户的所选一个或多个文件夹内的所有文件,将所述主实例存储在所述相应方的所述相应存储区域中;来自所述相应方的在线站点或站点集合的所有资源、或者所述站点或多个站点内的所选部门内的所有资源,将所述主实例存储在所述相应方的所述存储区域上;和/或来自所述相应方的在线协作工作空间的所有文档、或者所述协作工作空间的所选子空间内的所有资源,将所述主实例存储在所述相应方的所述存储区域上。
在实施例中,可以将各方和资源之间的所述关系或关系集约束到给定的组织内。
在实施例中,至少包括所述第一方和/或所述第二方的所述各方中的一方、一些方或所有方中的每一个,可以是单个用户。在实施例中,至少包括所述第一方和/或所述第二方的所述各方中的一方、一些方或所有方中的每一个可以是一组用户。
根据本文所公开的另一个方面,提供了一种操作服务器系统的方法,该方法包括:为包括第一方和第二方的多个相应方中的每一方提供物理上分离的存储区域;在所述存储区域中的至少一些存储区域中的每一个存储区域上,存储所述相应方的一个或多个数据资源的主实例;响应于所述第二方与所述第一方的所述资源中的一个资源形成关系,在所述第二方的所述相应存储区域中建立所述第一方的所述资源中的所述一个资源的辅助副本;当所述主实例通过更改进行更新时,自动将所述主副本中的所述更改传播到所述第二方的存储区域中的所述辅助副本。
在实施例中,该方法可以包括与上述系统特征中的任何一项相对应的操作。
在另外的实施例中,所述分离的存储区域中的至少一些存储区域可以在单独的壳体中的单独服务器单元上实现,该方法还包括:通过添加所述服务器单元的额外一个或多个,来扩展所述服务器系统以适应更多的所述方。
在实施例中,该方法还可以包括:当所述第一方或所述第二方移动到不同的地理位置时,将所述存储区域迁移到相对应的地理区域。
一旦给出本公开内容,本文所公开的技术的其它应用和变型对于本领域普通技术人员而言将变得显而易见。本公开内容的保护范围不受上述实施例的限制,而是仅由所附权利要求进行界定。
Claims (15)
1.一种服务器系统,其包括
用于包括第一方和第二方的多个相应方中的每一方的物理上分离的存储区域,所述存储区域中的至少一些存储区域中的每一个存储区域存储所述相应方的一个或多个数据资源的主实例;以及
管理器功能单元,其被配置为执行以下操作:
响应于所述第二方与所述第一方的所述资源中的一个资源形成关系,在所述第二方的相应存储区域中建立所述第一方的所述资源中的所述一个资源的辅助副本;以及
当所述资源中的所述一个资源的所述主实例通过更改进行更新时,将所述主实例中的所述更改传播到所述第二方的存储区域中的所述辅助副本。
2.根据权利要求1所述的服务器系统,其中,至少包括所述第一方和所述第二方的所述相应存储区域的所述分离的存储区域中的至少一些存储区域是在单独的壳体、机架、房间、建筑物或地理位置中的单独服务器单元上实现的。
3.根据权利要求2所述的服务器系统,其中,所述管理器功能单元以分布式形式实现,所述分布式形式包括所述管理器功能单元在所述服务器单元中的每个服务器单元处的相应实例。
4.根据权利要求2或3所述的服务器系统,其中,所述管理器功能单元被配置为通过电子邮件实现所述服务器单元之间的所述传播,以及在接收到所述电子邮件时拦截所述电子邮件,使得不向所述第二方呈现所述电子邮件,而是用于自动更新所述辅助副本。
5.根据前述权利要求中的任何一项所述的服务器系统,其中,所述管理器功能单元还被配置为:如果所述第二方修改所述第一方的所述资源中的所述一个资源以产生所述更改,则所述管理器功能单元实现对所述第一方的所述存储区域中的所述主实例的所述更改,并且将所述更改传播到所述第二方的所述存储区域中的所述辅助副本,并且将所述更改传播到各方中的与所述资源中的所述一个资源具有关系的任何其他方的所述存储区域中的辅助副本。
6.根据前述权利要求中的任何一项所述的服务器系统,其中,所述辅助副本以针对所述资源的链接的形式存储在所述第二方的所述存储区域中。
7.根据权利要求1至5中的任何一项所述的服务器系统,其中,所述辅助副本作为包括所述主实例的所述内容的复制的绝对副本而存储在所述存储区域上。
8.根据前述权利要求中的任何一项所述的服务器系统,其中,所述主实例以针对其他地方存储的所述资源的链接的形式存储在所述第一方的所述存储区域中。
9.根据权利要求1至7中的任何一项所述的服务器系统,其中,所述主实例是包括存储在所述第一方的所述存储区域上的所述资源的所述内容的绝对实例。
10.根据前述权利要求中的任何一项所述的服务器系统,其中,所述资源中的每个资源包括资源类型的集合中的任何一个资源类型,所述资源类型的集合包括以下中的任何两个或更多:文件、存储的通信、站点、和/或用户简档信息。
11.根据前述权利要求中的任何一项所述的服务器系统,其中,所述关系的所述形成包括:查看所述资源、修改所述资源、订阅所述资源、或围绕所述第二方的资源趋势。
12.根据前述权利要求中的任何一项所述的服务器系统,其中,所述资源包括来自多种应用程序类型的集合中的资源,所述应用程序类型的集合包括以下中的任何两个或更多:文字处理应用程序、电子表格应用程序、幻灯片应用程序、日历应用程序、电子邮件客户端、IM客户端、社交媒体应用程序、和/或文件共享应用程序。
13.根据前述权利要求中的任何一项所述的服务器系统,其中:
包括所述第一方和多个其他方的多个所述各方中的每一方的所述存储区域存储所述方自己各自资源中的一个或多个资源的主实例,其中所述各方的相应一个或多个其他方与所述资源具有关系,所述管理器功能单元将相应的一个或多个辅助副本存储在相应其他方的所述存储区域中;
所述管理器功能单元被配置为将对所述主实例中的任何主实例的更改传播到相应的辅助副本中的每一个辅助副本;以及
所述管理器功能单元被配置为维护各方和所述资源之间的所述关系的图,并且使用所述图来执行所述传播。
14.根据权利要求13所述的服务器系统,其中,所述管理器功能单元被配置为应用一个或多个映射规则来确定所述资源中的哪一个或多个资源将所述主实例存储在所述各方中的哪一方的存储区域上,所述一个或多个规则包括以下中的任何一个或多个:
来自所述相应方的文件库的所有文件、或者所述文件库的所选一个或多个文件夹内的所有文件,将所述主实例存储在所述相应方的所述存储区域中;
来自所述相应方的云存储帐户的所有文件、或者所述云存储帐户的所选一个或多个文件夹内的所有文件,将所述主实例存储在所述相应方的所述存储区域中;
来自所述相应方的在线文件共享帐户的所有文件、或者所述文件共享帐户的所选一个或多个文件夹内的所有文件,将所述主实例存储在所述相应方的所述相应存储区域中;
来自所述相应方的在线站点或站点集合的所有资源、或者所述站点或多个站点内的所选部门内的所有资源,将所述主实例存储在所述相应方的所述存储区域上;和/或
来自所述相应方的在线协作工作空间的所有文档、或者所述协作工作空间的所选子空间内的所有资源,将所述主实例存储在所述相应方的所述存储区域上。
15.一种操作服务器系统的方法,所述方法包括:
为包括第一方和第二方的多个相应方中的每一方提供物理上分离的存储区域;
在所述存储区域中的至少一些存储区域中的每一个存储区域上,存储所述相应方的一个或多个数据资源的主实例;
响应于所述第二方与所述第一方的所述资源中的一个资源形成关系,在所述第二方的相应存储区域中建立所述第一方的所述资源中的所述一个资源的辅助副本;以及
当所述资源中的所述一个资源的所述主实例通过更改进行更新时,自动将所述主副本中的所述更改传播到所述第二方的存储区域中的所述辅助副本。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/409,447 US10542088B2 (en) | 2017-01-18 | 2017-01-18 | Modifying data resources within party-partitioned storage areas |
US15/409,447 | 2017-01-18 | ||
PCT/US2018/013677 WO2018136341A1 (en) | 2017-01-18 | 2018-01-13 | Partitioning storage |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110192190A true CN110192190A (zh) | 2019-08-30 |
CN110192190B CN110192190B (zh) | 2023-07-14 |
Family
ID=61157313
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201880007491.9A Active CN110192190B (zh) | 2017-01-18 | 2018-01-13 | 划分存储 |
Country Status (4)
Country | Link |
---|---|
US (1) | US10542088B2 (zh) |
EP (1) | EP3571604A1 (zh) |
CN (1) | CN110192190B (zh) |
WO (1) | WO2018136341A1 (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10838819B2 (en) | 2017-01-18 | 2020-11-17 | Microsoft Technology Licensing, Llc | Including personal relationship metadata within duplicated resources shared across partitioned storage |
US10536465B2 (en) | 2017-01-18 | 2020-01-14 | Microsoft Technology Licensing, Llc | Security for accessing stored resources |
KR20230073299A (ko) * | 2020-09-30 | 2023-05-25 | 구글 엘엘씨 | 대화 그래프를 사용하여 웨어러블 디바이스의 콘텐츠 디스플레이 관리 |
US11863615B2 (en) | 2022-03-18 | 2024-01-02 | T-Mobile Usa, Inc. | Content management systems providing zero recovery time objective |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101022396A (zh) * | 2007-03-15 | 2007-08-22 | 上海交通大学 | 网格数据副本管理系统 |
US7263537B1 (en) * | 2004-02-09 | 2007-08-28 | Unisys Corporation | System and method for creating multiple QUIESCE database copies at a single server |
CN101042767A (zh) * | 2006-02-28 | 2007-09-26 | 国际商业机器公司 | web服务数据库群集体系结构及其方法 |
US20080208963A1 (en) * | 2006-10-19 | 2008-08-28 | Aviv Eyal | Online File Sharing |
US20130346414A1 (en) * | 2012-06-21 | 2013-12-26 | General Instrument Corporation | Correlation Engine and Method for Granular Meta-Content Having Arbitrary Non-Uniform Granularity |
EP2690540A1 (en) * | 2012-07-24 | 2014-01-29 | Dassault Systèmes | A computer-implemented method for optimising the design of a product |
US20150120745A1 (en) * | 2013-10-28 | 2015-04-30 | Yahoo! Inc. | Dynamic database indexes for entity attribute value stores |
WO2016153676A1 (en) * | 2015-03-23 | 2016-09-29 | Dropbox, Inc. | Shared folder backed integrated workspaces |
Family Cites Families (90)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5220657A (en) | 1987-12-02 | 1993-06-15 | Xerox Corporation | Updating local copy of shared data in a collaborative system |
US5555371A (en) * | 1992-12-17 | 1996-09-10 | International Business Machines Corporation | Data backup copying with delayed directory updating and reduced numbers of DASD accesses at a back up site using a log structured array data storage |
US7849140B2 (en) | 2002-08-29 | 2010-12-07 | Oracle America, Inc. | Peer-to-peer email messaging |
US20040068523A1 (en) | 2002-10-07 | 2004-04-08 | Keith Robert Olan | Method and system for full asynchronous master-to-master file synchronization |
US20050044246A1 (en) * | 2003-08-06 | 2005-02-24 | Konica Minolta Business Technologies, Inc. | Data management server, data management method and computer program |
WO2006053019A2 (en) | 2004-11-08 | 2006-05-18 | Sharpcast, Inc. | Method and apparatus for a file sharing and synchronization system |
US7647346B2 (en) | 2005-03-29 | 2010-01-12 | Microsoft Corporation | Automatic rules-based device synchronization |
CA2506303A1 (en) * | 2005-04-14 | 2005-09-15 | Rajesh Kapur | Method for validating system changes safely by use of a replicated system as a system testbed |
US9135304B2 (en) * | 2005-12-02 | 2015-09-15 | Salesforce.Com, Inc. | Methods and systems for optimizing text searches over structured data in a multi-tenant environment |
US8244745B2 (en) | 2005-12-29 | 2012-08-14 | Nextlabs, Inc. | Analyzing usage information of an information management system |
US8849858B2 (en) | 2005-12-29 | 2014-09-30 | Nextlabs, Inc. | Analyzing activity data of an information management system |
CN101529419B (zh) | 2006-10-17 | 2013-05-01 | 慷孚系统公司 | 用于对内容进行离线索引和对存储的数据进行分类的方法和系统 |
US20080228771A1 (en) | 2006-12-22 | 2008-09-18 | Commvault Systems, Inc. | Method and system for searching stored data |
AU2008200752B2 (en) * | 2007-03-29 | 2010-10-28 | Aristocrat Technologies Australia Pty Limited | A storage method for a gaming machine |
US8396838B2 (en) | 2007-10-17 | 2013-03-12 | Commvault Systems, Inc. | Legal compliance, electronic discovery and electronic document handling of online and offline copies of data |
US8595381B2 (en) | 2007-10-31 | 2013-11-26 | Caseware International Inc. | Hierarchical file synchronization method, software and devices |
WO2009076755A1 (en) | 2007-12-17 | 2009-06-25 | Ramius Corporation | Social networking site and system |
US8181111B1 (en) | 2007-12-31 | 2012-05-15 | Synchronoss Technologies, Inc. | System and method for providing social context to digital activity |
US8099463B2 (en) | 2008-07-16 | 2012-01-17 | Yahoo! Inc. | Method and apparatus for sharing concurrent ad hoc web content between users visiting the same web pages |
US8473607B2 (en) | 2008-09-02 | 2013-06-25 | Belarc, Inc. | System and method for software usage discovery |
WO2010037201A1 (en) | 2008-09-30 | 2010-04-08 | Wicksoft Corporation | System and method for secure management of mobile user access to enterprise network resources |
JP2010197359A (ja) | 2009-02-27 | 2010-09-09 | Hamamatsu Photonics Kk | 信号波形測定装置及び測定方法 |
US20150294377A1 (en) | 2009-05-30 | 2015-10-15 | Edmond K. Chow | Trust network effect |
US8990725B2 (en) | 2009-09-11 | 2015-03-24 | Global Graphics Software Limited | System and method for processes enabled by metadata associated with documents within a binder file |
US8479103B2 (en) | 2009-09-15 | 2013-07-02 | International Business Machines Corporation | Visualization of real-time social data informatics |
US8527496B2 (en) | 2010-02-11 | 2013-09-03 | Facebook, Inc. | Real time content searching in social network |
US8250145B2 (en) | 2010-04-21 | 2012-08-21 | Facebook, Inc. | Personalizing a web page outside of a social networking system with content from the social networking system |
US8826407B2 (en) | 2010-11-24 | 2014-09-02 | Skai, Inc. | System and method for access control and identity management |
US8819236B2 (en) | 2010-12-16 | 2014-08-26 | Microsoft Corporation | Resource optimization for online services |
US8438364B2 (en) | 2010-12-30 | 2013-05-07 | Facebook Inc. | Distributed cache for graph data |
US9128768B2 (en) | 2011-01-27 | 2015-09-08 | Microsoft Technology Licensing, LCC | Cloud based master data management |
US8510379B2 (en) | 2011-02-23 | 2013-08-13 | Rockmelt, Inc. | Display of content interaction data in a browser |
US9396242B2 (en) | 2011-04-11 | 2016-07-19 | Salesforce.Com, Inc. | Multi-master data replication in a distributed multi-tenant system |
WO2012142158A2 (en) | 2011-04-11 | 2012-10-18 | Credibility Corp. | Visualization tools for reviewing credibility and stateful hierarchical access to credibility |
US9002790B2 (en) | 2011-09-14 | 2015-04-07 | Google Inc. | Hosted storage locking |
US9179171B2 (en) | 2011-11-30 | 2015-11-03 | Verizon Patent And Licensing Inc. | Content recommendation for a unified catalog |
US9721039B2 (en) | 2011-12-16 | 2017-08-01 | Palo Alto Research Center Incorporated | Generating a relationship visualization for nonhomogeneous entities |
US8922579B2 (en) | 2012-03-05 | 2014-12-30 | Microsoft Corporation | Deterministic visual indication of user data context |
US8990263B2 (en) * | 2012-03-15 | 2015-03-24 | International Business Machines Corporation | Policy-based management of storage functions in data replication environments |
US9286327B2 (en) | 2012-03-30 | 2016-03-15 | Commvault Systems, Inc. | Data storage recovery automation |
US9148429B2 (en) | 2012-04-23 | 2015-09-29 | Google Inc. | Controlling access by web applications to resources on servers |
US9779260B1 (en) | 2012-06-11 | 2017-10-03 | Dell Software Inc. | Aggregation and classification of secure data |
KR101860058B1 (ko) * | 2012-11-27 | 2018-05-24 | 네이버 주식회사 | 온라인 스타 팬미팅을 위한 시스템 및 방법 |
US9367646B2 (en) | 2013-03-14 | 2016-06-14 | Appsense Limited | Document and user metadata storage |
US9424330B2 (en) | 2013-03-15 | 2016-08-23 | Tactile, Inc. | Database sharding by shard levels |
US20150033149A1 (en) | 2013-07-23 | 2015-01-29 | Saleforce.com, inc. | Recording and playback of screen sharing sessions in an information networking environment |
WO2015048538A1 (en) | 2013-09-26 | 2015-04-02 | Twitter, Inc. | Method and system for distributed processing in a messaging platform |
US9590914B2 (en) | 2013-11-05 | 2017-03-07 | Cisco Technology, Inc. | Randomized per-packet port channel load balancing |
CA2899996C (en) | 2013-12-11 | 2020-04-14 | Intralinks, Inc. | Customizable secure data exchange environment |
US10685037B2 (en) | 2013-12-18 | 2020-06-16 | Amazon Technology, Inc. | Volume cohorts in object-redundant storage systems |
US9219736B1 (en) | 2013-12-20 | 2015-12-22 | Google Inc. | Application programming interface for rendering personalized related content to third party applications |
US9652554B2 (en) | 2013-12-26 | 2017-05-16 | Facebook, Inc. | Systems and methods for adding users to a networked computer system |
US9390281B2 (en) | 2013-12-30 | 2016-07-12 | Open Invention Network, Llc | Protecting data in insecure cloud storage |
US20150215390A1 (en) * | 2014-01-30 | 2015-07-30 | Crytek Gmbh | Apparatus and Method for Multi-User Editing of Computer-Generated Content |
US9594734B2 (en) | 2014-02-27 | 2017-03-14 | International Business Machines Corporation | Meta tag ownership and control |
CN103825950B (zh) * | 2014-02-28 | 2018-12-07 | 惠州Tcl移动通信有限公司 | 一种基于云平台同步联系人的方法及系统 |
US9390159B2 (en) | 2014-03-10 | 2016-07-12 | Zephyr Health, Inc. | Database architecture for storing multi-structured data |
US9633026B2 (en) | 2014-03-13 | 2017-04-25 | Commvault Systems, Inc. | Systems and methods for protecting email data |
US9823978B2 (en) | 2014-04-16 | 2017-11-21 | Commvault Systems, Inc. | User-level quota management of data objects stored in information management systems |
US10296263B2 (en) | 2014-04-30 | 2019-05-21 | International Business Machines Corporation | Dispersed bloom filter for determining presence of an object |
US9836587B2 (en) | 2014-05-20 | 2017-12-05 | 2236008 Ontario Inc. | System and method for granting permission for a machine action |
US9760446B2 (en) | 2014-06-11 | 2017-09-12 | Micron Technology, Inc. | Conveying value of implementing an integrated data management and protection system |
US20160019224A1 (en) | 2014-07-18 | 2016-01-21 | Commvault Systems, Inc. | File system content archiving based on third-party application archiving rules and metadata |
US9722958B2 (en) | 2014-07-18 | 2017-08-01 | International Business Machines Corporation | Recommendation of a location resource based on recipient access |
US9977810B2 (en) | 2014-08-21 | 2018-05-22 | Dropbox, Inc. | Multi-user search system with methodology for personal searching |
US9940377B1 (en) * | 2014-09-16 | 2018-04-10 | Amazon Technologies, Inc. | Instant copies of storage volumes |
US9405928B2 (en) | 2014-09-17 | 2016-08-02 | Commvault Systems, Inc. | Deriving encryption rules based on file content |
CN104361034A (zh) | 2014-10-27 | 2015-02-18 | 浪潮(北京)电子信息产业有限公司 | 一种云存储的文件管理方法及装置 |
WO2016106752A1 (zh) | 2014-12-31 | 2016-07-07 | 深圳大学 | 一种共享数据的访问控制方法、装置及系统 |
US9838348B2 (en) | 2014-12-31 | 2017-12-05 | Yahoo Holdings, Inc. | Electronic message search system and method |
US20160191508A1 (en) | 2014-12-31 | 2016-06-30 | Nexenta Systems, Inc. | Methods and Systems for Block Sharding of Objects Stored in Distributed Storage System |
US9588849B2 (en) | 2015-01-20 | 2017-03-07 | Commvault Systems, Inc. | Synchronizing selected portions of data in a storage management system |
US10146702B2 (en) | 2015-03-09 | 2018-12-04 | Intel Corporation | Memcached systems having local caches |
US9990506B1 (en) | 2015-03-30 | 2018-06-05 | Quest Software Inc. | Systems and methods of securing network-accessible peripheral devices |
US9842218B1 (en) | 2015-04-10 | 2017-12-12 | Dell Software Inc. | Systems and methods of secure self-service access to content |
US9842220B1 (en) | 2015-04-10 | 2017-12-12 | Dell Software Inc. | Systems and methods of secure self-service access to content |
US9984330B2 (en) | 2015-04-10 | 2018-05-29 | Microsoft Technology Licensing, Llc. | Predictive trending of digital entities |
US10382426B2 (en) | 2015-07-02 | 2019-08-13 | Adobe Inc. | Authentication context transfer for accessing computing resources via single sign-on with single use access tokens |
US10033702B2 (en) | 2015-08-05 | 2018-07-24 | Intralinks, Inc. | Systems and methods of secure data exchange |
US9686263B2 (en) | 2015-08-14 | 2017-06-20 | Quixey, Inc. | Search result relevance based on user account information |
US10192065B2 (en) | 2015-08-31 | 2019-01-29 | Commvault Systems, Inc. | Automated intelligent provisioning of data storage resources in response to user requests in a data storage management system |
US9378303B1 (en) | 2015-09-18 | 2016-06-28 | Linkedin Corporation | Representing compound relationships in a graph database |
US9378241B1 (en) | 2015-09-18 | 2016-06-28 | Linkedin Corporation | Concatenated queries based on graph-query results |
US9847994B1 (en) | 2015-09-30 | 2017-12-19 | Surfdash | System and method for providing a secure network |
US10749854B2 (en) | 2015-11-12 | 2020-08-18 | Microsoft Technology Licensing, Llc | Single sign-on identity management between local and remote systems |
US9954684B2 (en) | 2016-02-29 | 2018-04-24 | PreVeil LLC | Secure sharing |
US10540516B2 (en) | 2016-10-13 | 2020-01-21 | Commvault Systems, Inc. | Data protection within an unsecured storage environment |
US10346762B2 (en) | 2016-12-21 | 2019-07-09 | Ca, Inc. | Collaborative data analytics application |
US10838819B2 (en) | 2017-01-18 | 2020-11-17 | Microsoft Technology Licensing, Llc | Including personal relationship metadata within duplicated resources shared across partitioned storage |
US10536465B2 (en) | 2017-01-18 | 2020-01-14 | Microsoft Technology Licensing, Llc | Security for accessing stored resources |
-
2017
- 2017-01-18 US US15/409,447 patent/US10542088B2/en active Active
-
2018
- 2018-01-13 WO PCT/US2018/013677 patent/WO2018136341A1/en unknown
- 2018-01-13 EP EP18703124.0A patent/EP3571604A1/en not_active Ceased
- 2018-01-13 CN CN201880007491.9A patent/CN110192190B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7263537B1 (en) * | 2004-02-09 | 2007-08-28 | Unisys Corporation | System and method for creating multiple QUIESCE database copies at a single server |
CN101042767A (zh) * | 2006-02-28 | 2007-09-26 | 国际商业机器公司 | web服务数据库群集体系结构及其方法 |
US20080208963A1 (en) * | 2006-10-19 | 2008-08-28 | Aviv Eyal | Online File Sharing |
CN101022396A (zh) * | 2007-03-15 | 2007-08-22 | 上海交通大学 | 网格数据副本管理系统 |
US20130346414A1 (en) * | 2012-06-21 | 2013-12-26 | General Instrument Corporation | Correlation Engine and Method for Granular Meta-Content Having Arbitrary Non-Uniform Granularity |
EP2690540A1 (en) * | 2012-07-24 | 2014-01-29 | Dassault Systèmes | A computer-implemented method for optimising the design of a product |
US20150120745A1 (en) * | 2013-10-28 | 2015-04-30 | Yahoo! Inc. | Dynamic database indexes for entity attribute value stores |
WO2016153676A1 (en) * | 2015-03-23 | 2016-09-29 | Dropbox, Inc. | Shared folder backed integrated workspaces |
Also Published As
Publication number | Publication date |
---|---|
CN110192190B (zh) | 2023-07-14 |
EP3571604A1 (en) | 2019-11-27 |
US10542088B2 (en) | 2020-01-21 |
WO2018136341A1 (en) | 2018-07-26 |
US20180205792A1 (en) | 2018-07-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9213988B2 (en) | Electronic commerce infrastructure system | |
CA2474752C (en) | Data replication based upon a non-destructive data model | |
Battiston et al. | Layered social influence promotes multiculturality in the Axelrod model | |
US8600852B2 (en) | Electronic sales system | |
CN110192198B (zh) | 访问存储的资源的安全性 | |
US8700506B2 (en) | Distributed commerce system | |
CN110192190A (zh) | 划分存储 | |
US11675666B2 (en) | Including metadata in data resources | |
US10855637B2 (en) | Architecture for large data management in communication applications through multiple mailboxes | |
CN102567820A (zh) | 动态新闻发布和管理系统 | |
EP2056248A1 (en) | Electronic commerce system | |
Björk | Document Management–a key IT technology for the construction industry | |
Roussaki et al. | Optimising context data dissemination and storage in distributed pervasive computing systems | |
US12019684B2 (en) | Application programming interface arranged to interface with a plurality of data sources | |
Brézillon et al. | A context approach of social networks | |
Du et al. | Integrated and flexible data management for cloud social network service platform on campus | |
US20180203869A1 (en) | Application Programming Interface | |
Stäber et al. | Interoperability challenges and solutions in automotive collaborative product development | |
Rakhimov et al. | Maximal Injective Real W∗‐Subalgebras of Tensor Products of Real W∗‐Algebras | |
Hale et al. | Architectural requirements for integrating group decision support systems into the daily managerial experience | |
Miao | To be or not to be: Public libraries and the global knowledge revolution | |
張介耀 | Web service-driven framework for maintaining global version consistency in distributed enterprise portal | |
Trigg et al. | S. Bødker, M. Kyng, and K. Schmidt (eds.). Proceedings of the Sixth European Conference on Computer-Supported Cooperative Work, 12-16 September 1999, Copenhagen, Denmark 1999 Kluwer Academic Publishers. 331 | |
Del Bianco et al. | A Web-based infrastructure for the management of semantic meta-data |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |