Hệ thống xử lý giao dịch

Xử lý giao dịch là một cách tính toán, chia làm việc vào cá nhân không hoạt động được gọi là giao dịch. Một hệ thống xử lý giao dịch (TPS) là một phần mềm hệ thống hoặc sự kết hợp phần mềm/phần cứng nhằm hỗ trợ xử lý giao dịch.

== Lịch sử ==
Hệ thống xử lý giao dịch đầu tiên Sabre, được thực hiện bởi IBM cho American Airlines, đã hoạt động vào năm 1970. Được thiết kế để xử lý tới 83.000 giao dịch một ngày, hệ thống chạy trên hai máy tính IBM 7090. SABER được di chuyển sang các máy tính IBM System / 360 vào năm 1972 và trở thành sản phẩm đầu tiên của IBM như là Chương trình điều khiển hàng không (ACP) và sau đó là Cơ sở xử lý giao dịch (TPF). Ngoài các hãng hàng không TPF được sử dụng bởi các ngân hàng lớn, các công ty thẻ tín dụng và chuỗi khách sạn.

Hệ thống NonStop của Hewlett-Packard (trước đây là Tandem NonStop) là hệ thống phần cứng và phần mềm được thiết kế cho Xử lý giao dịch trực tuyến (OLTP) được giới thiệu vào năm 1976. Các hệ thống được thiết kế để xử lý giao dịch và cung cấp mức độ sẵn có và toàn vẹn dữ liệu cực cao.

== Danh sách các hệ thống xử lý giao dịch ==
- Cơ sở xử lý giao dịch IBM (TPF) - 1960. Tại Amity Không giống như hầu hết các hệ thống xử lý giao dịch khác, TPF là một hệ điều hành chuyên dụng để xử lý giao dịch trên các khung chính của IBM System z. Chương trình kiểm soát hàng không ban đầu (ACP).
- Hệ thống quản lý thông tin của IBM (IMS) - 1966. Hệ thống quản lý thông tin và cơ sở dữ liệu phân cấp chung với khả năng xử lý giao dịch mở rộng. Chạy trên OS / 360 và người kế nhiệm.
- Hệ thống kiểm soát thông tin khách hàng của IBM (CICS) - 1969. Một trình quản lý giao dịch được thiết kế để xử lý trực tuyến nhanh, khối lượng lớn, CICS ban đầu sử dụng các bộ dữ liệu hệ thống tiêu chuẩn, nhưng bây giờ có kết nối với hệ thống cơ sở dữ liệu quan hệ DB / 2 của IBM. Chạy trên OS / 360 và kế thừa và DOS / 360 và kế thừa, IBM AIX, VM và OS / 2. Các phiên bản không phải máy tính lớn được gọi là TXSeries.
- Tuxedo - những năm 1980. Giao dịch cho Unix, mở rộng cho các hoạt động phân phối được phát triển bởi tập đoàn AT & T, hiện thuộc sở hữu của tập đoàn Oracle. Tuxedo là một TPS đa nền tảng.
- Gói giao diện giao dịch UNIVAC (TIP) - 1970. Một màn hình xử lý giao dịch cho các máy tính dòng UNIVAC 1100/2200.
- Burroughs Corporation hỗ trợ khả năng xử lý giao dịch trong các hệ điều hành MCP của nó bằng GEMCOS (Hệ thống điều khiển tin nhắn tổng quát năm 1980). Tính đến năm 2012, các máy chủ doanh nghiệp của UNISYS ClearPath bao gồm Máy chủ giao dịch, "một hệ thống điều khiển ứng dụng và tin nhắn cực kỳ linh hoạt, hiệu suất cao".
- Hệ thống quản lý và điều khiển ứng dụng (DECMS) - 1985. "Cung cấp một môi trường để tạo và kiểm soát các ứng dụng xử lý giao dịch trực tuyến (OLTP) trên hệ điều hành VMS." Chạy trên hệ thống VAX / VMS.
- Công ty Cổ phần Thiết bị Kỹ thuật số (DEC) Hệ thống Điều khiển Thông báo (MCS-10) cho các hệ thống PDP-10 TOPS-10.
- Xử lý giao dịch Honeywell Multics. Tính năng (TP) - 1979.
- Quản lý giao dịch eXecutive (TMX) là hệ thống xử lý giao dịch độc quyền của NCR Corporation chạy trên các hệ thống 5000-series của NCR Tower. Hệ thống này được sử dụng chủ yếu bởi các tổ chức tài chính trong những năm 1980 và 1990.
- Hệ thống NonStop của Hewlett-Packard - 1976. NonStop là một hệ thống phần cứng và phần mềm tích hợp được thiết kế đặc biệt để xử lý giao dịch. Ban đầu từ Tandem Computers.
- Transarc Encina - 1991. Transarc đã được IBM mua lại vào năm 1994. Encina đã bị ngừng hoạt động như một sản phẩm và được xếp vào các sản phẩm TXSeries của IBM. Hỗ trợ Encina đã bị ngưng vào năm 2006.

== Phân loại xử lý ==
Xử lý giao dịch khác với các mô hình xử lý máy tính khác - xử lý hàng loạt, chia sẻ thời gian và xử lý theo thời gian thực.

=== Xử lý hàng loạt ===
Xử lý hàng loạt là thực hiện một loạt các chương trình (công việc) trên máy tính mà không cần sự can thiệp thủ công. Một số giao dịch, được gọi là lô được thu thập và xử lý cùng một lúc. Kết quả của mỗi giao dịch không có sẵn ngay khi giao dịch được nhập, hệ thống có thời gian trễ.

=== Xử lý thời gian thực ===
"Các hệ thống thời gian thực cố gắng đảm bảo đáp ứng thích hợp với kích thích hoặc yêu cầu đủ nhanh để ảnh hưởng đến các điều kiện gây ra kích thích." Mỗi giao dịch trong xử lý thời gian thực là duy nhất; nó không phải là một phần của một nhóm giao dịch.

=== Xử lý giao dịch ===
Hệ thống xử lý giao dịch (TPS) là một loại hệ thống thông tin thu thập, lưu trữ, sửa đổi và truy xuất các giao dịch dữ liệu của một doanh nghiệp. Các hệ thống xử lý giao dịch cũng cố gắng cung cấp thời gian đáp ứng có thể dự đoán được cho các yêu cầu, mặc dù điều này không quan trọng như đối với các hệ thống thời gian thực. Thay vì cho phép người dùng chạy các chương trình tùy ý như chia sẻ thời gian, xử lý giao dịch chỉ cho phép các giao dịch có cấu trúc được xác định trước. Mỗi giao dịch thường là thời gian ngắn và hoạt động xử lý cho từng giao dịch được lập trình trước.

== Các tính năng của hệ thống xử lý giao dịch ==
Các tính năng sau được coi là quan trọng trong việc đánh giá các hệ thống xử lý giao dịch.

=== Hiệu suất ===
Nhanh suất với một phản ứng nhanh thời gian là rất quan trọng. Giao dịch hệ thống xử lý thường được đo bằng số giao dịch họ có thể xử lý trong một khoảng thời gian.

=== Sẵn sàng liên tục ===
Hệ thống phải có sẵn trong các khoảng thời gian khi các người đang bước vào giao dịch. Nhiều tổ chức chủ yếu dựa trên hành động, một sự cố sẽ phá vỡ hoạt động hoặc thậm chí dừng lại việc kinh doanh.

=== Dữ liệu toàn vẹn ===
Hệ thống phải được có thể xử lý phần vấn đề mà không có dữ liệu. Nhiều người dùng phải được bảo vệ khỏi cố gắng để thay đổi cùng một mảnh của dữ liệu cùng một lúc, ví dụ như hai khai thác không thể bán cùng một chỗ trên máy bay.

=== Dễ sử dụng ===
Thường dùng của giao dịch hệ thống xử lý được dùng bình thường. Hệ thống nên đơn giản cho họ hiểu, bảo vệ chúng khỏi nhập dữ liệu lỗi càng nhiều càng tốt, và cho phép họ dễ dàng đúng lỗi của họ.

=== Module tăng trưởng ===
Hệ thống phải có khả năng phát triển tại gia tăng chi phí, chứ không phải là yêu cầu hoàn toàn thay thế. Nó nên có thể thêm vào, thay thế, hoặc cập nhật phần cứng và phần mềm mà tắt hệ thống.

== Các loại xử lý giao dịch ==
=== Xử lý một lô ===
Giao dịch có thể được thu thập và xử lý như trong hàng loạt xử lý. Giao dịch sẽ được thu thập và sau đó cập nhật như một lô khi nó thuận tiện hoặc kinh tế, để xử lý chúng. Trong lịch sử, đây là những phương pháp thông thường nhất là các công nghệ thông tin không tồn tại để cho phép xử lý thời gian thực.

=== Xử lý trong thời gian thực ===
Đây là phiên xử lý ngay lập tức của dữ liệu. Nó cung cấp ngay lập tức xác nhận của một giao dịch. Nó có liên quan đến một số lượng lớn người cùng một lúc được thực hiện giao dịch đó thay đổi dữ liệu. Vì tiến bộ trong công nghệ (chẳng hạn như việc tăng tốc độ của truyền tải dữ liệu và lớn hơn băng thông), thời gian thực cập nhật là có thể.

== Cơ sở dữ liệu để xử lý giao dịch ==
Một cơ sở dữ liệu là một tổ chức bộ sưu tập của dữ liệu. Cơ sở dữ liệu cung cấp nhanh chóng hồi lần cho không-có cấu trúc yêu cầu như trong một điển hình giao dịch ứng dụng xử lý.

Cơ sở dữ liệu cho giao dịch xử lý có thể được xây dựng bằng phân cấp, mạng, hoặc quan hệ cấu trúc.

- Cấu trúc phân: tổ chức các dữ liệu trong một loạt các mức độ. Nó trên-dưới-cấu trúc giống như bao gồm nút và chi nhánh mỗi nút con có chi nhánh và chỉ được liên kết đến một cấp độ cao hơn nút cha.
- Cấu trúc mạng: mạng cấu trúc cũng tổ chức dữ liệu bằng nút và chi nhánh. Nhưng không giống như phân cấp, mỗi nút con có thể có liên quan đến nhiều hơn nút cha mẹ.
- Quan hệ cấu trúc: một cơ sở dữ liệu quan tổ chức dữ liệu của nó trong một loạt các liên quan đến bảng. Này cho linh hoạt là mối quan hệ giữa các bảng được xây dựng.

Sau có rất mong muốn trong một cơ sở dữ liệu sử dụng hệ thống giao dịch hệ thống xử lý:

- Tốt dữ liệu vị trí: Các cơ sở dữ liệu cần được thiết kế để truy cập vào các mẫu của dữ liệu từ rất nhiều người dùng đồng thời.
- Ngắn giao dịch: Ngắn các giao dịch cho phép xử lý nhanh chóng. Này tránh được kết hợp lại và bước các hệ thống.
- Sao lưu thời gian thực: Sao lưu nên lên kế hoạch giữa thấp lần hoạt động để ngăn chặn trễ của các server.
- Chuẩn hóa dữ liệu: điều Này làm giảm thông tin không cần thiết để tăng tốc độ và cải thiện đồng thời, điều này cũng cải thiện bản sao lưu.
- Lưu trữ của dữ liệu lịch sử: thỉnh thoảng sử dụng dữ liệu đang di chuyển vào cơ sở dữ liệu khác hoặc hỗ trợ lên bàn. Này, giữ bàn nhỏ và cũng cải thiện sao lưu lần.
- Tốt cấu hình phần cứng: Phần cứng phải có khả năng để xử lý nhiều người sử dụng và cung cấp phản ứng nhanh chóng lần.

== Thủ tục sao lưu ==
Kể từ kinh doanh tổ chức đã trở nên rất phụ thuộc vào giao dịch xử lý một sự cố có thể phá rối việc kinh doanh' thói quen thường xuyên và ngừng hoạt động của nó trong một khoảng thời gian. Để ngăn chặn mất dữ liệu và giảm thiểu gián đoạn có được thiết kế tốt sao lưu và thủ tục phục hồi. Quá trình hồi phục có thể xây dựng lại hệ thống khi nó đi xuống.

=== Quá trình khôi phục ===
- TPS có thể thất bại vì nhiều lý do như lỗi hệ thống, lỗi của con người, lỗi phần cứng, dữ liệu không chính xác hoặc không hợp lệ, vi-rút máy tính, lỗi ứng dụng phần mềm hoặc thiên tai do con người tạo ra. Vì không thể ngăn chặn tất cả các lỗi, TPS phải có khả năng phát hiện và sửa lỗi khi chúng xảy ra và đối phó với các lỗi. TPS sẽ thực hiện khôi phục cơ sở dữ liệu có thể liên quan đến sao lưu, nhật ký, trạm kiểm soát và trình quản lý khôi phục:
- Nhật ký: Nhật ký duy trì đường mòn kiểm tra các giao dịch và thay đổi cơ sở dữ liệu. Nhật ký giao dịch và nhật ký thay đổi cơ sở dữ liệu được sử dụng, nhật ký giao dịch ghi lại tất cả dữ liệu cần thiết cho mỗi giao dịch, bao gồm giá trị dữ liệu, thời gian giao dịch và số thiết bị đầu cuối. Nhật ký thay đổi cơ sở dữ liệu chứa trước và sau bản sao của các bản ghi đã được sửa đổi bởi các giao dịch.
- Điểm kiểm tra: Mục đích của điểm kiểm tra là cung cấp ảnh chụp nhanh dữ liệu trong cơ sở dữ liệu. Điểm kiểm tra, nói chung, là bất kỳ số nhận dạng hoặc tham chiếu nào khác xác định trạng thái của cơ sở dữ liệu tại một thời điểm. Sửa đổi các trang cơ sở dữ liệu được thực hiện trong bộ nhớ và không nhất thiết phải ghi vào đĩa sau mỗi lần cập nhật. Vì vậy, định kỳ, hệ thống cơ sở dữ liệu phải thực hiện một trạm kiểm soát để viết các bản cập nhật được lưu trữ trong bộ nhớ vào đĩa lưu trữ. Việc ghi các bản cập nhật này vào đĩa lưu trữ sẽ tạo ra một điểm trong thời gian mà hệ thống cơ sở dữ liệu có thể áp dụng các thay đổi có trong nhật ký giao dịch trong quá trình khôi phục sau khi tắt hoặc ngắt hệ thống cơ sở dữ liệu bất ngờ. Nếu trạm kiểm soát bị gián đoạn và yêu cầu khôi phục thì hệ thống cơ sở dữ liệu phải bắt đầu khôi phục từ điểm kiểm tra thành công trước đó. Điểm kiểm tra có thể là giao dịch nhất quán hoặc không giao dịch nhất quán (được gọi là kiểm tra mờ). Điểm kiểm tra phù hợp với giao dịch tạo ra một hình ảnh cơ sở dữ liệu liên tục đủ để khôi phục cơ sở dữ liệu về trạng thái được nhận biết bên ngoài tại thời điểm bắt đầu kiểm tra. Điểm kiểm tra không phù hợp với giao dịch trong một hình ảnh cơ sở dữ liệu liên tục không đủ để thực hiện khôi phục trạng thái cơ sở dữ liệu. Để thực hiện khôi phục cơ sở dữ liệu, cần thêm thông tin, thường chứa trong nhật ký giao dịch. Giao dịch kiểm tra nhất quán đề cập đến một cơ sở dữ liệu nhất quán, mà không nhất thiết bao gồm tất cả các giao dịch cam kết mới nhất, nhưng tất cả các sửa đổi được thực hiện bởi các giao dịch, đã được cam kết tại thời điểm tạo điểm kiểm tra đã được bắt đầu, là hoàn toàn hiện tại. Một giao dịch không nhất quán đề cập đến một trạm kiểm soát không nhất thiết phải là một cơ sở dữ liệu nhất quán và không thể khôi phục được một mà không có tất cả các bản ghi được tạo cho các giao dịch mở được bao gồm trong trạm kiểm soát. Tùy thuộc vào loại hệ thống quản lý cơ sở dữ liệu được triển khai, trạm kiểm soát có thể kết hợp các chỉ mục hoặc các trang lưu trữ (dữ liệu người dùng), các chỉ mục và các trang lưu trữ. Nếu không có chỉ mục nào được tích hợp vào trạm kiểm soát, các chỉ mục phải được tạo khi cơ sở dữ liệu được khôi phục từ hình ảnh trạm kiểm soát.
- Trình quản lý khôi phục: Trình quản lý khôi phục là chương trình khôi phục cơ sở dữ liệu về điều kiện chính xác cho phép xử lý giao dịch được khởi động lại.
- Tùy thuộc vào cách hệ thống bị lỗi, có thể có hai quy trình khôi phục khác nhau được sử dụng. Nói chung, các thủ tục liên quan đến việc khôi phục dữ liệu đã được thu thập từ một thiết bị sao lưu và sau đó chạy xử lý giao dịch một lần nữa. Hai loại phục hồi là phục hồi lạc hậu và phục hồi về phía trước:
- Phục hồi ngược: được sử dụng để hoàn tác các thay đổi không mong muốn đối với cơ sở dữ liệu. Nó đảo ngược các thay đổi được thực hiện bởi các giao dịch đã bị hủy bỏ.
- Chuyển tiếp tiến trình: nó bắt đầu với một bản sao lưu của cơ sở dữ liệu. Sau đó, giao dịch sẽ xử lý lại theo nhật ký giao dịch xảy ra giữa thời gian sao lưu được thực hiện và thời điểm hiện tại.

=== Các loại phương pháp back up ===
Có hai loại chính của trở lại các thủ tục: ông nội-cha con và bản sao lưu một phần:

==== Ông nội-cha-con trai ====
Thủ tục này liên quan đến việc hoàn thành bản sao lưu của tất cả các dữ liệu đều đặn hàng ngày, hàng tuần và hàng tháng, hoặc bất cứ điều gì là thích hợp. Nhiều thế hệ của bản sao lưu được giữ lại, thường ba mà đưa đến những tên. Gần đây nhất sao lưu là các con trai, trước đó, người cha, và lâu đời nhất sao lưu là ông nội. Phương pháp này được sử dụng cho một "lô giao dịch hệ thống xử lý" với một băng từ. Nếu hệ thống không trong một lô chạy, chủ tập tin được tái tạo lại, con trai sao lưu và sau đó khởi động lại hàng loạt. Tuy nhiên, nếu con sao lưu thất bại, bị hỏng hay bị phá hủy, sau đó là thế hệ trước sao lưu (cha) được sử dụng. Như vậy, nếu không thành công thì thế hệ của bản sao lưu, trước khi cha (tức là các ông) là cần thiết. Tất nhiên lớn hơn thế nhiều dữ liệu có thể được ra khỏi ngày. Tổ chức duy nhất của hồ sơ đó đã thay đổi. Ví dụ, một đầy đủ sao có thể được thực hiện hàng tuần, và một phần sao lưu lấy hàng đêm. Phục hồi sử dụng chương trình này liên quan đến việc khôi phục lại các tác đầy đủ sao và sau đó khôi phục lại tất cả bản sao lưu một phần để tạo ra một ngày cơ sở dữ liệu. Quá trình này là nhanh hơn việc chỉ hoàn thành bản sao lưu, tại các chi phí của còn thời gian phục hồi.

==== Sao lưu thêm tạp chí ====
Kỹ thuật này cũng được sử dụng kết hợp với thường xuyên hoàn thành bản sao lưu. Thầy thấy được hỗ trợ ở khoảng cách thông thường. Hoàn thành giao dịch từ bản sao lưu cuối cùng được lưu giữ riêng, và được gọi là tạp chí hay tạp chí các tập tin. Các tập tin chủ có thể được tái tạo lại cuối cùng sao lưu toàn và sau đó giao dịch tái chế từ tạp chí các tập tin. Điều này sẽ tạo ra hầu hết các bản sao của các cơ sở dữ liệu, nhưng hồi phục có thể lâu hơn vì thời gian cần thiết để xử lý khối lượng của hồ sơ tạp chí.

== Xem thêm ==
- Máy chủ (máy tính)
- Xử lý giao dịch trực tuyến
- Dữ liệu kho

== Đọc thêm ==
- Gerhard Weikum, Gottfried Vossen, "Transactional information systems: theory, algorithms, and the practice of concurrency control and recovery", Morgan Kaufmann, 2002,