CN100440803C - 模型化处理网格信息的方法 - Google Patents
模型化处理网格信息的方法 Download PDFInfo
- Publication number
- CN100440803C CN100440803C CNB2005101325478A CN200510132547A CN100440803C CN 100440803 C CN100440803 C CN 100440803C CN B2005101325478 A CNB2005101325478 A CN B2005101325478A CN 200510132547 A CN200510132547 A CN 200510132547A CN 100440803 C CN100440803 C CN 100440803C
- Authority
- CN
- China
- Prior art keywords
- gridding information
- information model
- gridding
- model
- node
- 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
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种模型化处理网格信息的方法,语句解释器分析指令类型;对添加、修改和删除网格信息模型指令,语句解释器根据指令内容修改关系数据库;对修改和删除指令,同步处理器还更新网格信息节点;对查询指令,保存关联信息。通过本发明的系统和方法,实现了网格信息模型的动态添加、删除和修改;处理网格信息的系统不再受到存储资源信息的数目限制,具有较高的扩展性;保证了各个网格信息节点上网格信息模型的一致性。
Description
技术领域
本发明涉及一种模型化处理网格信息的方法,特别是一种动态更新资源信息的模型化处理网格信息的方法。
背景技术
随着互联网的日益普及和发展,以实现广域网环境下资源的共享和协同为目的的网格技术得到了蓬勃发展。因此,作为网格系统中的基础组件,负责管理网格中资源信息的网格信息服务系统,对其管理的有效性、便捷性等性能的要求也日益提高。
但是,由于网格资源的异构性和多样性,因此,对所有资源的信息进行有效的组织和管理成为网格界中各信息服务系统所要解决的首要问题。
在众多信息服务系统中,最著名的是Globus的MDS系列信息服务系统,包括元计算目录服务(Metacomputing Directory Service,简称MDS-1)和监控与发现服务(Monitoring and Discovery Service,包括MDS-2、MDS-3和MDS-4),其对资源进行组织的方法为:定义一些默认资源的描述格式Schema,比如计算机资源、服务等,并将这些Schema写入一个MDS节点的配置文件中;MDS将资源的信息存储在轻量级目录访问协议(LightweightDirectory Access Protocol,简称LDAP)数据库中,该存储格式必须遵照定义的Schema;然后采用XPath语句进行信息查询。可以看出,MDS中定义了一个类似模型的概念Schema,实现对预定类型信息的管理,但具有以下缺陷:
第一、可扩展性不好。由于Schema格式都需要预先定义,因此添加新种类资源的信息很不方便,比如,用户想添加一种网络资源的信息到一个MDS节点,必须首先修改该MDS节点的配置文件,添加该网络资源的Schema并重新启动MDS节点的服务器使其生效,然后才能插入网络资源的信息。这一过程很繁琐,特别是当用户想将该网络资源信息添加到另外一个MDS节点上时,还需要再次重复上面的工作。
第二、不具有同步性。当网格资源信息服务系统采用分布式结构时,要实现各网格信息节点上资源信息的共享,各网格信息节点上采用的信息描述存储方式必须一致。但对于Globus而言,当对一个MDS节点的配置文件进行的Schema定义或修改时,仅仅对该MDS节点生效,而对信息服务系统中的其他MDS节点无效,因此,一定时间之后,各个MDS节点上采用的Schema很可能不一致,导致针对不同的MDS节点进行查询时,需要采用不同的XPath查询语句,并因此导致MDS节点之间资源信息共享的障碍。
综上所述,网格信息服务需要具有良好扩展性和同步性的信息处理系统和方法,但目前还没有满足上述要求的技术方案。
发明内容
本发明的目的是为了克服上述缺陷,提出模型化处理网格信息的方法,通过动态更新网格信息模型,保证网格信息服务的可扩展性和各信息服务节点上网格信息模型的一致性。
为实现上述目的,本发明提供了一种模型化处理网格信息的方法,包括以下步骤:
a、当网格信息模型系统接收到一外部网格信息节点的指令时,上述网格信息模型系统内的语句解释器判断所述指令类型是否为添加网格信息模型指令,是则执行步骤b,否则执行步骤c;
b、所述语句解释器解析该指令,解析成功则根据该指令内容修改上述网格信息模型系统内的关系数据库,结束;
c、所述语句解释器判断所述指令类型是否为修改或删除网格信息模型指令,是则执行步骤d,否则执行步骤e;
d、所述语句解释器解析该指令,解析成功则根据该指令内容修改上述网格信息模型系统内的关系数据库,并通过上述网格信息模型系统内的同步处理器将所述关系数据库的变化同步给与该变化相关的网格信息节点,结束;
e、所述语句解释器判断所述指令类型是否为查询网格信息模型指令,是则执行步骤f,否则返回执行失败指令并结束;
f、所述语句解释器解析该指令,解析成功则判断所述外部网格信息节点是否为与所述网格信息模型相关联的网格信息节点,是则直接向所述外部网格信息节点返回要求的网格信息模型,否则保存所述外部网格信息节点和所述网格信息模型的关联信息,并向所述外部网格信息节点返回要求的网格信息模型,结束。
由上述技术方案可知,本发明通过网格信息模型化表述,采用网格信息模型动态更新,具有以下有益效果:
1、实现了网格信息模型的动态添加、删除和修改;
2、处理网格信息的系统不再受到存储资源信息的数目限制,能够组织和管理更多种类的信息,具有较高的扩展性;
3、保证了各个网格信息节点上网格信息模型的一致性,为网格资源信息共享提供了支持。
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
附图说明
图1为本发明网格信息模型系统所在网格环境的示意图;
图2为本发明的网格信息模型系统实施例1的系统框图;
图3为本发明的网格信息模型系统实施例2的系统框图;
图4为本发明模型化处理网格信息的方法的流程图;
图5为图4所示方法的实施例1的流程图;
图6为图4所示方法的实施例2的流程图;
图7为图4所示方法的实施例3的流程图;
图8为图4所示方法的实施例4的流程图。
具体实施方式
参见图1,为本发明网格信息模型系统所在网格环境的示意图,网格信息模型系统1运行在网格服务器2中,与多个网格信息节点31、32、33......3N通过IP网络连接。
该网格信息模型系统1为上述网格信息节点,包括管理员信息服务节点即最终用户,提供添加、删除、修改和查询接口,对网格资源中的网格信息模型进行统一管理。
所谓资源的信息模型,是描述资源的元数据,即描述资源信息的信息。比如,对于学生张三,其信息是:10003、张三、男、1982.01.01;对于学生李四,其信息是:10004、李四、女、1980.01.02,他们信息内容不一样,但都是从如下4个方面进行描述的:学号、姓名、性别和生日。把学号、姓名、性别和生日称为描述学生的信息模型,当上述信息模型作为网格资源提供时,就可以成为网格信息模型。网格信息模型系统1可对上述学生的网格信息模型进行管理。
其具体实施例1如图2所示,由接口11、语句解释器12、关系数据库13、同步处理器14组成。
其中,接口11与外部网格信息节点31......3N连接,接入上述网格信息节点31......3N,包括上述网格信息节点发起的添加、删除、修改或查询网格信息模型的指令。
语句解释器12与接口11连接,用于分析所述指令并完成添加、删除、修改或查询网格信息模型的操作。
该添加、删除、修改或查询可以采用本领域技术人员所知的,且网格信息节点可识别的任一语言编写,比如C++Builder,VB等。为了更有针对性地对网格信息模型进行操作,本发明还基于SQL语言定义了GIQL(GridInformation Query Language)语言,由GIQL语句完成网格信息模型的添加、删除、修改和查询指令,具体示例如下:
(1)添加网格信息模型
语法:“CREATE IM+模型名称+(属性名称+类型+[关键字]+[NOT NULL|NULL]+[UNIQUE]+[DESCRIPTION+描述])+[DESCRIPTION+描述]”;
示例:
CREATE IM testIM(cpu CHAR(10)NOT NULL DESCRIPTION‘this is a cpuinfo’,harddisk VARCHAR(40)NOT NULL,memory VARCHAR(20)NOT NULLDESCRIPTION‘this is the memory info’)DESCRIPTION‘this is a im forcomputer’;该语句创建了一个名为testIM的网格信息模型及其描述‘this isa im for computer’,有3个属性,分别是cpu、harddisk和memory。而且还定义了每个属性的类型以及他们的描述。
(2)修改网格信息模型,可以包含如下四种语法
语法(1):“ALTER IM+模型名称+MODIFY+[COLUMN]+属性名称+column_type”;column_type是“类型+[PRIMARY KEY]+[NOT NULL|NULL]+[UNIQUE]+[DESCRIPTION+描述]”;本语法的作用:修改网格信息模型的一个属性的类型;
示例:ALTER IM testIM MODIFY cpu VARCHAR(100)NOT NULL;该语句将testIM网格信息模型的cpu字段做了修改,改成了VARCHAR(100)NOT NULL类型;
语法(2):“ALTER IM+模型名称+CHANGE+[COLUMN]+原有名称+修改名称+修改类型”;本语法的作用:修改一个网格信息模型的属性,包括改属性名和改属性类型;
示例:ALTER IM testIM CHANGE COLUMN cpu newcpu VARCHAR(50)NOT NULLDESCRIPTION ‘this is a new cpu info’;将网格信息模型的原有的cpu属性,改名为newcpu属性,同时更改了该属性的类型;
语法(3):“ALTER IM+模型名称+ADD+[COLUMN]+属性名称+类型”;此处“类型”与语法(1)中的“类型”组成相同;本语法作用:为网格信息模型增加一个属性。
示例:ALTER IM test IM ADD os VARCHAR(20)DESCRIPTION‘the os info’;为网格信息模型添加了一个新的属性os;
语法(4):“ALTER IM+模型名称+DROP+[COLUMN]+属性名称”;本语法作用:删除网格信息模型的一个属性。
示例:ALTER IM test IM DROP os;该语句删除testIM网格信息模型的os属性;
可见,一个修改网格信息模型的语句支持多个操作,比如ALTER IMim_name DROP COLUMN column_name1,DROP COLUMN column_name2。
(3)删除网格信息模型
语法:“DROP IM+模型名称+[,模型名称,...]”;
示例:DROP IM testIM1,testIM2;删除网格信息模型。
(4)查询网格信息模型
语法(1):“SHOW IMs”;显示所有的网格信息模型的ID、名字以及描述;
语法(2):“SHOW IMPROPERTIES FROM模型名称”;显示指定网格信息模型的详细信息。包括该网格信息模型的属性的属性名,属性类型,描述等信息。
示例:SHOW IMPROPERTIES FROM testIM;显示testIM的所有属性。
基于上述GIQL语句实现添加、删除、修改和查询网格信息模型的过程中,同时可能需要相应的添加、删除、修改和查询信息的指令,该指令用GIQL语句编辑如下:
(1)添加信息
语法:“INSERT INTO+数据表名称+[(模型名称1,...)]+VALUES+(数据1,...)”;
示例:INSERT INTO test_table(name1,name2,name3)VALUES(data1,data2,data3)。
(2)删除信息
语法:“DELETE FROM+数据表名称+[WHERE+条件]”;
示例:DELETE FROM test_table WHERE name1>100。
(3)修改信息
语法:“UPDATE+数据表名称+SET名称1=表达式1,名称2=表达式2+[WHERE+条件]”;
示例:UPDATE test_table SET name1=1000,name2=’test’WHEREname1<500。
(4)查询信息
语法:“SELECT+数据表名称+FROM+数据表名称+[WHERE+条件][GROUPBY+模型名称,...]+[ORDER BY[模型名称][ASC|DESC],...]][LIMIT行数];该语法与SQL类似。
示例:SELECT name1,name2,name3,name4FROM test_table WHEREname1>1005 ORDER BY name2 LIMIT 100。
因此,本实施例中语言解释器12也可以称为GIQL解释器。
关系数据库13,与语句解释器12连接,用于保存网格资源的网格信息模型,并提供给语句解释器13进行调用或修改。除了本实施例中关系数据库13的设置方法外,该关系数据库13也可以独立于网格信息模型系统1,单独存放在网格服务器2中,其功能不发生改变。
同步处理器14,与关系数据库13及11接口连接,用于将关系数据库13的变化通过接口11同步给网格信息节点31......3N中与该变化相关的部分。
网格信息模型系统1的具体实施例2如图3所示,包括接口11、GIQL解释器12、关系数据库13、同步处理器14,还包括继承关系处理装置15和错误处理装置16。
在本实施例中,关系数据库13独立设置在网格服务器2中,但功能与上一实施例相同,具体的,为了对网格信息模型进行存储,该关系数据库13又分为:
一名称数据存储单元,记载了网格信息模型的编号、名称及功能描述;
一属性数据存储单元,记载了网格信息模型的编号、属性及属性的类;
一继承数据存储单元,记载了网格信息模型间的继承关系;
本实施例中,名称数据存储单元为数据表rlds_imlist,属性数据存储单元为数据表rlds_imdef,两个表之间通过网格信息模型的编号关联。比如“学生”网格信息模型,包括四个属性:学号、姓名、性别和生日。网格信息模型服务给“学生”网格信息模型分配一个唯一编号假设是123456。在表rlds_imlist中添加一条记录“123456,student,This is a IM forstudent.”,同时向表rlds_imdef添加四条记录,每条记录描述一个属性,对于属性“学号”,可以这么描述:“123456,NO.,VARCHAR(200),UNIQUE”。这样,通过这两个表,就能够得到“学生”网格信息模型的信息。
继承数据存储单元采用数据表rlds_servicehierarchy表示,当网格信息节点将网格信息模型定义为一个JavaBean类的时候,该继承数据存储单元可以通过JavaBean之间的继承关系实现网格信息模型继承关系。此时,资源信息节点需要输入其class文件即类文件,则数据表rlds_servicehierarchy保存class文件名称和模型编号,完成继承关系的存储。
继承关系处理装置15与GIQL解释器12连接,执行具有继承关系的指令的处理。比如,添加带有继承关系的网格信息模型具体为:将接收到的class文件保存在数据库中,然后将继承关系和class文件的名字存储在关系数据库13的数据表rlds_servicehierarchy中,完成带有继承关系的网格信息模型的发布。
错误处理装置16与GIQL处理器12连接,用于接收GIQL解释器12无法识别或执行的语句,并向发出该语句的网格信息节点通过接口11返回执行失败指令。
由上述实施例可以看出,网格中外部网格信息节点有多个,但是网格信息模型系统只有一个,后者为前者服务。显然,当网格范围扩大时,可以考虑在建立多个网格信息模型系统,分别为不同区域的外部网格信息节点服务。
基于上述网格信息模型系统,本发明提供了一种模型化处理网格信息的方法,参见图4,包括以下步骤:
a、当网格信息模型系统接收到一外部网格信息节点的指令时,语句解释器判断所述指令类型是否为添加网格信息模型指令,是则执行步骤b,否则执行步骤c;
b、语句解释器解析该指令,解析成功则根据该指令内容修改关系数据库,结束;
c、所述语句解释器判断所述指令类型是否为修改或删除网格信息模型指令,是则执行步骤d,否则执行步骤e;
d、所述语句解释器解析该指令,解析成功则根据该指令内容修改关系数据库,并通过同步处理器对与所述网格信息模型相关联的网格信息节点进行更新,结束;
e、所述语句解释器判断所述指令类型是否为查询网格信息模型指令,是则执行步骤f,否则返回执行失败指令并结束;
f、所述语句解释器解析该指令,解析成功则判断所述外部网格信息节点是否为与所述网格信息模型相关联的网格信息节点,是则直接向所述外部网格信息节点返回要求的网格信息模型,否则保存所述外部网格信息节点和所述网格信息模型的关联信息,并向所述外部网格信息节点返回要求的网格信息模型,结束。
为了满足网格信息服务的基本要求,步骤a之前,所述网格信息模型系统建立基本网格信息模型,并将所述基本网格信息模型的数据表插入关系数据库中。比如,可以预先建立3个基本的网格信息模型,分别是计算节点静态资源信息模型、计算节点动态资源信息模型和服务信息模型。上述这些基本网格信息模型即建立成为默认网格信息模型,其实现过程是,首先从数据库的角度设计出存储这3类资源信息的数据表,然后将数据表的信息插入到数据表rlds_imlist和数据表rlds_imdef中。
步骤b或d中的解析为将GIQL指令解析为SQL语句,修改关系数据库为:在名称数据存储单元和属性数据存储单元中添加、修改和删除所述网格信息模型的记录。
步骤c中判断所述指令类型是否为修改或删除网格信息模型指令可以按照先判断是否修改网格信息模型指令,是则执行步骤d,否则再判断是否删除网格信息模型指令的顺序来进行。
步骤d中同步处理器对与所述网格信息模型相关联的网格信息节点进行更新的方法具体为:
d1、同步处理器依次调用与所述网格信息模型相关联的网格信息节点;
d2、对调用成功的节点进行修改或删除其中所述网格信息模型的操作;
d3、保存调用不成功的节点地址,重新执行步骤d1。
步骤f中返回要求的网格信息模型的具体操作为:返回名称数据存储单元中的编号、名称及功能描述;或者,返回名称数据存储单元和属性数据存储单元的联合信息,包括编号、名称、功能描述以及属性及属性的类。
虽然本发明提供的方法是按照添加、修改、删除和查询的顺序依次判断指令类型,但本领域技术人员应当能够理解,上述顺序可以任意调整而不影响本发明技术方案的实施。本领域技术人员也可以采用非顺序的方法对指令类型加以判断识别,比如通过提取字段直接识别指令类型,其均应认为包含在本发明所述的技术方案中。
参见图5,为本发明模型化处理网格信息的方法的实施例1的流程图,具体为添加一个网格信息模型,包括以下步骤:
步骤101、网格信息模型系统接收到一外部网格信息节点A的指令;
步骤102、语句解释器判断所述指令类型为添加网格信息模型指令;
步骤103、语句解释器解析该指令,解析成功,执行步骤104,否则执行步骤107;
步骤104、执行解析后得到的SQL语句,即在名称数据存储单元和属性数据存储单元中添加所述网格信息模型aa的记录;
步骤105、执行成功,执行步骤106,否则执行步骤107;
步骤106、返回成功指令并结束;
步骤107、控制权转移给错误处理装置,错误处理装置向网格信息节点A返回执行失败指令并结束。
参见图6,为本发明模型化处理网格信息的方法的实施例2的流程图,具体为修改一个网格信息模型,包括以下步骤:
步骤201、网格信息模型系统接收到一外部网格信息节点B的指令;
步骤202、语句解释器首先判断所述指令类型不是添加网格信息模型aa指令,依序判断出该指令为修改网格信息模型aa指令;
步骤203、语句解释器解析该指令,解析成功,执行步骤204,否则执行步骤208;
步骤204、执行解析后得到的SQL语句,即在名称数据存储单元和属性数据存储单元中修改所述网格信息模型aa的记录;
步骤205、执行成功,返回成功指令,否则执行步骤208;
步骤206、依次调用与网格信息模型aa关联的网格信息节点,本实施例中为A和C,调用成功,执行步骤207,否则重新执行步骤206;
步骤207、对网格信息节点A和C进行同步所述网格信息模型aa的操作并结束;
步骤208、控制权转移给错误处理装置,错误处理装置向网格信息节点A返回执行失败指令并结束。
在本实施例中,也可以进行删除操作,其操作过程相同。
其中,进行更新的操作具体是指:网格信息模型系统在针对修改或删除指令,启动一个守护线程遍历与被修改或删除网格信息模型相关联的网格信息节点A、B和C,而不是发送给所有与网格信息系统相连的网格信息节点,以节约系统资源。比如,当用户删除网格信息模型2时,网格信息模型系统启动一个守护线程,检测该网格信息模型2对应的网格信息节点,包括网格信息节点B,还包括网格节点D、E。从内存中取出与网格信息节点B、D和E的信息,依次通知他们“网格信息模型已经被删除了,请做相应的调整”。如果全部通知成功,就将该网格信息模型2的名字从被删除的网格信息模型列表中删除,表示关于该网格信息模型的一致性维护工作已经完成。如果有部分通知失败,那么等候5分钟后,会继续通知。对于有被修改的网格信息模型,会具有同样的处理流程。
显然,技术人员也可以进行其他设定来定义需要更新的网格信息节点列表。
通过本实施例可以看出,当网格信息模型系统中的网格信息模型发生变化,包括修改以及删除时,网格信息模型系统保存了网格信息模型和对网格信息模型进行操作的GIQL指令的对应关系,即网格信息节点A修改了网格信息模型1,那么修改的GIQL指令与网格信息模型1的关系也会被保存。同时,网格信息模型系统能够及时通知与变化的网格信息模型相关联的信息服务节点,而每个网格信息模型和与之相关联的网格信息节点的对应关系的保存,是在处理查询指令时进行的。例如,网格信息节点A查询网格信息模型1,就表示网格信息节点A与网格信息模型1相关,该对应关系“网格信息节点A-网格信息模型1”会被保存。则当用户通过某网格信息节点B修改该网格信息模型1时,网格信息模型系统记住被修改的网格信息模型1的名字以及修改网格信息模型时用的GIQL语句的对应关系,并更新与网格信息模型1关联的网格信息节点A。
参见图7,为本发明模型化处理网格信息的方法的实施例3的流程图,具体为查询一个网格信息模型,包括以下步骤:
步骤301、网格信息模型系统接收到一外部网格信息节点C的指令;
步骤302、语句解释器首先判断所述指令类型不是添加网格信息模型aa指令;
步骤303、语句解释器判断所述指令类型不是修改网格信息模型aa指令;
步骤304、语句解释器判断所述指令类型不是删除网格信息模型aa指令;
步骤305、语句解释器分析所述指令类型为查询网格信息模型aa指令;
步骤306、语句解释器解析该指令的GIQL语句,解析成功,执行步骤307,否则执行步骤310;
步骤307、语句解释器判断所述外部网格信息节点C是否为与所述网格信息模型aa相关联的网格信息节点,是则执行步骤308,否则执行步骤309;
步骤308、保存所述外部网格信息节点C和所述网格信息模型aa的关联信息;
步骤309、执行解释后得SQL语句,具体为向网格信息节点C返回查询结果ResultSet对象并结束;
步骤310、向网格信息节点C返回执行失败指令并结束;
网格信息模型服务支持两种查询方式,即返回的查询结果ResultSet对象有两种结构。一是查询结果ResultSet对象显示当前网格信息模型服务中所有的网格信息模型的基本信息,包括网格信息模型编号、名字以及描述,相当于SQL的“Show tables”语句。二是查询结果ResultSet对象显示某个特定网格信息模型的详细信息,包括网格信息模型的所有字段的信息,相当于SQL的“Show columns from xxx_table”语句。和用程序访问数据库一样,查询网格信息模型服务服务得到的结果也是以一个ResultSet对象。对于第一种查询,就返回表rlds_imlist表的信息。对于第二种查询,需要进行两个表的联合查询。
接收到查询结果后,外部网格信息节点建立数据表保存所述网格信息模型的定义;所述外部网格信息节点按照所述网格信息模型实现信息的存储。
比如,当信息服务节点需要存储计算节点静态资源信息时,如果没有本地没有这个网格信息模型,就会查询网格信息模型服务,获取计算节点静态网格信息模型的定义,然后在本地建立数据表保存所述网格信息模型的定义,外部网格信息节点按照所述网格信息模型实现信息的存储。
参见图8,为本发明模型化处理网格信息的方法的实施例4的流程图,添加一个带有继承关系的网格信息模型。
网格信息模型被描述成一个JavaBean,添加该网格信息模型的网格信息节点需要提供该JavaBean的class文件。
在网格信息模型系统中,除了要保存网格信息模型的定义外,还需要保存网格信息模型的继承关系以及对应的class文件,所以特别定义了第三个表:rlds_servicehierarchy。
为了方便用户发布带有继承关系的网格信息模型,我们可以预先设置一个客户端,用户只需要输入class文件即可。由客户端根据class文件的内容生成插入网格信息模型的GIQL语句、class文件的SOAP附件、网格信息模型的父网格信息模型等信息,然后调用网格信息模型系统的添加继承关系网格信息模型的接口。该添加过程具体包括以下步骤:
步骤401、网格信息模型系统接收一外部网格信息节点C的指令;
步骤402、语句解释器分析所述指令类型为添加具有继承关系的网格信息模型bb的指令;
步骤403、语句解释器获取参数,包括GIQL语句、父网格信息模型名以及class文件;
步骤404、解析该指令,判断该参数是否合法,是则执行步骤405,否则执行步骤410;
步骤405、语句解释器判断所述模型的父网格信息模型是否存在;如果所述父网格信息模型存在,执行步骤406,否则执行步骤410;
步骤406、执行解析后参数中的SQL语句,即所述模型的继承关系存储在继承数据存储单元中;
步骤407、执行成功,执行步骤408,否则执行步骤410;
步骤408、将class文件存储在本地,将继承关系和class文件的名字存储在表rlds_servicehierarchy中,并保存所述模型到名称数据存储单元和属性数据存储单元;
步骤409、返回成功指令并结束;
步骤410、转移到错误处理装置,向所述外部网格信息节点返回执行失败指令结束。
这样,完成了带有继承关系的网格信息模型的发布。
本实施例中,当所述指令类型为修改或删除具有继承关系的模型时,修改关系数据库具体为:在继承数据存储单元中修改或删除所述模型的继承关系,并在名称数据存储单元和属性数据存储单元中修改或删除所述网格信息模型的记录。
最后所应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明技术方案的精神和范围。
Claims (8)
1、一种模型化处理网格信息的方法,其特征在于包括以下步骤:
a、当网格信息模型系统接收到一外部网格信息节点的指令时,上述网格信息模型系统内的语句解释器判断所述指令类型是否为添加网格信息模型指令,是则执行步骤b,否则执行步骤c;
b、所述语句解释器解析该指令,解析成功则根据该指令内容修改上述网格信息模型系统内的关系数据库,结束;
c、所述语句解释器判断所述指令类型是否为修改或删除网格信息模型指令,是则执行步骤d,否则执行步骤e;
d、所述语句解释器解析该指令,解析成功则根据该指令内容修改上述网格信息模型系统内的关系数据库,并通过上述网格信息模型系统内的同步处理器将所述关系数据库的变化同步给与该变化相关的网格信息节点,结束;
e、所述语句解释器判断所述指令类型是否为查询网格信息模型指令,是则执行步骤f,否则返回执行失败指令并结束;
f、所述语句解释器解析该指令,解析成功则判断所述外部网格信息节点是否为与所述网格信息模型相关联的网格信息节点,是则直接向所述外部网格信息节点返回要求的网格信息模型,否则保存所述外部网格信息节点和所述网格信息模型的关联信息,并向所述外部网格信息节点返回要求的网格信息模型,结束。
2、根据权利要求1所述的方法,其特征在于步骤a之前,所述网格信息模型系统建立默认网格信息模型,并将所述默认网格信息模型的数据表插入关系数据库中。
3、根据权利要求1所述的方法,其特征在于所述步骤b中修改关系数据库为:在名称数据存储单元和属性数据存储单元中添加所述网格信息模型的记录。
4、根据权利要求1所述的方法,其特征在于所述步骤d中修改关系数据库为:在名称数据存储单元和属性数据存储单元中修改和删除所述网格信息模型的记录。
5、根据权利要求1或3所述的方法,其特征在于当所述指令类型为添加具有继承关系的模型时,所述修改关系数据库具体为:
所述语句解释器判断所述模型的父信息模型是否存在;
如果所述父信息模型存在,则将所述模型的继承关系存储在继承数据存储单元中,并保存所述模型到名称数据存储单元和属性数据存储单元;
所述父信息模型不存在,则转移到错误处理装置,向所述外部网格信息节点返回执行失败指令。
6、根据权利要求1或4所述的方法,其特征在于当所述指令类型为修改或删除具有继承关系的模型时,所述修改关系数据库具体为:在继承数据存储单元中修改或删除所述模型的继承关系,并在名称数据存储单元和属性数据存储单元中修改或删除所述网格信息模型的记录。
7、根据权利要求1所述的方法,其特征在于所述步骤d中同步处理器对与所述网格信息模型相关联的网格信息节点进行更新的方法具体为:
d1、同步处理器依次调用与所述网格信息模型相关联的网格信息节点;
d2、对调用成功的节点进行修改或删除其中所述网格信息模型的操作;
d3、保存调用不成功的节点地址,重新执行步骤d1。
8、根据权利要求1所述的方法,其特征在于所述步骤f中返回要求的网格信息模型的具体操作为:返回名称数据存储单元中的编号、名称及功能描述;或者,返回名称数据存储单元和属性数据存储单元的联合信息,包括编号、名称、功能描述以及属性及属性的类。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2005101325478A CN100440803C (zh) | 2005-12-26 | 2005-12-26 | 模型化处理网格信息的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2005101325478A CN100440803C (zh) | 2005-12-26 | 2005-12-26 | 模型化处理网格信息的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1791027A CN1791027A (zh) | 2006-06-21 |
CN100440803C true CN100440803C (zh) | 2008-12-03 |
Family
ID=36788550
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2005101325478A Expired - Fee Related CN100440803C (zh) | 2005-12-26 | 2005-12-26 | 模型化处理网格信息的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100440803C (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100452726C (zh) * | 2007-06-08 | 2009-01-14 | 清华大学 | 模型化的网格资源定位方法 |
CN101179592B (zh) * | 2007-11-28 | 2010-11-10 | 浙江大学 | 一种移动设备接入网格的方法 |
CN101605059B (zh) * | 2009-07-14 | 2012-07-04 | 中兴通讯股份有限公司 | 用于处理关联删除的方法和装置 |
CN103942322A (zh) * | 2014-04-28 | 2014-07-23 | 国家电网公司 | 一种基于xml文件的配网模型差异数据合并方法 |
CN107506403B (zh) * | 2017-08-03 | 2020-06-23 | 国网江苏省电力公司信息通信分公司 | 一种网格化信息系统及数据同步变动方法 |
CN112395682B (zh) * | 2019-07-31 | 2024-10-11 | 比亚迪股份有限公司 | 网格模型的单元继承方法、装置、电子设备及存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1412978A (zh) * | 2001-10-19 | 2003-04-23 | 上海贝尔有限公司 | 用于数字数据网接入模块的管理指配控件及其控制方法 |
WO2003083713A1 (en) * | 2002-03-28 | 2003-10-09 | Lion Bioscience Ag | Method and apparatus for querying relational databases |
-
2005
- 2005-12-26 CN CNB2005101325478A patent/CN100440803C/zh not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1412978A (zh) * | 2001-10-19 | 2003-04-23 | 上海贝尔有限公司 | 用于数字数据网接入模块的管理指配控件及其控制方法 |
WO2003083713A1 (en) * | 2002-03-28 | 2003-10-09 | Lion Bioscience Ag | Method and apparatus for querying relational databases |
Non-Patent Citations (6)
Title |
---|
Web-published data searching system for grid environment. Sangkeon Lee,Seogchan Hwang,JaeyoungChoi,HyeongwooPark.High Performance Computing and Grid in Asia Pacific Region, 2004. Proceedings.. 2004 |
Web-published data searching system for grid environment. Sangkeon Lee,Seogchan Hwang,JaeyoungChoi,HyeongwooPark.High Performance Computing and Grid in Asia Pacific Region, 2004. Proceedings.. 2004 * |
基于OGSA的网格数据库服务系统的研究与实现. 鲍隐韬.东北大学硕士学位论文. 2005 |
基于OGSA的网格数据库服务系统的研究与实现. 鲍隐韬.东北大学硕士学位论文. 2005 * |
网格数据库访问与集成的研究与实现. 候文国.广东工业大学工学硕士学位论文. 2005 |
网格数据库访问与集成的研究与实现. 候文国.广东工业大学工学硕士学位论文. 2005 * |
Also Published As
Publication number | Publication date |
---|---|
CN1791027A (zh) | 2006-06-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2019210758A1 (zh) | 数据保护方法、装置及存储介质 | |
US9280568B2 (en) | Zero downtime schema evolution | |
KR102177190B1 (ko) | 유연한 스키마를 사용한 데이터 관리 | |
WO2023087673A1 (zh) | 一种层次数据检索方法、装置和设备 | |
US7970823B2 (en) | System for sharing data objects among applications | |
US8745076B2 (en) | Structured query language syntax rewriting | |
US8838654B1 (en) | Data modeling system for runtime schema extensibility | |
CN101493825B (zh) | 一种gis中间件配置管理方法 | |
CN100440803C (zh) | 模型化处理网格信息的方法 | |
US20050234878A1 (en) | Method of managing and providing parameterized queries | |
CN111881223B (zh) | 数据管理方法、设备、系统及存储介质 | |
US9805137B2 (en) | Virtualizing schema relations over a single database relation | |
JP2001051879A (ja) | 非関係データベースへの改良されたアクセスのための方法およびシステム | |
CN110046170B (zh) | 基于多文件管理的语句执行方法、装置、设备和介质 | |
WO2000079429A1 (en) | Method and apparatus for supporting dynamic run-time object definition in a relational database management system | |
JP2022543306A (ja) | ブロックチェーンデータ処理の方法、装置、機器及び可読記憶媒体 | |
WO2024113740A1 (zh) | 数据查询方法、系统、设备及计算机可读存储介质 | |
CN113515564A (zh) | 基于j2ee的数据访问方法、装置、设备及存储介质 | |
US7958154B2 (en) | Apparatus, system, and method for command manager support for pluggable data formats | |
CN103177046B (zh) | 一种基于行存储数据库的数据处理方法和设备 | |
US20100235380A1 (en) | Data processing method, apparatus and program | |
CN114969441A (zh) | 基于图数据库的知识挖掘引擎系统 | |
CN105205103A (zh) | 访问数据库的方法和装置 | |
CN102521408B (zh) | 一种通过jdbc接口访问平面文件的方法 | |
WO2022242635A1 (zh) | 维护用sql记录的管理装置及应用系统 |
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 | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20081203 Termination date: 20121226 |