Термин · Глоссарий B2B-ПО

Обработка транзакций (Transaction Processing)

Обработка транзакций – методология выполнения и управления транзакциями в информационных системах, обеспечивающая целостность данных при операциях (банковские платежи, заказы, бронирования). Базируется на принципах ACID: атомарности, согласованности, изолированности и долговечности.

Буква «О» В категориях: 5 Платформ: 6+

Введение

Обработка транзакций (transaction processing) – это процесс выполнения в информационной системе неделимых единиц работы (транзакций), которые должны выполниться полностью или не выполниться вовсе. Транзакции лежат в основе большинства критически важных бизнес-приложений: банковских систем, торговых платформ, систем бронирования, ERP и CRM.

Ключевой принцип обработки транзакций выражен в аббревиатуре ACID (Atomicity, Consistency, Isolation, Durability), сформулированной Джимом Греем и Андреасом Ройтером в 1983 году. Соблюдение свойств ACID гарантирует, что данные останутся корректными даже при сбоях системы, конкурентном доступе или частичных отказах.

Принципы ACID

Четыре свойства транзакций ACID:

  • Atomicity (атомарность) – транзакция выполняется целиком или не выполняется вовсе. Если перевод средств прерывается на полпути, деньги не исчезают: все изменения откатываются (rollback).
  • Consistency (согласованность) – транзакция переводит базу данных из одного корректного состояния в другое. Бизнес-правила и ограничения целостности соблюдаются до и после транзакции.
  • Isolation (изолированность) – параллельно выполняемые транзакции не мешают друг другу. Уровни изолированности: Read Uncommitted, Read Committed, Repeatable Read, Serializable.
  • Durability (долговечность) – после подтверждения (commit) транзакции её результаты сохраняются даже при сбое системы. Обеспечивается записью в журнал транзакций (WAL – Write-Ahead Log).

Типы обработки транзакций

OLTP (Online Transaction Processing) – онлайн-обработка транзакций: большое количество коротких транзакций в реальном времени. Характеристики: высокое число одновременных пользователей, короткие транзакции (миллисекунды), приоритет на запись и чтение отдельных записей. Примеры: банковский процессинг, интернет-магазин, кассовые системы.

Пакетная обработка (Batch Processing) – накопление транзакций и их обработка группами в определённые моменты времени. Характеристики: высокая пропускная способность, низкий приоритет интерактивности, плановые окна обработки (ночные расчёты). Примеры: расчёт зарплаты, формирование банковских выписок, пакетный импорт заказов.

Распределённые транзакции – транзакции, охватывающие несколько независимых узлов или баз данных. Протокол двухфазной фиксации (2PC) обеспечивает согласованность в распределённой среде.

Где применяется

  • Банки и финансовые сервисы – процессинг платёжных транзакций, переводы, клиринг, расчёт позиций.
  • Электронная коммерция – оформление заказов, управление складскими остатками, обработка платежей.
  • Системы бронирования – авиабилеты, гостиницы, аренда автомобилей – предотвращение двойного бронирования.
  • ERP-системы – учёт хозяйственных операций: проведение документов, обновление остатков.
  • Телекоммуникации – биллинг в реальном времени, тарификация звонков.

Преимущества и ограничения

Преимущества:

  • Гарантия целостности данных при сбоях и конкурентном доступе.
  • Предсказуемое поведение системы в критических сценариях.
  • Прозрачный аудит через журналы транзакций.
  • Возможность восстановления данных после сбоев.

Ограничения:

  • ACID-транзакции имеют накладные расходы, снижающие производительность при высокой нагрузке.
  • Сильная изолированность может создавать блокировки и снижать пропускную способность.
  • В распределённых системах соблюдение ACID требует компромиссов (теорема CAP).
  • NoSQL-базы данных нередко жертвуют ACID ради масштабируемости (BASE-принцип).

Связь с другими понятиями

Transaction Processing тесно связан с OLTP (Online Transaction Processing) – наиболее распространённой архитектурой систем обработки транзакций. RDBMS (реляционные СУБД) являются традиционной платформой для OLTP. В современных системах транзакционная обработка противопоставляется аналитической (OLAP). PTR (Peak Transaction Rate) – метрика пиковой производительности. Event-Driven Architecture обрабатывает транзакции через потоки событий. В микросервисной архитектуре паттерн Saga заменяет распределённые ACID-транзакции цепочкой локальных транзакций с компенсирующими операциями.

Понятия из глоссария Цифрового маркетплейса, которые часто встречаются вместе с термином «Обработка транзакций».

Платформы класса «Обработка транзакций»

Решения из каталога Цифрового маркетплейса, относящиеся к этому классу ПО. Карточки ведут на полные карточки платформ с тарифами, обзорами и кейсами внедрения.

Tarantool Data Grid

Tarantool Data Grid

Данные и аналитика
Tarantool — высокопроизводительная СУБД с поддержкой in-memory и дискового хранения данных, обеспечивающая ACI...
Цена по запросу
★ 4.8
Подробнее →
ClickHouse

ClickHouse

ИТ-инфраструктура
ClickHouse — колоночная аналитическая СУБД (OLAP), созданная Яндексом и открытая в 2016 году. Обеспечивает обр...
Цена по запросу
★ 4.8
Подробнее →
ЛИНТЕР БАСТИОН

ЛИНТЕР БАСТИОН

ИТ-инфраструктура
ЛИНТЕР БАСТИОН — полностью отечественная реляционная СУБД, разработанная АО НПП «РЕЛЭКС» (Воронеж). Не основан...
Цена по запросу
★ 4.6
Подробнее →
СИНЕРГИЯ-БД

СИНЕРГИЯ-БД

ИТ-инфраструктура
СИНЕРГИЯ-БД — импортонезависимая защищённая система управления базами данных, разработанная РФЯЦ-ВНИИЭФ (Всеро...
Цена по запросу
★ 4.7
Подробнее →
БАРС.Мониторинг-ЖКХ

БАРС.Мониторинг-ЖКХ

Данные и аналитика
Информационно-аналитическая система для мониторинга и управления жилищно-коммунальным хозяйством на региональн...
Цена по запросу
★ 5.0
Подробнее →

Категории каталога

Разделы каталога Цифрового маркетплейса, в которые входят решения, использующие «Обработка транзакций».

Где применяется

Отрасли, в которых «Обработка транзакций» используется на практике. Откройте отраслевой раздел Цифрового маркетплейса, чтобы увидеть подходящие решения, кейсы и новости.

Частые вопросы про Обработка транзакций

Что такое ACID в базах данных?

Четыре свойства транзакций: Atomicity (атомарность – всё или ничего), Consistency (согласованность данных), Isolation (изоляция параллельных транзакций), Durability (долговечность – данные сохранены после commit).

Чем OLTP отличается от OLAP?

OLTP (Online Transaction Processing) – обработка большого числа коротких транзакций в реальном времени (заказы, платежи). OLAP (Analytical Processing) – анализ больших объёмов данных с агрегацией (отчёты, аналитика). Разные архитектуры и типы запросов.

Что такое rollback транзакции?

Откат транзакции – отмена всех изменений, внесённых незавершённой транзакцией. Выполняется автоматически при ошибке или сбое, либо явно командой ROLLBACK в SQL.

Почему NoSQL-базы не всегда поддерживают ACID?

Для достижения горизонтальной масштабируемости NoSQL-базы нередко используют принцип BASE (Basically Available, Soft state, Eventual consistency) – слабая согласованность с высокой доступностью. ACID требует координации и снижает масштабируемость.

Что такое паттерн Saga в микросервисах?

Альтернатива распределённым ACID-транзакциям: длинная транзакция разбивается на цепочку локальных транзакций с компенсирующими операциями на случай сбоя. Обеспечивает eventual consistency в распределённых системах.

Как транзакции обеспечивают восстановление после сбоев?

Через Write-Ahead Log (WAL) – журнал, в который изменения записываются до применения к данным. При сбое система воспроизводит журнал и восстанавливает состояние до последнего подтверждённого (commit) состояния.