Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Mengoptimalkan paket SSIS untuk jutaan baris dengan Order by / sort dalam perintah SQL dan Merge Join

Saya punya dua rekomendasi:

Penyortiran sisi server

Di OLE DB Source ubah mode akses ke Perintah SQL. Dan gunakan klausa ORDER BY:

Select * from table ORDER BY col1, col2

Setelah itu Anda harus membuka OLE DB Source advanced editor (Klik kanan pada OLE DB source, show advanced editor) buka tab kolom dan ubah outputIsSorted properti ke True dan atur ubah SortKeyPosition untuk kolom yang digunakan dalam klausa ORDER BY.

Membaca data dalam potongan

Saya tidak memiliki pengetahuan yang baik dalam sintaks MariaDB SQL tetapi saya akan memberikan beberapa contoh dalam SQLite dan Oracle:

Pembaruan 1 - Masalah paket

Ada beberapa masalah dalam paket:

  • Anda membaca dan menulis dari tabel yang sama
  • Anda sedang melakukan Perbarui dan hapus tabel pada data dalam jumlah besar
  • Anda menggunakan Gabung Gabung

Beberapa rekomendasi:

  • Coba gunakan tabel staging daripada membaca dan menulis dari tabel yang sama karena Anda membaca, menulis, menghapus, memperbarui dari tabel tujuan yang sama.
  • Gunakan partisi di tabel tujuan yang memungkinkan untuk menghapus dan memperbarui catatan dari partisi tertentu, bukan seluruh tabel



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL:Bagaimana cara memasukkan catatan untuk setiap hasil dalam kueri SQL?

  2. Pernyataan pembaruan Python MYSQL

  3. Mengapa menambahkan RAND() menyebabkan MySQL kelebihan beban?

  4. SQL:Pilih Kunci yang tidak ada dalam satu tabel

  5. Tampilkan tabel dengan LIKE dan NOT REGEXP