1
Repository In a Box (RIB)
Presented by: Yuanlei Zhang
August 22, 2005
Outline
» Brief overview of RIB
» Release of RIB 3.0
» Migration from RIB 2.2 to RIB 3.0
» Improvements to RIB 3.0
» Integration of RIB with other tools
» Future work
» People involved
2
RIB Overview
» RIB is a software package for building and maintaining WWW metadata repositories.
» Primary design goals
• Promote software reuse
• Provide interoperability
» Primary features
• Tools to build and manage metadata repositories
• Automatically generated, browseable, searchable HTML catalogs
• Metadata encoded using XML, based on IEEE standard for
software cataloging on the Internet (BIDM)
• Able to share information through interoperations among repositories using similar data models
RIB Diagram
RIB Client
RIB Server
Web Server
RIB Core
Database
Server
Java Applet
HTML
HTTP
3
RIB History
» Evolution of RIB
• RIB 1.0 – first version of RIB
• RIB 2.0 – complete rewrite of 1.0 with many new features introduced:� Use of XML and Database
� Java applet admin interface
� Object approval operation
• RIB 2.1 – file upload feature added
• RIB 2.2 – interoperation feature enhanced
• RIB 3.0 – the Java RIB, complete rewrite of 2.x as a servlet-enabled web application� Reduce installation complexity
� Reduce code maintenance complexity
� Improve Flexibility
� Improve Reliability
Release of RIB 3.0
» Tested RIB 3.0 with the latest versions of its components:
• Java 1.5.0 (JAXP package renamed)
• Tomcat 5.5.9
• MySQL 4.1.7 (internal date format changed)
» Updated the RIB documentations:
• RIB user manual (distributed with the package)
• RIB 3.0 installation guide (posted on the RIB website)
» Developed a web configuration interface for RIB 3.0 (good idea from Don)
» Released RIB 3.0 beta officially
» Maintaining RIB 3.0
• Bug fixes
• User customizations
4
Changes to The RIB Diagram
RIB Client
RIB Server
Apache
Web Server
Perl Scripts
MySQL
Database
Java Applet
HTML
HTTP
Java
Servlets
(web app)
Tomcat
Servlet
Container
Selection of RIB 3.0 Features
» Provide different views for different users:
• General
publics
• Repositoryadministrators
• RIBadministrator
5
Selection of RIB 3.0 Features
» Able to show objects from all classes in the catalog
Selection of RIB 3.0 Features
» Display object information as an expandable object-tree
6
Selection of RIB 3.0 Features
» RIB 3.0 web configuration interface
» Installed both RIB 2.2 and RIB 3.0 on rib.cs.utk.edu (thanks to Don)
» Wrote a Java program to automatically import repositories from RIB 2.2 to RIB 3.0
» Went inside each imported repository in RIB 3.0 to manually edit non-importable contents such as:
• Interoperations
• Customized templates
• Uploaded files
» Migrated all RIB 2.2 repositories to RIB 3.0. Now available at:
• http://rib.cs.utk.edu/rib3app/top
Migration From RIB 2.2 to RIB 3.0
7
Improvements to RIB 3.0
» Improvements to the file upload feature
• Able to manage (upload/view/delete) files in a common web interface
• Able to do “upload and attach” as a one-step operation in the Java admin interface
Improvements to RIB 3.0
8
Improvements to RIB 3.0
» Improvements to the join feature
• Able to refine join conditions to perform “selections”on join results (based on vocabulary controlled attributes)
• Able to make column and row headings stay visible while scrolling (thanks to Don again)
Improvements to RIB 3.0
9
Improvements to RIB 3.0
» Improvement to the search feature
• Able to search objects based on their relationships to other objects (currently working on)
Integration of RIB With Other Tools
» RIB with ReST
• ReST is an effort to reduce the difficulties involved in distributing, maintaining, and monitoring software in distributed environments
• Built a RIB 3.0 install package specifically for ReST, and made available through Java Web Start
10
Integration of RIB With Other Tools
Integration of RIB With Other Tools
» RIB with TAU and PAPI
• Developed new perfdmf tools
� Able to retrieve information from existing RIB repositories for creating TAU applications/experiments and save into a TAU recognizable format
� Able to retrieve hardware information from the machine the tool is running on for creating TAU experiments, through PAPI Java call get_hardware_info() (thanks to Haihang)
• Made a TAU patch and tested for the latest version of TAU 2.14.7
11
Future Work
» Resolve database compatibility issues to accommodate ideally any JDBC compatible database
» Provide tools to convert existing metadata into RIB recognizable format – simplify the metadata creation process
» Make RIB work better with other tools
» Create other customizable features upon user requests
People Involved
» Supervisors:
• Dr. Jack Dongarra
• Dr. Shirley Moore
» Developer:
• Yuanlei Zhang
» Technical Support:
• Don Fike
• Yuanlei Zhang