论文部分内容阅读
摘要:提出了一种基于语义的网格资源管理系统(S-GRM),利用语义元数据来描述和发现网格资源。将元件查找应用到网格环境中,通过资源管理综合透视图来查找节点。结合ProActive网格中间件,提出了实现该系统的模型。研究表明该系统能提高元件的再利用率,增加从可用资源列表中选择合适资源的机会。
关键词:网格;资源管理;语义;本体;查找
语义网格是使用语义数据模型来描述计算资源和网格服务的,因为语义数据模型能发现和自动查找满足网格服务要求的计算资源。目前语义网格存在的主要问题是不能找到所有与资源请求相匹配的资源。通过引入语义元数据,在资源查找过程中采用模糊匹配可以解决上述问题。
1基于元件的网格应用程序开发
根据资源请求的函数性,采用GIDE开发工具,我们开发出一种基于元件的ProActive调度程序。该调度程序由多个GCM元件构成,这些GCM元件又构成元件模型。网格用户通过集成网格元件构成网格应用。ProActive调度程序可以调用网格上的任何一个节点。当资源请求传递给ProActive调度程序,ProActive调度程序首先将它分解为许多子任务并添加到作业管理队列中,然后再调用ProActive资源管理程序来获取可用ProActive节点信息,并存储所有可用节点,分配资源请求给这些节点。
目前已存在的基于语义的资源查找方法都只考虑物理资源,忽略逻辑资源。且这些方法还受到网格中间件的限制,并不实用。本文介绍的资源查找方法不仅解决了上述问题还将所有的物理资源、逻辑资源都透明地、一致地存储在元件库中。
2系统结构
系统结构既包含逻辑资源又包含物理资源。GCM元件是逻辑资源。利用语义来管理它,能有效地发现GCM元件并添加到复杂网格应用中。ProActive节点属于物理资源,可以直接执行网格应用。本文涉及结构及关键模块之间的相互关系如图1所示。
注:图中粗斜体文字说明的模块为本文涉及部分
图1 基于语义的网格资源管理(S-GRM)系统
2.1 语义元件信息生成程序
语义元件信息生成程序用来获取元件信息并产生语义元数据。网格用户设计和发展新元件并添加到语义注册表以便将来供其他用户和自身查找和使用。元件的语义信息是由Protégé OWL API以本体的形式产生。GCM元件的语义描述被存储在语义注册表中。语义注册表能产生如下格式的逻辑资源信息。
Encryption advertisement: Domain >
Descomp advertisement: Grid Component >
used to encrypt using des encryption advertisement: Functionality >
Data security Application advertisement: GCM Application >
DES advertisement: Algorithm >
DESAO advertisement: Active Object >
Java Executable advertisement: Executable Type>
advertisement: Logical Resource Advertisement >
2.2 语义结点的发现
与传统资源发现不同的是,语义匹配是由语义资源管理系统来完成。语义资源发现模块根据下面4种规则来发现和选择资源:
(1)资源静态选择:过滤掉与用户要求不相匹配静态资源信息。
(2)验证策略:没有被授权的用户不能访问网格上的资源。
(3)筛选资源状况:过滤掉那些用到时才被载入或因内存不够而淘汰的资源。资源被筛选之前要进行身份验证,防止那些没有被授权的用户获取动态资源信息。
(4)资源顺序:根据资源请求的匹配程度对已被发现资源进行分类。根据概念之间的关系定义资源顺序。资源请求和资源描述有多种匹配形式,如精确匹配、包含匹配、插入匹配或不匹配等。
资源管理程序把资源列表顶部的资源提供给资源调度机,由资源调度机分配给所需的节点。
2.3 语义资源存储库
语义资源存储库由资源知识库、Pellet推理系统和资源高速缓存3部分组成。资源知识库既包括逻辑资源信息又包括物理资源信息。知识库中的语义元数据是通过一种标准的W3C本体语言—OWL进行组织。逻辑资源和物理资源信息分别存储在不同的本体库中。逻辑资源的存储格式如图2所示。物理资源的存储格式参照文献[3]。通过Protégé OWL API获取资源信息和填充本体模块。资源都是分层表示的,层次结构中每个节点都表示一种资源信息。
图2 逻辑资源存储格式
3 系统评价
通过实验,提出该系统的实现模型。系统评价是在由11种机器构成测试床的基础上运行的。具体的机器信息见表1。
表1测试床的具体信息
节点名称/IP 节点的详细信息-操作系统(处理器、硬盘和内存)
http://www.cumt.edu.cn/ Windows XP on Intel Pentium 4 [1.8, 80, 1024]
niit.edu.pk Windows XP on Intel Celeron [1.6, 10, 512]
172.18.12.210 Windows XP on Intel Core2Due [2.0, 120,2048]
172.18.12.216 Windows XP on Intel Pentium 4 [2.4, 20, 128]
http://www.jnzjxy.com.cn Windows Vista on Intel DualCore [2.0,120,1024]
172.18.12.1 Windows Vista on Intel Pentium 4 [2.2, 20, 256]
172.18.9.1 Fedora Core 4 on Intel Pentium 4 [1.6, 20, 256]
172.18.12.149 Fedora Core 4 on Intel Pentium 4 [2.4, 40, 256]
172.18.12.10 Suse 10 on Intel Pentium 4 [1.8, 40, 256]
172.18.12.23 Suse 10 on Intel DualCore [1.6, 40, 256]
172.18.12.12 Sun Solaris on Intel [1.2, 40,256]
所有机器都装有如下所示相同的软件元件:
3.1 ProActive调度机
3.2 ProActive资源管理程序
3.3 ProActive网格中间设备
3.4 动态本体描述语言—Protégé OWL API
3.5 RacerPro推理系统
对能产生GCM应用并把它提交到ProActive调度机的机器来说,Grid IDE是可用的。我们使用安全数据和加密数据分别测试所开发的原型。对数据加密后,在存储库中执行DES算法来检索DES元件。在基于语法的资源管理系统采用相同的方法查找GCM元件。在资源查找过程中,检索到语法系统和语义系统中各种相关或不相关的元件见表2。从表2可以看出采用语义查找到的相关元件的个数要多于语法查找,不相关元件的格式要明显少于语法查找。因此语义查找增加从可用资源列表中选择合适资源的机会。
表2 语法和语义系统中检索格式
检索组件 基于语法 基于语义
相关元件 不相关元件 相关元件 不相关元件
encryption 10 14 910
symmetriccipher 8 116 7
blockcipher 5 8 7 5
desencryption 4 8 6 6
aesencryption 5 6 8 4
streamcipher 4 6 6 5
rc4 3 5 3 3
asymmetric5`7 4 5
rsa 2 3 3 2
hash 3 4 4 3
md5 2 2 3 2
vegenere cipher 1 1 3 1
Total 527547 53
根据查全公式,采用精确匹配查找逻辑资源能计算出系统进行资源查找效率的精确值。图3表明Precision系统的效率提高了19.3%(0.877-0.684),Recall系统的效率提高了10.3%(0.846-0.743)。
图3 系统性能测量
研究表明语义查找检索到的资源数量多于语法查找(如图4所示)。这是因为使用语法查找资源时,那些不满足需要的资源仍旧显示在可用资源列表中,但语义查找就不再显示。例如在Windows操作系统中采用语义进行资源查找,能找到7个满足需要的节点,而采用语法进行资源查找就只能找到2个(如图4所示)。此外,基于语义的资源查找系统既适合常见的XP,Vista等Windows操作系统,还适合Linux,FedoraCore和Suse操作系统。
图4 两种检索方式检索到节点数量的比较
4结束语
本文提出一种基于语义的网格资源管理系统。该系统对逻辑资源进行分类,通过ProActive节点查找逻辑资源。文中对所提的结构和资源查找方法进行了详细的描述。研究表明基于语义的网格资源管理系统提高了资源查找的准确性和元件的再利用率,增加了资源管理者查找可用资源的机会,提高了作业执行的可能性。
为了使Web服务具有自动发现服务的功能,引入了Web服务建模语言(WSML)—一种新兴的语义网页语言,用它来指定Web服务的语义信息。下一步需要做的工作是把WSML应用到网格资源发现和构建知识库中去。
参考文献
[1]OASIS Research Team. ProActive scheduler and resource manager[EB/OL].http://proactive.inria.fr/release-doc/html/ProActive_Scheduler.html (January 2008)
[2]Professional open source middleware for parallel, distributed, multithreaded programming[EB/OL].http://proactive.inria.fr (March 2008)
[3]Kamran Qadir, Falak Nawaz. Semantically enhanced grid resource management[J].IEEE Xplore, 2009, 7:220-226
关键词:网格;资源管理;语义;本体;查找
语义网格是使用语义数据模型来描述计算资源和网格服务的,因为语义数据模型能发现和自动查找满足网格服务要求的计算资源。目前语义网格存在的主要问题是不能找到所有与资源请求相匹配的资源。通过引入语义元数据,在资源查找过程中采用模糊匹配可以解决上述问题。
1基于元件的网格应用程序开发
根据资源请求的函数性,采用GIDE开发工具,我们开发出一种基于元件的ProActive调度程序。该调度程序由多个GCM元件构成,这些GCM元件又构成元件模型。网格用户通过集成网格元件构成网格应用。ProActive调度程序可以调用网格上的任何一个节点。当资源请求传递给ProActive调度程序,ProActive调度程序首先将它分解为许多子任务并添加到作业管理队列中,然后再调用ProActive资源管理程序来获取可用ProActive节点信息,并存储所有可用节点,分配资源请求给这些节点。
目前已存在的基于语义的资源查找方法都只考虑物理资源,忽略逻辑资源。且这些方法还受到网格中间件的限制,并不实用。本文介绍的资源查找方法不仅解决了上述问题还将所有的物理资源、逻辑资源都透明地、一致地存储在元件库中。
2系统结构
系统结构既包含逻辑资源又包含物理资源。GCM元件是逻辑资源。利用语义来管理它,能有效地发现GCM元件并添加到复杂网格应用中。ProActive节点属于物理资源,可以直接执行网格应用。本文涉及结构及关键模块之间的相互关系如图1所示。
注:图中粗斜体文字说明的模块为本文涉及部分
图1 基于语义的网格资源管理(S-GRM)系统
2.1 语义元件信息生成程序
语义元件信息生成程序用来获取元件信息并产生语义元数据。网格用户设计和发展新元件并添加到语义注册表以便将来供其他用户和自身查找和使用。元件的语义信息是由Protégé OWL API以本体的形式产生。GCM元件的语义描述被存储在语义注册表中。语义注册表能产生如下格式的逻辑资源信息。
Encryption advertisement: Domain >
Descomp advertisement: Grid Component >
used to encrypt using des encryption advertisement: Functionality >
Data security Application advertisement: GCM Application >
DES advertisement: Algorithm >
DESAO advertisement: Active Object >
Java Executable advertisement: Executable Type>
advertisement: Logical Resource Advertisement >
2.2 语义结点的发现
与传统资源发现不同的是,语义匹配是由语义资源管理系统来完成。语义资源发现模块根据下面4种规则来发现和选择资源:
(1)资源静态选择:过滤掉与用户要求不相匹配静态资源信息。
(2)验证策略:没有被授权的用户不能访问网格上的资源。
(3)筛选资源状况:过滤掉那些用到时才被载入或因内存不够而淘汰的资源。资源被筛选之前要进行身份验证,防止那些没有被授权的用户获取动态资源信息。
(4)资源顺序:根据资源请求的匹配程度对已被发现资源进行分类。根据概念之间的关系定义资源顺序。资源请求和资源描述有多种匹配形式,如精确匹配、包含匹配、插入匹配或不匹配等。
资源管理程序把资源列表顶部的资源提供给资源调度机,由资源调度机分配给所需的节点。
2.3 语义资源存储库
语义资源存储库由资源知识库、Pellet推理系统和资源高速缓存3部分组成。资源知识库既包括逻辑资源信息又包括物理资源信息。知识库中的语义元数据是通过一种标准的W3C本体语言—OWL进行组织。逻辑资源和物理资源信息分别存储在不同的本体库中。逻辑资源的存储格式如图2所示。物理资源的存储格式参照文献[3]。通过Protégé OWL API获取资源信息和填充本体模块。资源都是分层表示的,层次结构中每个节点都表示一种资源信息。
图2 逻辑资源存储格式
3 系统评价
通过实验,提出该系统的实现模型。系统评价是在由11种机器构成测试床的基础上运行的。具体的机器信息见表1。
表1测试床的具体信息
节点名称/IP 节点的详细信息-操作系统(处理器、硬盘和内存)
http://www.cumt.edu.cn/ Windows XP on Intel Pentium 4 [1.8, 80, 1024]
niit.edu.pk Windows XP on Intel Celeron [1.6, 10, 512]
172.18.12.210 Windows XP on Intel Core2Due [2.0, 120,2048]
172.18.12.216 Windows XP on Intel Pentium 4 [2.4, 20, 128]
http://www.jnzjxy.com.cn Windows Vista on Intel DualCore [2.0,120,1024]
172.18.12.1 Windows Vista on Intel Pentium 4 [2.2, 20, 256]
172.18.9.1 Fedora Core 4 on Intel Pentium 4 [1.6, 20, 256]
172.18.12.149 Fedora Core 4 on Intel Pentium 4 [2.4, 40, 256]
172.18.12.10 Suse 10 on Intel Pentium 4 [1.8, 40, 256]
172.18.12.23 Suse 10 on Intel DualCore [1.6, 40, 256]
172.18.12.12 Sun Solaris on Intel [1.2, 40,256]
所有机器都装有如下所示相同的软件元件:
3.1 ProActive调度机
3.2 ProActive资源管理程序
3.3 ProActive网格中间设备
3.4 动态本体描述语言—Protégé OWL API
3.5 RacerPro推理系统
对能产生GCM应用并把它提交到ProActive调度机的机器来说,Grid IDE是可用的。我们使用安全数据和加密数据分别测试所开发的原型。对数据加密后,在存储库中执行DES算法来检索DES元件。在基于语法的资源管理系统采用相同的方法查找GCM元件。在资源查找过程中,检索到语法系统和语义系统中各种相关或不相关的元件见表2。从表2可以看出采用语义查找到的相关元件的个数要多于语法查找,不相关元件的格式要明显少于语法查找。因此语义查找增加从可用资源列表中选择合适资源的机会。
表2 语法和语义系统中检索格式
检索组件 基于语法 基于语义
相关元件 不相关元件 相关元件 不相关元件
encryption 10 14 910
symmetriccipher 8 116 7
blockcipher 5 8 7 5
desencryption 4 8 6 6
aesencryption 5 6 8 4
streamcipher 4 6 6 5
rc4 3 5 3 3
asymmetric5`7 4 5
rsa 2 3 3 2
hash 3 4 4 3
md5 2 2 3 2
vegenere cipher 1 1 3 1
Total 527547 53
根据查全公式,采用精确匹配查找逻辑资源能计算出系统进行资源查找效率的精确值。图3表明Precision系统的效率提高了19.3%(0.877-0.684),Recall系统的效率提高了10.3%(0.846-0.743)。
图3 系统性能测量
研究表明语义查找检索到的资源数量多于语法查找(如图4所示)。这是因为使用语法查找资源时,那些不满足需要的资源仍旧显示在可用资源列表中,但语义查找就不再显示。例如在Windows操作系统中采用语义进行资源查找,能找到7个满足需要的节点,而采用语法进行资源查找就只能找到2个(如图4所示)。此外,基于语义的资源查找系统既适合常见的XP,Vista等Windows操作系统,还适合Linux,FedoraCore和Suse操作系统。
图4 两种检索方式检索到节点数量的比较
4结束语
本文提出一种基于语义的网格资源管理系统。该系统对逻辑资源进行分类,通过ProActive节点查找逻辑资源。文中对所提的结构和资源查找方法进行了详细的描述。研究表明基于语义的网格资源管理系统提高了资源查找的准确性和元件的再利用率,增加了资源管理者查找可用资源的机会,提高了作业执行的可能性。
为了使Web服务具有自动发现服务的功能,引入了Web服务建模语言(WSML)—一种新兴的语义网页语言,用它来指定Web服务的语义信息。下一步需要做的工作是把WSML应用到网格资源发现和构建知识库中去。
参考文献
[1]OASIS Research Team. ProActive scheduler and resource manager[EB/OL].http://proactive.inria.fr/release-doc/html/ProActive_Scheduler.html (January 2008)
[2]Professional open source middleware for parallel, distributed, multithreaded programming[EB/OL].http://proactive.inria.fr (March 2008)
[3]Kamran Qadir, Falak Nawaz. Semantically enhanced grid resource management[J].IEEE Xplore, 2009, 7:220-226