Transaction and Concurrency Control
- progtips4devs
- Feb 24, 2017
- 2 min read
Khái niệm các loại lịch biểu; Chứng minh lịch biểu khả tuần tự; Quá trình thực hiện lịch biểu; Nhạn dạng deadlock…

Câu hỏi: Giao tác (Transaction) là gì?
Trả lời: Là tập hợp các thao tác (hành động) có thứ tự, khi một thao tác bị lỗi không thực hiện được, toàn bộ các thao tác đều bị hủy.
Câu hỏi: Tính chất của giao tác?
Trả lời: ACID A – Atomic: tính nguyên tố, xem giao tác cũng như một thao tác đơn lẻ. C – Consistency: tính nhất quán, toàn bộ thao tác đều được thực hiên hoặc không thao tác nào được thực hiện I – Isolation: tính cô lập, thao tác được thực hiện độc lập, không phụ thuộc vào sự thay đổi dữ liệu của giao tác khác D – Durability: tính bền vững, sau khi giao tác hoàn tất, các thay đổi phải được ghi nhận chắc chắn lên CSDL
Câu hỏi: Câu lệnh tổng quát để viết Transaction trong MS SQL
Trả lời:
Câu hỏi: Lịch biểu là gì?
Trả lời: Lịch biểu là: – Thứ tự các thao tác trong giao tác thực hiện. – Chuỗi sắp theo thời gian các hành động được thực hiện bởi một hoặc nhiều giao tác.
Câu hỏi: Khá niệm các loại lịch biểu?
Trả lời: – Lịch biểu tuần tự: các giao tác thực hiện tuần tự, hết giao tác này rồi mới đến giao tác khác – Lịch biểu khả tuần tự (Serializale): kết quả sau khi chạy tương đương lịch biểu tuần tự – Lịch biểu có thể phục hồi được (Recoverale Schedule): mọi cặp giao tác (Ti, Tj) nếu Tj đọc đơn vị dữ liệu (đvdl) vừa được ghi bởi Ti thì Tj phải commit sau Ti. – Lịch biểu không rollback dây chuyền (Uncascading rollback Schedule): mọi cặp giao tác (Ti, Tj) nếu Tj đọc đvdl được ghi bởi Ti thì Ti phải commit trước Tj đọc dữ liệu. – Lịch biểu khả tuần tự xung đột (Conflict Serializable): nếu tương đương xung đột với một lịch biểu tuần tự
Câu hỏi: Quá trình thực hiện lịch biểu dùng {SL, XL}
Trả lời: Nếu đvdl sẽ được ghi thì đặt XL, nếu chỉ đọc và tương lai ko hề ghi thì đặt SL Ví dụ có lịch biểu: r1(A), r2(B), r3(C), r1(B), r2(C), r3(D), w1(A), w2(B), w3(C) Quá trình thực hiện:


Câu hỏi: Quá trình thực hiện lịch biểu dùng {SL, XL} có tăng cấp (Upgrading)
Trả lời: Quy tắc là khi đọc đvdl nào thì gắn SL, khi viết mới được XL
Câu hỏi: Quá trình thực hiện lịch biểu dùng {SL, XL, UL}
Trả lời: đọc đvdl mà sau đó sẽ ghi thì đặt UL, chỉ đọc mà không ghi thì SL, khi ghi đặt XL
Comments