/img/node.jpg

CMU 15-445 Lecture #23: Distributed OLTP Databases

CMU 15-445 Database Systems Lecture #23: Distributed OLTP Databases We have not discussed how to ensure that all nodes agree to commit a txn and then to make sure it does commit if the DBMS decides it should. → What happens if a node fails? → What happens if messages show up late? → What happens if the system does not wait for every node to agree to commit? Atomic

CMU 15-445 Lecture #22: Introduction to Distributed Databases

CMU 15-445 Database Systems Lecture #22: Introduction to Distributed Databases Introduction Distributed DBMSs 辨析概念:Parallel DBMSs vs Distributed DBMSs Parallel DBMSs: Nodes are physically close to each other. Nodes connected with high-speed LAN(Local Area Network). Communication cost is assumed to be small. Distributed DBMSs: Nodes can be far from each other. Nodes connected using public network. Communication cost and

CMU 15-445 Lecture #21: Database Crash Recovery

CMU 15-445 Database Systems Lecture #21: Database Crash Recovery Crash Recovery The DBMS relies on its recovery algorithms to ensure database consistency(C), transaction atomicity(A), and durability(D) despite failures. Each recovery algorithm is comprised of two parts: Actions during normal transaction processing to ensure that the DBMS can recover from a failure Actions after a failure to recover the database to a state that ensures the atomicity, consistency, and durability of

CMU 15-445 Lecture #20: Database Logging

CMU 15-445 Database Systems Lecture #20: Database Logging Crash Recovery 情景:数据库运行到一半没电了 Recovery algorithms are techniques to ensure database consistency(C), transaction atomicity(A), and durability(D) despite failures(example no power) The key primitives that used in recovery algorithms are UNDO and REDO. Not all algorithms use both primitives. UNDO: The process of removing the effects of an incomplete or aborted

CMU 15-445 Lecture #18: Timestamp Ordering Concurrency Control

CMU 15-445 Database Systems Lecture #18: Timestamp Ordering Concurrency Control Timestamp Ordering Concurrency Control 纯用锁很影响性能,锁是一个悲观的方法 乐观的方法:用时间戳 If $TS(T_i) < TS(T_j)$, then the DBMS must ensure that the execution schedule is equivalent to the serial schedule where $T_i$appears before $T_j$ . Multiple implementation strategies: →