Danh mục

Bài giảng Hệ quản trị cơ sở dữ liệu: Chương 4 - Lê Thị Minh Nguyện

Số trang: 13      Loại file: pdf      Dung lượng: 1.67 MB      Lượt xem: 13      Lượt tải: 0    
Thư viện của tui

Xem trước 2 trang đầu tiên của tài liệu này:

Thông tin tài liệu:

Bài giảng Hệ quản trị cơ sở dữ liệu: Chương 4 trình bày về "Quản lý giao tác". Nội dung cụ thể của chương này gồm có: Giới thiệu, định nghĩa giao tác, tính chất ACID của giao tác, trạng thái của giao tác, khai báo giao tác trong SQL Server,...
Nội dung trích xuất từ tài liệu:
Bài giảng Hệ quản trị cơ sở dữ liệu: Chương 4 - Lê Thị Minh Nguyện8/25/2017Nội dung1.2.3.4.5.6.Chương 4.Quản lý giao tácGV: Lê Thị Minh NguyệnEmail: nguyenltm@huflit.edu.vnGiới thiệuĐịnh nghĩa giao tácTính chất ACID của giao tácTrạng thái của giao tácKhai báo giao tác trong SQL ServerLịch biểuHệ quản trị Cơ sở dữ liệu1. Giới thiệu1. Giới thiệu (tt)• Ví dụ• Khi DBMS gặp sự cố• Hệ thống giao dịch ngân hàng• Hệ thống đặt vé bay2• Các thao tác có thể làm cho trạng thái CSDL không chính xác• DBMS là môi trường đa người dùng• Nhiều thao tác truy xuất lên cùng một đơn vị dữ liệu• Nhiều thao tác thi hành đồng thờiKhách hàng 1Tìm thấy 1 chỗ trốngĐặt vé bayTài khoản BĐọc số dư của tài khoản AKhách hàng 2Tìm thấy 1 chỗ trốngThời gianTài khoản AKiểm tra (số dư > số tiền cần rút)2 khách hàng đặt cùng 1chỗ trống ???Tăng số dư của tài khoản BSự cốGiảm số dư của tài khoản ANgân hàng chịu lỗ 1khoảng tiền ???Đặt vé bayNguyên tốCơ chế tuần tựHệ quản trị Cơ sở dữ liệu3Hệ quản trị Cơ sở dữ liệu418/25/20172. Định nghĩa giao tác2. Định nghĩa giao tác (tt)• Giao tác là 1 đơn vị xử lý nguyên tố gồm 1 chuỗi các hành độngtương tác lên CSDL. Khi thực hiện một giao tác hoặc phải thựchiện tất cả các hành động của nó hoặc thì không thực hiệnhành động nào hết.CSDL nhất quán 1Giao tácHệ quản trị Cơ sở dữ liệuCSDL nhất quán 25Hệ quản trị Cơ sở dữ liệu3. Tính chất ACID của giao tác3.1. Tính Nguyên tố (Atomicity)3.1. Tính Nguyên tố (Atomicity)• Tính Nguyên tố (Atomicity)• Hoặc là toàn bộ hoạt động của giao dịch được phản ánh đúng đắn trong3.2. Tính Nhất quán (Consistency)CSDL hoặc không có hoạt động nào cả.3.3. Tính Cô lập (Isolation)• Nói cách khác, tác dụng của các câu lệnh trong một giao tác phải như làmột câu lệnh đơn. Không chia nhỏ ra được.3.4. Tính Bền vững (Durability)Hệ quản trị Cơ sở dữ liệu67Hệ quản trị Cơ sở dữ liệu828/25/20173.2. Tính Nhất quán (Consistency)3.1. Tính Nguyên tố (Atomicity) (tt)T:Read(A,t);t:=t-50;Write(A,t);Read(B,t);t:=t+50;Write(B,t);• A=100, B=200 (A+B=300)• Tính Nhất quán (Consistency)• Bất kỳ CSDL nào thì mọi ràng buộc tòan vẹn phải thỏa. Tại bất kỳ thờiđiểm mà mọi RBTV được thỏa gọi là tính nhất quán.• Một giao tác phải biến CSDL từ trạng thái nhất quán này sang trạng tháinhất quán khác không được phá vở trạng thái nhất quán. E1 T E2• Tại thời điểm sau khi write(A,t)(E1nhất quán thì E2 phải nhất quán).• A=50, B=200 (A+B=250) - CSDL không nhất quán• Tại thời điểm sau khi write(B,t)• Ví dụ: phái là nam hoặc nữ, nhưng gõ đến phái Enter đi qua• A=50, B=250 (A+B=300) - CSDL nhất quánmà cho phép thì không còn trạng thái nhất quán.• Nếu T không bao giờ bắt đầu thực hiện hoặc T được đảm bảo phải hoàn tấtthì trạng thái không nhất quán sẽ không xuất hiệnHệ quản trị Cơ sở dữ liệu93.2. Tính Nhất quán (Consistency)Hệ quản trị Cơ sở dữ liệu103.3. Tính Cô lập (Isolation)T: Read(A,t);t:=t-50;Write(A,t);Read(B,t);t:=t+50;Write(B,t);• Tính Cô lập (Isolation)• Một giao tác không quan tâm đến các giao tác khác xử lý đồng thời vớinó• Khi có n giao tác xử lý đồng thời phải làm sao bảo đảm là tôi có• Consistencytính độc lập của riêng tôi.• Tổng A+B là không đổi• Nếu CSDL nhất quán trước khi T được thực hiện thì sau khi Thoàn tất CSDL vẫn còn nhất quánHệ quản trị Cơ sở dữ liệu11Hệ quản trị Cơ sở dữ liệu1238/25/20173.3. Tính Cô lập (Isolation)T’3.4. Tính Bền vững (Durability)• Tính Bền vững (Durability)T:Read(A,t);t:=t-50;Write(A,t);Read(B,t);t:=t+50;Write(B,t);• Mọi thay đổi mà giao tác thực hiện trên CSDL phải được ghi nhậnbền vững• Giả sử có 1 giao tác T’ thực hiện phép toán A+B và chen vào giữa thời gianthực hiện của T• T’ kết thúc: A+B=50+200=250• T kết thúc: A+B=50+250=300• Hệ thống của các giao tác thực hiện đồng thời có trạng thái tương đươngvới trạng thái hệ thống của các giao tác thực hiện tuần tự theo 1 thứ tự nàođó.Hệ quản trị Cơ sở dữ liệu13T:Read(A,t);t:=t-50;Write(A,t);Read(B,t);t:=t+50;Write(B,t);• Khi T kết thúc thành công• Dữ liệu sẽ không thể nào bị mất bất chấp có sự cố hệ thống xảyraHệ quản trị Cơ sở dữ liệu144. Trạng thái của giao tác3.4. Tính Bền vững (Durability) (tt)• Tính bền vững đảm bảo rằng một khi giao dịch đượchoàn thành, tất cả các cập nhật trên CSDL là bền vữngthậm chí nếu có lỗi hệ thống sau khi giao dịch hoànthành thực hiện. Giả sử một lỗi hệ thống có thể dẫn đếnmất mát dữ liệu trong bộ nhớ chính, nhưng dữ liệuđược ghi vào đĩa không bao giờ bị mất.Hệ quản trị Cơ sở dữ liệu15Hệ quản trị Cơ sở dữ liệu1648/25/20175. Khai báo giao tác trong SQL Server5. Khai báo giao tác trong SQL Server (tt)• Giao tác SQL được định nghĩa dựa trên các câu lệnh xử lý giao tácsau :• BEGIN TRANSACTION: Bắt đầu một giao tác• SAVE TRANSACTION: Đánh dấu một vị trí trong giao tác (gọi là điểm đ ...

Tài liệu được xem nhiều: