ADVANCED TOPICS IN RELATIONAL DATABASES Spring 2011 Instructor: Hassan Khosravi.

Post on 17-Jan-2016

222 views 2 download

Tags:

Transcript of ADVANCED TOPICS IN RELATIONAL DATABASES Spring 2011 Instructor: Hassan Khosravi.

ADVANCED TOPICS IN RELATIONAL DATABASES

Spring 2011

Instructor: Hassan Khosravi

4.2

AUTHORIZATION

4.3

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

4.4

Example

Apply(dec), Select(Sid) Student select(SID,GPA)

4.5

4.6

How can we give the following privilege Select students info for Stanford applications only

Delete Berkeley applications only

4.7

Obtaining Privileges

Relation creator is owner Owner has all privileges and may grant privileges

Grant privs on R to users [with grant option]

4.8

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

4.9

ON-LINE ANALYTICAL PROCESSING (OLAP)

4.10

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

4.11

Data warehousing

Bring data from operational OLPT sources into a single warehouse for OLAP analysis

Decision Support System Data warehouse tuned for OLAP

4.12

Star Schema

Fact table (relationships) Updated frequently, very large

Sales transaction, course enrollment

Dimension tables (entities, objects) Stores, items, customers Students, courses

4.13

Example

4.14

Performance Inherently very slow:

Special indexes Extensive use of materialized views

4.15

DATA CUBES

4.16

Multi-dimensional OLAPData Cube

Dimension data form axes of Cube Fact data in cells

Item

Stores

Customers

4.17

Assuming one quantity for that

Item

Stores

Customers

Qty and price for I32, C4, s17

4.18

Usually have defined aggregate functions that are meaningful Sum(qty * price)

Item

Stores

Customers

Aggregate over all items for C5, s11

4.19

Usually have defined aggregate functions that are meaningful Sum(qty * price)

Item

Stores

Customers

Aggregate over all stores for I 61, C5, C21

4.20

Usually have defined aggregate functions that are meaningful Sum(qty * price)

Item

Stores

Customers

Aggregate over all customers for I 5, s13

4.21

Usually have defined aggregate functions that are meaningful Sum(qty * price)

Item

Stores

Customers

Aggregate over all customers and Items for s2

Aggregate over all stores and Items for c63

Aggregate over all stores and customers for I 52

4.22

Usually have defined aggregate functions that are meaningful Sum(qty * price)

Item

Stores

Customers

Full aggregation

4.23

Example

4.24

4.25

Drill Down

Add for category to the group by and selection

4.26

Roll Up