거래 처리 시스템이란 무엇입니까?
트랜잭션 처리 시스템은 비즈니스 나 회사로 들어오고 나가는 모든 트랜잭션을 처리하는 프로그램 또는 소프트웨어입니다. 한 번에 한 명의 사용자 만 허용하는 현금 자동 입출금기 (ATM)에서와 같이 시스템은 하나씩 트랜잭션을 처리합니다. 이 경우 "거래"라는 용어는 재정적 측면뿐만 아니라 항공편 예약 또는 온라인 은행 계좌 로그인과 같은 전체 정보 요청을 의미합니다.
트랜잭션 처리 시스템과는 대조적으로 배치 처리 시스템이 있습니다. 이 시스템은 여러 트랜잭션 또는 "일괄 트랜잭션"을 동시에 처리합니다. 주요 단점은 처리 된 트랜잭션이 즉각적인 결과를 반환하지 않는다는 것입니다.
현대의 비유는 파일 폴더에 연결된 토렌트 파일입니다. 폴더의 모든 파일이 완전히 다운로드 될 때까지 사용자는 파일에 즉시 액세스 할 수 없습니다. 반대로 트랜잭션 프로세스는보다 편리하고 혼동을 줄이는 실시간 결과를 제공합니다. 예를 들어, 온라인 쇼핑객은 다른 쇼핑객이 온라인 쇼핑 카트에 제품을 넣을 때 사용 가능한 제품 수가 감소하는 것을 즉시 확인할 수 있습니다.
소프트웨어 또는 프로그램은 일반적으로 거래 처리 시스템 자격을 갖추기 위해 ACID 테스트를받습니다. ACID는 Atomicity, Consistency, Isolation 및 Durability를 나타냅니다. Atomicity는 시스템이 전체적으로 거래를 수행하거나 포기하는 능력을 말합니다. 예를 들어, 온라인 은행 계좌를 등록하려면 필요한 정보를 입력해야합니다. 필드를 비워 두거나 창을 닫으면 사용자가 등록을 상실하게됩니다.
트랜잭션 처리 시스템의 일관성은 시스템이 데이터베이스 관리의 무결성 제약 조건 하에서 작동해야 함을 의미합니다. 간단히 말해, 프로그래밍이 정확해야합니다. 격리의 특성은 동일한 트랜잭션이 동시에 발생하더라도 각 트랜잭션이 개별적이고 다른 것으로 취급됨을 의미합니다. 시스템의 내구성은 트랜잭션이 성공적으로 수행되면 되돌릴 수 없음을 나타냅니다. 시스템 장애가 발생하더라도 프로그램은 여전히 인코딩 된 로그를 통해 데이터를 유지해야합니다.
ACID 테스트를 통과하는 데 필요한 기능 외에도 트랜잭션 처리 시스템도 신뢰할 수 있어야합니다. 이는 프로그램이 최소 또는 전혀 실패 할 가능성이 있음을 의미합니다. 고장이 발생하면 복구가 신속해야하며 백업 시스템도 즉시 시작됩니다. 시스템은 제한된 사용자 만 완전히 액세스 할 수 있어야합니다. 예를 들어, 방문자는 비행기 비행에 사용할 좌석을 선택할 수 있지만, 이전 방문자가 예약 한 좌석을 취소 할 수는 없으며 숙련 된 프로그래머 나 직원 만 수행 할 수 있습니다.