Một giao tác là một đơn vị logic xử lý cơ sở dữ liệu, nó bao gồm một hoặc nhiều thao tác truy cập cơ sở dữ liệu, các thao tác có thể gồm chèn, xóa, sửa hoặc lấy thông tin. Các thao tác trong cơ sở dữ liệu cấu thành một giao tác
A A B B C CPU 1 D CPU2 thời gian t4 t1 t3 t2 t1
có thể đƣợc đƣa vào một chƣơng trình ứng dụng hoặc đƣợc chỉ rõ thông qua một ngôn ngữ truy vấn mức cao nhƣ SQL.
Các thao tác truy xuất cơ sở dữ liệu cơ bản mà một giao tác có thể có [4, 6]:
- Read_item(X): Đọc một mục dữ liệu có tên là X vào trong một biến chƣơng trình. Để đơn giản các ký hiệu, giả sử biến chƣơng trình cũng là X
- Write_item(X): Viết giá trị của biến chƣơng trình X vào một mục cơ sở dữ liệu có tên là X
Đơn vị cơ bản của dữ liệu chuyển từ đĩa vào bộ nhớ chính là một khối. Thực thi một lệnh read_item(X) bao gồm các bƣớc sau:
1. Tìm địa chỉ của khối đĩa chứa mục X
2. Sao chép khối đĩa đó vào bộ đệm (nếu khối đĩa đó chƣa có sẵn trong bộ đệm).
3. Sao chép mục X từ bộ đệm sang biến chƣơng trình có tên là X Thực thi một lệnh write_item(X) bao gồm các bƣớc sau:
1. Tìm địa chỉ của khối đĩa chứa mục X
2. Sao chép khối đĩa đó vào một vùng đệm (nếu khối đĩa đó chƣa có sẵn trong vùng đệm)
3. Sao chép mục X từ biến chƣơng trình tên là X vào vị trí đúng của nó trong bộ đệm
4. Lƣu khối đã đƣợc cập nhật từ vùng đệm trở lại đĩa
Bƣớc 4 thực tế là một bƣớc cập nhật cơ sở dữ liệu lên đĩa. DBMS sẽ duy trì một số vùng đệm trong bộ nhớ chính để lƣu các khối đĩa cơ sở dữ liệu chứa các mục cơ sở dữ liệu đang đƣợc xử lý. Khi các vùng đệm này đƣợc sử dụng, và các khối dữ liệu thêm phải đƣợc sao chép vào trong bộ nhớ, một số
cơ chế thay thế vùng đệm đƣợc sử dụng để chọn các vùng đệm hiện thời đƣợc thay thế.
Một giao tác bao gồm các thao tác read_item và write_item để truy cập và cập nhật cơ sở dữ liệu. Hình 2.2 thể hiện các ví dụ của 2 giao tác đơn giản. Bộ đọc của một giao tác là tập hợp của tất cả các mục mà giao tác đọc, và bộ ghi là tập tất cả các mục mà giao tác ghi. Ví dụ, một bộ đọc của T1 trong hình 2.2 là {X,Y} và bộ ghi của nó cũng là {X,Y}
Điều khiển đồng thời và các cơ chế khôi phục chủ yếu có liên quan với các lệnh truy cập cơ sở dữ liệu trong một giao tác. Các giao tác đƣợc chấp nhận bởi nhiều ngƣời dùng khác nhau có thể thực thi đồng thời và có thể truy cập cũng nhƣ cập nhật cùng các mục cơ sở dữ liệu. Nếu việc thực thi đồng thời này không đƣợc điều khiển sẽ dẫn đến một số vấn đề nhƣ một cơ sở dữ liệu không nhất quán.