

Information is pulled from these providers as needed allowing Surfer to efficiently handle large and complex information sources unsuitable for push-based models. Surfer has no built-in bias towards any job model or selection policy, thus is suitable for inclusion in any grid environment by adding information providers knowledgeable about that environment. Surfer is a general-purpose framework for selecting and ranking grid resources based on user constraints and preferences. host name, queue type, and queue name for a compute resource) of each resource returned so that they can then utilize those resources using other services. Once the user receives the resulting tuple set, they can then extract the identifying attributes (e.g. Finally, the requested number of the highest ranked tuples are returned to the user. Third, the resource tuples are ranked by the composite ranking function. The book showcases the Silver Surfers search for the Reality Gem, one of the Infinity Stones capable of fulfilling the bearers wish.
SURFER SERIES
Next, the set expression is evaluated to produce the set of resource tuples meeting the constraints. Silver Surfer: Rebirth follows in the footsteps of recent series like X-Men Legends and Symbiote Spider-Man that have seen iconic creators revisit the characters that made them famous. First, the composite constraint is rewritten to a set expression utilizing the function calls and queries supplied by providers. The framework worries about which provider is responsible for which function, whether to use queries or function calls, how results are correlated, etc. Information providers are invisible to the end user, who only sees the set of resource types selectable and the set of functions available.

Providers also supply queries used to generate resource sets that define the set of resources selectable.
SURFER FREE
Providers supply functions of arbitrary type that represent selected information such as the number of cpus of a compute resource, free disk space of a storage resource, etc. Information providers are implemented independent of the framework and integrated into the system using a single configuration line. For each request received, Surfer returns a set of resource tuples where each tuple contains a resource instance for each resource type requested, each tuple satisfies the specified constraints, and tuples are ordered by descending values of the given ranking function.Ĭonstraints and ranking functions are boolean and numeric expressions, respectively, utilizing a set of built-in arithmetic, boolean, and relational operators, and a set of functions supplied by information providers. The user specifies the set of resource types desired, the constraints that must hold over all the resources, and the ranking function to be used to order the resources. Surfer is an extensible framework designed to select and rank grid resources where a resource is defined to be anything that may need selecting such as compute resources, storage resources, data resources, etc.
