Spring 2011 Instructor: Hassan Khosravi
260 likes | 400 Vues
ADVANCED TOPICS IN RELATIONAL DATABASES. Spring 2011 Instructor: Hassan Khosravi. Authorization. Database Authorization. Make sure users see only the data they are supposed to see. Guard the database against modifications by malicious users. Users have privileges
Spring 2011 Instructor: Hassan Khosravi
E N D
Presentation Transcript
ADVANCED TOPICS IN RELATIONAL DATABASES Spring 2011 Instructor: Hassan Khosravi
Database Authorization • Make sure users see only the data they are supposed to see. • Guard the database against modifications by malicious users. • Users have privileges • Can only operate on data for which they are authorized • Select on R • Insert on R • Update on R • Delete on R
Example • Apply(dec), Select(Sid) • Student select(SID,GPA)
How can we give the following privilege • Select students info for Stanford applications only • Delete Berkeley applications only
Obtaining Privileges • Relation creator is owner • Owner has all privileges and may grant privileges • Grant privs on R to users • [with grant option]
Revoking Privileges • Cascade: also revoke privileges granted from privileges being revoked transitively, unless also granted from another source • Restrict: disallow if cascade would revoke any other privileges
Two broad types of database activities • OLTP: Online Transaction Processing • Short transactions • Simple queries • Touch small portion of data • Frequent updates • OLAP: Online Analytical Processing • Long transactions • Complex queries • Touch large portions of data • Infrequent updates
Data warehousing • Bring data from operational OLPT sources into a single warehouse for OLAP analysis • Decision Support System • Data warehouse tuned for OLAP
Star Schema • Fact table (relationships) • Updated frequently, very large • Sales transaction, course enrollment • Dimension tables (entities, objects) • Stores, items, customers • Students, courses
Performance • Inherently very slow: • Special indexes • Extensive use of materialized views
Multi-dimensional OLAPData Cube • Dimension data form axes of Cube • Fact data in cells Customers Item Stores
Assuming one quantity for that Customers Item Qty and price for I32, C4, s17 Stores
Usually have defined aggregate functions that are meaningful • Sum(qty * price) Customers Item Aggregate over all items for C5, s11 Stores
Usually have defined aggregate functions that are meaningful • Sum(qty * price) Customers Item Aggregate over all stores for I 61, C5, C21 Stores
Usually have defined aggregate functions that are meaningful • Sum(qty * price) Customers Item Aggregate over all customers for I 5, s13 Stores
Usually have defined aggregate functions that are meaningful • Sum(qty * price) Aggregate over all stores and customers for I 52 Customers Aggregate over all stores and Items for c63 Item Aggregate over all customers and Items for s2 Stores
Usually have defined aggregate functions that are meaningful • Sum(qty * price) Customers Item Full aggregation Stores
Drill Down • Add for category to the group by and selection