1 / 20

Implementation of XML Database and Enhancement of Resource and Sensor Agents

This project focuses on implementing an XML database and enhancing resource and sensor agents for dynamic monitoring of resources. It also includes an applet-based GUI for interacting with the database. Future expansions and tasks for AgentTeamWork are also discussed.

lbennett
Download Presentation

Implementation of XML Database and Enhancement of Resource and Sensor Agents

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Implementation of XML Database and Enhancement of Resource and Sensor Agents Cuong Ngo CSS497 Summer 2006 Professor Munehiro Fukuda

  2. AgentTeamwork Overview • Mobile agents and AgentTeamWork • XML Format and XML DOM object • New XML database and Applet GUI • Dynamic monitoring of resources • Future work

  3. Snapshot Methods Snapshot Methods GridTCP GridTCP User program wrapper User program wrapper Results Results snapshot snapshot snapshot User A User B FTP Server snapshots snapshots AgentTeamWork Overview User A’s Process User A’s Process User B’s Process TCP Communication Snapshot Methods GridTCP User program wrapper Sentinel Agent Sentinel Agent Sentinel Agent Commander Agent Resource Agent Resource Agent Commander Agent XDB XDB BookkeeperAgent Bookkeeper Agent

  4. Project Objectives • Replace old database, eXist • No documentation • Need to include cluster information • Dynamically monitor resources • Proper communication between agents eXist XDBase

  5. <department> <employee> <name>John Doe</name> <email>jDoe@foo.com</email> </employee> <employee> <name>Bill Jones</name> <email>bJones@foo.com</email> </employee> </department> XML FormatXML File DOM Object Element “department” Element “employee” Element “name” Text “John Doe” Element “email” Text “jDoe@foo.com” Element “employee” Element “name” Text “Bill Jones” Element “email” Text “bJones@foo.com”

  6. DOM: Document Object Model • Keeps XML structure in tact • DOM Structure • Node • Document • Element • Text • Ability to: • Add • Delete • Modify • Query Element “department” Element “employee” Element “name” Text “John Doe” Element “email” Text “jDoe@foo.com” Text “jDoe@foo.net” “jDoe@foo.net” Element “id” Text “5561” Whole XML File

  7. Xpath is a query language used to find information in an XML document Java provides XPathAPI to use Xpath expressions to perform tasks Examples /department/employee /department/employee[name=‘John Doe’]/ //name //employee[name = ‘Bill Jones’]/email/text() //employee/* //name | //email Xpath Expressions Element “department” Element “employee” Element “name” Text “John Doe” Element “email” Text “jDoe@foo.com” Element “employee” Element “name” Text “Bill Jones” Element “email” Text “bJones@foo.com”

  8. Database Overview • Parse XML document to DOM object and create a wrapper object called Resource • Modification timestamp • Availability • Ping • Collection class contains Resources • Database contains Collections • Parse and process request • Services connect to database and demand a request • RetrievalService • QueryService • Applet-based GUI interacts with database

  9. Database Services • Create a collection, synchronize by writing database contents back to local disk, and shutting down of the database • Store, retrieve and delete a collection or resource • Update a single resource or an entire collection • Query a collection for specific items • Specifically query the database for resources based on requirements

  10. Resource Itinerary with Cluster Information • Old format included only IP addresses • Assumed every IP was public • New format contains a cluster, its gateway and its cluster nodes. • Use gateway to communicate between nodes of different clusters • Even gateway must be running AgentTeamWork platform

  11. Applet-based GUI • Graphically interact with the new database • Ability to: • Look at database contents • Add files • Delete files • Connect to remotely located databases

  12. Applet-based GUI 2

  13. ResourceAgent Modifications • Create runtime file for each cluster node • Create itinerary for SensorAgent to monitor nodes dynamically • Query the database for all nodes within a domain, such as “UWB” • Itinerary includes cluster and public nodes • Proper communication with other agents

  14. SensorAgent Modifications XDBase Resource id 1 Sensor Client Root Id 4 Sensor Server Root Id 5 Client 1 Id 16 Client 2 Id 17 Server 1 Id 20 Server 2 Id 21

  15. SensorAgent Modifications 2 Resource id 1 XDBase Sensor Root Id 4 Public Client Root Id 17 Public Server Root Id 18 Gateway 1 Id 16 Gateway 2 Id 64 G1 Client Root Id 65 G1 Server Root Id 66 Client 1 Id 68 Client 2 Id 69 Server 1 Id 72 Server 2 Id 73 G2 Client Root Id 256 G2 Server Root Id 257 Cluster 1 G2 Client 1 Id 1024 G2 Server 1 Id 1028 Cluster 2

  16. Future Expansions of Database • Easy to add new functionality to database • Create a service to send a request to database • Database parses and processes the request • Database send back results

  17. Future AgentTeamWork Tasks • SensorAgent • Have 2 cluster gateways perform bandwidth test to monitor inter-cluster bandwidth • Need communication to change unavailable nodes to available when a job is complete • CommanderAgent informs ResourceAgent which in turns creates a service request to the database

  18. What I Learned • XML, DOM object, Xpath • Grid computing programming • Communication between team members • Understanding existing code and modifying it without breaking it

  19. Acknowledgements • Advisor Prof. Munehiro Fukuda • Sponsor Prof. Shinya Kobayashi • Emory Horvath • CSS301, CSS342, CSS343, CSS434, CSS442, CSS360 • XML and Java, 2nd Edition book

  20. Questions ?

More Related