130 likes | 224 Views
Rainbow: XML and Relational Database Design, Implementation, Test, and Evaluation. Project Members : Tien Vu, Mirek Cymer, John Lee Advisor: Prof. Elke A. Rundensteiner PH. D Student: Xin Zhang Sponsor: GE Laboratories. XML and Relational Database: What and Why?. Benefits:
E N D
Rainbow: XML and Relational DatabaseDesign, Implementation, Test, and Evaluation Project Members: Tien Vu, Mirek Cymer, John Lee Advisor: Prof. Elke A. Rundensteiner PH. D Student: Xin Zhang Sponsor: GE Laboratories
XML and Relational Database: What and Why? • Benefits: • Efficient query and analysis tools. • Matured Data Warehousing support. • Easy Integration with existing business database. • Applications: • E-commerce • Web-based industries
XML and Relational Database • Problem • Many Application usually change its data very frequently. • e.g., flight reservation, online billing, inventory. • Current Solution • Reloading the complete XML document when changed which is very expensive. • Rainbow Solution • Incrementally propagate XML Document Updates to Stored XML Data. • Goal: XML Repository Implemented using RDBMS • Approach: Flexible Mapping • Features: • DTD Metadata Management in RDB • Automatic Schema Creation • Incremental Update Propagation • XML Query Optimization
Goals of our MPQ • Learn about the database technology • Translate abstract research ideas into actual software system design • Implement large-scale Rainbow software system • Practice good software engineering: UML, re-engineering and reuse • Design an experimental test plan and test bed • Conduct extensive performance study and analysis
Rainbow System Architecture Overview XMLQuery XML Legend User XML QueryWork-load XML Model XML Query Engine Internal Process Restructuring DBA Subsystem Schema Creator DTDM Repository Clock Relational Model DTDM Manager Loader Dumper XML DTD
Java Object-Oriented Design • Reuse and Re-engineering • Difficulties and advantages of using existing code • Time span of design vs. implementation • Design Tools used in Re-engineering • Unified Modeling Language (UML) • Object Domain – Class Diagrams, Activity Diagrams, Sequence Diagrams
Rainbow Implementation • Development Tools • Java: Visual Café2, Javadocs • Oracle 8i, XML 4J, JDBC1.2, SQL Queries • Code Facts • 22,991 lines of system code • 7,253 lines of Rainbow code • 15,738 lines of code reused • 100 total system classes • 17 Rainbow system classes • 83 classes reused • Re-engineering success
Rainbow Evaluation & Test • Experiment Setup • Oracle 8i • Win NT • Randomly generated data
Rainbow Conclusions • Accomplishments • Built complex Object Oriented design • Fully functional • Feasibility improvements to Rainbow concept • Automated test bed • Performance evaluations • Knowledge gained • OO, Java, JDBC • SQL, DBMS • Software reuse & re-engineering • Teamwork & S/W Engineering Project • Future works:
Rainbow: XML and Relational DatabaseDesign, Implementation, Test, and Evaluation Project Members: Tien Vu, Mirek Cymer, John Lee Advisor: Elke A. Rundensteiner PH. D Student: Xin Zhang Visit Rainbow at http://davis.wpi.edu/dsrg/TJM/