Sommario:
- Modelli di transazione ACID e BASE
- Gestori delle transazioni
- Altre considerazioni con i sistemi di processi di transazione
Le aziende di molti tipi diversi possono investire in un sistema di processo di transazione come parte dei servizi commerciali IT o altre parti dell'architettura software. Tuttavia, come alcuni degli altri termini relativi all'IT, questa etichetta può sembrare un po 'vaga. Ciò è in parte dovuto al fatto che l'elaborazione delle transazioni non è solo un termine per le transazioni finanziarie, sebbene molti sistemi TPS, come quelli per l'elaborazione delle carte di credito, possano ruotare attorno al processo di cambio di denaro.
In sostanza, l'elaborazione delle transazioni è un modello per varie transazioni, incluse sia le transazioni finanziarie sia altri processi come le verifiche. Gli esperti contrastano l'elaborazione delle transazioni con un diverso tipo di modello chiamato elaborazione batch, in cui un numero maggiore di singole transazioni viene gestito collettivamente. Entrambi possono essere applicati a sistemi di e-commerce standard che gestiscono transazioni finanziarie.
Quando parliamo dell'elaborazione della transazione, il termine "transazione" si riferisce all'intero processo. Per avere successo, il processo deve essere completato dall'inizio alla fine. Il denaro deve uscire da un conto e andare in un altro conto. Con altri tipi di transazioni non finanziarie, è necessario aggiornare diverse parti di un'architettura software. Altrimenti il sistema potrebbe avere quella che viene chiamata "transazione abbandonata" (o che Microsoft chiama "perdita di integrità").
L'opposto di una transazione abbandonata è quella che viene chiamata "transazione duratura". Queste transazioni durature sono la base fondamentale per molte attività online, come la prenotazione di biglietti o eventi, l'elaborazione di carte di credito e altri accordi quid pro quo dove è necessario aggiornare più sistemi e un evento digitale deve allinearsi con un altro. In che modo l'elaborazione delle transazioni aiuta a garantire questo tipo di durabilità? Diamo un'occhiata.
Modelli di transazione ACID e BASE
Nel tempo, gli specialisti dei dati hanno prodotto vari modelli che promuovono transazioni di successo e durature. Uno di questi è chiamato atomicità, coerenza, isolamento e durata o ACID. Questo sistema "duro" di verifica delle transazioni ha portato a un altro modello chiamato sostanzialmente disponibile, soft state, eventuale consistenza o BASE, un'alternativa più versatile. Entrambi questi modelli possono guidare i professionisti IT verso sistemi di elaborazione delle transazioni più coerenti. Per una semplice idea di come funzionano questi due metodi, immagina due di quei vecchi sistemi di tendoni analogici in una stazione ferroviaria, in cui gli aggiornamenti coinvolgono vari pezzi di mescolanza con informazioni sugli orari. Uno di loro si scuote furiosamente per alcuni secondi, quindi si chiude. L'altro continua a funzionare, scemando nel tempo da alcuni tronchi e thunk affusolati fino all'ultimo silenzio. Il primo esempio si riferisce ad ACID, mentre il secondo rappresenta BASE. In entrambi i casi, l'obiettivo è lo stesso: risoluzione totale dei dati. (Per qualche lettura di base su ACID, controlla la nostra Introduzione ai database.)Gestori delle transazioni
Un altro elemento di base dei sistemi di processo delle transazioni è il gestore delle transazioni. Questo termine è uno dei tanti termini basati sulla personificazione nell'IT moderno. Non molto tempo fa il termine si riferiva a una persona incaricata di completare le transazioni, di solito finanziarie. A quei tempi, un cassiere avrebbe potuto essere chiamato gestore delle transazioni. Al contrario, il termine usato oggi si riferisce in gran parte a un elemento immateriale del sistema di elaborazione delle transazioni nel suo insieme, ma con un ruolo predefinito.
L'uso dei gestori delle transazioni, pur consentendo vari tipi di TPS, può essere problematico. Ad esempio, gli sviluppatori che lavorano con J2EE o risorse simili possono trovarsi in perdita quando una chiamata al gestore delle transazioni restituisce vari errori. Tutti i tipi di dichiarazioni e variabili devono essere corretti per poter chiamare il gestore delle transazioni in modo efficace, e i forum degli sviluppatori abbondano di storie di questi tipi di configurazioni che non erano proprio corrette.
Le guide alle best practice specifiche della lingua (come questa per J2EE) possono fornire alcuni suggerimenti sulla gestione delle transazioni e altri metodi di supporto come i framework di sviluppo delle applicazioni. Altre risorse di transazione includono l'Object Transaction Service (OTS), prodotto dall'Object Management Group per gestire alcune complessità e processi multipiattaforma.
Microsoft ha anche messo a punto alcune risorse più ampie; le versioni più recenti del sistema operativo Windows vengono fornite con Kernel Transaction Manager (KTM), che può supportare applicazioni C ++. Microsoft offre anche Microsoft Distributed Transaction Coordinator (DTC) dal 2000 per il supporto delle transazioni multipiattaforma.
Altre considerazioni con i sistemi di processi di transazione
In generale, ci sono una varietà di obiettivi chiave che devono essere raggiunti per configurazioni TPS efficaci. I dati devono essere accessibili in strutture di dati ben funzionanti e devono essere protetti da vari tipi di guasti. Sofisticati sistemi di backup aiutano a fornire garanzie contro attacchi informatici, catastrofi naturali o altri tipi di responsabilità. Alcuni degli strumenti sopra menzionati sono stati creati per aiutare a gestire la corruzione dei dati e altri problemi che potrebbero influire sulla durata delle transazioni.
Transazioni durature significano che anche gli aggiornamenti multipiattaforma devono essere risolti. I modelli ACID e BASE sono istruttivi qui. Gran parte del lavoro svolto dai professionisti moderni è correlato a questo tipo di coerenza e all'accertamento che una parte di un sistema di dati corrisponda a un'altra, il tutto al fine di supportare quei processi chiave che sono generalmente etichettati come transazioni.
Ovviamente, ci sono molti più dettagli dei sistemi TPS, problemi e soluzioni caso per caso da considerare, ma dove un gruppo eterogeneo di persone potrebbe essere coinvolto nell'affrontarli (ad esempio, quando un'azienda ha determinati problemi con i suoi fornitori di tecnologia), ha senso aiutare a chiarire prima questa terminologia IT chiave.