Mam dwie rekomendacje:
Sortowanie po stronie serwera
W OLE DB Source zmień tryb dostępu na polecenie SQL. I użyj klauzuli ORDER BY:
Select * from table ORDER BY col1, col2
Następnie należy otworzyć zaawansowany edytor OLE DB Source (Kliknij prawym przyciskiem myszy źródło OLE DB, pokaż zaawansowany edytor) przejdź do zakładki kolumn i zmień wynikIsSorted
właściwość na True
i ustaw zmień SortKeyPosition
dla kolumn użytych w klauzuli ORDER BY.
Odczytaj dane porcjami
Nie mam dobrej znajomości składni SQL MariaDB, ale podam przykład w SQLite i Oracle:
- Odczyt dużej ilości danych z Sqlite do SQL Server nie powiedzie się podczas wstępnego wykonania
- Zdobywanie góry n do n wierszy z db2
- SSIS nie może zapisać pakietów i ponownie uruchamia program Visual Studio
Aktualizacja 1 - Problemy z pakietami
Pakiet zawiera pewne problemy:
- Czytasz i piszesz z tego samego stołu
- Aktualizujesz i usuwasz tabele na dużej ilości danych
- Używasz połączenia scalającego
Niektóre zalecenia:
- Spróbuj użyć tabeli pomostowej zamiast czytać i pisać z tej samej tabeli, ponieważ czytasz, piszesz, usuwasz, aktualizujesz z tej samej tabeli docelowej.
- Użyj partycjonowania w tabeli docelowej, co pozwala usuwać i aktualizować rekordy z określonej partycji zamiast z całej tabeli