Engine Group Namiruddin Ahmed Ali Kamil XMLApe l

  • Slides: 6
Download presentation
Engine Group Namiruddin Ahmed Ali Kamil

Engine Group Namiruddin Ahmed Ali Kamil

XMLApe l XMLApe Research Group • Involved in research on a number of projects

XMLApe l XMLApe Research Group • Involved in research on a number of projects that are related to XML and inspired by databases l Engine Group • Develop DBMS that ties XMLApe GUI to multiple • • XMLApe Data Sources Split query involving multiple sources into multiple queries on single sources Merge multiple result sets and return to XMLApe GUI 2

XMLApe Architecture 3

XMLApe Architecture 3

Splitting a Query <? xml version="1. 0" encoding="UTF-8"? > <query xmlns="http: //199. 77. 128.

Splitting a Query <? xml version="1. 0" encoding="UTF-8"? > <query xmlns="http: //199. 77. 128. 59: 8080/query" "> <source> <location>http: //199. 77. 128. 59: 8080/flights. xsd</location> <alias>Flight_1</alias> </source> <location>http: //199. 77. 128. 59: 8080/flights. xsd</location> <alias>Flight_2</alias> </source> <location>http: //199. 77. 128. 59: 8080/rentals. xsd</location> <alias>Car. Rental_1</alias> </source> <select> <schema. Ref> <alias>Flight_1</alias> <field>flights/flight. From</field> </schema. Ref> <value>Detroit</value> </select> <join> <schema. Ref> <alias>Flight_1</alias> <field>/flights/flight. To</field> </schema. Ref> <alias>Flight_2</alias> <field>/flights/flight. From</field> </schema. Ref> <alias>Car. Rental_1</alias> <field>/flights/flight/rental. From</field> </schema. Ref> <alias>Car. Rental_1</alias> <field>/rentals/rental. To</field> </schema. Ref> </join> </query> Sub Query 3 Figure: Query Splitter. Splitting a multi-source distributed query into single-source query documents. 4 Sub Query 1 Sub Query 2

Resulting Queries <? xml version="1. 0" encoding="UTF-8"? > <query xmlns=“http: //199. 77. 128. 59:

Resulting Queries <? xml version="1. 0" encoding="UTF-8"? > <query xmlns=“http: //199. 77. 128. 59: 8080/query”> <source> <location>http: //199. 77. 128. 59: 8080/flights. xsd</location> <alias>Flight_2</alias> </source> </query> Sub <? xml version="1. 0" encoding="UTF-8"? > Query 1 <query xmlns="http: //199. 77. 128. 59: 8080/query"> Sub Query 2 <source> <location>http: //199. 77. 128. 59: 8080/flights. xsd</location> <alias>Flight_1</alias> </source> <select> <schema. Ref> <alias>Flight_1</alias> <field>/flights/flight. From</field> </schema. Ref> <value>Detroit</value> </select> <? xml version="1. 0" encoding="UTF-8"? > </query> <query xmlns="http: //199. 77. 128. 59: 8080/query"> <source> <location>http: //199. 77. 128. 59: 8080/rentals. xsd</location> <alias>Car. Rental_1</alias> </source> <join> <schema. Ref> <alias>Car. Rental_1</alias> <field>/rentals/rental. From</field> </schema. Ref> <alias>Car. Rental_1</alias> Figure: Query Splitter. Splitting a <field>/rentals/rental. To</field> multi-source distributed query into </schema. Ref> Sub single-source query documents. </join> Query 3 </query> 5

Future Work l l Unify sub queries on the same data source • Merge

Future Work l l Unify sub queries on the same data source • Merge sub queries using operations like self-joins to be performed natively on data source Projections and non-equi joins • Change Schema Melder to publish result schema for the user interface depending on the projections in the query document Support result reorganization Making engine page from disk • Reduce memory drain when dealing with larger result sets 6