Introduction
©Silberschatz, Korth and Sudarshan
21.1
Database System Concepts - 7th Edition
Parallel/Distributed Data Storage History
©Silberschatz, Korth and Sudarshan
21.2
Database System Concepts - 7th Edition
I/O Parallelism
©Silberschatz, Korth and Sudarshan
21.3
Database System Concepts - 7th Edition
I/O Parallelism
Round-robin:
Send the ith tuple inserted in the relation to node i mod n.
Hash partitioning:
©Silberschatz, Korth and Sudarshan
21.4
Database System Concepts - 7th Edition
Range Partitioning
©Silberschatz, Korth and Sudarshan
21.5
Database System Concepts - 7th Edition
I/O Parallelism (Cont.)
Partitioning techniques (cont.):
E.g., with a partitioning vector [5,11]
©Silberschatz, Korth and Sudarshan
21.6
Database System Concepts - 7th Edition
Comparison of Partitioning Techniques
1. Scanning the entire relation.
2. Locating a tuple associatively – point queries.
3. Locating all tuples such that the value of a given attribute
lies within a specified range – range queries.
©Silberschatz, Korth and Sudarshan
21.7
Database System Concepts - 7th Edition
Comparison of Partitioning Techniques (Cont.)
Round robin:
Hash partitioning:
©Silberschatz, Korth and Sudarshan
21.8
Database System Concepts - 7th Edition
Comparison of Partitioning Techniques (Cont.)
Range partitioning:
©Silberschatz, Korth and Sudarshan
21.9
Database System Concepts - 7th Edition
Handling Small Relations
©Silberschatz, Korth and Sudarshan
21.10
Database System Concepts - 7th Edition
Types of Skew
©Silberschatz, Korth and Sudarshan
21.11
Database System Concepts - 7th Edition
Types of Skew (Cont.)
©Silberschatz, Korth and Sudarshan
21.12
Database System Concepts - 7th Edition
Handling Skew in Range-Partitioning
©Silberschatz, Korth and Sudarshan
21.13
Database System Concepts - 7th Edition
Histograms
��
©Silberschatz, Korth and Sudarshan
21.14
Database System Concepts - 7th Edition
Virtual Node Partitioning
©Silberschatz, Korth and Sudarshan
21.15
Database System Concepts - 7th Edition
Handling Skew Using Virtual Node Partitioning
©Silberschatz, Korth and Sudarshan
21.16
Database System Concepts - 7th Edition
Dynamic Repartitioning
©Silberschatz, Korth and Sudarshan
21.17
Database System Concepts - 7th Edition
Dynamic Repartitioning
Tablet move
Tablet split
©Silberschatz, Korth and Sudarshan
21.18
Database System Concepts - 7th Edition
Routing of Queries
©Silberschatz, Korth and Sudarshan
21.19
Database System Concepts - 7th Edition
Replication
©Silberschatz, Korth and Sudarshan
21.20
Database System Concepts - 7th Edition
Basics: Data Replication
©Silberschatz, Korth and Sudarshan
21.21
Database System Concepts - 7th Edition
Updates and Consistency of Replicas
©Silberschatz, Korth and Sudarshan
21.22
Database System Concepts - 7th Edition
Protocols to Update Replicas
©Silberschatz, Korth and Sudarshan
21.23
Database System Concepts - 7th Edition
Parallel Indexing
©Silberschatz, Korth and Sudarshan
21.24
Database System Concepts - 7th Edition
Global Primary and Secondary Indices
©Silberschatz, Korth and Sudarshan
21.25
Database System Concepts - 7th Edition
Global Secondary Index
©Silberschatz, Korth and Sudarshan
21.26
Database System Concepts - 7th Edition
Distributed File Systems
©Silberschatz, Korth and Sudarshan
21.27
Database System Concepts - 7th Edition
Hadoop File System (HDFS)
©Silberschatz, Korth and Sudarshan
21.28
Database System Concepts - 7th Edition
Hadoop Distributed File System
Hadoop Distributed File System (HDFS)
©Silberschatz, Korth and Sudarshan
21.29
Database System Concepts - 7th Edition
Limitations of GFS/HDFS
©Silberschatz, Korth and Sudarshan
21.30
Database System Concepts - 7th Edition
Sharding
Sharding (recall from Chapter 10)
©Silberschatz, Korth and Sudarshan
21.31
Database System Concepts - 7th Edition
Key Value Storage Systems
Recall from Chapter 10
©Silberschatz, Korth and Sudarshan
21.32
Database System Concepts - 7th Edition
Typical Data Storage Access API
©Silberschatz, Korth and Sudarshan
21.33
Database System Concepts - 7th Edition
Data Storage Systems vs. Databases
Distributed data storage implementations:
©Silberschatz, Korth and Sudarshan
21.34
Database System Concepts - 7th Edition
Data Representation
©Silberschatz, Korth and Sudarshan
21.35
Database System Concepts - 7th Edition
Storing and Retrieving Data
Architecture of BigTable key-value store
©Silberschatz, Korth and Sudarshan
21.36
Database System Concepts - 7th Edition
Architecture of Key-Value Store�(modelled after Yahoo! PNUTS)
©Silberschatz, Korth and Sudarshan
21.37
Database System Concepts - 7th Edition
Geographically Distributed Storage
©Silberschatz, Korth and Sudarshan
21.38
Database System Concepts - 7th Edition
Index Structures in Key-Value Stores
©Silberschatz, Korth and Sudarshan
21.39
Database System Concepts - 7th Edition
Transactions in Key-Value Stores
©Silberschatz, Korth and Sudarshan
21.40
Database System Concepts - 7th Edition
Transactions in Key-Value Stores
©Silberschatz, Korth and Sudarshan
21.41
Database System Concepts - 7th Edition
Querying and Performance Optimizations
©Silberschatz, Korth and Sudarshan
21.42
Database System Concepts - 7th Edition