270 likes | 383 Views
A Constraint Language Approach to Grid Resource Selection. Chuang Liu, Ian Foster Distributed System Lab University of Chicago http://dsl.cs.uchicago.edu Work performed within the Grid Application Development Software (GrADS) Project of the NSF Next Generation Software Program. Problems.
E N D
A Constraint Language Approach toGrid Resource Selection Chuang Liu, Ian Foster Distributed System Lab University of Chicago http://dsl.cs.uchicago.edu Work performed within the Grid Application Development Software (GrADS) Project of the NSF Next Generation Software Program
Problems • Selection of resources whose properties are expressed by a feature set or range • Co-selection of resources • Description of requirement for a resource set for example, aggregation characteristics of a resource set. • Efficient algorithm to locate resource set
Outline • Problem • Description Language (RedLine) • Matchmaking • Applications • Summary
Description Language • Use constraints to describe attributes.
Description Language • resource co-selection request.
Outline • Problem • Description Language • Matchmaking • Applications • Summary
Description of Resources and Requests • Both resources owners and requesters use RedLine syntax to describe their resources or requests • The requestor and resource providers must use the same variable name to express a resource attribute and associate common meaning to responding values.
Definition of Match • A constraint C is satisfiable if there exists a value assignment to every variable v Î vars(C) such that C holds. Otherwise, it is unsatisfiable. vars(C) denotes the set of variables occurring in constraint C. • RedLine defines bilateral match: Two descriptions C1 and C2 match each other if C1 C2 is satisfiable. Scope of satisfying Capability Scope of resource Capability
Definition of Match • RedLine also defines multilateral match: Descriptions D1, D2, … , Dnmatch a description R if D1, D2, …, Dn is an assignment to variables with description or description set type in description R and R is still satisfiable after replacing these variables with their values.
Matchmaking Problem as CSP • A constraint satisfaction problem, or CSP, • A Constraint on variables • Every variable has a finite value domain • Matchmaking as CSP problem • Associate a variable with every requested resource called resource variable • Domain of every resource variable are available resources
Matchmaking Process as Constraint Solving • CSP & Constraint solving • Sound theory developed in AI, Logic programming • Existing algorithms of constraint solving • systematic search • Backtracking algorithm • heuristic and stochastic algorithms • Hill-Climbing, Min-Coflict and Tabu-Search
Performance of Algorithms • Evaluation of different algorithms • Completion of algorithm • Speed of algorithm • User’s controls on matchmaking process • Search# • Distribution <algorithm> • SetConstruct <algorithm>
User’s Control on Matchmaking Process • User controls matchmaking process by predicate
Summary • Describe resource properties whose value is expressed as a feature set or a range • Describe set-based requirement for a resource set • Formalize matchmaking problem into a Constraint Satisfaction problem and utilize algorithms developed in CSP area to solve it • Future: Service Interface implementation, Organization of descriptions in matchmaker, and study performance of the algorithm in in realistic application settings • Thanks to • NSF Next Generation Software Program • Alain Roy, GrADS colleagues • http://dsl.cs.uchicago.edu
Outline • Problem • Description Language • Matchmaking • Redline System & Applications • Summary
RedLine System • Layered structure
Applications • Data Grid Example
Applications • Access Grid Example
Applications • Query Example
Summary • Describe resource properties whose value is expressed as a feature set or a range • Describe set-based requirement for a resource set • Formalize matchmaking problem into a Constraint Satisfaction problem and utilize algorithms developed in CSP area to solve it • Future: Service Interface implementation, Organization of descriptions in matchmaker, and study performance of the algorithm in in realistic application settings • Thanks to • NSF Next Generation Software Program • Alain Roy, GrADS colleagues • http://dsl.cs.uchicago.edu
Constraint • A constraint C is of the form c1 Ù … Ù cn where n >= 0 and c1, …, cn are primitive constraints. The symbol Ù denotes and, so a constraint C holds whenever all of the primitive constraints c1, …, cn hold. • A constraint C is satisfiable if there exists a value assignment to every variable v Î vars(C) such that C holds. Otherwise, it is unsatisfiable. vars(C) denotes the set of variables occurring in constraint C.
Resource Selection Service: Framework RSS GIIS Resource Information Resource Request MDS Set GRISes Resource App Matcher Monitor NWS Result Mapper