CN101588308A - 通过电子邮件共享数据的方法和装置 - Google Patents
通过电子邮件共享数据的方法和装置 Download PDFInfo
- Publication number
- CN101588308A CN101588308A CNA2008101085158A CN200810108515A CN101588308A CN 101588308 A CN101588308 A CN 101588308A CN A2008101085158 A CNA2008101085158 A CN A2008101085158A CN 200810108515 A CN200810108515 A CN 200810108515A CN 101588308 A CN101588308 A CN 101588308A
- Authority
- CN
- China
- Prior art keywords
- data
- vss
- mailbox
- index
- 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.)
- Pending
Links
Images
Landscapes
- Information Transfer Between Computers (AREA)
Abstract
通过电子邮件共享数据的方法和装置。一种通过电子邮件在成员组内共享数据的方法,包括:提供用于通信的通信邮箱地址;获取用于访问组内用于存储数据的数据邮箱的访问令牌,其中所述数据以数据邮件的形式存储在所述数据邮箱中并有包含所述数据邮件的存储路径信息的索引邮件索引;将获取的访问令牌加入访问列表;获取索引邮件;利用访问列表中存储的访问令牌以及索引邮件中包含的数据邮件的存储路径信息访问数据邮件。
Description
技术领域
本发明总体上涉及数据存储,更具体地,本发明涉及通过电子邮件(email)共享数据的方法和装置。
背景技术
随着技术的发展,实际工作中越来越需要人们协同工作。尤其是在软件开发行业中,最初其常见的开发方式是:多个开发人员共同负责一个软件的开发,每个人在各自的机器上保存有整个软件的备份,并对其进行代码编写;在分别完成给自的任务之后,通过文本比对工具将各自机器上的不同版本的软件整合到一台机器上,以便共享给所有开发人员。而在其他行业中,也存在多种需要在多个人员之间共享数据的情况,这些人员甚至位于完全不同的地理位置。例如,在公司年终结算时,可能需要临时构建一个数据共享空间,以便为会计、审核等人员提供数据共享。因此,为了增加数据的可视性,在长期或临时构建的成员组之间需要共享数据。
当在多个人员之间共享数据时,这些人员可能会对所共享的数据进行修改。从上面提到的软件开发方式可以看出,由于同一软件在各自开发人员的机器上都有备份,因此原则上每个开发人员都可以不加限制地更改软件的任何部分,从而产生同一软件的多个版本。为了让成员组中的人员获得所需的数据版本,在共享数据的同时,需要对数据的版本进行控制。现有技术中已经存在一些版本控制系统。例如,对于已有的采用版本控制进行软件开发的项目组,其开发方式通常采用服务器/客户端的形式,其中软件存放在服务器上为项目组成员所共享,组内成员在客户端可以从服务器上将软件的相关部分下载到本地,进行修改,然后将改动结果最终提交到服务器上。在该开发过程中,版本控制工具跟踪记录整个软件的开发过程,协调和管理整个项目组。
从存储模式的角度来看,版本控制可以分为两类:集中模式和分布模式。前者在共享的服务器上执行所有版本控制功能。后者则允许人们直接利用各自本地的存储库工作,并且数据的改变作为单独的步骤在各个存储库之间共享。不过,即使是采用分布模式,对于一个工作组来说也不可避免地需要建立专用的服务器,以用于工作组的注册、存放、组成员的授权和对数据改变的同步等。因此,专用服务器成为系统性能的瓶颈,也是可靠性和安全性的焦点。
另一方面,信息技术的普及使得几乎人人都拥有至少一个电子邮件(email)帐户,并且通过email交换信息已成为人们常用的通信手段。因此,现有技术中提出了利用email来协助版本控制的技术方案。但是现有技术中利用email协助版本控制的方案中每个工作组成员需要保存整个数据副本,导致带宽和存储空间的浪费;对成员的在线要求较高,构建工作组时不够灵活。
发明内容
针对上述问题,本发明提供了一种通过电子邮件共享数据的方法和装置,其能够灵活、快速地构建数据共享空间,空间扩展简单,对系统的硬件需求低并且对成员的在线要求也很低。
由于存储技术的进步,当前的email服务通常能够提供大容量的email信箱。例如,目前雅虎免费email服务提供1GB的空间,Google的Gmail服务提供的空间超过了2.5GB。而且,有些企业内部email服务能够提供超大容量的email信箱。
有鉴于此,本发明充分利用已有的硬件资源,创造性地将这些分散的email信箱联合为一个有机的整体,从而形成虚拟的单个文件存储系统,也即构成虚拟共享空间(Virtual Sharing Space,简称VSS)。这些email信箱的所有者,或者说,email信箱的用户,就是该VSS的成员,其可以享有该VSS提供的数据共享服务。具体地,在该VSS内,VSS成员可以写入和读取数据文件。
根据本发明的一个方面,提供了一种通过电子邮件在成员组内共享数据的方法,包括:提供用于通信的通信邮箱地址;获取用于访问组内用于存储数据的数据邮箱的访问令牌,其中所述数据以数据邮件的形式存储在所述数据邮箱中并由包含所述数据邮件的存储路径信息的索引邮件索引;将获取的访问令牌加入访问列表;获取索引邮件;利用访问列表中存储的访问令牌以及索引邮件中包含的数据邮件的存储路径信息访问数据邮件。
根据本发明的另一方面,提供一种在成员组内通过电子邮件共享数据的装置,其特征在于所述装置包括:绑定装置,用于提供用于通信的通信邮箱地址;获取装置,用于获取用于访问组内用于存储数据的数据邮箱的访问令牌其中所述数据以数据邮件的形式存储在所述数据邮箱中并由包含所述数据邮件的存储路径信息的索引邮件索引;用于将获取的访问令牌加入访问列表的装置;用于获取索引邮件的装置;以及访问装置,用于利用访问列表中存储的访问令牌以及索引邮件中包含的数据邮件的存储路径信息访问数据邮件。
根据本发明所提供的通过电子邮件共享数据的方法及装置,可以在多个用户之间快速、高效地构建虚拟共享空间以实现数据共享。因此,其能够满足实际工作中的各种需求,对于需要临时或短期组成工作组的用户来说尤其方便。而且,根据本发明的数据共享方法所构建的虚拟共享空间,能够简单、快捷地添加和删除成员,对虚拟共享空间内成员的在线要求较低,版本控制方法简单,并且构建该虚拟共享空间的成本低,不需要额外配置硬件设备就可以实现数据的共享。
附图说明
参考以下结合附图的详细说明,本发明的特征、优点以及其它方面将变得更加明显,在附图中:
图1示出了根据本发明所构建的VSS的示意性系统配置;
图2示出了根据本发明的数据共享装置的示意性结构框图;
图3示出了根据本发明的创建VSS的方法流程;
图4示出了根据本发明的向已创建VSS添加成员的方法流程;
图5示出了根据本发明的VSS成员向VSS写入数据的方法流程;
图6示出了根据本发明的VSS成员从VSS读取数据的方法流程;
图7示出了根据本发明的VSS成员从VSS中退出的方法流程;
请注意,在全部附图中,若存在的话,相同的参考标记表示相同的部件。
具体实施方式
在以下的详细描述中,为了便于全面理解本发明,通过示例的方式说明了许多特定的细节。不过本领域技术人员可以很清楚,本发明也可以不需要这些细节就能实现。此外,为了更加清楚地解释本发明,在某些实例中,公知的方法、处理、元件和电路仅仅是进行了概括性地描述,而没有详细说明。以下结合附图对本发明进行更详细的解释和说明。应当理解,本发明的附图及实施例仅用于示例性作用,不是用于限制本发明的保护范围。
图1示出了根据本发明所构建的VSS的示意性系统配置。在图1中,示出了由三个成员A、B和C组成的VSS。可以理解,本发明不限于此,其可以实现由任意数目的成员组成的VSS。图1中还示出了这三个成员各自的客户端计算机101-103,其中每个成员都在其各自的计算机上工作,并且可以通过互联网110访问其相应的email服务器104-106上所提供的email服务。email服务器可以是各种类型的服务器,包括但不限于,各种公共网络中所提供的email服务器以及企业内部局域网提供的email服务器。
根据本发明的实施方式,在VSS成员的客户端计算机101-103上配置有根据本发明的通过电子邮件共享数据的数据共享装置107-109,简称数据共享装置107-109。通过该数据共享装置,在成员A、B和C之间可以相互访问各自的email邮箱,例如成员A可以访问成员B和C的email邮箱。从而,利用每个成员提供的email帐户,将所有这些成员的email邮箱联合起来,形成一个虚拟的共享空间,即VSS,为该VSS内的所有成员提供数据共享服务。而该VSS提供给VSS成员的统一视图类似于Windows系统的资源管理器或者网上邻居。
在为VSS成员的客户端计算机配置本发明的数据共享装置的时候,可以对该数据共享装置进行初始化。初始化处理例如可以包括:将成员自己提供的email帐户绑定到所配置的数据共享装置上。所述绑定可以包括设置此成员在该VSS内用于交换信息,即用于通信的邮箱,此类邮箱在之后简称为通信邮箱,和/或设置此成员为该VSS贡献存储空间以用于存储数据的邮箱,此类邮箱在之后简称为数据邮箱。通信邮箱用于发送、接收各种涉及VSS内操作的索引邮件、动作邮件等,存储邮箱用于存储数据邮件。数据邮件、索引邮件、动作邮件的含义将在稍后进行解释。
在设置数据邮箱时,成员可以将自己要贡献出存储空间以用于共享数据的email帐户的访问令牌提供给数据共享装置,该访问令牌例如包括email地址、访问口令、email服务器、端口等信息。可以理解,成员所贡献给VSS的数据邮箱的email帐户不限于一个email帐户,可以有多个email帐户,并且可以通过诸如标识符一类的信息进行区分。数据共享装置获取此访问令牌后,可以将获取的访问令牌加入VSS访问列表,该VSS访问列表包含关于该VSS中所有成员的电子邮件帐户的访问令牌的信息。数据共享装置利用VSS访问列表中存储的访问令牌以及索引邮件中包含的数据邮件的存储路径信息就可以访问相应的数据邮件。此外,数据共享装置需要将此访问令牌提供给其他成员的数据共享装置,以使得其他成员能够访问对应的数据邮箱。优选地,成员还可以设置用于特定VSS的数据邮箱的属性。例如,设置用于该VSS的数据邮箱的特定文件夹、文件夹的大小限制等信息。这样,成员可以将用于特定VSS的邮箱空间限制在一定范围,从而既能够提供给VSS存储空间,又能维持自身邮箱的正常使用。应当理解,由于各种原因,成员可以将其email邮箱无限制地用于特定VSS,成员也可以不贡献其email邮箱的存储空间,也即不向VSS提供数据邮箱。
在设置通信邮箱时,成员可以设置在该VSS内用于交换信息,即用于通信的邮箱,包括接收来自其他成员的索引邮件和动作邮件,以及发送去往其他成员的索引邮件和动作邮件。与数据邮箱不同,数据共享装置不需要将通信邮箱的访问令牌提供给其他成员,其只需要提供通信邮箱的email地址给其他成员,这样其他成员就能向此通信邮箱发送邮件。很明显,通信邮箱具有比数据邮箱更高的安全性。
可以理解,上述数据邮箱和通信邮箱可以属于同一个email帐户,也可以属于不同的email帐户。可选地,二者属于同一email帐户。在以下描述中,将针对成员的数据邮箱和通信邮箱属于同一email帐户的实施方式进行说明。为了简便起见,除非特别声明,数据邮箱和通信邮箱均统称为绑定邮箱。
在具有图1所示的系统配置之后,该VSS的成员可以对VSS内所存储的数据进行访问。为了清楚起见,以下先对数据访问过程中可能涉及到的术语进行解释。
本发明利用email服务进行数据共享管理,其将常规的电子邮件扩展为三类邮件:动作邮件、数据邮件和索引邮件。动作邮件是指在管理VSS过程中所涉及的命令邮件,也就是说,需要采取动作以执行相应处理的邮件,诸如请求加入动作邮件、退出动作邮件等。这些动作邮件的具体用法将在下文对数据共享装置工作流程的详细描述中解释。数据邮件是指包含有在VSS内存储的数据内容的邮件。可选地,将数据内容作为电子邮件的附件进行保存。由于不同email服务所提供的邮箱容量不同,并且邮件所能携带的附件的大小也有限制,因此,可以将要存储的数据内容划分为若干数据块进行保存,针对所划分的各个数据块生成相应的数据邮件。索引邮件是指包含了指示数据邮件的存储路径信息的邮件,例如对上面提到的数据块的描述。数据块描述可以包括多个字段,例如该数据块所属文件的ID、存储的当前路径分支ID、上级路径分支ID、所属VSS成员、数据ID等等用于标识该数据块的信息,以便在随后的访问过程可以对该数据块进行读取和写入。
上述三种电子邮件可以通过在邮件的主题部分添加特定字段,例如VSS string和VSS ID字段,使得数据共享装置能够根据VSS String将其与普通电子邮件区分开来,并且能够根据VSS ID识别该电子邮件属于哪个VSS。此外,在这些电子邮件主题部分还具有邮件类型字段MailType,以进一步识别其属于这三种电子邮件中的哪一种。例如,若为动作邮件,则可进一步判断具体动作类型并采取相应的处理。
在本发明中,通过特定的动作邮件,实现VSS的创建、VSS成员的添加、退出等操作。数据邮件则分散存储在VSS成员的数据邮箱中。在VSS成员的通信邮箱中存储有VSS的所有索引邮件。VSS成员可以利用前述访问列表中存储的访问令牌以及索引邮件中包含的数据邮件的存储路径信息来访问该VSS内的所有数据邮件。可选的,可以将索引邮件存储在VSS成员的客户端计算机中,从而能够加快对索引邮件的检索。
下面将参考图2-7,详细描述根据本发明的数据共享装置的构成及其工作原理。
图2示出了根据本发明实施方式的数据共享装置的示意性结构框图。在该图中仅示出了与本发明的教导有关的模块,本领域技术人员可以理解,在该数据共享装置中还存在其他的相关模块,但是本发明并不在于此,因此在图2中省略其他模块以免不必要地模糊本发明的实施方式。
在图2中,所示出的数据共享装置包括获取装置、访问装置和绑定装置。可以理解,数据共享装置还包括处理器、存储器以及用于执行计算机处理的计算机程序。此处仅详细讨论涉及本发明的细节。
获取装置用于获取用于访问组内用于存储数据的数据邮箱的访问令牌。其中,访问令牌包括访问电子邮件帐户所需的信息,例如email地址、访问口令、email服务器、端口等。上述访问令牌可以形成前述VSS访问列表,该VSS访问列表包含关于该VSS中所有成员的电子邮件帐户的访问令牌的信息。因此,数据共享装置中还包括用于将获取的访问令牌加入访问列表的装置,该装置可以由获取装置来实现,也可以由图2中未示出的诸如处理器的其他装置来实现。应当注意的是,虽然VSS访问列表包含了VSS中所有成员的email帐户的访问令牌信息,但是对于每个成员而言,他只知道自己的email帐户的访问令牌信息,不能知晓其他成员的email帐户的访问令牌信息。由于数据共享装置未向用户公开其他成员的email帐户的访问令牌信息,因此能够有效地保护成员的个人信息,加强整个数据共享系统的安全性。本领域技术人员可以理解,当成员提供的数据邮箱与通信邮箱不属于同一email帐户时,上述VSS列表可以包括这样的信息:所有数据邮箱的访问令牌,以及所有通信邮箱的email地址信息。
由于访问数据邮件需要知晓该数据邮件的存储路径信息,因此,数据共享装置还包括用于获取索引邮件的装置,该装置可以由前述获取装置来实现,也可以由图2中未示出的其他装置来实现。访问装置用于利用获取装置所获取的存储在访问列表中的访问令牌索引邮件中包含的数据邮件的存储路径信息,访问组内成员的数据邮箱,从而实现整个VSS内的数据共享。访问装置利用现有的标准email协议通过互联网访问email服务器上的email服务,也即通过相关通信接口发送和/或接收上面描述的各种动作邮件、数据邮件和索引邮件。email协议例如包括SMTP、POP、IMAP协议等。
绑定装置用于将成员提供的电子邮件帐户与数据共享装置绑定。由于本发明的虚拟共享空间VSS是由成员所贡献的电子邮箱的存储空间构成的,因此,成员可以通过绑定装置设置关于前面描述的数据邮箱和通信邮箱的信息,也即将数据邮箱和通信邮箱与数据共享装置进行绑定。通过该绑定装置即可实现前面提到的初始化处理,例如设置成员提供的数据邮箱的访问令牌,指定该数据邮箱中用于VSS的特定文件夹以及设置文件夹的大小等等,以及设置成员提供的用于通信的通信邮箱地址。
接下来,根据方法流程图详细描述根据本发明的数据共享装置对成员之间的数据共享的管理。本领域技术人员可以理解上述流程仅仅用于示例性作用,可以针对其他不同的过程进行适应性地修改。并且,也可以根据实际需要对这些方法步骤进行增加、修改、删除或调整次序,没有必要完全按所给流程图进行。
参考图3,其示出了根据本发明实施方式的创建VSS的流程图。假定在创建VSS之前,希望创建VSS的用户具有与其数据共享装置绑定的email帐户,并且已如前所述的对其数据共享装置进行了初始化设置。当用户希望创建VSS时,其通过所配置的数据共享装置执行以下步骤。
首先,在步骤301中,产生新的VSS的标识符ID,该ID包括所要创建的VSS的名称以及创建者的ID,从而该新的VSS能够被其ID所唯一标识。VSS的名称可以由创建该VSS的用户(也称为“创建者”)输入,而创建者的ID由数据共享装置自动输入。接着,在步骤302中,数据共享装置检查所绑定的email信箱中的索引邮件。由于同一用户可能属于多个不同的VSS,因此通过查看索引邮件中的VSS ID字段可以判断要创建的VSS是否已经存在。在步骤303中,数据共享装置确定要创建的VSS是否已经存在。若存在,则结束处理(步骤307),否则,进入到步骤304。在步骤304中,数据共享装置产生代表该新的VSS根目录的索引邮件,也即代表该VSS的存储目录。在步骤305中,通过电子邮件将索引邮件发送到其绑定的email信箱。在步骤306中,数据共享装置将新的VSS条目添加到VSS访问列表中,并将自己的绑定邮箱的访问令牌添加在该条目下,从而完成VSS的创建(步骤307)。这样,由创建者的绑定邮箱所组成的VSS就形成了,此时VSS只有创建者一个成员(也称为该VSS的所有者)。之后,可以根据实际需要逐步添加成员以扩展VSS。
接下来,参考图4,描述根据本发明实施方式的向VSS添加新成员的方法流程。在图4中,示出了希望加入的用户、VSS所有者以及VSS已有的其他成员,该加入用户也预先配置了数据共享装置,并且如前所述的将自己的email邮箱绑定在该数据共享装置上。
首先,在步骤401,加入用户获得有关其希望加入的VSS的ID以及该VSS所有者的email地址信息。该VSS的ID可以通过多种方式获得,例如通过用户输入、由VSS所有者发送邀请邮件给加入用户或者由加入用户向VSS所有者发送VSS请求动作邮件而获得。接着,在步骤402,生成VSS加入动作邮件,该动作邮件包含有其绑定的email邮箱的访问令牌。在步骤403中,将该VSS加入动作邮件通过email服务发送给VSS所有者。接下来,VSS所有者处理该加入用户的请求,加入用户则等待VSS所有者的响应。在步骤404,VSS所有者的数据共享装置从其绑定email邮箱接收来自该加入用户的加入动作邮件。在步骤405,由VSS所有者决定是否接受该加入用户的请求。如果拒绝该用户加入,则VSS所有者的数据共享装置将在步骤413通过动作邮件通知该加入用户,从而结束操作。如果接受,则继续到步骤406。在步骤406中,VSS所有者从该加入动作邮件中提取加入用户的绑定email邮箱的访问令牌并将该访问令牌添加到VSS访问列表中。在步骤407中,VSS所有者通过增加成员动作邮件将所加入用户的绑定email邮箱的访问令牌发送给所有其他VSS成员。在步骤414中,其他VSS成员接收到上述增加成员动作邮件后,将加入者的绑定email邮箱的访问令牌添加到其自己的VSS访问列表中。而VSS所有者在步骤407之后,紧接着在步骤408中,发送接受动作邮件给上述加入用户的绑定email邮箱。该接受动作邮件包括所有VSS成员的绑定email邮箱的访问令牌。通过步骤407和408的操作,在加入用户与所有其他成员之间实现了访问令牌的交换。在步骤409中,VSS的所有者向此加入用户的绑定email邮箱发送该VSS的所有索引邮件。从而,此加入用户能够通过这些索引邮件中的诸如数据块描述一类的存储路径信息来访问数据。接下来,加入用户配置其自身的数据共享装置,其在步骤410中从VSS所有者接收上述接受动作邮件,在步骤411中向其自身的VSS访问列表中添加一个VSS条目,以及在步骤412中,在所添加的条目下添加所有VSS成员(包括自身的)绑定email邮箱的访问令牌,从而完成VSS成员的加入处理。
根据上述向VSS添加新成员的方法,可以逐步扩展VSS,从而快速、灵活地建立适应于各种需求的VSS。本领域技术人员应当理解,上述创建和扩展VSS的方式不是唯一地。例如,当已知多个用户需要构建工作组时,可以由创建者一次性创建包含所有用户的绑定邮箱访问令牌的VSS访问列表,然后发送给所有用户来完成此VSS的创建,而不是像前面描述的逐个添加用户。不论采取哪种方式构建VSS,最终每个VSS成员都能够获取所有其他成员的绑定邮箱的访问令牌,也即能够访问存储在由所有成员的绑定邮箱所构成的VSS中的数据。
在同一VSS内的所有成员都可以对整个VSS所存储的数据进行访问,数据访问包括写入数据和读取数据,下面将详细描述访问数据的流程。
参见图5,其中示出了VSS成员通过本发明的数据共享装置写入数据的过程。通常,写入文件是基于该文件的在前版本,例如软件开发中对软件的升级,这就意味着总是写入增订(delta)数据。即使在写入新文件时,根据本发明将其视为对VSS根目录的增订写入。因此,在每次写入过程中,识别要被写入的文件ID,并且由于一个数据文件可能被分为若干个数据块,因此还要识别写入范围的偏移量信息,即数据块位于数据文件中的相对位置。
在步骤501中,写入方识别要写入的VSS、目标文件以及写入范围的偏移量。此外,如前所述的,由于不同email服务所提供的邮箱容量不同,并且邮件所能携带的附件大小有限制,因此根据各种实际需要可以将写入的数据内容划分为数据块,各个数据块的大小也可以互不相同。
在步骤502中,写入方将所划分的各个数据块分配给VSS内的成员,例如根据各VSS成员绑定邮箱的容量进行分配,有关绑定邮箱的容量的信息例如可以附加在访问令牌信息上。分配完之后,在步骤503中,写入方为每个块生成块描述,由此生成索引邮件,其中所有相关的块描述都封装入该索引邮件中。在步骤504中,写入方为每个块生成数据邮件,优选的将该数据块作为邮件附件来生成。接着,在步骤505中,将所生成的每个数据邮件发送给对应分配的VSS成员的绑定email邮箱,以及将步骤503中生成的索引邮件发送给所有VSS成员的绑定email邮箱,从而完成数据的写入。
在写入过程中,可能存在多个用户同时写入同一文件。根据本发明的实施方式,可以在数据块描述中简单地记录该文件的版本历史,例如在前面提到的块描述中的当前路径分支ID和上级路径分支ID字段来反映该信息。举例来说,若有两个用户同时对VSS根目录下的特定文件进行修改,也即写入该特定文件的delta版,则根据本发明的上述实施方式,将在该VSS中记录写入的这两个文件版本。这两个文件版本分别位于VSS根目录下的两个分支,也即它们的上级路径分支均为VSS根目录,当前路径分支是各自所处的分支。通过这种类似于windows资源管理器的树状视图的方式,VSS成员可以清楚知道所有文件的版本历史,并且很容易选择所需要的版本。应当理解,本发明也可以结合已有的版本控制工具,对同一文件的不同版本进行整合处理。
下面描述写入数据的反过程:读取数据。参考图6,其中示出了VSS成员通过本发明的数据共享装置读取数据的过程。同样,读取数据也是基于版本控制的。当VSS成员准备读取文件时,除了获得该文件的ID、文件所处路径分支的ID外,还要获得该文件的版本信息。后续的读取操作将读取属于该分支ID的数据块。
首先,在步骤601,读取方识别读取范围,包括要从其读取文件的VSS、要读取的文件、文件路径分支ID以及该文件中读取范围的偏移量。接着在步骤602中,读取方从其自身的绑定email邮箱中查看索引邮件,以将读取范围信息映射到相应的数据块上。可选地,VSS成员可以将其绑定email邮箱中的索引邮件缓存在其本地系统上,从而加速搜索。在步骤603中,读取方从索引邮件中提取出与当前读取范围相关的块描述。在步骤604中,根据所提取出的块描述中的信息,读取方可以从相应的VSS成员的绑定email邮箱中获得数据邮件。由前面的描述可知,数据文件作为邮件的附件附加在数据邮件上,因此,在步骤605中,读取方从获得的数据邮件的附件中提取数据。然后,再将数据返回到读取范围中(步骤606),从而结束数据的读取。
本领域技术人员应当理解,可以对读取的数据块进行某些处理,例如将若干数据块恢复成一个文件提供给读取方使用。
当VSS成员不再需要共享数据时,其可以从该VSS中退出。退出的过程与加入的过程相反,由于该退出成员的绑定email邮箱也属于该VSS的一部分,因此,在退出之前,其需要将存储在其绑定邮箱的数据重新分配到该VSS内其他成员的邮箱中,并为这些重新存储的数据建立新的索引邮件,以便在退出之后,其他成员仍然能够访问这些数据。下面将结合图7描述VSS成员退出的过程。
首先,在步骤701,退出成员查看其自身绑定email邮箱中的数据邮件。接着,步骤702,退出成员查看有关绑定邮箱中的数据邮件的索引邮件。步骤703,退出成员将所涉及的每个数据块重新分配到除其自身之外的其他VSS成员的绑定email邮箱。步骤704,为这些重新分配的数据块更新块描述,然后针对每个更新了块描述的数据块生成索引邮件。接着,在步骤705,退出成员将其自身绑定email邮箱中的数据邮件发送到重新分配的VSS成员的邮箱中,以及将具有更新的块描述的索引邮件发送到所有其他VSS成员的绑定email邮箱,同时,该退出成员还发送一封退出动作邮件给所有其他VSS成员,以便其他的VSS成员进行相应的处理。最后,在步骤706,该退出成员删除其VSS访问列表中的该VSS条目,从而完成从该VSS的退出。而该VSS中的其他成员在收到此退出成员发送过来的退出动作邮件后,进行相应的处理,也即,在步骤707,从其各自的VSS访问列表中删除该退出VSS成员,从而在以后的数据访问中不会访问该已退出的成员的邮箱。
本发明的数据共享装置可以通过计算机软件、硬件、固件或其任意组合实现。此外,本领域技术人员可以理解,尽管本发明的各个方面可以作为框图、流程图或使用其它些图示表示加以说明和描述,但可以理解,在此描述的这些模块、设备、系统、技术或方法可以以作为非限制性实例的硬件、软件、固件、专用电路或逻辑、通用硬件或控制器或其它计算设备或其组合来实现。
尽管本发明的教导是在具体实施的上下文中描述的,但对于本领域技术人员显而易见的是,在不脱离本发明精神的情况下,可以对本发明各实施方式进行修改和变更。本说明书中的描述仅仅是用于说明性的,而不应被认为是限制性的。本发明的范围仅受所附权利要求书的限制。
Claims (10)
1.一种通过电子邮件在成员组内共享数据的方法,包括:
提供用于通信的通信邮箱地址;
获取用于访问组内用于存储数据的数据邮箱的访问令牌,其中所述数据以数据邮件的形式存储在所述数据邮箱中并由包含所述数据邮件的存储路径信息的索引邮件索引;
将获取的访问令牌加入访问列表;
获取索引邮件;
利用访问列表中存储的访问令牌以及索引邮件中包含的数据邮件的存储路径信息访问数据邮件。
2.根据权利要求1所述的方法,还包括:
通过提供电子邮件帐户的访问令牌将电子邮件帐户作为组内的数据邮箱。
3.根据权利要求1所述的方法,其中所述数据邮件的存储路径信息包含一个或多个以下信息:文件ID、数据邮件的当前路径分支、上级路径分支ID、虚拟共享空间(VSS)成员。
4.根据权利要求1所述的方法,还包括:
为待写入的数据分配存储路径;
生成包含所述存储路径信息的索引邮件;
生成包含所述待写入数据的数据邮件;
将生成的数据邮件发送到分配的所述存储路径上;
将生成的索引邮件发送到组内所有成员的通信邮箱地址。
5.根据权利要求1所述的方法,还包括:
标识读取范围;
检查索引邮件以识别读取路径;
从所识别的读取路径处获得数据邮件。
6.根据权利要求1所述的方法,其中所述数据被分为若干数据块,每个数据块以相应的数据邮件形式存储在数据邮箱中。
7.一种在成员组内通过电子邮件共享数据的装置,其特征在于所述装置包括:
绑定装置,用于提供用于通信的通信邮箱地址;
获取装置,用于获取用于访问组内用于存储数据的数据邮箱的访问令牌,其中所述数据以数据邮件的形式存储在所述数据邮箱中并由包含所述数据邮件的存储路径信息的索引邮件索引;
用于将获取的访问令牌加入访问列表的装置;
用于获取索引邮件的装置;以及
访问装置,用于利用访问列表中存储的访问令牌以及索引邮件中包含的数据邮件的存储路径信息访问数据邮件。
8.根据权利要求7所述的装置,其中所述绑定装置进一步:配置为通过提供电子邮件帐户的访问令牌将电子邮件帐户作为组内的数据邮箱。
9.根据权利要求7所述的装置,其中所述数据邮件的存储路径信息包含一个或多个以下信息:文件ID、数据邮件的当前路径分支、上级路径分支ID、虚拟共享空间(VSS)成员。
10.根据权利要求7-9中任一所述的装置,其中所述数据被分为若干数据块,每个数据块以相应的数据邮件形式存储在数据邮箱中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA2008101085158A CN101588308A (zh) | 2008-05-23 | 2008-05-23 | 通过电子邮件共享数据的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA2008101085158A CN101588308A (zh) | 2008-05-23 | 2008-05-23 | 通过电子邮件共享数据的方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101588308A true CN101588308A (zh) | 2009-11-25 |
Family
ID=41372377
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA2008101085158A Pending CN101588308A (zh) | 2008-05-23 | 2008-05-23 | 通过电子邮件共享数据的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101588308A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103442084A (zh) * | 2013-09-10 | 2013-12-11 | 杭州万格网络科技有限公司 | 交换数据、获取与感知服务的数据箱系统及其使用方法 |
-
2008
- 2008-05-23 CN CNA2008101085158A patent/CN101588308A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103442084A (zh) * | 2013-09-10 | 2013-12-11 | 杭州万格网络科技有限公司 | 交换数据、获取与感知服务的数据箱系统及其使用方法 |
CN103442084B (zh) * | 2013-09-10 | 2017-02-22 | 杭州万格网络科技有限公司 | 交换数据、获取与感知服务的数据箱系统及其使用方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11647097B2 (en) | Providing access to managed content | |
US8914856B1 (en) | Synchronization of networked storage systems and third party systems | |
JP2779587B2 (ja) | コンピュータシステムに用いる名前スペースの一部分を別の名前スペースの一部分として利用可能にするための装置及びその方法 | |
US8185897B2 (en) | Task management system | |
CN1794729B (zh) | 数据配置管理方法及系统和装置 | |
CN103312624B (zh) | 一种消息队列服务系统和方法 | |
CN106506587A (zh) | 一种基于分布式存储的Docker镜像下载方法 | |
CN108370391A (zh) | 用于虚拟网络的共享多租户域名系统(dns)服务器 | |
US8868502B2 (en) | Organizing versioning according to permissions | |
CN109684282A (zh) | 一种构建元数据缓存的方法及装置 | |
CN104020961A (zh) | 分布式数据存储方法、装置及系统 | |
CN103248670A (zh) | 计算机网络环境下的连接管理 | |
CN104104582B (zh) | 一种数据存储路径管理方法、客户端及服务器 | |
US20030225607A1 (en) | Commoditized information management system providing role aware, extended relationship, distributed workflows | |
US8352442B2 (en) | Determination of an updated data source from disparate data sources | |
EP2680146A2 (en) | Co-authoring for a document management system | |
MX2014006002A (es) | Habilitacion de caracteristicas de servicio dentro de aplicaciones de productividad. | |
CN105224541B (zh) | 数据的唯一性控制方法、信息存储方法及装置 | |
CN106302667A (zh) | 代码管理系统及方法 | |
US20120310912A1 (en) | Crawl freshness in disaster data center | |
US8856260B2 (en) | Providing access to shared state data | |
CN102833295B (zh) | 分布式缓存系统中的数据操作方法和装置 | |
US20030225839A1 (en) | Knowledge router | |
CN113168405A (zh) | 数据库管理服务提供系统 | |
CN101588308A (zh) | 通过电子邮件共享数据的方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Open date: 20091125 |