seasr tools
DESCRIPTION
Pathway to SEASR Workshop in March 2009 in North CarolinaTRANSCRIPT
The SEASR project and its Meandre infrastructure!are sponsored by The Andrew W. Mellon Foundation
SEASR Tools
Loretta Auvil
National Center for Supercomputing Applications!University of Illinois at Urbana-Champaign
Outline
• Community Hub
• Administrative Interface
• Workbench
Community Hub
• Explore existing flows to find others of interest
– Keyword Cloud
– Connections
• Find related flows
• Execute flow
• Comments
Community Hub: Keyword Cloud Design
Keyword Cloud Implementation
Keyword Cloud functionality is currently implemented as a wordpress plugin
Detail View of Application
Detail View with Related Flows
Community Hub: Connections Design
Meandre Administrative Interface • Made mainly for administrators
• Provide one-click access to most of the services
• Sections
– Repository
– Publish
– Execution
– Location
– Security
– Public
– About
Repository
• Navigates the current user’s repository
• List components and flows
• Searching components or flows
• Navigating by tags
• Clear all the components and flows
• Regenerates the repository using the available locations
Publish
• Allows one to manipulate the public repository of components and flows
• Allows one to publish and unpublish components and flows
Execution
• Exposes the execution engine
• Allows one to list current running flows
• Allows one to upload and execute all the flows in a self-contained repository
• Allows one to tune and execute by changing property settings
• Exposes the list of jobs tracked by the server
• Give access to the executing flows output consoles
Cluster
• Exposes the single image cluster log
• List the status of the servers forming the cluster
• Expose basic information about the servers
• List internal properties used by the Meandre cluster
• Allows the shutdown of the current Meandre Server being accessed
Location
• Allows addition of locations to import components and flows
• Allows removal of a location which deletes components and flows
• List the current locations used
Security
• Manage users
– Create
– Remove
– Update
– List
• Grant and revoke roles
– Execution
– Location
– …
Public
• Expose basic public services
– Published repository
– A simple demo repository of components and flows
– A ping/pong service
About
• Expose server information
– Installation information
– Version
– Plugins installed on this server
Workbench
• Web-based UI
• Components and flows are retrieved from server
• Additional locations of components and flows can be added to server
• Create flow using a graphical drag and drop interface
• Change property values
• Execute the flow
What is it?
• Visual programming environment Thankfully, no code writing skills are required.
• Provides a mechanism to create and execute flows
• Built on top of GWT (Google Web Toolkit) – accessible from all major browsers
Getting Started
• Fire up your favorite browser and connect If you installed the Workbench on your local machine, use http://localhost:1712 to access it, otherwise replace “localhost” with the correct address of the computer where the Workbench is running at.
• Log in
The Workbench
The Workbench
The Workspace
• used as a main staging area for building / editing flows
The Output Panel
The Details Panel The Repository
Panel
The Workspace
Components can be dragged into this region from the “Components” panel and interconnected to create flows.
The Flow Toolbar
• Provides access to frequently used functions o save flows o remove components o control flow execution
Saving a Flow
Required metadata: - Name - Base URL
Separate tags with commas
Removing Components
Two ways:
1. Select the component and click “Remove” on the toolbar
2. Right-click the component you want to remove and select “Remove”
Controlling Flow Execution
Executes the current flow loaded in the Workspace. Any output from the flow will be displayed in the Output panel. If the flow contains interactive components, they will be displayed automatically.
Run Flow
Important: Please be sure to set your browser to allow pop-ups from the Workbench, otherwise the web interactive components will not display!
Stop Flow Sends a request to the Meandre server to abort the currently executing flow. May take a while – the server waits for components to finish their current operation.
The Repository Panel Three sections: - Components - Flows - Locations
Searching is supported
Display is customizable
Components • Software units that are designed to accomplish a particular task • May have inputs, outputs, and properties
Components with properties can be identified by a symbol appearing in the lower left-hand side of a component icon.
Flows
A Flow is essentially an application — a group of components connected together to perform a certain task
Click on the Flows tab in the Repository panel to view the flows in your Workbench.
Double click on a flow to load that flow into the Workspace.
Locations
Adding a repository location causes all the components and flows hosted at that location to be imported in the user’s private repository on the server
You can find a list of available repository locations at http://www.seasr.org/documentation
Removing a location also removes the associated components and flows from the server.
The Details Panel
Shows the properties and description of a selected component or flow
Properties
Description
For components, the Description displays information about the component function.
For flows, the Description displays information about the flow and the components it contains and their property values.
The Output Panel
Displays output and error messages generated by the Workbench
Using the Workspace
Placing Components The first step in building a flow is to choose components from the Repository panel and place them into the Workspace. To place a component, click on the Components section in the Repository panel and drag the desired component over into the Workspace area.
Note: A flow must have at least one component with no inputs to be able to be executed by the Meandre server.
Selecting Components Components can be selected by single clicking on them in the Workspace. When a component is selected, other selected items are deselected. While selected, a component can be moved about the Workspace or deleted. A selected component (or flow) can be unselected by using CTRL+click on that component (or flow).
Using the Workspace Labeling Components
Editing the component label only changes the name of the component in the given flow. The label must remain unique among the other component labels in the flow. The label can be edited by single-clicking on it and entering the desired text. Pressing ESC while editing a label cancels the labeling operation and restores the original label.
Connecting and Disconnecting Components To make a connection, click on the output port of the desired source component (the port you clicked will be colored red), and then click on the input port to which you wish to connect. You should now have a line connecting the output and input port. If, after selecting a port, you wish to cancel the operation, simply clicking the same port again will unselect it.
The ports of two components should only be connected if their data types are compatible with one another. Any errors resulting from data incompatibilities will occur at runtime.
To remove a connection, simply right-click one of the ports and select “Disconnect” from the context menu. Alternatively, you can remove groups of ports by right-clicking the component and selecting the appropriate menu option.
Using the Workspace Connecting and Disconnecting Components
A component’s output port may only be connected to one input port. However, a component’s input port may be connected to several different output ports. This could be useful when you are retrieving the same data format from multiple components.
The connection line is highlighted if the user hovers over an input or output port. This is useful for verifying connections in a complex flow. When hovering over a component port, the description of that port is also briefly displayed.