Qu'est-ce qu'une transaction en informatique ?

Qu’est-ce qu’une transaction en informatique ?

En informatique, une transaction est un ensemble de tâches liées traitées comme une seule action. Ensemble, les tâches forment une unité de travail logique dans laquelle toutes doivent réussir ou aucune ne peut réussir. Si certaines tâches réussissent mais qu’au moins une échoue, toutes les tâches réussies sont annulées, ramenant le système à son état d’origine avant que la transaction – ou l’étape de travail – ne soit lancée.

Un exemple courant de transaction est l’achat d’un client via un site de commerce électronique. Après avoir sélectionné un produit et saisi les informations nécessaires, le client confirme la vente finale en cliquant sur OK ou en prenant une autre mesure pour conclure le processus. Cela amène l’application à lancer une transaction de vente, qui comprend plusieurs étapes, telles que la confirmation de la disponibilité du produit, la validation de la carte de crédit, le lancement du processus d’expédition et la passation de la commande auprès de l’entrepôt.

Si l’une des étapes échoue, l’intégralité de la transaction est annulée. Par exemple, le produit peut ne pas être disponible ou la carte de crédit peut ne pas être validée.

Dans ce cas, toutes les modifications sont annulées afin que tout revienne à son état d’origine. La transaction peut également être annulée en raison d’une interruption de service, telle qu’une base de données hors ligne ou un serveur indisponible. La transaction n’est validée qu’après que chaque étape individuelle a été effectuée avec succès. Les modifications sont ensuite rendues permanentes aux systèmes de support, comme la mise à jour d’une base de données pour refléter les nouveaux niveaux d’inventaire.

6 types de commerce électronique
L’achat d’un client via un site de commerce électronique est un exemple courant de transaction.

Transactions et bases de données

Les transactions sont généralement associées à des bases de données. Les systèmes de gestion de bases de données relationnelles, tels que SQL Server et MySQL, incluent des capacités de traitement transactionnel étendues pour garantir l’intégrité des données. Ces capacités se reflètent dans le langage de requête structuré (SQL), un langage de programmation conçu pour gérer le schéma et les données de la base de données.

SQL intègre des capacités de transaction directement dans son langage, fournissant des instructions pour commencer, valider et annuler des transactions. Lorsqu’une transaction termine toutes ses opérations avec succès, les modifications sont engagé à la base de données ; lorsqu’une transaction ne termine pas ces opérations, les modifications sont annulées.

Les transactions dans une base de données relationnelle respectent généralement les quatre propriétés ACID suivantes :

  • Atomicité. Toutes les opérations au sein de la transaction sont traitées comme une seule unité. Cela signifie que toutes les opérations doivent réussir pour que les modifications soient validées dans la base de données. Si une opération échoue, aucune modification n’est validée et la transaction entière est annulée.
  • Cohérence. Les données restent dans un état cohérent tout au long de l’exécution de la transaction et sont laissées dans une instruction cohérente à la fin de la transaction. La transaction ne doit apporter aucune modification qui viole les contraintes définies sur les données.
  • Isolement. Chaque transaction est isolée de toutes les autres transactions exécutées simultanément sur la base de données. Une transaction ne doit pas interférer avec une autre transaction ni l’affecter de quelque manière que ce soit. Le degré d’isolement des transactions les unes des autres est déterminé par les niveaux d’isolement applicables.
  • Durabilité. Toutes les modifications apportées par une transaction après sa validation sont conservées dans la base de données et ne peuvent pas être annulées par des circonstances extérieures, telles qu’une panne matérielle ou une panne de courant.

Bien que le traitement des transactions soit un composant vital dans un système de base de données relationnelle, le concept de gestion des transactions ne se limite pas aux bases de données relationnelles. Par exemple, une blockchain est un type de base de données distribuée qui sert de grand livre public pour enregistrer les transactions. Une transaction dans ce sens est un transfert de valeur entre deux utilisateurs sur le réseau peer-to-peer de la blockchain. La transaction est validée par les autres utilisateurs du réseau et sécurisée par des clés privées et des clés publiques.

Transactions au-delà des bases de données

En informatique, le concept de transaction peut également s’étendre en dehors du domaine des bases de données. Par exemple, le serveur de transaction CICS d’IBM offre un serveur d’applications en plusieurs langues qui assure la gestion et la connectivité des transactions en ligne. Le serveur prend en charge des applications écrites dans une variété de langages de programmation tout en fournissant une plate-forme pour l’hébergement d’applications d’entreprise transactionnelles dans un environnement hybride.

Une application dans ce contexte est une collection de programmes. Chaque programme s’exécute dans le cadre d’une transaction contrôlée par le serveur CISC. En ce sens, une transaction est une opération indivisible qui se combine avec d’autres transactions pour constituer l’œuvre.

Un programme qui gère ou supervise la séquence d’événements qui font partie d’une transaction est parfois appelé un moniteur de transactions. Un moniteur de transactions peut être inclus en tant que composant dans une plate-forme plus large. Par exemple, Oracle TimesTen In-Memory Database inclut une fonction de surveillance des transactions qui affiche un instantané des transactions en cours et fournit des détails sur chacune d’elles.

En savoir plus sur e-les tendances du commerce, les astuces et les pièges à éviter et voir quoi Des compétences informatiques sont requises pour le commerce électronique.

Read more Tech News in French

Source