Tedious: Menyisipkan ke varbinary(max) col dengan FILESTREAM atau membaca dari kolom itu membutuhkan waktu 10 detik

Dibuat pada 18 Sep 2019  ·  10Komentar  ·  Sumber: tediousjs/tedious

Untuk beberapa alasan, memasukkan ke varbinary(max) col dengan FILESTREAM atau membaca dari kolom itu membutuhkan waktu 10 detik dengan membosankan. Saya meluangkan waktu untuk melacak leher botol di aplikasi simpul saya kembali ke membosankan. Saya menguji kueri berikut menggunakan kira- kira dua file 25MB .

select * from documents where file_extension = 'zip'

Studio Manajemen MSSQL

Screen Shot 2019-09-18 at 1 49 36 PM

Alat Pengembang Chrome

Screen Shot 2019-09-18 at 1 53 16 PM

Cuplikan kode (tidak lengkap)

snippet.txt yang membosankan

Follow up discussion enhancement released

Komentar yang paling membantu

Oke setelah memilah-milah semua masalah yang saat ini terbuka, jelas bahwa penyumbatan kinerja adalah masalah umum (misalnya, #879, #781,#475,#467, #319, #303). Saat ini kami memiliki hal-hal peta jalan kami seperti menerapkan fitur Selalu Terenkripsi, validasi tipe data yang ditingkatkan / konversi , penyedia otentikasi Pluggable , dan refactoring tipe data saat ini . Tetapi berdasarkan masalah yang diangkat, sepertinya blok kinerja ini adalah penghalang paling umum yang dihadapi orang saat menggunakan yang membosankan. Saya sedang berdiskusi dengan Arthur dan tim tentang pekerjaan apa yang perlu diprioritaskan, jadi jika Anda merasa meningkatkan kinerja adalah perubahan terbesar yang ingin Anda lihat, silakan tinggalkan suka atau komentar pendapat Anda tentang bagaimana kami harus bergerak maju. Umpan balik apa pun akan sangat membantu! 🙇.

Semua 10 komentar

Hai @sammaniamsam ,

Terima kasih telah menunjukkan ini. Saya pikir ini mungkin karena cara penguraian token diimplementasikan dalam Membosankan, yaitu ada banyak panggilan balik asinkron yang menghabiskan banyak memori yang menjadi lebih ketika menggunakan varbinary(max) dan mungkin varchar(max) juga. Kami memiliki rencana untuk memperbaiki bagaimana hal-hal diimplementasikan di Tedious untuk meningkatkan kinerja yang akan datang dalam waktu dekat.

Apa pendapat Anda @arthurschreiber , @MichaelSun90 ?

Hai @sammaniamsam , Saya hanya ingin tahu versi Tedious apa yang Anda gunakan yang menyebabkan kemacetan kinerja ini? #1006

@IanChokS saya menggunakan "^5.0.3"

Oke setelah memilah-milah semua masalah yang saat ini terbuka, jelas bahwa penyumbatan kinerja adalah masalah umum (misalnya, #879, #781,#475,#467, #319, #303). Saat ini kami memiliki hal-hal peta jalan kami seperti menerapkan fitur Selalu Terenkripsi, validasi tipe data yang ditingkatkan / konversi , penyedia otentikasi Pluggable , dan refactoring tipe data saat ini . Tetapi berdasarkan masalah yang diangkat, sepertinya blok kinerja ini adalah penghalang paling umum yang dihadapi orang saat menggunakan yang membosankan. Saya sedang berdiskusi dengan Arthur dan tim tentang pekerjaan apa yang perlu diprioritaskan, jadi jika Anda merasa meningkatkan kinerja adalah perubahan terbesar yang ingin Anda lihat, silakan tinggalkan suka atau komentar pendapat Anda tentang bagaimana kami harus bergerak maju. Umpan balik apa pun akan sangat membantu! 🙇.

WIP untuk memperbaiki masalah kinerja -> #1037

Deskripsi: #1038

Hai @sammaniamsam , kami baru saja menggabungkan #1049, #1044, #1037 yang diharapkan dapat meningkatkan kinerja. Apakah Anda keberatan jika Anda menjalankan benchmark lagi terhadap cabang master terbaru dan memberi tahu kami jika Anda melihat peningkatan kinerja dari pihak Anda?

Terima kasih! 🙇.

edit: belum dirilis di npm, tetapi perubahannya ada di cabang master saat ini

@IanChokS Tentu saja! Terima kasih teman-teman untuk menjaga ini. Saya berharap untuk menguji perbaikan baru.

@IanChokS Hasilnya ada pada tabel di bawah ini. Beri tahu saya jika Anda memiliki pertanyaan.

Metode | Versi yang Membosankan | Jumlah File | Ukuran | Waktu untuk Mengeksekusi (ms)
-- | -- | -- | -- | --
Baca | ^6.3.0 | 1 | 23,33 MB | 2435.834
Baca | ^6.3.0 | 2 | 46,66 MB | 5008.435
Baca | ^6.3.0 | 3 | 136,5 KB | 329.727
Sisipkan | ^6.3.0 | 2 | 11,9 MB | 4316,95
Sisipkan | ^6.3.0 | 4 | 59 KB | 42.864
Baca | Guru Terbaru | 1 | 23,33 MB | 2771.478
Baca | Guru Terbaru | 2 | 46,66 MB | 4877,394
Baca | Guru Terbaru | 3 | 136,5 KB | 93.575
Sisipkan | Guru Terbaru | 2 | 11,9 MB | 2535.267
Sisipkan | Guru Terbaru | 4 | 59 KB | 43.886

Screen Shot 2020-03-06 at 1 32 17 PM
Screen Shot 2020-03-06 at 1 31 18 PM

Itu terlihat bagus! Ini cocok dengan hasil kami untuk sisipan. Misalnya, penggunaan memori telah turun setengahnya.
image
image

Kami pasti akan mencari cara untuk meningkatkan waktu membaca juga di masa mendatang

:tada: Masalah ini telah diselesaikan di versi 8.1.0 :tada:

Rilis tersedia di:

Bot pelepas semantik Anda :package::rocket:

Apakah halaman ini membantu?
0 / 5 - 0 peringkat