The Grid4All ontology for the retrieval of traded ... - Semantic Scholar

2 downloads 0 Views 99KB Size Report
When a plan is established by the controller of the simulation application, the buyer agent is triggered to allocate resources. The application controller specifies.
The Grid4All ontology for the retrieval of traded resources in a market-oriented Grid Konstantinos Kotis1, George A. Vouros1, Alexandros Valarakos1, Andreas Papasalouros1, Xavier Vilajosana2, Ruby Krishnaswamy3, Nejla Amara-Hachmi3 1

Dept. of Information & Communications Systems Engineering University of the Aegean, Karlovassi, Samos 83100, Greece {kotis, georgev, alexv, andpapas}@aegean.gr 2

Dept. Computer Sciences, Multimedia and Telecommunications Universitat Oberta de Catalunya, Barcelona, Spain [email protected] 3

France Telecom R&D 38-40, rue du General Leclerc 92794 Issy-Les-Moulineaux, France

{ruby.krishnaswamy, nejla.amarahachmi}@orange-ftgroup.com Abstract One of the most challenging problems in Grid environments concerns the matchmaking between resource requests and offers. As it happens in the physical economy, Grid economy must be supported by services that locate resources based not only on their characteristics, but also on market-related properties, offers’ and requests’ properties and constraints, as well as on declarative specifications of peers’ (providers and consumers) features. Resource retrieval in the context of a Grid economy extends the notion of resource matchmaking to the process of discovering those markets that trade resources through market orders. This paper describes an ontology that represents resource orders (offers and requests) in a market-oriented resource retrieval process, showing preliminary results of its utilization for the retrieval of traded resources.

1. Introduction Many types of Grid systems aim to support remote and/or concurrent use of distributed and heterogeneous resources. These systems usually use a resource management system for exploiting collections of computational and/or storage resources on an as-

needed basis. In the context of the Grid4All project1 where the Grid is seen as an ubiquitous utility for users and small organizations, resources are deployed and exposed to the Grid users who offer and request resources in a market-oriented environment. In the Grid4All perspective, resources are traded applying economic models: They are traded as goods in Grid markets, and therefore, they are allocated to peers based on the supply and demand law. Specifically, in such a market-oriented environment, resources are made available through spontaneous peer-initiated markets. Peers negotiate in auctions that may be initiated by resource providers, by resource consumers, or by third parties. Thus the market place can be considered to be populated by multiple simultaneous and independently executing trading instances. This architecture reduces the computational complexity of centralized auctions that accrues with the number of offers and bids. To facilitate the discovery and selection of markets that trade suitable resources for peers, the deployment of a Semantic Information System (SIS) has been planned. SIS provides a matching and ranking service for peers willing to offer or request resources. SIS exploits offers and requests of resources, in conjunction to resources’ characteristics and market1

The authors acknowledge the European Commission for funding Grid4All under grant number FP6, project ISTGrid4All-2006-034567

related properties to satisfy peers’ intentions and preferences. Resource retrieval in this context extends the notion of resource matchmaking, to the process of discovering those markets (trading instances), each with its own auction mechanism, which trade resources matching the requests of buyers and offers of sellers. To satisfy the requirements of resource retrieval in this context we have built an ontology describing resources, markets, orders and peers in a formal way. This paper describes the Grid4All ontology, showing its potential for the semantic retrieval of traded resources in a distributed market environment. The paper is structured as follows: Section 2 briefly describes related work and motivates our work. Section 3 describes the aim and scope of the developed ontology, describing an indicative scenario of its use. Section 4 describes the conceptualizations formalized and section 5 shows how the traded resources are being retrieved by exploiting the ontology specifications. Finally we present our conclusions and future plans.

2. Related Work The allocation of resources within Grid computing environments, apart from the “conventional” systemcentric scheduling and resource management approaches, can be based on several economic models that provide algorithms/policies and tools for more effective and dynamic resource sharing/allocation. In these cases, resources are traded within markets following price-based models (as opposed to bartering/exchange-based models), based on demand, supply, value, and the wealth of economic systems. Furthermore, end users may want to negotiate prices based on demand, value, preferences, and available budget: Whereas a conventional cost model often deals with software and hardware costs for running applications, the economic model primarily charges the end users for resources/services that they consume based on the value they derive from it [1, 2]. Traditional approaches are mostly based on syntactic, feature symmetric and attribute-based matching of resource descriptions (e.g. [9]). These approaches are difficult to be extended to handle partial or incomplete specifications of market orders (resources’ offers/requests), or to support flexible retrieval processes based on the semantics of the specifications of peers’, markets’ and resources’ characteristics. Recent approaches (e.g. [3, 6, and 8]) suggest adopting semantic service/resource descriptions for matchmaking, by means of ontologies, featuring logic-based representation languages. However, these approaches propose the use of

centralized matching components paying little or no attention to market-related properties and peers’ features. Lamparter and Schnizler in [5], present an architecture of an ontology-driven market for trading Semantic Web Services. They report on an auction schema which is enriched by a set of components enabling semantics-based matching as well as pricebased allocations. The key issue of this work is the merging of classical auction algorithms with the semantic matching capabilities. They propose a communication language which defines how orders (requests and offers) and agreements concerning web services can be formalized. This work, although it contributes towards the Grid economy, it deals with a single type of auctions concerning Semantic Web Services: Therefore it does not deal with multiple types of markets and their distinguishing features. Furthermore, dealing only with web services, semantic matching is restricted to the matching of services’ inputs and outputs. References of providers and consumers are not taken into account during the matchmaking process. Closely to our approach, the work reported in [7], aims to semantic matchmaking in P2P e-marketplaces. This approach mixes in a formal and principled way the semantic expressiveness of DLR-Lite logic programs, fuzzy logic and utility theory to find the most promising partners in a peer-to-peer e-marketplace. Following the economical model to negotiation, this approach considers peers’ preferences and utilities in the matchmaking process. A major issue concerns the modeling of logical specifications as soft-constraints (requirements and preferences on the peers’ orders) using fuzzy logic. Focusing on knowledge representation, the framework proposed offers an alternative to our work on formalizing the retrieval of resources in a Grid-related market-oriented environment: However the proposed framework is under implementation. Concerning the conceptualization proposed, although the matchmaking approach is market-oriented, it seems that the focus, as far as markets are concerned, is only on pricing (value of goods), i.e. on the process of retrieving resources based on price negotiations between peers. As a consequence, there is lack of information concerning market and order related properties that a peer may consider in order to trade a resource. Concluding the above, to the best of our knowledge, recent approaches provide effective semantic matchmaking services for discovering and selecting peers that satisfy requests/offers in an e-marketplace. However, there is a lack of a formal conceptualization

of all the types of elements involved in a Grid marketoriented computing environment: a) The types and characteristics of the resources, b) the properties and constraints related to the specific offers and requests, c) the specific properties of the markets to which the specific orders are placed, and d) the preferences and characteristics of the providers and consumers that participate in these markets. In this paper we deal with the first three types of elements, while we discuss the fourth.

3. Ontology aim and scope Trading resources based on the demand/supply of users is the main driver in the competitive, economic market model: In the context of a Grid computing environment, a single user is in competition with other users, and resource owners are in competition with Grid service providers: In a market-oriented environment Grid resources and services are made available through markets initiated either by resource providers, resource consumers or third party entities. Markets are initiated by means of resource orders that peers issue in a distributed manner. Such an order can be either the request of a consumer, or an offer of a provider. Adopting such a distributed market model, resource consumers and providers negotiate over resources using auctions that run in markets. Given the distributed nature of market creation and management, in order for an auction to take place, and thus resources to be allocated to peers, markets must be discovered by potential participants.

3.1. Semantic Information System Ontology The Semantic Information System (SIS), as a component of the Market-Based Resource Management System (RMS), will provide a registry of the e-markets available, together with a retrieval and ranking service for those markets. Peers may query the SIS for orders (i.e. requests and offers) that match certain attributes and criteria, locating orders that concern matching resources, traded in forthcoming (initiated but not yet started) or ongoing markets. Results of queries shall be ranked according to the preferences and intentions of providers and consumers, as well as according to the characteristics of resources and markets. This paper presents the Grid4All ontology for supporting the SIS functionality. This ontology represents types of resources being offered and requested by peers, offers and requests that can be made by peers, types of markets where orders are placed, as well as market related properties.

3.2 A Matchmaking Scenario In the paragraphs that follow we provide a representative scenario that sketches our requirements for the retrieval of resources in a Grid market-oriented computing environment. Consider a network simulation application that is running within a Virtual Organization (VO). The VO plans simulations in advance. The network simulation requires both computational and storage resources. When a plan is established by the controller of the simulation application, the buyer agent is triggered to allocate resources. The application controller specifies the quantity of CPU and storage that is required and also determines the starting time and the ending time within which resources need to be acquired and the duration for which they are required. The allowed period for biding in a market is also specified, hence constraining the time where participants can place bids. Additionally, the VO has a maximum budget for buying the needed resources, while, due to constraints of the simulation application, all the requested resources need to be allocated. The VO queries the SIS for retrieving markets that trade the required resources. The retrieval process delivers those markets that offer the requested resources, satisfy the order-related constraints, as well as the market related characteristics. The query specification for the matchmaking process can be divided into two separate parts: a) The specification of the characteristics of the resources required, and b) The specification of the order and market-related constraints and characteristics. These are further explained in the paragraphs that follow. Buyers may provide alternative requests as separate descriptions, expecting from the SIS to provide those markets that trade at least one of the requested resources. In this matchmaking scenario, the buyer agent places the following request: Resource specification: Clusters that comprise at least 3 and at most 5 Compute Nodes, each of which comprises at most 2 CPUs of CPU-speed at least 2 GHz, and at most 2 persistent storage (Hard-Disk) of 60GB. Order (request) constraints: At least 1 and at most 3 instances of the requested Cluster type are required for 4 time-slots, each of 30 minutes duration. The Cluster must be offered between 10:00 and 18:00 of the 26th of March, 2007. The maximum price of the Cluster should not exceed 2 per time-slot. The specific market-related constraints related to buyer’s requests are as follows: Provider-initiated markets must be located in Athens trading one of the

described resources, operating a combinatorial auction, using IC (Incentive-Compatible) as the pricing scheme, and allowing withdraw of orders.

4. Representing traded resources in Grid eMarketplaces As already pointed, the representation concerns a) the types and characteristics of the resources, b) properties/constraints related to the specific offers and requests, c) properties of the markets to which the specific orders are placed.

4.1 Resources The proposed ontology represents knowledge about the different types of resources available in a Grid computing environment. A resource in the context of Grid computing may be defined as any passive entity required for implementing functionality. Resources are entities that are offered by resource providers or requested by resource consumers, and that are traded in e-markets initiated by consumers, providers and thirdparties. In addition to resources, applications or services may also be needed to become available through markets: However we do not deal with services and applications in this paper. In the proposed approach we mainly deal with the representation of computational and storage resources, since these are widely accepted as a first-priority when addressing Grid resource markets. Resources, such as computational and storage resources are dealt at a logical rather than at a physical level. This choice is driven by the fact that ordinary Internet users are less concerned about the specific hardware properties of a resource and more about the service rendered by the resource. Taking the example of hard (persistent) storage, the technology used to implement the persistent storage (whether be Flash, magnetic disks) and the controller technology (whether be SCSI, IDE) is irrelevant to the user, since this is hidden by software which virtualizes the underlying technologies and provides a common higher level user interface to store and retrieve storage. The user is nevertheless concerned about the quality, quantity, and performance of the hard disk (such as throughput, error rates) which are commonly-agreed and widely-known metrics. More specifically, the following hold for the representation of resources: Any Resource has a specific Identifier that is related to a specific Service via which it is exposed to any (human or software) Agent.

A Hardware Resource has a capacity property specifying its capacity with respect to a specific unit of measurement. A resource is hosted by a Machine. A machine can host one or more resources, given that they are all Atomic resources (they are not Composite or Aggregated resources, as defined in the paragraphs that follow). Composite or aggregated resources can be located in more than one machine. Resources are also described with respect to their location, depending on the location of the machines they reside on. Resources have specific QoS properties, each property being measured by its corresponding unit of measurement. The distinction between aggregated and composite resources aims to distinguish between heterogeneous and homogeneous sets (bundles) of resources: A Composite Resource is a resource that comprises at least two heterogeneous resources (e.g. a Compute Node comprises a CPU and a Hard Disk). An Aggregated Resource is a resource that comprises at least two homogeneous resources (e.g. a Cluster comprises more than one Compute Nodes). As already mentioned, currently we distinguish between two main types of resources: computational and storage resources. A Computational Resource is a Composite Resource that comprises at least one CPU, a volatile memory and an operating system. A Computational Resource can reside on at least one machine (we can have two CPUs in different machines). A Storage Resource can be a Hard Disk or any other type of permanent storage. A Storage Resource resides on a single machine. In case of representing a bundle of Storage Resources, we introduce the class Storage Aggregated Resource. Different Storage Resources that comprise a Storage Aggregated Resource may reside on different machines. However, not all the resources are tradable: For instance, one may not trade a CPU or a Hard Disk, as such. Tradable resources include Compute Nodes and Clusters. A Compute Node is a type of Composite Resource that comprises exactly one Computational Resource and any number of Storage Resources. A Cluster is an Aggregated Resource comprising a set of Compute Nodes.

4.2 Orders: Offers and requests As already mentioned, consumers and providers specify their needs for the trading of resources by placing market orders: These are either consumers’ requests or providers’ offers. A Request describes the resource needs of a consumer (quantity of requested resources and time intervals of their allocation) and the price she is willing to pay for those resources within a specific Market. An Offer specifies the exact resources (quantity of offered resources) that a provider trades in specific time intervals and price: This is in contrast to the specification of requested resources, where the consumers may request a class of resources. Offers specify the exact individuals that providers sell. In a Grid market, multiple, alternative orders of the same type (offers or requests) may be connected using an XOR (exclusive OR) connective. Bundle orders allow consumers and providers to indicate their needs for composite resources. Although in several systems it could be adequate to use bundles of heterogeneous resources (i.e. Composite Resources) from different providers, this approach could not be useful in terms of QoS. Thus in the proposed approach, a single bundle unit is represented by a Compute Node entity as an “atomic unit” of resource allocation through markets. A more complex bundle can specify a set of Compute Nodes satisfying certain qualities, which are further explained below. When consumers and providers have to allocate resources within a period of time, their correspondent orders (requests/offers) need to allow the specification of time intervals delimited by the order_end_time and the order_start_time specifications. Doing so, consumers (providers, respectively) may specify a time range within which resources have to be allocated. In addition, they may need to allocate resources for some time slots (whose size is being explicitly specified) within this time interval. For the consumers, in most of the situations, may be indifferent when the allocation takes place: They may only require acquiring the resources before the given deadline. Furthermore, the specification of offers and requests must provide flexibility to expressing conditions of trade. For example, a consumer may need to specify whether the allocated resources come from the same provider or from different providers. Generally, in case that a bundle of resources has to be allocated, the minimum or maximum number of providers may be specified, together with the agent(s) by whom a

particular order has been issued (property “ordered by”). Also, the initial price of a traded resource (for offers this is the minimum price and for requests this is the maximum price) is specified by the property price_of_resource.

4.3 Market-related properties and Market Roles As already stated, orders are placed and being alive within specific periods of active peer-initiated markets. The representation of market properties supports discovery and selection of those markets that are more “appropriate” or “interesting” to specific peers. A Market entity represents a mechanism which allows peers to trade resources under specific constraints. Markets allocate resources through a price mechanism: Those willing to pay a price for a resource meet those willing to sell it. A Market instance can be started by either a resource Provider (seller), a Consumer (buyer), or from a Third party (e.g. a broker). Markets should be discovered by Buyers or Sellers, depending on the market status (e.g. initiated, active, closed) and market type (e.g. Consumer-initiated, Provider-initiated, bi-directional exchange market). A Market operates a specific Auction. Auctions are described by a variety of different properties: o The type of Auction is the main property of this class. For example, one Market may execute an English auction or a k-Double auction. o The time of auction clearance is such a property as well. For instance, an application may require the immediate allocation of the requested resources, and hence it prefers an auction that clears immediately. o Another characteristic concerns the type of auction with respect to the time needed for reaching an agreement. In general, iterative auctions take a longer time to reach agreements than single-shot auctions. The geographic location of a market is also a property for discovering markets. Providers may require sending their offers to closely located consumer-initiated markets. Hence, selection of markets by their geographic location may ensure that the resources offered at the Market are also geographically close.

Order Satisfaction is a market-related property, specifying whether a market is engaged to satisfy a peer’s order partially or completely. Order Withdraw is also a useful market quality specifying whether peers are allowed to withdraw their order at runtime. Finally, Pricing Scheme specifies market related characteristics related to pricing, such incentive compatibility. For example some buyers will not be interested in a pricing mechanism that is incentive compatible for sellers. As far as the characteristics of peers are concerned, in most related works, consumers are represented in the market by Brokers, playing the key role of generating strategies for choosing providers based on their customers’ (consumers) requirements. In markets where brokers are absent, this key role is transferred to consumers. The consumers need to have a utility model, i.e. a model that represents the way they demand resources and specify their preference parameters. Providers need to obtain economic models, i.e. models that represent mechanisms of assigning prices to resources with the aim to offer a market price at which the supply of a resource equals the quantity demanded (reaching equilibrium price): Properties of consumers and providers are further discussed in section 6. A snapshot of the taxonomy of the developed ontology can be found at http://www.icsd.aegean.gr/ailab/projects/grid4all/ontology.jpg. The ontology has been developed following a collaborative approach to the engineering of ontologies [4].

5. Retrieval of traded resources To evaluate the developed ontology, we have been experimenting with example individuals (resources, orders, and markets) and example queries, driven by the intended use of the ontology. The ontology has been engineered so that the retrieval of markets, orders, and traded resources to proceed by means of a) the automatic classification of individuals with the computation of their inferred types, and b) SPARQL2 queries for filtering the matched individuals using market-related properties and orders’ constraints. To take advantage of the classification mechanism, and according to the requirements for offers and requests, we have represented orders in the following way: Resources’ offers are represented as individuals of class Offer and resources’ requests are represented as defined subclasses of the class Request: Doing so, 2

http://www.w3.org/TR/rdf-sparql-query/

matching offers are classified under specific request subclasses. Individual markets are classified under their corresponding subclasses of the Market class (e.g. depending on whether they are consumer or providerinitiated markets). Markets that are retrieved by the matching process are returned to the ordering peer only if the traded resources’ specification, in conjunction to the market and order related properties and constraints, are satisfied. For instance, even if the specification of a resource traded in a specific market matches to a requested Cluster, this resource may not be provided to the consumer, if the price and the number of time-slots requested do not match with those specified in the Cluster offer. To demonstrate the retrieval of the traded resources requested by a consumer, we have been using Protégé 3.2.1 and SPARQL queries to run the scenarios presented in section 3.2. Due to space limitation we provide at http://www.icsd.aegean.gr/ailab/projects/grid4all/matchmaking.pdf only a snapshot of requested resources/orders/markets specification as well of the matched individual ones.

6. Concluding Remarks Concerning the representation of traded resources in Grid e-marketplaces, we have accentuated the need for incorporating information concerning a) the types and characteristics of the resources, b) the properties related to the specific offers and requests via which the specific resources are being traded, c) the specific properties of the markets to which orders are placed. Further work concerns extending the ontology towards other types of resources, as well as towards the semantic specification of services exposing resources.

References [1] Buyya R, Abramson D, and Venugopal. The Grid Economy. Proceeding of the IEEE, VOL. 93, No. 3, March 2005, pp 698- 714. [2] Buyya R., Stockinger H., Giddy J., Abramson D. Economic Models for Management of Resources in Peer-toPeer and Grid Computing. Proceedings of the SPIE International Conference on Commercial Applications for High-Performance Computing, 2001. [3] Colucci S., Noia T. D., Sciascio E. D., Donini F., and Mongiello M. Concept abduction and contraction for semantic-based discovery of matches and negotiation spaces in an e-marketplace. Electronic Commerce Research and Applications, 4(4):345–361, 2005.

[4] Kotis K. and Vouros A. G. Human-Centered Ontology Engineering: the HCOME Methodology. International Journal of Knowledge and Information Systems (KAIS), 10(1): 109-131 (Published Online First: 9 Sept. 2005). [5] Lamparter S. and Schnizler B. Trading Services in Ontology-driven Market. SAC’06, April 23-27 2006, Dijon, France. [6] Li L. and Horrocks I. A software framework for matchmaking based on semantic web technology. In WWW’ 03: Proceedings of the twelfth international conference on World Wide Web, pages 331–339. ACM Press, 2003. [7] Ragone, A., Straccia, U., Noia, T. D., Sciascio, E. D., Donini, F. M. Vague Knowledge-bases for Matchmaking in P2P E-Marketplaces. 4th European Semantic Web Conference (ESWC 2007), Springer-Verlag, Volume 4519, page 414—428, 2007. [8] Sycara K., Paolucci M., Ankolekar A., and Srinivasan N. Automated Discovery, Interaction and Composition of Semantic Web Services. Journal of Web Semantics, 1(1), 2003. [9] Veit, D., Muller, J., Schneider, M., and Fiehn, B. Matchmaking for Autonomous Agents in Electronic Marketplaces. In Proc. International Conference on Autonomous Agents ’01, pages 65–66. ACM, 2001.