Apakah mungkin mempercepat gzip
proses?
saya menggunakan
mysqldump "$database_name" | gzip > $BACKUP_DIR/$database_name.sql.gz
untuk membuat cadangan basis data ke dalam direktori $BACKUP_DIR
,.
halaman buku mengatakan:
- # --fast --best
Mengatur kecepatan kompresi menggunakan digit yang ditentukan #, di mana -1 atau --fast menunjukkan metode kompresi tercepat (kompresi kurang) dan -9 atau --best menunjukkan metode kompresi paling lambat ( kompresi terbaik). Level kompresi default -6 (yaitu, bias terhadap kompresi tinggi dengan mengorbankan kecepatan).
- Seberapa efektif penggunaannya
--fast
? - Apakah ini secara efektif menurunkan penggunaan CPU pada komputer modern?
Hasil tes saya
Saya tidak melihat adanya akselerasi:
- 7 mnt, 47 detik (dengan rasio standar
-6
) - 8 mnt, 36 detik (dengan rasio
--fast
(= 9))
Jadi sepertinya butuh waktu lebih lama untuk menggunakan kompresi cepat?
Hanya kompresi yang lebih tinggi yang memperlambatnya:
- 11 mnt, 57 detik (dengan rasio
--best
(= 1))
Setelah mendapatkan Ide dengan lzop
saya mengujinya juga dan itu benar-benar lebih cepat:
- 6 mnt, 14 detik dengan
lzop -1 -f -o $BACKUP_DIR/$database_name.sql.lzo
backup
compression
gzip
rubo77
sumber
sumber
gzip -1
tidak cukup cepat, gunakanlzop
lz4
yang lebih cepat lagi melihat benchmark ini . Tapi sepertinya lzop dan lz4 membutuhkan lebih banyak memori. akankah ini menjadi masalah pada RAM 1GB RAM saya single-core yang menggunakan memori lz4 30 kali lebih banyak daripada kompresi gzip ketika saya kompres beberapa database besar?Jawaban:
Jika Anda memiliki mesin multi-core menggunakan pigz jauh lebih cepat daripada gzip tradisional.
Pigz ca digunakan sebagai pengganti drop-in untuk gzip. Perhatikan bahwa hanya kompresi yang dapat diparalelkan, bukan dekompresi.
Menggunakan pigz, baris perintah menjadi
sumber
pigz
meningkatkan penggunaan CPU tetapi menurunkan waktu jam yang dibutuhkan multi-prosesorDari
man gzip
:sumber
Jika Anda membutuhkannya cepat karena masalah penguncian basis data, dan Anda memiliki disk yang cepat / cukup besar untuk menyimpan data yang tidak terkompresi untuk sementara, Anda dapat mempertimbangkan menggunakan metode ini sebagai gantinya:
Yaitu menyimpan cadangan pertama (yang lebih cepat daripada gzipping itu JIKA disk cepat dan CPU lambat) dan kemudian gzipping terjadi di latar belakang.
Ini juga memungkinkan Anda untuk menggunakan algoritma kompresi yang lebih baik, karena tidak lagi penting (secara langsung) berapa lama kompresi berlangsung.
sumber