2011 Db Intro

399 views
351 views

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
399
On SlideShare
0
From Embeds
0
Number of Embeds
5
Actions
Shares
0
Downloads
16
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide













































  • 2011 Db Intro

    1. 1. Databases Alan Medlar amedlar@cs.ucl.ac.uk
    2. 2. Schedule • Today: Introduction • Monday 2 Feb: Networking nd • Monday 2 Feb: Principles of Transactions nd • Tuesday 3 Feb: Concurrent Transactions rd • To be decided: Distributed Transactions
    3. 3. Introduction
    4. 4. Introduction • Why do we care about databases?
    5. 5. Introduction • Why do we care about databases? • Abstraction
    6. 6. Introduction • Why do we care about databases? • Abstraction • Details of storage and access are irrelevant
    7. 7. Introduction • Why do we care about databases? • Abstraction • Details of storage and access are irrelevant • Concurrency
    8. 8. Introduction • Why do we care about databases? • Abstraction • Details of storage and access are irrelevant • Concurrency • Crash recovery
    9. 9. Introduction • Why do we care about databases? • Abstraction • Details of storage and access are irrelevant • Concurrency • Crash recovery • Integrity and Security (privacy)
    10. 10. Introduction • Why do we care about databases? • Abstraction • Details of storage and access are irrelevant • Concurrency • Crash recovery • Integrity and Security (privacy) • Multi-user
    11. 11. Centralised Databases
    12. 12. Centralised Databases Bottleneck! Communication overhead! Single point of failure!
    13. 13. Centralised Databases • Bad news... • Performance • Processing • I/O • Distributed nature of data (departments, companies, “mashups”) • Availability (single point of failure)
    14. 14. Distributed Databases
    15. 15. Distributed Databases Distributed Processing Distributed { Storage Localised Traffic
    16. 16. Distributed Databases • Definition: A single DBMS running across multiple CPUs, disks and/or networks, designed to permit safe parallel access.
    17. 17. Concepts • Distributed Processing • Central database, distributed processing
    18. 18. Distributed Processing • Multiple processors or cores • Same memory (multi-core) • Same disk (networked storage) • Concurrency Control provided by transactions
    19. 19. Concepts • Distributed Processing • Central database, distributed processing • Ad-hoc Distributed Database • Database physically distributed over network
    20. 20. Distributed Databases • Fragmentation • Large dataset broken up into smaller components
    21. 21. Distributed Databases • Fragmentation • Large dataset broken up into smaller components • Allocation • Fragments should be stored according to usage
    22. 22. Distributed Databases • Fragmentation • Large dataset broken up into smaller components • Allocation • Fragments should be stored according to usage • Replication • Copy maintained at multiple sites to take advantage of additional processing power or decreased latency
    23. 23. Distributed Databases • Might be implicit! Fragmentation • Large dataset broken up into smaller components • Allocation • Fragments should be stored according to usage • Replication • Copy maintained at multiple sites to take advantage of additional processing power or decreased latency
    24. 24. Distributed Databases (2) • How do we decide how to fragment a database? • Data, application and usage dependant!
    25. 25. Distributed Databases (2) • How do we decide how to fragment a database? • Data, application and usage dependant! • Goals: • Locality • Minimal Communication • Balance storage, processing, monetary costs
    26. 26. Concepts • Distributed Processing • Central database, distributed processing • Ad-hoc Distributed Database • Database physically distributed over network • Distributed DBMS (DDBMS) • Software that makes distribution transparent
    27. 27. Distributed DBMS • Key Concept: Transparency
    28. 28. Distributed DBMS • Key Concept: Transparency • Transparent Distribution
    29. 29. Distributed DBMS • Key Concept: Transparency • Transparent Distribution • One centralised database from perspective of user (programmer)
    30. 30. Distributed DBMS • Key Concept: Transparency • Transparent Distribution • One centralised database from perspective of user (programmer) • Transparent Transactions
    31. 31. Distributed DBMS • Key Concept: Transparency • Transparent Distribution • One centralised database from perspective of user (programmer) • Transparent Transactions • Integrity of data maintained across multiple databases
    32. 32. Distributed DBMS (2) • Requires advanced: • Recovery Services • Concurrency control • Focus of this course
    33. 33. Summary • Advantages
    34. 34. Summary • Advantages • Performance
    35. 35. Summary • Advantages • Performance • Reflect organisational structure
    36. 36. Summary • Advantages • Performance • Reflect organisational structure • Economics
    37. 37. Summary • Advantages • Performance • Reflect organisational structure • Economics • Modular Growth
    38. 38. Summary • Advantages • Performance • Reflect organisational structure • Economics • Modular Growth • Availability
    39. 39. Summary • Advantages • Performance • Reflect organisational structure • Economics • Modular Growth • Availability • Reliability
    40. 40. Summary (2) • Disadvantages
    41. 41. Summary (2) • Disadvantages • Complexity (design, transparency, integrity)
    42. 42. Summary (2) • Disadvantages • Complexity (design, transparency, integrity) • Security more of an issue
    43. 43. Summary (2) • Disadvantages • Complexity (design, transparency, integrity) • Security more of an issue • Maintenance Costs
    44. 44. Summary (2) • Disadvantages • Complexity (design, transparency, integrity) • Security more of an issue • Maintenance Costs • Lack of standards (so much dependant on data, application, usage, etc)
    45. 45. Next: Transactions...

    ×