sql >> Database teknologi >  >> RDS >> Mysql

Optimering af SSIS-pakke til millioner af rækker med Bestil efter / sorter i SQL-kommando og Merge Join

Jeg har to anbefalinger:

Sortering på serversiden

I OLE DB Source ændres adgangstilstanden til SQL Command. Og brug ORDER BY-klausulen:

Select * from table ORDER BY col1, col2

Derefter skal du åbne OLE DB Source avanceret editor (Højreklik på OLE DB kilden, vis avanceret editor) gå til kolonnefanen og skift outputIsSorted egenskab til True og indstil ændre SortKeyPosition for kolonnerne brugt i ORDER BY-klausulen.

Læs data i bidder

Jeg har ikke god viden om MariaDB SQL-syntaks, men jeg vil give nogle eksempler i SQLite og Oracle:

Opdatering 1 - Pakkeproblemer

Der er nogle problemer i pakken:

  • Du læser og skriver fra den samme tabel
  • Du udfører Opdater og sletter tabeller for en stor mængde data
  • Du bruger Merge Join

Nogle anbefalinger:

  • Prøv at bruge en iscenesættelsestabel i stedet for at læse og skrive fra den samme tabel, da du læser, skriver, sletter, opdaterer fra den samme destinationstabel.
  • Brug partitionering i destinationstabellen, som gør det muligt at slette og opdatere poster fra en specifik partition i stedet for hele tabellen



  1. Sådan slutter du dig til første række

  2. Advarsel:mysql_num_rows() forventer, at parameter 1 er ressource, array givet i

  3. PDOException "kunne ikke finde driver"

  4. opret forbindelse til mysql ved hjælp af c++