130 likes | 260 Vues
This presentation by Angela Bonifati and collaborators showcases HEPTOX, a solution for integrating heterogeneous XML data across P2P networks, such as those seen in healthcare systems. HEPTOX addresses schema autonomy and flexibility, allowing peers to maintain their own schemas while transparently mapping to others’. The system employs an intuitive GUI for mapping correspondences, a Datalog-like language for complex XML structures, and sophisticated query translation algorithms. Join us for insights into managing heterogeneity with real-world applications in hospital networks.
E N D
HEPTOX1: Marrying XML and Heterogeneity in Your P2P Databases Angela Bonifati (Icar CNR, Italy), Elaine Q.Chang, Laks V.S.Lakshmanan, Terence Ho, Rachel Pottinger, Shuan Wang and Ting Wang (UBC, Canada) 1 HEPTOX stands for “Heterogeneous Peers Talk!”
Motivations for Marrying XML and Heterogeneity in P2P Databases • Peers contain similar and relatedXML data • Each peer wants to keep its own schema and yet needs to be mapped to others’ schemas [cfr. LenzeriniTutorial@PODS02] • autonomy, flexibility are important in P2P • a global mediated schema is unfeasible • Queries are still formulated against one (e.g. local) schema • Need to transparently cross the different schemas • Previous work [Clio, Hyperion, Piazza] could only handle limited heterogeneity
A P2P Network of Heterogeneous Hospitals .... Peer1 Peern Peer2 DTD1 DTDn DTD2 ... ... ... Event Admission Pulmonary Coronary ... Problem Date ID InsName ...
Heterogeneity and XML data: an example • Consider a P2P network of hospitals and an unfortunate patient moving among them: • Option#1: the patient carries his/her own files and query translation is done manually • It is error-prone, and unfeasible with several moves and with frequent joining/leaving of peers • Option#2: the hospital db admin manually writes the mappings • It is not that easy to find a person who knows the rule machinery that well!
Heterogeneity and XML data: an example • Option#3: the hospital db admin provides informal arrows/boxes correspondences w.r.t. a set of acquaintances: • Users/applications do not know the underlying mappings machinery and can keep it simple • A peer’s entering the network is a lightweight operation
Event Date Problem Pulmonary Coronary Admission Mappings in hospital schemas • XML mappings in HePToX are specified informally by arrows and boxes which encode: • Data/Metadata correspondences • Structure correspondences • The informal mappings are translated to Datalog-like mapping rules. • Data/Metadata conflicts are not dealt with in previous works: • Addressed in HepToX
Demo scenarios • Doctors: track patients • Patients: access their data • Insurance Companies: define the policy for a set of patients • Etc.
HepToX Contributions • GUI for specifying correspondences (arrows/boxes) • Datalog-like mapping language for working with complex XML trees • Rule Inference algorithm for producing the Datalog-like mapping rules • Query Translation algorithm based on those mappings that works for a significant subset of XQuery (TPs with joins) • Our “Data Exchange” semantics, which differs from GAV and LAV mappings
Demo Screenshots 1/2 Schema Mappings By Boxes/Arrows and Corresponding Datalog-like Rules
Demo Screenshots 2/2 Details of Query Translation Algorithm (for each pair <TP, MR>)
On HEPTOX implementation • The demo shows the following features: • Draw mappings and show the generation of rules • Show the query translation algorithm at work • Show a real network emulation with Emulab • HEPTOX is implemented in Java: • Uses QizX [QizX] as the underlying XQuery engine • FreePastry as the underlying P2P protocol • Emulab as the real network emulation environment • It consists of ~10,000 lines of code
Come visit our demo booth: This afternoon 14:00-15:30 &Thursday 14:00-15:30