1. PART (40%): Evaluation and optimization: A schema of the ski shop information system is given: Customer (cid, name, surname, address, telephone); Employee (eid, name, surname, address, telephone); Purchase (pid, sid, cid, eid, date); Skiis (sid, brand, model, length, hardness) Additional information is given: |Customer| =150 pages, 40 records/page |Employee| = 2 pages, 40 records/page |Purchase| = 2000 pages, 100 records/page |Skiis| = 250 pages, 30 records/page Buffer can store up to 2500 pages. Let's assume that the following indices are now set on the schema from the previous task: - Level 2 B+ index on the attribute Purchase.date - Hash index on the attribute Skiis.sid Our DBMS has the following algorithms to perform the join: - Hash join - Index nested loops join - Sort-merge join Translate the following SQL query into relational algebra and find the plan that reads the fewest pages or blocks: SELECT Skiis.model, Skiis.length FROM Skiis JOIN Purchase ON (Skiis.sid = Purchase.sid) WHERE Skiis.brand = 'Elan' AND Purchase.date > ’31.12.2023’
1. PART (40%): Evaluation and optimization:
A schema of the ski shop
Customer (cid, name, surname, address, telephone);
Employee (eid, name, surname, address, telephone);
Purchase (pid, sid, cid, eid, date);
Skiis (sid, brand, model, length, hardness)
Additional information is given:
|Customer| =150 pages, 40 records/page
|Employee| = 2 pages, 40 records/page
|Purchase| = 2000 pages, 100 records/page
|Skiis| = 250 pages, 30 records/page
Buffer can store up to 2500 pages.
Let's assume that the following indices are now set on the schema from the previous
task:
- Level 2 B+ index on the attribute Purchase.date
- Hash index on the attribute Skiis.sid
Our DBMS has the following
- Hash join
- Index nested loops join
- Sort-merge join
Translate the following SQL query into relational algebra and find the plan that reads
the fewest pages or blocks:
SELECT Skiis.model, Skiis.length
FROM Skiis JOIN Purchase ON (Skiis.sid = Purchase.sid)
WHERE Skiis.brand = 'Elan' AND Purchase.date > ’31.12.2023’
Step by step
Solved in 3 steps with 2 images