Week 4 - Distrbuted DB system Flashcards
What does a query Processor do?
The query processor basically takes
this high level query language (SQL) and then generate low level data manipulation,
commands for the distributed database.
What is Query Execution Methodology
The steps that one goes through in executing high-level (declarative) user queries
What is Query Optimization
How do we determine the “best” execution plan?
get the answer query very fast
What is the main objective of distributed query processing?
1) Form a high level query on a distributed database for optimal execution.
2) Form multiple low level queries that roll up into the needed dataset.
3_ Define a process for query evaluation.
1) Form a high level query on a distributed database for optimal execution.
What is decomposition
3 items
1) Checking the sanity of the queries
2) Eliminate redundancy
3) Normalization algebraic conversion
Localization
3 times
1) Only on distributed DB
2) replace local relations (tables) by corresponding fragments (distributed instances)
3) use UNION
Total Cost of a Query Execution Plan
43items
1) CPU cost
2) I/O cost
3) communications cost
total cost = CPU + I/O + Com
Total Cost of a Query Execution Plan
43items
1) CPU cost
2) I/O cost (getting data from Disk)
3) communications cost (across the network)
total cost = CPU + I/O + Com
What is the response time
CPU Time \+ I/O time = Com time
What is the primary cost factor
Size of intermediate relations
tables that are split and have to be joined over the network
What does a query execution plan impact?
1) Data distribution strategy
2) Data conflict outcome
3) Fragmentation strategy
4) Query performance
4) Query performance
Is IOs a good metrics for a distributed cost analysis?
No
Is query separation a good plan for distributed systems
yes
How does one create a horizontal fragmentation of a database table?
1) By placing the same table in to multiple databases that are connected horizontally.
2) By placing table records in to multiple smaller tables.
3) By placing table fields in to multiple smaller tables.
4) By placing table attributes in to multiple smaller tables.
2) By placing table records in to multiple smaller tables.
Which table key should be copied to each of the subtables created in a vertical fragmentation?
1) Primary key
2) Foreign key
3) Vertical key
4) Alternating key
1) Primary key