Go Library για παράλληλη συμπίεση και αποσυμπίεση

Golang API για τη δημιουργία και την ανάγνωση τυπικών αρχείων GZIP μέσω προγραμματισμού. Συμπιέστε μεγάλα αρχεία χωρίζοντάς τα σε μπλοκ και εκτελέστε συμπίεση/αποσυμπίεση παράλληλα. 

Το pgzip είναι μια βιβλιοθήκη ανοιχτού κώδικα που παρέχει πλήρη λειτουργικότητα για παράλληλη συμπίεση και αποσυμπίεση χρησιμοποιώντας τη γλώσσα Go. Η βιβλιοθήκη είναι πολύ χρήσιμη για τη συμπίεση μεγάλου όγκου δεδομένων καθώς χωρίζεται σε μπλοκ και εκτελείται συμπίεση/αποσυμπίεση παράλληλα. Η βιβλιοθήκη pgzip είναι απίστευτα δημοφιλής στην κοινότητα προγραμματιστών και επιτρέπει στις εφαρμογές Go να διαβάζουν απευθείας συμπιεσμένα αρχεία με μερικές μόνο εντολές.

Η βιβλιοθήκη είναι πολύ σταθερή και επιτρέπει στους προγραμματιστές να δημιουργούν και να διαβάζουν τυπικά αρχεία GZIP μέσω προγραμματισμού. Για να αξιοποιήσετε στο έπακρο τη βιβλιοθήκη, συνιστάται η χρήση συμπίεσης ή αποσυμπίεσης μεγάλου όγκου δεδομένων (περισσότερο από 2 MB τη φορά). Η βιβλιοθήκη έχει συμπεριλάβει υποστήριξη για πολλές σημαντικές λειτουργίες, όπως συμπίεση αρχείων, αποσυμπίεση αρχείων, άνοιγμα και ανάγνωση αρχείων GZIP και πολλά άλλα.

Previous Next

Ξεκινώντας με το pgzip

Ο προτεινόμενος τρόπος εγκατάστασης του pgzip είναι από το GitHub, χρησιμοποιήστε την ακόλουθη εντολή για ομαλή εγκατάσταση.

Εγκαταστήστε το pgzip μέσω εντολής

go get github.com/klauspost/pgzip/...

Συμπίεση μεγάλων αρχείων μέσω Go API

Η βιβλιοθήκη pgzip ανοιχτού κώδικα έχει συμπεριλάβει λειτουργία για τη συμπίεση μεγάλων ποσοτήτων αρχείων δεδομένων χρησιμοποιώντας μερικές γραμμές κώδικα Go. Το API υποστηρίζει το διαχωρισμό του μεγάλου αρχείου σε μικρά μέρη (από προεπιλογή το μέγεθος του μπλοκ είναι 1 MB) και μπορεί να υποβληθεί σε επεξεργασία μέχρι τον αριθμό των νημάτων της CPU. Μπορείτε εύκολα να ελέγξετε το μέγεθος των μπλοκ καθώς και να το προσαρμόσετε ανάλογα με τις ανάγκες σας και πόσα θέλετε να επεξεργαστούν παράλληλα. Για καλύτερα κέρδη απόδοσης, συνιστάται στους χρήστες να συμπιέζουν τουλάχιστον περισσότερα από 1 megabyte δεδομένων τη φορά.

Αποσυμπίεση αρχείων μέσω Go API

Η δωρεάν βιβλιοθήκη pgzip επιτρέπει στους προγραμματιστές λογισμικού να αποσυμπιέσουν τα αρχεία τους μέσα στις δικές τους εφαρμογές Go. Όπως και η συμπίεση, η αποσυμπίεση μπορεί επίσης να πραγματοποιηθεί προσαρμόζοντας το μέγεθος του μπλοκ. Μπορείτε εύκολα να αποκτήσετε τον δικό σας αναγνώστη και να καθορίσετε τη δική σας ανάγνωση εκ των προτέρων. Για τον αναγνώστη σας, πρέπει να ορίσετε το μέγεθος του μπλοκ και τον μέγιστο αριθμό μπλοκ που πρόκειται να αποκωδικοποιηθούν στη συνέχεια.

Βελτίωση απόδοσης

Η απόδοση του pgzip μπορεί να βελτιωθεί σε σύγκριση με το gzip όταν έχετε μεγάλο όγκο δεδομένων. Καθώς το pgzip επεξεργάζεται μπλοκ παράλληλα, έχει προφανώς ένα πλεονέκτημα ταχύτητας σε σχέση με τους άλλους συμπιεστές. Η χρήση για υλικό υψηλής απόδοσης, υψηλής συμπίεσης, όπως αρχεία καταγραφής, JSON και δεδομένα CSV μπορεί επίσης να είναι χρήσιμη. Ένα μεγάλο πλεονέκτημα του pgzip κατά την αποσυμπίεση είναι ότι σας επιτρέπει να κάνετε άλλη εργασία ενώ πραγματοποιείται η αποσυμπίεση.

 Ελληνικά