Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Optymalizacja pakietu SSIS dla milionów wierszy za pomocą polecenia Sortuj według / sortuj w poleceniu SQL i Merge Join

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:

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



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Unikaj podwójnych cudzysłowów ze zmienną wewnątrz echa HTML

  2. Połączenie MySQL przez SSL z Laravel

  3. Opcje wyboru kanału z bazy danych w zależności od innych opcji wyboru

  4. Php , Mysql Wybierz z tabeli, w której wiersz =? to jest możliwe?

  5. Wynik zapytania mysql do tablicy php