Transaction SQL là gì

Transaction là gì?

Transaction là một trong chủ thể được đề cùa tới không hề ít trong các vận dụng doanh nghiệp lớn, nhằm bảo đảm an toàn tính trọn vẹn của dữ liệu ngay cả trong các khối hệ thống Khủng phát sinh một lớn những chuyển đổi lên database với bên cạnh đó. Transaction là một trong tập phù hợp các vận động đọc/ghi xuống database hay là bọn chúng phần lớn tiến hành thành công hết hoặc không tồn tại hoạt động nào được thực hiện xuống database.

Bạn đang xem: Transaction là gì

Từ hình bên trên rất có thể thấy transaction thứ nhất thành công xuất sắc Khi tất cả các vận động đọc/ghi các thành công, trong những lúc transaction thứ hai bị rollback vị hoạt đông thứ 2 ko thành công.

Vốn dĩ một transaction được đặc thù vày 4 nguyên tố [thường xuyên được hotline là ACID]:

AtomicityConsistencyIsolationDurability

Trong một cửa hàng tài liệu, số đông câu lệnh SQL được phải xúc tiến trong phạm vi của một transaction. Nếu không tồn tại có mang phạm vi của transaction, database vẫn ngầm định rằng mỗi câu SQL sẽ được bao bên ngoài một transaction.

Atomicity

Atomicity phương pháp rằng toàn bộ các hoạt động của transaction hoặc là tiến hành thành công hết hay những không có bất kể hành vi nào được thực khi gồm ngẫu nhiên một chuyển động triển khai ko thành công.

Vì vậy một transaction chỉ tất cả 2 trạng thái:

Abort: Tất cả những đổi khác của transaction sẽ không được đồng bộ xuống database.Commit: Tất cả những biến đổi của transaction được đồng bộ xuống database.

Ví dụ bọn họ bao gồm một giai dịch của ngân hàng gửi 100 đồng tự tài khoảng chừng X lịch sự thông tin tài khoản Y.

Nếu trên bước transaction triển khai thành công xuất sắc tại bước T1 nhưng lại khi tới bước T2 thì khối hệ thống bị lỗi. Hiện giờ nếu như gần như chuyển đổi này được nhất quán xuống database thì vô tình thông tin tài khoản X bị mất 100 đồng cơ mà thông tin tài khoản Y lại không sở hữu và nhận được đồng làm sao. Đây là ví dụ kinh khủng cơ mà Atomicity có thể đảm bảo an toàn các hệ thống sẽ không còn xảy ra không nên xót nhỏng trên.

Xem thêm: Anh Hùng Lao Động Trí Óc Trần Đại Nghĩa Và Những Cống Hiến Cho Ngành Quốc Phòng

Consistency

Consistency tức là toàn bộ những ràng buộc toàn vẹn dữ liệu[constraints, key, data types, Trigger, Check] phải được xúc tiến thành công mang lại đầy đủ transaction gây ra xuống database, nhầm đảm bảo tính đúng mực của dữ liệu.

Isolation

Isolation bảo vệ các transaction xẩy ra đan xen sẽ không còn có tác dụng ảnh hưởng cho tính nhất quán của dữ liệu. Các đổi khác tài liệu phía bên trong mỗi transaction sẽ tiến hành cô lập, các transaction khác sẽ không còn thể bắt gặp cho tới khi nó được đồng nhất xuống database.

Cho X = 50, Y = 50.

Giả sử transaction T triển khai trước cho tới bước Read[Y] thì transaction T ban đầu thực hiện, lúc này sẽ ra mắt triệu chứng 2 transaction chạy xen kẽ nhau. Lúc T phát âm quý giá của X thì có được quý giá tương ứng với vào T là [X * 100 = 500], dẫu vậy Y là 50 đối với T Lúc thực thi ngừng thì Y là 0.

Durability

Durability bảo đảm an toàn một transaction xúc tiến thành công xuất sắc thì tất cả gần như chuyển đổi vào transaction buộc phải được đồng điệu xuống database bất kỳ cả khi hệ thống xẩy ra lỗi hoặc bị mất năng lượng điện. Các transaction thành công mà lại không được đồng hóa xuống database cần được đồng điệu lại lúc khối hệ thống chuyển động quay trở lại.

Tóm lược

Các ở trong tính ACID về cơ bản nó đảm bảo an toàn tính đúng chuẩn với đồng nhất của tài liệu khi trải qua những transaction khác biệt. Tuy nhiên các trực thuộc tính này có thể sẽ không thể áp dụng cùng với những hệ thống phân tán đã cách tân và phát triển rất nkhô nóng trong số những năm gần đây, bọn họ sẽ mày mò sống những phần sau.

Video liên quan

Chủ Đề