Eksplorowanie przetwarzania danych transakcyjnych
Transakcyjny system przetwarzania danych jest tym, co większość osób uważa za podstawową funkcję przetwarzania danych biznesowych. System transakcyjny rejestruje transakcje , które hermetyzują określone zdarzenia, które organizacja chce śledzić. Transakcja może być finansowa, taka jak przepływ pieniędzy między kontami w systemie bankowym, lub może być częścią systemu handlu detalicznego, śledzenie płatności za towary i usługi od klientów. Transakcję można traktować jako małą, odrębną jednostkę pracy.
Systemy transakcyjne często przetwarzają duże ilości danych, niekiedy wiele milionów transakcji w ciągu jednego dnia. Przetwarzane dane muszą być dostępne w bardzo krótkim czasie. Praca wykonywana przez systemy transakcyjne jest często określana jako przetwarzanie OLTP (przetwarzanie transakcyjne w trybie online).
Rozwiązania OLTP korzystają z systemu bazy danych, w którym magazyn danych jest zoptymalizowany pod kątem operacji odczytu i zapisu w celu obsługi obciążeń transakcyjnych, w których są tworzone, pobierane, aktualizowane i usuwane (często nazywane operacjami CRUD ). Te operacje są stosowane transakcyjnie w sposób zapewniający integralność danych przechowywanych w bazie danych. W tym celu systemy OLTP wymuszają transakcje, które obsługują tak zwaną semantyka ACID:
- Niepodzielność — każda transakcja jest traktowana jako pojedyncza jednostka, która kończy się powodzeniem całkowicie lub kończy się niepowodzeniem. Na przykład transakcja, która obejmowała obciążanie środków z jednego konta i kredytowanie tej samej kwoty na inne konto, musi wykonać obie akcje. Jeśli nie można ukończyć żadnej akcji, inna akcja musi zakończyć się niepowodzeniem.
- Spójność — transakcje mogą przyjmować tylko dane w bazie danych z jednego prawidłowego stanu do innego. Aby kontynuować przykład debetowy i kredytowy powyżej, ukończony stan transakcji musi odzwierciedlać przeniesienie funduszy z jednego konta do drugiego.
- Izolacja — współbieżne transakcje nie mogą zakłócać siebie i muszą powodować spójny stan bazy danych. Na przykład, gdy transakcja do przeniesienia funduszy z jednego konta do innego jest w trakcie przetwarzania, inna transakcja, która sprawdza saldo tych kont, musi zwrócić spójne wyniki — transakcja sprawdzająca saldo nie może pobrać wartości dla jednego konta, które odzwierciedla saldo przed przeniesieniem, oraz wartość drugiego konta, które odzwierciedla saldo po przeniesieniu.
- Trwałość — po zatwierdzeniu transakcji pozostanie ona zatwierdzona. Po zakończeniu transakcji transferu konta poprawione salda kont są utrwalane, tak aby nawet jeśli system bazy danych miał zostać wyłączony, zatwierdzona transakcja zostanie odzwierciedlona po ponownym włączeniu.
Systemy OLTP są zwykle używane do obsługi aplikacji na żywo, które przetwarzają dane biznesowe — często nazywane aplikacjami biznesowymi (LOB).