🎯 Definicja
OLTP (Online Transactional Processing) to klasa systemów informatycznych służących do obsługi bieżących, powtarzalnych operacji transakcyjnych w firmach i instytucjach. OLTP zapewnia szybkie, niezawodne i zgodne z zasadami ACID przetwarzanie operacji takich jak: zapisy, aktualizacje, odczyty i usuwanie danych w bazach produkcyjnych. Przykłady obejmują bankowość, e-commerce, systemy rezerwacyjne czy zarządzanie logistyką.
🔑 Kluczowe punkty
- Transakcyjność: Gwarantuje spójność i bezpieczeństwo operacji dzięki zasadom ACID (Atomowość, Spójność, Izolacja, Trwałość).
- Wysoka wydajność i niskie opóźnienia: OLTP jest zoptymalizowane pod kątem obsługi bardzo dużej liczby krótkich operacji w trybie wielu użytkowników.
- Baza danych operacyjna: Systemy OLTP są zwykle oparte o relacyjne bazy danych (np. PostgreSQL, Oracle, MS SQL, MySQL).
- Kompaktowe operacje: Obsługiwane operacje to pojedyncze insert, update, delete, select wykonywane jednocześnie przez wielu użytkowników.
- Przeciwieństwo OLAP: OLAP (Online Analytical Processing) skupia się na analizie danych historycznych i raportowaniu, OLTP – na obsłudze bieżących zdarzeń i transakcji.
📚 Szczegółowe wyjaśnienie
Architektura OLTP
- Warstwa aplikacji: Obsługuje logikę biznesową i umożliwia interakcję użytkownika z bazą danych.
- Baza danych: Realizuje operacje transakcyjne zgodnie z wymogami ACID, zapewniając integralność danych.
- Transakcje: Sekwencje operacji, które muszą zostać wykonane w całości lub nie wykonać się w ogóle.
Przykłady zastosowań
| Branża | Przykład OLTP |
|---|---|
| Bankowość | Przelewy i księgowanie transakcji |
| E-commerce | Składanie zamówień, płatności |
| Lotnictwo | Systemy rezerwacji miejsc |
| Logistyka | Zarządzanie magazynem i stanami produktów |
| Administracja | Rejestracja dokumentów i obsługa zgłoszeń |
OLTP vs. OLAP
| Cechy | OLTP | OLAP |
|---|---|---|
| Cel | Obsługa bieżących transakcji | Raportowanie, analiza historyczna |
| Operacje | Insert, update, delete | Złożone SELECT, agregacje |
| Struktura bazy | Silnie znormalizowana (3NF) | Denormalizacja, hurtownie/analizy |
| Liczba użytkowników | Tysiące równocześnie | Kilku, kilkanaście analityków jednocześnie |
| Przykład | System bankowy, sklep internetowy | Dashboard BI, raportowanie sprzedaży |
💡 Przykład praktyczny
Transakcje w e-commerce:
Gdy klient składa zamówienie w sklepie internetowym, OLTP gwarantuje, że produkt zostanie odjęty ze stanu magazynowego, płatność zarejestrowana, a zamówienie przekazane do realizacji – wszystko to w sposób spójny i niezawodny, nawet przy setkach transakcji na sekundę.
📌 Źródła
- https://pl.wikipedia.org/wiki/Przetwarzanie_transakcji_online
- https://www.oracle.com/database/what-is-oltp/
- https://www.ibm.com/topics/oltp
👽 Brudnopis
- OLTP = Real-Time Processing, krótkie transakcje, niskie opóźnienia, ACID.
- Zastosowanie: bankowość, e-commerce, rezerwacje.
- Wydajność → indeksy, locking, sharding.
- OLTP ≠ OLAP (operacja vs. analiza).
- Przykłady: kasowanie w sklepie, księgowanie płatności, rezerwacja biletu, aktualizacja statusu.
- Zwykle: RDBMS, często rozproszone, odporne na błędy.