Course description

Semantic Database Design :High-level conceptual modeling, ER Modeling concepts, ER Diagrams, Cardinality constraints, Higher-order relationships, Enhanced ER Model (EER), Weak-entity types, Subclasses and inheritance, Specialization and Generalization, Modeling of UNION types using categories - Relational Model, Languages and Systems - Relational algebra:Relational model concepts, Relational integrity constraints, Update operations on relations, Relational algebra model, ER to relational mapping - SQL:Data definition in SQL, Queries and update statements, Views, Integrity constraints, Specifying indexes, Embedded SQL - IBM DB2 case study:Architecture of DB2, Data definition and manipulation in DB2 - EER to Relational mapping - Database design using the relational model:Functional dependencies: Keys in a relational model, Concept of functional dependencies, Normal forms based on primary keys, Boyce-Codd Normal Forms - Further Dependencies: Multi-values dependencies and fourth normal form, Join dependencies and fifth normal form, Inclusion dependencies, Other dependencies and normal forms - Storage and Indexing Structures:Storage structures:Secondary storage devices, Buffering of blocks, File Organization, Heaps, Sorted Files, Hashing and overflow handling techniques, Dynamic hashing, Extensible hashing, Other file organizations - Indexing methods : Basic terminology, Primary indexes, Clustering index, Secondary index, Multilevel indexes, ISAM, B-trees, B+ trees, inserting and searching algorithms for B+ trees, Other indexing methods

Transaction Processing and Concurrency Control:Transaction Fundamentals (3 sessions): OLTP environments, Concurrency issues, need for transactions, Necessary properties of transactions (ACID properties), Transaction states, serializability, Serial schedules, Conflict serializability, View serializability, Recoverable and non-recoverable schedules, Cascading rollbacks, Cascadeless schedules - Concurrency control:Serialized and non-serialized schedules, Testing for serializability, Locking, Lock compatibility matrix, Locking and serializability, Deadlocks and starvation, Two-phase locking (2PL) protocol, Conservative, strict and rigorous 2PL, 2PL with lock conversions, Timestamp-ordering based protocol, Multi-versioning protocol, Multi-granularity locking, Deadlock prevention protocols, Wait-die and wound-wait schemes, Time-out based schemes, Deadlock recovery, Nested transactions - Database recovery techniques:Recovery concepts, Deferred updates technique, Immediate update technique, Shadow paging, ARIES recovery algorithm

Query Processing and Optimization:Translating SQL into relational algebra, Basic query operations, Heuristics in query optimization, Selectivity and cost estimates in query optimization, Semantic query optimization - Database Security and Authorization:Discretionary access control, Mandatory access control and multi-level security, Statistical database security - Enhanced Data Models for specific applications:Active database concepts, Temporal databases, Spatial databases, multi-media - databases - Distributed databases and issues:Data fragmentation, replication and allocation in distributed databases, Types of distributed database systems Query processing in distributed databases, Concurrency control and recovery in distributed databases

What will i learn?

Requirements

skill expert

Free

Lectures

43

Skill level

Beginner

Expiry period

Lifetime

Certificate

Yes

Related courses

Beginner

Memory Systems

0

(0 Reviews)

Compare

Overview In this course, we first provide a comprehensive overview of memory systems, taking an approach that covers both fundamentals and recent research. We first introduce fundamental principles and ideas, covering DRAM and emerging memory technologies as well as many architectural concepts and ideas related to memory organization, memory control, processing-in-memory, and memory latency / energy / bandwidth / reliability / security / QoS. We discuss major challenges facing modern memory systems (and the computing platforms we currently design around the memory system) in the presence of greatly increasing demand for data and its fast analysis. We examine some promising research and design directions to overcome these challenges. On the research-related part of course (sprinkled across topical lectures), we discuss the following key research topics in detail, focusing on both open problems and potential solution directions: Fundamental issues in memory reliability and security and how to enable fundamentally secure, reliable, safe architectures Enabling data-centric and hence fundamentally energy-efficient architectures that are capable of performing computation near data Reducing both latency and energy consumption by tackling the fixed-latency/energy mindset Enabling emerging memory technologies Enabling predictable and QoS-aware memory systems Research challenges and opportunities in enabling emerging NVM (non-volatile memory) technologies Scaling NAND flash memory and SSDs (solid state drives) into the future

Free

22:36:25 Hours