1 / 29

ICS 214B: Transaction Processing and Distributed Data Management

ICS 214B: Transaction Processing and Distributed Data Management. Lecture 16: Heterogeneous Distributed Databases Professor Chen Li. Heterogeneous DB systems Federated DB systems Multi-DB systems. DB. DB. DB. Integration. Multi-database systems. Heterogeneity caused by autonomy

luyu
Download Presentation

ICS 214B: Transaction Processing and Distributed Data Management

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. ICS 214B: Transaction Processing and Distributed Data Management Lecture 16: Heterogeneous Distributed Databases Professor Chen Li

  2. Heterogeneous DB systems • Federated DB systems • Multi-DB systems DB DB DB Integration Notes 16

  3. Multi-database systems • Heterogeneity caused by autonomy • Different departments, companies, schools… • Sources of heterogeneity • Data model • Query language • Schema • Transaction Processing • Autonomous execution Notes 16

  4. D1 D2 Dn Sn S1 S2 GS MDBMS (Mediator) GUI U1 U2 Un DBMS1 DBMS2 DBMSn ... Notes 16

  5. Interoperability • Schema integration • Query Processing • Transaction Processing Notes 16

  6. Global schema S1 S2 ... Sn T1 T2 Tn InS1 InS2 InSn Integrator GS Notes 16

  7. Example: S1: relational E (ENO, ENAME, TITLE) D (DNO, DNAME) W (ENO, DNO) S (TITLE, SALARY) Hypergraph representation S Salary E ENO, ENAME, TITLE W DNO, Dname D Notes 16

  8. S2: Object Oriented DEPT EMPLOYS ENGR DEPT-NAME BUDGET MGR E# NAME ADDRESS TITLE SALARY Notes 16

  9. ER model for S1: N M ENO ENAME DNO E W D TITLE SALARY DNAME Notes 16

  10. Or maybe? ENO ENAME DNO E W D pay DNAME TITLE S SALARY Notes 16

  11. ER model for S2 E# NAME DEPT-NAME N 1 ENGR Y DEPT ADDR TITLE BUDGET MGR SALARY Notes 16

  12. DEPT INTEGRATION: DNO DEPT-NAME D D BUDGET MGR DNAME S2 S1 Notes 16

  13. DNO DEPT-NAME D D BUDGET MGR DNAME DNO DEPT-NAME D NICKNAME BUDGET MGR Notes 16

  14. EMPLOYEE INTEGRATION: ENO ENAME E# NAME E ENGR ADDR TITLE SALARY TITLE SALARY Notes 16

  15. ENO ENAME E# NAME E ENGR ADDR TITLE SALARY TITLE SALARY ENO ENAME subset E ENGR ADDR SALARY TITLE Notes 16

  16. One issue: matching attributes Another issue: matching values Example: Salary at A is weekly in dollars Salary at B is monthly in pounds Salary at C is Rate  hours-worked Notes 16

  17. Works-in relationship: N M N 1 E D E D W W Notes 16

  18. One option: N M E D W Notes 16

  19. N M works in Another option: E D N 1 pays Notes 16

  20. Query processing Query Subquery 1 … Subquery n Notes 16

  21. Example DEPT-NAME DNO Site 1 DNO NICKNAME(DNAME) Site 2 DEPT_NAME BUDGET MGR Site 3: DNO DEPT_NAME D NICKNAME MGR BUDGET Notes 16

  22. Find nickname & budget for DNO=55 Site 1: find nickname for DNO=55 Site 3: find dept_name for DNO=55  Site 2: find budget for dept_name=  Notes 16

  23. Example ENO ENAME • Find ENO, SALARY for TITLE =  E ENGR ADDR SALARY TITLE Notes 16

  24. Site 1: find E(ENO, SALARY) for TITLE =  Site 2: find ENGR(E#, SALARY) for TITLE =  Assume the salaries are consistent Notes 16

  25. Updates Update GS u1 u2 un ... Notes 16

  26. May be hard Example: ENAME in S1 is 10 bytes ENAME in S2 is 20 bytes ENAME in GS is 20 bytes Insert ENAME = “Smith” Notes 16

  27. Typically Updates done using local schemas Notes 16

  28. Query Optimization At each site: • Different statistics • Different algorithms for Q.P. • Different exported functionality Notes 16

  29.  VERY HARD  • In heterogeneous DBMS: • Integration • Query Processing/Optimization is an art… Notes 16

More Related