sql >> Database >  >> RDS >> Mysql

SSIS-pakket optimaliseren voor miljoenen rijen met Order by / sort in SQL-opdracht en Merge Join

Ik heb twee aanbevelingen:

Serverzijde sorteren

Wijzig in OLE DB Source de toegangsmodus in SQL Command. En gebruik ORDER BY-clausule:

Select * from table ORDER BY col1, col2

Daarna moet u de geavanceerde editor van OLE DB Source openen (Klik met de rechtermuisknop op de OLE DB-bron, toon geavanceerde editor) ga naar het tabblad kolommen en wijzig de uitvoerIsSorted eigenschap naar True en verander de SortKeyPosition voor de kolommen die worden gebruikt in de ORDER BY-clausule.

Gegevens in stukjes lezen

Ik heb geen goede kennis van de MariaDB SQL-syntaxis, maar ik zal een voorbeeld geven in SQLite en Oracle:

Update 1 - Pakketproblemen

Er zijn enkele problemen in het pakket:

  • Je leest en schrijft aan dezelfde tafel
  • U voert tabellen bijwerken en verwijderen uit voor een grote hoeveelheid gegevens
  • U gebruikt Samenvoegen samen

Enkele aanbevelingen:

  • Probeer een verzameltabel te gebruiken in plaats van lezen en schrijven vanuit dezelfde tabel, aangezien u leest, schrijft, verwijdert en bijwerkt vanuit dezelfde bestemmingstabel.
  • Gebruik partitionering in de doeltabel waarmee u records van een specifieke partitie kunt verwijderen en bijwerken in plaats van de hele tabel



  1. Laravel 5.1 Migratie en Seeding Kan een tabel waarnaar wordt verwezen in een externe sleutelbeperking niet afkappen

  2. Upload CSV naar de database met behulp van php

  3. Mysql-join geeft dubbele rijen

  4. Hoe beeldalbums in berichten weergeven? [alleen met PHP en MYSQL]