Równoległe procesy w tle
Wiele procesów zostało zaprojektowanych do uruchamiania równolegle w celu przyśpieszenia wykonania. Jest to określane jako uruchamianie procesów z wieloma wątkami.
System udostępnia dwie strategie dystrybucji danych w wielu wątkach.
-
Wybór instrukcji SQL na poziomie wątku. Ta strategia jest czasem nazywana strategią powtarzania wątków. W tej strategii zadanie korzysta z klucza głównego, aby określić sposób równomiernej dystrybucji zakresów kluczy do każdego wątku. Każdy wątek jest następnie odpowiedzialny za wybór rekordów. Wątki w tej strategii powinny także okresowo ponownie wybierać dane w celu zwolnienia kursora, co zwiększa wydajność. Ta strategia jest preferowana, ale można jej użyć tylko pod następującymi warunkami:
- Przetwarzane są dane z tylko jednego obiektu obsługi.
- Klucz główny obiektu obsługi to pojedynczy, liczbowy klucz wygenerowany w systemie.
Uwaga: W celu zastąpienia dolnych i górnych wartości ID można użyć parametrów. Więcej informacji zawiera sekcja Parametry dostarczane podczas procesów w tle . -
Wybór instrukcji SQL na poziomie zadania. Ta strategia jest czasem nazywana strategią standardowego potwierdzania. W tej strategii najpierw wybierane są wszystkie klucze rekordów do przetworzenia w zadaniu. Są one przechowywane w tabeli tymczasowej. Zadanie przydziela następnie do każdego wątku zakres kluczy do przetworzenia. Tej strategii używa się w przypadku, gdy w zadaniu jest przetwarzanych wiele obiektów obsługi, jeśli klucz główny obiektu obsługi jest wieloczłonowy lub jeśli klucz główny nie ma postaci liczbowej.
Wielowątkowa logika polega na tym, że klucze główne dla elementu głównego i danych transakcji są zazwyczaj kluczami generowanymi losowo przez system. Ponadto, jeśli dane są podzielone na partycje, oczekuje się ich podziału na podstawie klucza głównego.