Acid là gì

Transaction cùng Thuộc Tính ACID là nhì trong những số đông khái niệm quan trọng đặc biệt Lúc tìm hiểu với làm việc cùng với các đại lý dữ liệu. Transaction cùng ở trong tính ACID có tương quan quan trọng với nhau cùng vào nội dung bài viết này họ sẽ tò mò chi tiết về từng định nghĩa trải qua gần như ví dụ đơn giản dễ dàng.

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

Điều trước tiên và cũng cực kì đặc biệt quan trọng Lúc tò mò về các đại lý tài liệu sẽ là bạn cần nắm rõ về tư tưởng database transaction.

Database Transaction Là Gì

Một database transaction là một chuỗi bao hàm những hành động không giống nhau triển khai bên trên đại lý dữ liệu, những hành động này còn có mối quan hệ mật thiết lẫn nhau và được coi như nhỏng là 1 trong những đơn vị độc nhất.

Ví dụ: công ty chúng tôi AAA mnghỉ ngơi tài khoản trên Ngân sản phẩm Vietcomank cùng với số chi phí hấp thụ vào chúng ta đầu là 500 triệu đ. Một ngày rất đẹp ttách, chị Alice là nhân viên cấp dưới phòng kết toán rút ít 20 triệu đ nhằm thưởng trọn cho anh Bob vì chưng thành tựu xuất sắc đẹp vào thời điểm tháng. Anh Bob cũng mlàm việc thông tin tài khoản ngơi nghỉ bank Vietcomngân hàng cùng chị Alice chuyển khoản ttận hưởng này vào thông tin tài khoản của anh Bob Vietcombank.

Nếu đối chiếu hành vi giao dịch chuyển tiền thưởng từ bỏ góc độ đại lý tài liệu thì hành vi chuyển khoản được bóc biệt thành nhì hành động khác nhau:

Trừ 10 triệu VND từ thông tin tài khoản tiền gửi của chúng ta AAA.Cộng thêm 10 triệu đồng vào thông tin tài khoản tiền gửi của anh ý Bob.

Mặc mặc dù được bóc tách thành hai hành động trơ thổ địa bên trên nhưng mà cả nhị được gộp lại thành một transaction vì chúng tất cả mỗi tình dục trực tiếp lẫn nhau cùng chúng ta đề nghị bảo đảm cả hai hành động này đa số được thực hiện thành công hoặc vẫn không tồn tại hành động làm sao được thực hiện nếu như xảy ra lỗi trên database khiến một trong những hai hành vi không thực hiện được (ví dụ như ngay sau khoản thời gian hành động trước tiên diễn ra thì chống VPS bị mất điện).

đặc điểm của một transaction đó là các hành động trong transaction được xem là một đơn vị chức năng độc nhất vô nhị với ko chất nhận được bất cứ một hành động như thế nào rất có thể được thực hiện thành công xuất sắc trường hợp như có một hoặc một vài ba hành vi khác ko được thực hiện. Trong ví dụ bên trên nếu như nlỗi hành vi trước tiên chạm mặt lỗi cơ mà hành động vật dụng hai vẫn ra mắt thành công xuất sắc thì vấn đề này sẽ dẫn đến vấn đề anh Bob được nhận thêm 10 triệu nữa Khi kế tiếp chị Alice tiến hành lại vấn đề nhảy số chi phí 10 triệu đến anh ta. Dĩ nhiên anh Bob vẫn Cảm Xúc phấn chấn về vấn đề này nhưng mà nhà ngân hàng thì không hẳn tất cả xúc cảm như thế.

Cũng phải chăm chú chính là chưa hẳn các hành vi như thế nào ra mắt theo một chuỗi liên tiếp nhau cũng khá được xem như là một transaction. Ví dụ sau không đề nghị là một trong transaction:

Bob chuyển 3 triệu trường đoản cú tài khoản Vietcomngân hàng quý phái cài khoản tiết kiệm của anh ấy ta trên Sacombank.Bob đưa 5 triệu tự thông tin tài khoản Vietcombank lịch sự tài khoản chi tiêu triệu chứng khoán của anh ta sống Ngân Hàng Á Châu ACB.Bob rút 2 triệu từ tài khoản Vietcomngân hàng để đi nhậu với anh em.

Với ví dụ bên trên thì ngay cả Khi thời gian bọn chúng ra mắt sát nhau thì cũng ko được xem như là một transaction bởi vì những hành vi này có thể diễn ra bóc biệt. lấy ví dụ hành vi vật dụng 3 bị lỗi không khiến hành động trang bị hai hoặc đầu tiên nên bị huỷ vứt.

Phần tiếp theo sau phía trên chúng ta sẽ khám phá về đặc điểm ACID của transaction.

Xem thêm: Mẹ Đảm Mách Cách Làm Bánh Khúc Không Có Lá Khúc Không Cần Lá Khúc Đơn Giản Nhất

ACID Transaction Là Gì

ACID là tính chất trong số ấy bao hàm tập thích hợp của 4 đặc tính không giống nhau vận dụng cho 1 database transaction. Bốn đặc tính này gồm: atomicity (nguyên ổn tử), consistency (độc nhất quán), isolation (độc lập), cùng durability (bễn vững). Từ ACID là tự viết tắt được ghxay bởi các chữ cái trước tiên của 4 tự bên trên.

Đặc Tính Nguim Tử (Atomicity)

Đặc tính nguim tử (atomithành phố hay nói một cách khác ngắn thêm là atomic) mức sử dụng rằng tất những hành động của một transaction cần phải thực hiện thành công hoặc ngược chở lại nếu gồm một hành vi không được triển khai thì sẽ không có bất cứ hành vi làm sao không giống được triển khai thành công.

*

hotline là tính năng nguyên tử bởi vì từng hành vi riêng biệt rẽ này giống như những electron tảo xung quyanh một phân tử nhân với Lúc phân tử nhân di chuyển thì tất cả những electron này đã dịch rời cùng nhau nhưng mà ko có thể chấp nhận được một electron làm sao rời khỏi hành trình.

Đặc Tính Nhất Quán

Đặc tính đồng bộ (consitency hay ngắn lại hơn nữa là consistent) cách thức tại bất kỳ thời điểm như thế nào, trước hoặc sau một transaction được thực hiện mặc dù lỗi hay là không lỗi, thì database vẫn cần được duy trì sinh hoạt tâm lý hợp lệ (ví dụ dữ liệu yêu cầu tương xứng với những pháp luật được có mang đến database).

Ở ví dụ chuyển khoản ttận hưởng như đề cập ở đầu bài viết thì nếu nhỏng hành động giao dịch chuyển tiền trước tiên của transaction chạm mặt đề nghị lỗi thì hành vi vật dụng nhì sẽ yêu cầu rất cần phải được huỷ (xuất xắc rollbaông xã lại).

Đặc Tính Độc Lập

Đặc tính chủ quyền (isolation hoặc isolate) biện pháp từng transaction khác nhau cần phải được triển khai trong một môi trường hòa bình, trường hợp có 2 transaction ra mắt tại cùng một thời điểm thì nên cần một qui định bảo đảm an toàn transaction này không ảnh hưởng cho tới transaction khác.

lấy ví dụ như ví như vào ngôi trường đúng theo có một người sử dụng chuyển 10 triệu VND vào thông tin tài khoản của người tiêu dùng AAA trên Vietcomngân hàng ngay trên thời gian chị Alice triển khai Việc rút ít 10 triệu VND. Điều gì sẽ diễn ra? Lúc này database vẫn đề nghị triển khai nhị hành động sau cuối một thời điểm:

Thực hiện tại cập nhật số tiền vào thông tin tài khoản của khách hàng ACB bằng cách trừ đi 10 triệu từ bỏ số dư bây chừ (= 500 triệu = 10 triệu)Thực hiện nay cập nhật số tiền trong thông tin tài khoản của khách hàng ACB bằng phương pháp thêm vào đó 10 triệu từ bỏ số dư hiện thời (= 500 triệu + 10 triệu)

Tài khoản của công ty AAA ngân hàng Vietcomngân hàng sau hai hành vi này sau cùng đã là bao nhiêu 500 triệu (= 500 triệu - 10 triệu + 10 triệu) tuyệt 510 triệu (500 triệu + 10 triệu) tốt đã chỉ từ 490 triệu (500 triệu - 10 triệu)?

Với đặc tính hòa bình của transaction được chỉ dẫn để bảo đảm Khi transaction ra mắt thì tài liệu tương quan bên trên database sẽ bị khoá lại. Do đó các hành vi khác (hay transaction khác) hay những sẽ cần hóng cho tới lúc transaction ban sơ được hoàn toàn Hay là sẽ bị báo gặp mặt buộc phải lỗi.

Đặc Tính Bền Vững

Đặc tính bền vững (consistency xuất xắc consistent) pháp luật rằng lúc transaction được ra mắt (thành công hoặc rollbaông chồng lại Lúc tất cả lỗi) thì tiếp đến dù có bất kể sự gắng như thế nào ra mắt với database (mất điện, VPS tràn bộ nhớ lưu trữ...) thì Khi được khôi phục lại thì tài liệu được khôi phục đã không thay đổi tâm trạng trước khi gồm sự vắt (đảm bảo không tồn tại bất kể transaction trước đó không trở nên mất).

lấy ví dụ như nhỏng sau thời điểm transaction chuyển khoản ttận hưởng làm việc ví dụ thứ nhất được diễn ra thành công với 3h tiếp nối chống hệ thống bị mất điện thì khi Phục hồi lại tài liệu cho database (sử dụng dữ liệu được tự động hóa sao lưu giữ trước đó 1 phút) thì transaction này (cũng như tất cả những transaction diễn ra trước thời khắc VPS tiến hành việc tự động sao lưu) rất cần phải Phục hồi lại và biểu lộ làm việc cửa hàng tài liệu sau thời điểm khôi phục.

Kết Luận

Hai định nghĩa transaction và ACID vào cơ sở tài liệu thường được kể khá tiếp tục trong số buổi chất vấn và tuy nhiên không hẳn là thừa nặng nề để có thể tiếp, tuy nhiên vẫn còn đấy siêu nhiều người tương đối tơ mơ về bọn chúng. Hy vọng lúc hiểu xong nội dung bài viết này bạn đã sở hữu tầm nhìn tổng quát về hai khái niệm này cũng tương tự mọt contact giữa bọn chúng. Trong các nội dung bài viết theo chúng ta vẫn tìm hiểu những tạo thành một transaction trong MySquốc lộ database.