CN101360123B - 一种网络系统及其管理方法 - Google Patents

一种网络系统及其管理方法 Download PDF

Info

Publication number
CN101360123B
CN101360123B CN2008101198584A CN200810119858A CN101360123B CN 101360123 B CN101360123 B CN 101360123B CN 2008101198584 A CN2008101198584 A CN 2008101198584A CN 200810119858 A CN200810119858 A CN 200810119858A CN 101360123 B CN101360123 B CN 101360123B
Authority
CN
China
Prior art keywords
community
virtual table
user
attribute
virtual
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
CN2008101198584A
Other languages
English (en)
Other versions
CN101360123A (zh
Inventor
李晓林
徐志伟
谢毅
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.)
Hainan Nanhai cloud Information Technology Co., Ltd.
Original Assignee
Institute of Computing Technology of CAS
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 Institute of Computing Technology of CAS filed Critical Institute of Computing Technology of CAS
Priority to CN2008101198584A priority Critical patent/CN101360123B/zh
Publication of CN101360123A publication Critical patent/CN101360123A/zh
Application granted granted Critical
Publication of CN101360123B publication Critical patent/CN101360123B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

本发明提供一种网络系统,包括一个或多个社区,社区包括虚拟表以及用户,所述社区映射应用服务器、数据库服务器和数据库,由所述应用服务器处理针对所述虚拟表的访问请求,社区的属性至少包括:所述社区映射的应用服务器列表;虚拟表映射数据库服务器、数据库和数据表,虚拟表属性至少包括字段属性集合,其中所述字段属性集合包括所述字段的编号,所述字段属性集合还包括字段所映射到的其它虚拟表的目标字段的编号或数据表的字段信息;所述用户负责管理所述社区和虚拟表。设计、维护、管理互联网的应用和资源的大量操作都可以直接基于上述概念完成,屏蔽了物理操作的烦琐细节,确保了使用互联网的方便性。

Description

一种网络系统及其管理方法 
技术领域
本发明涉及计算机应用技术领域,特别涉及一种网络系统及其管理方法。 
背景技术
多层(n-tier)层次结构是现有的常用的网络应用体系结构,其中应用服务器、数据库服务器、数据库、数据表(或者文件)是这类体系结构中的几个核心概念,这几个概念从粗到细的描述了构成网络体系结构的基本要素。网络应用通过这几个概念一层层的细分,每一层的能力再不断拓展,包括硬件和软件的拓展,逐渐形成现在大型的网络应用系统。现有系统体现了两方面特点:1)所有的操作都是直接针对物理实体,需要准确了解物理特性和部署的细节。假如用户要访问一个应用地址,必须指明应用服务器统一资源定位符地址(URL);假如用户要访问数据,需要明确的指明数据库服务器地址、端口,以及数据库名称和表名称。2)系统层次分得很清楚,每层都可以独立的设计、开发、部署和维护,层次的细分导致开发团队之间的分工界限明显,生产线较长,生产周期也自然较长。 
上述现有系统的特点与现在的网络应用相对越来越及时,越来越动态,以及开发和维护的知识门槛越来越低的需求是有矛盾的。特别是现在的Web2.0的应用模式,推出新产品的周期几乎是以天来计算,长一点也就是以周来计算,这是现有系统的生产线和流程难以满足的。 
一种基本的需求趋势就是网络应用必将代替现在孤立的单应用模式:1)开发者、编辑人员、用户、维护人员之间的边界模糊了,往往一个用户具有多种角色。可以开发编辑自己的网页,例如维基百科全书(wiki);可以自己撰写信息,例如博客(blog);可以是浏览者,也可以维护和管理其它用户对自己的评论等等。2)孤立节点服务逐渐向网络服务延伸,随之而来的就是通过相互重叠、融合,再集成等方式,相对孤立的网络应用 向网络平台的转化,继而向互联网络的基础设施的转化;换句话说也就是:万维网(Web)转化为网格(Grid),进而转化为云计算(Cloud Computing)。 
这种需求趋势要求互联网尽量简单化、大众化,对每个用户来说,互联网都应该是一个生产和消费的平台,而现有的互联网的体系结构和应用模式要求用户对设计、开发、部署、管理、调试、维护每个环节中的物理细节有明确的理解和掌握,需要具备相应的专业知识。因此,体现物理层面的、越来越复杂的多层体系架构不能满足互联网作为一个大众性参与的信息服务平台的需求。 
发明内容
针对现有的多层网络应用体系结构物理概念较多,并且在开发、部署、维护和扩展的每个过程都需要把握物理细节,从而导致网络应用越来越复杂的现象,本发明提供一种网络系统及其管理方法,把现在多层结构演变成一个逻辑性相对简单的体系架构,在逻辑要素与物理要素之间建立映射,定义逻辑层概念的操作并映射成对物理要素的操作,从而屏蔽底层复杂的物理细节。 
为实现上述目的,根据本发明的一个方面,提供了一种网络系统,包括一个或多个社区,所述社区包括一个或多个虚拟表以及一个或多个用户, 
所述社区,映射应用服务器、数据库服务器和数据库,由所述应用服务器处理针对所述虚拟表的访问请求,所述社区的属性至少包括:所述社区映射的应用服务器列表;其中, 
所述虚拟表,用于映射数据库服务器、数据库和数据表,所述虚拟表属性至少包括字段属性集合,其中所述字段属性集合包括所述字段的编号,所述字段属性集合还包括字段所映射到的其它虚拟表的目标字段的编号或数据表的字段信息,其中,对于所述字段属性集合包括字段所映射到数据表的字段信息的情况,则虚拟表的属性还包括所述数据表所在的数据库服务器和数据库的属性信息; 
所述用户,负责创建、变更、注销、合并或拆分所述社区,或者增加、删除或维护所述虚拟表。
在上述网络系统中,所述社区的属性还包括默认的数据库服务器地址和端口,以及默认数据库名称、默认数据库用户和密码。 
在上述网络系统中,所述社区属性还包括社区之间的关系属性。 
在上述网络系统中,所述虚拟表的字段属性集合还包括:所述字段的名称、类型、长度、属性缺省值、可选值域、是否主键、是否允许空值。 
在上述网络系统中,所述虚拟表的属性还包括:关系操作连接条件、附加的数据过滤约束条件、访问权限、创建时间和最近访问时间。 
在上述网络系统中,所述虚拟表支持关系操作算子,通过所述关系操作算子基于已有的虚拟表构建新的虚拟表,新虚拟表的字段属性集合中存储所述新虚拟表所映射的虚拟表的字段编号。 
在上述网络系统中,所述社区还包括用于存储所述社区的所述用户的信息的虚拟用户表。 
在上述网络系统中,所述社区还包括用于存储所述社区的访问控制授权信息的虚拟角色表。 
在上述网络系统中,所述社区的所述用户包括系统管理员,所述系统管理员创建所述网络系统的社区。 
在上述网络系统中,对于多个社区的情况,所述社区的所述用户包括:社区管理员,所述社区管理员负责管理所述社区。 
根据本发明的第二方面,还提供了上述的社区的创建方法,包括下列步骤: 
1)指定所述社区名称和包含所述社区映射的一个或多个应用服务器的应用服务器列表,获得所述社区创建者帐号和所述社区编号,并将上述属性存储在所述应用服务器上; 
2)通过为所述社区的虚拟表的属性赋值,构建所述社区的虚拟表。 
上述创建方法中,所述步骤1)还包括步骤: 
11)指定所述社区的默认的数据库服务器地址和端口,以及默认数据库名称、默认数据库用户和密码。 
上述创建方法中,还包括步骤:3)创建所述社区的虚拟用户表。 
上述创建方法中,还包括步骤:4)创建所述社区的虚拟角色表。 
上述创建方法中,还包括步骤: 
5)为所述社区指定社区管理员; 
6)将步骤5)的所述社区同步复制到步骤5)所述社区所存储的应用服务器之外的其他应用服务器上。
根据本发明的第三方面,还提供了根据上述创建方法所创建的社区的变更方法,包括下列步骤: 
10)所述社区管理员修改待变更社区的除社区编号以外的任意属性; 
20)将所述步骤10)的修改结果同步到所有应用服务器上。 
根据本发明的第四方面,还提供了根据上述创建方法所创建的社区的注销方法,包括下列步骤: 
1)指定所述社区的社区编号,删除存储所述社区的属性的文件; 
2)删除所述社区的用户和虚拟表。 
根据本发明的第五方面,还提供了根据上述创建方法所创建的社区的合并方法,包括下列步骤:注销被合并的社区,其中,所述被合并的社区的用户和虚拟表分别成为合并到的社区的用户和虚拟表,且所述虚拟表被重新分配虚拟表编号。 
根据本发明的第六方面,还提供了根据上述创建方法所创建的社区的拆分方法,包括下列步骤:创建新社区,为所述新社区分配社区编号,指定社区名称、社区创建者的账号和所述新社区映射的应用服务器列表,将所述社区的用户和虚拟表分配到所述新社区,并为所述虚拟表重新分配编号。 
根据本发明的第七方面,还提供了一种应用上述网络系统的查询方法,包括下列步骤: 
A1)用户针对所述虚拟表提交一个查询请求; 
A2)解析所述虚拟表所映射的其它虚拟表的目标字段的编号或数据表的字段信息; 
A3)检查当前用户是否有权限访问该虚拟表,如果没有,直接返回所述用户无访问权限错误,结束; 
A4)对于所述虚拟表映射到其它虚拟表的情况,就继续向下解析所述其它虚拟表,重复执行A2)、A3)步骤,直到解析到所述其它虚拟表映射到数据表; 
A5)把查询请求发送到当前虚拟表所属的社区映射的应用服务器,并通过虚拟表的映射关系,直接访问物理数据库、数据表,或者中间临时的缓存数据库和数据表; 
A6)上层的虚拟表在下层的虚拟表都执行完后,再基于形成的中间数据结果做汇集访问,并将结果入缓存数据库临时表; 
A7)判断是否已经执行到顶层虚拟表了,如果否,则重复A5,A6过程,直到执行到顶层的虚拟表,如果是,则向所述返回最终查询结果。 
本发明通过将物理概念在逻辑层面加以总结和抽象,借助社区、虚拟表两个逻辑概念和映射,表示和操作多层网络结构中物理存在的应用服务器、数据库服务器、数据库和数据表。这样设计、开发、部署、维护、管理互联网的应用和资源的大量操作都可以直接基于这两个逻辑概念完成,屏蔽了以前必须关注的物理操作的烦琐细节,确保了对互联网平台使用的方便性,以及应用的可扩展、可移植、松耦合特性。 
附图说明
图1是物理网络层次体系架构各要素示意图; 
图2是逻辑网络系统和物理网络应用系统的映射关系示意图; 
图3是根据本发明一个实施例的虚拟表形成的具有层次结构的映射关系示意图; 
图4基于社区、虚拟表的网络系统虚拟化机制的部署及访问示意图; 
图5是根据本发明一个实施例的基于逻辑网络系统的查询请求流程图。 
具体实施方式
本发明利用虚拟化技术,在高度抽象的基础上,把物理网络多层结构演变成一个逻辑性的相对简单的体系架构,定义逻辑层概念的操作并映射成对物理要素的操作,从而屏蔽底层复杂的物理细节。为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图,对根据本发明一个实施例的网络系统虚拟化方法进一步详细说明。 
本发明是基于现有的物理层的多层网络应用体系架构。图1中示出了一般物理网络应用系统架构的基本要素。如图1所示,一般的网络应用由一台应用服务器连接后端的数据库服务器为多个前端用户服务。当系统的用户规模或者数据规模扩展时,可以分别拓展应用服务器和数据库服务器,形成网络化的集群服务系统。同时,当单个数据库服务器的负载过高的时候,还可以进一步的将一个或者多个数据库中的一个或多个数据表拆 分,分别部署到不同的数据库服务器上,这样可以更细粒度的降低单台数据库服务器的负载。 
如上所述,物理网络应用系统架构的应用服务器、数据库服务器、数据库和数据表是该虚拟化机制的依赖的基本要素。图2示出了逻辑网络系统的社区和虚拟表与物理网络应用系统的基本要素的映射关系。社区映射的物理要素是应用服务器,还可以映射数据库服务器和数据库。其中,应用服务器实际处理针对该社区的虚拟表的访问请求,为这个社区发出的请求提供物理运行环境;而数据库服务器和数据库决定了社区在创建或者部署虚拟表的时候,该虚拟表默认映射的数据库和数据表的存储位置。虚拟表映射数据库服务器,数据库和数据表。社区和虚拟表两个概念映射的部分有一定的交叉重叠部分。社区可以约束对该社区内虚拟表的请求,映射到哪个数据库服务器和数据库中,也即定义社区内虚拟表能够映射到的数据库服务器、数据库和数据表的边界。 
上述映射可以是多对多的,同时还可以交叉约束。社区最终要映射到一个或多个物理的应用服务器上。同理,虚拟表到物理数据库和数据表(包括文件)的映射关系也可以是非一一对应的,一个虚拟表可以映射到网络上的一个或多个数据库服务器、数据库或数据表(文件)。 
根据本发明的一个具体实施例,逻辑网络系统及该系统内社区的动态管理方法如下所述,其中动态管理方法包括:社区的构建、变更、注销、合并、拆分、确定友好关系等方法。 
逻辑网络系统主要由社区构成,通过社区组织和管理网络系统中的虚拟表和用户。构成社区的核心要素包括虚拟表和网络上的用户,其中所述虚拟表是逻辑层面的资源,所述用户包括系统管理员、社区管理员和一般用户。社区是逻辑层面的,且具有确定边界,其体现两个方面的含义:1)社区是由用户、虚拟表、以及虚拟表和用户的生命周期内的行为活动构成的特定网络内聚空间;2)社区是虚拟空间与网络物理要素之间的界面。 
系统中的每个社区是一个xml文件,其中存储社区的属性,该属性也即元信息,通过该文件实现对社区的管理。文件名称用cid.xml表示,其中cid表示一个唯一的固定长度的社区编号。例如,如果将社区固定编号长度设定为5个数字,那么,0号社区的配置文件就是00000.xml,根据本实施例,0号社区也称作系统社区,是在系统初始化时创建的;1号社区的配置文件是00001.xml,其它社区依次类推。除系统社区外,其它社区 的配置文件在创建或者变更后,由系统自动同步到其它应用服务器节点上,刷新在每个应用服务器节点上该社区的元信息。本领域技术人员可以理解本实施例以xml文件来存储社区的元信息,但除了xml文件还可以用例如数据表的记录等其他文件来存储社区的元信息。 
每个社区xml文件包含描述该社区的属性,包括: 
cid:社区编号。 
name:社区名称。 
Creator:社区创建者的帐号。 
hosts:社区映射的应用服务器列表。针对该社区的服务、虚拟表发出的访问请求,最终通过这种映射机制被分发到其中的一个或者多个应用服务器上执行,分发的策略需要负载平衡机制来支持。如社区在接收到一个请求时,根据应用服务器列表中所有服务器当前的负载状态,将请求转发给负载最轻的应用服务器节点执行。 
同时可以有下述可选择的属性,包括默认映射的数据库服务器地址和端口、默认数据库名称,默认数据库用户和密码,以及社区之间的关系属性,例如可以定义某个社区是另一个社区的子社区。 
虚拟表是在逻辑层面表示数据库服务器、数据库和数据表的抽象概念。网络系统中的每个虚拟表都属于一个特定的社区,并按照社区来部署和管理。虚拟表本身也具有关系的属性,具有模式(schema)和约束。虚拟表支持关系操作算子,可以通过连接(join)、联合(union)等操作,形成虚拟表之间具有层次结构的访问和映射关系,用以表示业务需要的复杂的数据模型及联系。针对虚拟表的操作包括:创建、注销、变更映射、变更属性、授权,以及读数据、写数据、变更数据、删除数据。 
可以用一个xml文件来存储每个虚拟表信息,也可以用一个默认的数据库表来存储和表示虚拟表的数据记录。无论哪种方式,每个虚拟表都有一固定长度的编号,用vid表示,此vid在虚拟表所属社区内是唯一的,通过cid.vid就可以唯一的确定一个虚拟表资源。社区的每个用户都可以增加、删除、维护属于自己的虚拟表,同时可以把自己的虚拟表授权给其它用户访问,也可以将属于本社区的虚拟表公开共享给其它社区,从而使得其它社区的用户也可以进行访问。原则上虚拟表可以映射到网络上存在的任意物理数据库和数据表资源。如果社区的属性还包括:默认映射的数据库服务器地址和端口、默认数据库名称,数据库用户和密码,则虚拟表可 以映射到社区的默认数据库服务器、数据库上。当然,虚拟表也可以由用户自主定义映射。 
每个虚拟表xml文件包含描述该虚拟表的属性,包括: 
vid:虚拟表编号。 
name:虚拟表名称。 
Creator:虚拟表创建者的帐号,虚拟表创建者就是虚拟表所属的用户。 
Attributes:虚拟表的字段属性集合。Attributes中定义了该虚拟表具有的字段集合,集合中的一个元素表示一个字段,每个字段有编号sn,名称,字段类型,长度,属性缺省值,可选值域,其它约束(例如是否主键、是否允许空值等)属性项,以及该字段映射到其它虚拟表的目标字段的编号或物理数据表的字段信息,由此可以确定虚拟表之间以及虚拟表与数据库服务器、数据库和数据表之间的访问和映射关系。虚拟表的所有者可以动态的变更上述映射关系。上述的编号sn是每个字段属性在虚拟表内被分配的固定长度的唯一的标识,这样通过cid.vid.sn就可以唯一的定位到任意一个网络上虚拟表的任意一个字段属性,可以直接用此访问虚拟表的一个字段属性,为维护虚拟表的映射提供了方便。 
直接映射到数据库服务器、数据库和数据表上的虚拟表称为基本虚拟表,基本虚拟表为了访问时定位到数据表,还需要指定所述数据表所在的数据库服务器和数据库的属性信息,包括: 
Resuri:数据库服务器网络地址。 
resuriPort:数据库服务器网络端口。 
Databasename:数据库名称。 
Databaseuser:访问数据库的用户名称。 
Databasepassword:访问数据库的用户密码。 
同时,虚拟表还可以具有一系列可选择的属性,包括关系操作连接条件、附加的数据过滤约束条件、访问权限、创建时间和最近访问时间等。 
如图3a所示,通过连接、联合等关系操作,可以构建复杂的满足业务数据需要的层次结构的虚拟表访问和映射关系。新建立的虚拟表映射到一个其它已经存在的虚拟表,即新虚拟表的字段属性集合中存储所述新虚拟表所映射的虚拟表的字段编号,把这种映射到其它虚拟表的虚拟表称为复合虚拟表,如图3a中的虚拟表1、2和3;而直接映射到物理数据库、数据表的虚拟表称为基本虚拟表,如图3a中的虚拟表4、5、6和7。对基 本虚拟表变更映射实际是需要变更指定的具体物理数据库、表的位置信息,而复合虚拟表是不需要的,直接基于逻辑层就可以完成各类管理操作。如图3a所示,虚拟表4,5通过连接操作形成虚拟表2;虚拟表5,6通过联合操作形成虚拟表3;而虚拟表2和3再通过连接操作形成虚拟表1(根虚拟表)。图中标明了虚拟表1的字段到虚拟表2和虚拟表3对应字段之间的一一映射关系。而虚拟表3由于是通过联合操作形成的,因此,虚拟表3的一个字段分别映射到虚拟表5和虚拟表6的各一个字段。在解析应用程序提交的请求时,解析会从顶层虚拟表(根虚拟表)开始,依据虚拟表字段的映射关系,依次解析形成施加在下层虚拟表上的查询请求,形成如图3b所示的查询树。注意到查询树与虚拟表访问关系并不是一一对应的,例如虚拟表2对虚拟表4和5有访问关系,当虚拟表4和5分别映射到同一个物理数据源中的两个数据表时,通过解析的优化机制,查询树中的查询2直接映射到这两个物理数据表模式上,执行时就可以直接施加该连接查询请求到这个数据源上。 
根据本发明的实施例,提供虚拟表创建、注销、变更映射、变更属性、授权,以及读数据、写数据、变更数据、删除数据的接口。 
图4是具有两个节点的网络应用系统基于虚拟化机制的部署和访问示意图,其中每个节点包括一台应用服务器及两台数据库服务器。虚拟化系统默认该系统具有一个系统管理员,由其完成虚拟化网络系统的部署和初始化过程。 
在每一台应用服务器上创建该应用服务器的系统社区(0号社区)包括下列步骤:指定社区名称(name)和社区服务的应用服务器列表(hosts),获得系统管理员的帐号(Creator),自动获得一个社区编号cid。系统管理员还可以选择指定默认映射的数据库服务器地址和端口、默认数据库名称,数据库用户和密码。将上述属性存储到在当前创建社区所在的应用服务器上生成的cid.xml文件中。通过为该社区的虚拟表的属性赋值,构建社区需要的虚拟表(图4中未示出)。该虚拟表可以映射到默认的物理数据库、数据表。 
如上所述,系统社区是在系统初始化时在当前应用服务器上自动创建的,其hosts属性只对应当前应用服务器。0号社区的配置文件00000.xml是不需要自动同步到其它应用服务器节点上,因此,对0号社区的访问始终是发生在当前应用服务器上,也即任何应用服务器是不能访问其它应用 服务器的0号社区逻辑空间的。 
系统管理员登录到0号社区后,可以增加和管理社区的资源,还可以管理在该社区注册的用户或者申请加入该社区的其他用户。社区的用户都可以在当前社区部署和管理虚拟表。因此,社区的用户和虚拟表是在社区运行过程中动态积累和管理的。 
初始化的资源还包括一个存储社区用户信息的虚拟用户表、一个存储社区访问控制授权信息的虚拟角色表。当然,根据实际应用情景的需要,这些表是否部署是可以选择的,也还可以增加部署其它的虚拟表。 
由系统管理员登录到该应用服务器的0号社区,应用0号社区的创建社区的功能创建其它应用需要的社区n。与0号社区同理,创建社区的时候,可以自动部署社区需要的虚拟表,同样需要指定这些虚拟表映射的物理数据库、数据表的存储位置。每创建一个社区,就为该社区指定一个社区管理员用户,社区管理员以后登录到该社区后,可以增加和管理社区的资源,还可以管理在该社区注册的用户或者申请加入该社区的其它用户,社区的用户都可以在当前社区部署和管理虚拟表。因此,社区的用户和虚拟表也是在社区运行过程中动态积累和管理的。同理,可以在节点2创建社区m。在每个节点上创建的非系统社区的配置文件被动态的同步复制到其它节点上,从而确保多个节点的不同社区都能够具有全局唯一编号。 
社区管理员可以变更其所管理的社区,除了社区编号cid属性以外,其它属性信息都可以在运行时动态变更,变更的信息同样同步到其它应用服务器上变更对应社区xml文件存储的信息。 
社区管理员可以申请注销其所管理的社区,注销时,只需要指定被注销社区的cid编码,删除该社区xml文件,同时删除社区的用户和虚拟表,以及位于其它应用服务器上的该社区文件。 
社区管理员可以向其它社区管理员发出合并申请,申请被其它社区管理员同意,并被系统管理员批准后,被合并的社区用户成为合并到的社区的用户,被合并社区的虚拟表成为合并到的社区的虚拟表,每个虚拟表都被重新分配一个虚拟表编码,申请被合并的社区被注销。合并到的社区的编码(cid)、名称(name)、创建者(creator)、应用服务器列表(hosts)属性都不变。 
社区管理员可以向系统管理员申请将社区拆分成几个新社区,批准后社区可以被拆分成多个社区。其中原社区保留,并创建新社区,并自动为 新创建的社区分配社区编码(cid),指定名称(name)、创建者(creator)、和对应的应用服务器列表(hosts)。原社区的用户和虚拟表部分被分配到新产生的社区,并为虚拟表重新分配一个虚拟表编号。 
确定友好关系:社区管理员可以向其它社区管理员申请建立友好关系,申请同意后,友好关系便成立。并通过社区变更操作,变更两个社区xml文件中社区之间关系的属性,重新设定建立了友好关系的社区编码cid。 
根据上述网络系统的构建方法,网络系统的社区是具有生命周期的,具体体现在下述方面:1)社区是在系统运行过程中动态创建的,不是系统固有的;2)社区的运行是独立的,逻辑地位是平等的;3)社区有内在的规则约束,比如在创建社区或者在社区运行过程中,社区管理员可以定义社区内用户可以共享的资源,以及约束社区内用户和社区外用户访问本社区资源的权限;4)根据需要,可以将多个社区合并成一个社区,包括合并前的多个社区的资源和用户都成了合并后社区的资源和用户;相反,一个社区也可以拆分成多个社区,同时资源和用户也分别被分配属于多个社区;5)虽然社区是独立运行的,但是社区之间可以定义关系和权限,比如友好关系,可以定义社区内的虚拟表资源的私有、公开、有条件公开给其它社区的共享权限。 
针对任何一个社区开发的应用程序可以用一个社区标号.虚拟表标号(cid.vid),通过虚拟表的访问接口透明的访问各种资源,其中,程序开发人员未必是社区的用户,而程序在运行时,会根据当前访问的用户身份,访问接口内部逻辑确定该用户是否有对该虚拟表访问的权限。 
图5是逻辑网络系统的一个应用的流程图。图5示出了一个查询请求,其工作流程如下:过程S1表示用户(应用程序)针对社区.虚拟表(cid.vid)提交一个查询请求;过程S2表示解析cid.vid所映射的其它虚拟表的目标字段的编号或数据表的字段信息;过程S3表示检查当前用户是否有权限访问该虚拟表,如果没有,直接返回应用程序无访问权限错误,并结束;过程S4表示检查当前要访问的cid.vid是否是个基本虚拟表,也就是映射到物理数据库、数据表的虚拟表;过程S5表示如果不是基本虚拟表,而是复合虚拟表,就需要继续向下解析出要访问的下层社区.虚拟表,再重复执行S2、S3过程,依次类推,直到要访问的是基本虚拟表;过程S6表示根据当前要访问的虚拟表的社区编号,把请求透明的发送到社区映射的应 用服务器节点,并通过当前虚拟表的映射关系,直接对对应的物理数据库、数据表,或者中间临时的缓存数据库和数据表访问;过程S7表示上层的虚拟表在下层的虚拟表都执行完后,再基于形成的中间数据结果做汇集访问,并将结果入缓存数据库临时表;过程S8表示判断是否已经执行到顶层(根)虚拟表了,如果没有,则重复S6,S7过程,基于下层的虚拟表的临时表数据,执行上层虚拟表的请求访问,直到执行到顶层的虚拟表;过程S9表示当执行完顶层虚拟表后,向用户(应用程序)返回最终结果。 
根据本发明的思想,可以方便快捷的构建一个虚拟化的网络系统,大量的设计、开发、部署、维护等操作都可以直接基于社区和虚拟表两个逻辑概念实现,从而无需关注物理资源、运行应用服务器的具体位置,屏蔽资源的异构性以及物理操作细节,为普通用户提供一个可以自管理、自消费的可扩展的系统,确保基于该系统开发的应用可以全局的透明访问、部署、移植。 
应该注意到并理解,在不脱离后附的权利要求所要求的本发明的精神和范围的情况下,能够对上述详细描述的本发明做出各种修改和改进。因此,要求保护的技术方案的范围不受所给出的任何特定示范教导的限制。

Claims (20)

1.一种网络系统,包括一个或多个社区,所述社区包括一个或多个虚拟表以及一个或多个用户,
所述社区,映射应用服务器、数据库服务器和数据库,由所述应用服务器处理针对所述虚拟表的访问请求,所述社区的属性至少包括:所述社区映射的应用服务器列表;其中,
所述虚拟表,用于映射数据库服务器、数据库和数据表,所述虚拟表属性至少包括字段属性集合,其中所述字段属性集合包括所述字段的编号,所述字段属性集合还包括字段所映射到的其它虚拟表的目标字段的编号或数据表的字段信息,其中,对于所述字段属性集合包括字段所映射到数据表的字段信息的情况,则虚拟表的属性还包括所述数据表所在的数据库服务器和数据库的属性信息;
所述用户,负责创建、变更、注销、合并或拆分所述社区,或者增加、删除或维护所述虚拟表。
2.根据权利要求1所述的网络系统,其特征在于,所述社区的属性还包括默认的数据库服务器地址和端口,以及默认数据库名称、默认数据库用户和密码。
3.根据权利要求1所述的网络系统,其特征在于,所述社区属性还包括社区之间的关系属性。
4.根据权利要求1所述的网络系统,其特征在于,所述虚拟表的字段属性集合还包括:所述字段的名称、类型、长度、属性缺省值、可选值域、是否主键、是否允许空值。
5.根据权利要求1所述的网络系统,其特征在于,所述虚拟表的属性还包括:关系操作连接条件、附加的数据过滤约束条件、访问权限、创建时间和最近访问时间。
6.根据权利要求1所述的网络系统,其特征在于,所述虚拟表支持关系操作算子,通过所述关系操作算子基于已有的虚拟表构建新的虚拟表,新虚拟表的字段属性集合中存储所述新虚拟表所映射的虚拟表的字段编号。
7.根据权利要求1所述的网络系统,其特征在于,所述社区还包括用于存储所述社区的所述用户的信息的虚拟用户表。
8.根据权利要求1所述的网络系统,其特征在于,所述社区还包括用于存储所述社区的访问控制授权信息的虚拟角色表。
9.根据权利要求1所述的网络系统,其特征在于,所述社区的所述用户包括系统管理员,所述系统管理员创建所述网络系统的社区。
10.根据权利要求1所述的网络系统,其特征在于,对于多个社区的情况,所述社区的所述用户包括:社区管理员,所述社区管理员负责管理所述社区。
11.一种如权利要求1所述的社区的创建方法,包括下列步骤:
1)指定所述社区名称和包含所述社区映射的一个或多个应用服务器的应用服务器列表,获得所述社区创建者帐号和所述社区编号,并将上述属性存储在所述应用服务器上;
2)通过为所述社区的虚拟表的属性赋值,构建所述社区的虚拟表。
12.根据权利要求11所述的创建方法,其特征在于,所述步骤1)还包括步骤:
11)指定所述社区的默认的数据库服务器地址和端口,以及默认数据库名称、默认数据库用户和密码。
13.根据权利要求11或12所述的创建方法,其特征在于,还包括步骤:
3)创建所述社区的虚拟用户表。
14.根据权利要求11或12所述的创建方法,其特征在于,还包括步骤:
4)创建所述社区的虚拟角色表。
15.根据权利要求11所述的创建方法,其特征在于,还包括步骤:
5)为所述社区指定社区管理员;
6)将步骤5)的所述社区同步复制到步骤5)所述社区所存储的应用服务器之外的其他应用服务器上。
16.一种如权利要求15所述的创建方法所创建的社区的变更方法,包括下列步骤:
10)所述社区管理员修改待变更社区的除社区编号以外的任意属性;
20)将所述步骤10)的修改结果同步到所有应用服务器上。
17.一种如权利要求15所述的创建方法所创建的社区的注销方法,包括下列步骤: 
1)指定所述社区的社区编号,删除存储所述社区的属性的文件;
2)删除所述社区的用户和虚拟表。
18.一种如权利要求15所述的创建方法所创建的社区的合并方法,包括下列步骤:注销被合并的社区,其中,所述被合并的社区的用户和虚拟表分别成为合并到的社区的用户和虚拟表,且所述虚拟表被重新分配虚拟表编号。
19.一种如权利要求15所述的创建方法所创建的社区的拆分方法,包括下列步骤:创建新社区,为所述新社区分配社区编号,指定社区名称、社区创建者的账号和所述新社区映射的应用服务器列表,将所述社区的用户和虚拟表分配到所述新社区,并为所述虚拟表重新分配编号。
20.一种应用权利要求1所述的网络系统的查询方法,包括下列步骤:
A1)用户针对所述虚拟表提交一个查询请求;
A2)解析所述虚拟表所映射的其它虚拟表的目标字段的编号或数据表的字段信息;
A3)检查当前用户是否有权限访问该虚拟表,如果没有,直接返回所述用户无访问权限错误,结束;
A4)对于所述虚拟表映射到其它虚拟表的情况,就继续向下解析所述其它虚拟表,重复执行A2)、A3)步骤,直到解析到所述其它虚拟表映射到数据表;
A5)把查询请求发送到当前虚拟表所属的社区映射的应用服务器,并通过虚拟表的映射关系,直接访问物理数据库、数据表,或者中间临时的缓存数据库和数据表;
A6)上层的虚拟表在下层的虚拟表都执行完后,再基于形成的中间数据结果做汇集访问,并将结果入缓存数据库临时表;
A7)判断是否已经执行到顶层虚拟表了,如果否,则重复A5,A6过程,直到执行到顶层的虚拟表,如果是,则向所述用户返回最终查询结果。 
CN2008101198584A 2008-09-12 2008-09-12 一种网络系统及其管理方法 Expired - Fee Related CN101360123B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2008101198584A CN101360123B (zh) 2008-09-12 2008-09-12 一种网络系统及其管理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2008101198584A CN101360123B (zh) 2008-09-12 2008-09-12 一种网络系统及其管理方法

Publications (2)

Publication Number Publication Date
CN101360123A CN101360123A (zh) 2009-02-04
CN101360123B true CN101360123B (zh) 2011-05-11

Family

ID=40332459

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2008101198584A Expired - Fee Related CN101360123B (zh) 2008-09-12 2008-09-12 一种网络系统及其管理方法

Country Status (1)

Country Link
CN (1) CN101360123B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012151944A1 (zh) * 2011-07-12 2012-11-15 中兴通讯股份有限公司 一种实现社区联合的方法和装置

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102222090B (zh) * 2011-06-02 2012-12-05 清华大学 一种云环境下海量数据资源管理框架
CN102221929A (zh) * 2011-06-09 2011-10-19 厦门吉比特网络技术股份有限公司 分布式游戏服务器系统
CN102611705B (zh) * 2012-03-20 2015-09-23 广东电子工业研究院有限公司 一种通用计算账户管理系统及其实现方法
CN102968684A (zh) * 2012-10-26 2013-03-13 广东电子工业研究院有限公司 一种帐户信息资产交互方法
CN103049521B (zh) * 2012-12-19 2015-11-11 广东电子工业研究院有限公司 可实现多属性复合条件查询的虚拟表索引系统及方法
CN105045848B (zh) * 2015-06-30 2019-01-29 四川长虹电器股份有限公司 一种支持布尔表达式查询的数据库管理系统
CN105260160A (zh) 2015-09-25 2016-01-20 百度在线网络技术(北京)有限公司 一种用于输出语音信息的方法和装置
CN110414257A (zh) * 2018-04-26 2019-11-05 中移(苏州)软件技术有限公司 一种数据访问方法及服务器
CN109801035A (zh) * 2018-12-31 2019-05-24 苏州民源网络科技有限公司 一种创建海量社区信息数据库的方法
CN110472100A (zh) * 2019-08-13 2019-11-19 汇智点亮科技(北京)有限公司 数据管理方法、系统、电子终端、及存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005020102A1 (en) * 2003-08-14 2005-03-03 Oracle International Corporation Automatic and dynamic provisioning of databases
CN101040282A (zh) * 2004-08-13 2007-09-19 潘纳萨斯公司 将虚拟映射存入对象属性中的分布式基于对象的存储系统

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005020102A1 (en) * 2003-08-14 2005-03-03 Oracle International Corporation Automatic and dynamic provisioning of databases
CN101040282A (zh) * 2004-08-13 2007-09-19 潘纳萨斯公司 将虚拟映射存入对象属性中的分布式基于对象的存储系统

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
李伟等.一种网格资源空间模型及其应用.《计算机研究与发展》.2003,第40卷(第12期),1756-1762. *
郭域峰等.信息网格平台工作流程的实现.《计算机工程与应用》.2005,(第14期),153-155. *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012151944A1 (zh) * 2011-07-12 2012-11-15 中兴通讯股份有限公司 一种实现社区联合的方法和装置
US10063512B2 (en) 2011-07-12 2018-08-28 Zte Corporation Method and apparatus for realizing community federation

Also Published As

Publication number Publication date
CN101360123A (zh) 2009-02-04

Similar Documents

Publication Publication Date Title
CN101360123B (zh) 一种网络系统及其管理方法
CN104160381B (zh) 多租户环境中租户特定数据集的管理方法及其系统
US7853961B2 (en) Platform for data services across disparate application frameworks
US7987152B1 (en) Federation of clusters for enterprise data management
CN101410836B (zh) 向应用提供对存储在数据库中的数据的访问的方法
US9558207B1 (en) Versioning of database partition maps
US8386540B1 (en) Scalable relational database service
CN104067216B (zh) 用于实施可扩展数据存储服务的系统和方法
CN100573528C (zh) 数字博物馆网格及其构造方法
US8954480B2 (en) End-to-end interoperability and workflows from building architecture design to one or more simulations
US20070219976A1 (en) Extensible query language with support for rich data types
US7606813B1 (en) Model consolidation in a database schema
CN105094997B (zh) 一种云计算主机节点间物理内存共享方法和系统
CN101197026A (zh) 高性能访问控制系统中资源及其访问控制策略的设计与存储方法
CN101453379B (zh) 一种资源管理方法和系统
CN104781809A (zh) 容器数据库
CN101741614B (zh) 对等式结点管理器及对等式结点管理方法
CN102567932A (zh) 综合资源管理方法、装置和系统
CN111680041B (zh) 面向异构数据的安全高效存取方法
CN103631596A (zh) 业务对象数据录入及更新规则的配置装置和配置方法
CN107977446A (zh) 一种基于数据分区的内存网格数据加载方法
CN101945126A (zh) 森林资源异构数据分布式管理系统
CN105981033A (zh) 将放置策略分配给片段集合
CN109150964A (zh) 一种可迁移的数据管理方法及服务迁移方法
CN105339961A (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
C14 Grant of patent or utility model
GR01 Patent grant
ASS Succession or assignment of patent right

Owner name: G-CLOUD TECHNOLOGY CO., LTD.

Free format text: FORMER OWNER: INSTITUTE OF COMPUTING TECHNOLOGY, CHINESE ACADEMY OF SCIENCE

Effective date: 20120327

C41 Transfer of patent application or patent right or utility model
COR Change of bibliographic data

Free format text: CORRECT: ADDRESS; FROM: 100190 HAIDIAN, BEIJING TO: 523808 DONGGUAN, GUANGDONG PROVINCE

TR01 Transfer of patent right

Effective date of registration: 20120327

Address after: 523808 Guangdong province Dongguan City Songshan Lake Science and Technology Industrial Park Building No. 14 Keyuan pine

Patentee after: G-Cloud Technology Co., Ltd.

Address before: 100190 Haidian District, Zhongguancun Academy of Sciences, South Road, No. 6, No.

Patentee before: Institute of Computing Technology, Chinese Academy of Sciences

ASS Succession or assignment of patent right

Owner name: HAINAN NANHAI CLOUD INFORMATION TECHNOLOGY CO., LT

Free format text: FORMER OWNER: G-CLOUD TECHNOLOGY CO., LTD.

Effective date: 20131104

C41 Transfer of patent application or patent right or utility model
COR Change of bibliographic data

Free format text: CORRECT: ADDRESS; FROM: 523808 DONGGUAN, GUANGDONG PROVINCE TO: 571924 CHENGMAI, HAINAN PROVINCE

TR01 Transfer of patent right

Effective date of registration: 20131104

Address after: 571924 Hainan eco tech software park, old town, Chengmai County, Hainan province B-07 building

Patentee after: Hainan Nanhai cloud Information Technology Co., Ltd.

Address before: 523808 Guangdong province Dongguan City Songshan Lake Science and Technology Industrial Park Building No. 14 Keyuan pine

Patentee before: G-Cloud Technology Co., Ltd.

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

Granted publication date: 20110511

Termination date: 20170912

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