Πώς λειτουργεί η συμπίεση αρχείων;

Η συμπίεση αρχείων βρίσκεται στο επίκεντρο του τρόπου λειτουργίας του σύγχρονου ιστού, θα μπορούσαμε να υποστηρίξουμε, διότι μας επιτρέπει να μοιραζόμαστε αρχεία που διαφορετικά θα χρειάζονταν πολύ χρόνο για να μεταφερθούν. Αλλά πώς λειτουργεί;

Η συμπίεση αρχείων βρίσκεται στο επίκεντρο του τρόπου λειτουργίας του σύγχρονου ιστού, θα μπορούσαμε να υποστηρίξουμε, διότι μας επιτρέπει να μοιραζόμαστε αρχεία που διαφορετικά θα χρειάζονταν πολύ χρόνο για να μεταφερθούν.  Αλλά πώς λειτουργεί;
Διαφήμιση

Όλοι έχουμε ακούσει για συμπίεση αρχείων. Όποιος παίρνει τακτικά αρχεία από τον ιστό είναι εξοικειωμένος με μορφές όπως ZIP και RAR και όποιος επεξεργάζεται αρχεία πολυμέσων γνωρίζει ότι η συμπίεση είναι απαραίτητη για την κοινή χρήση εικόνων, μουσικής και βίντεο στον ιστό χωρίς να αξιοποιηθεί όλο το εύρος ζώνης. Η συμπίεση αρχείων βρίσκεται στον πυρήνα του τρόπου λειτουργίας του ιστού, ίσως να υποστηρίζετε, επειδή μας επιτρέπει να μοιραζόμαστε αρχεία που διαφορετικά θα χρειάζονταν πολύ χρόνο για μεταφορά. Αλλά πώς λειτουργεί;

Δεν είναι τίποτα μαγικό, αλλά είναι αποτέλεσμα πολλής σκληρής δουλειάς πολλών πολύ έξυπνων ανθρώπων. Ας δούμε πώς λειτουργεί η συμπίεση αρχείων εξετάζοντας τους δύο κύριους τύπους συμπίεσης - χωρίς απώλειες και απώλειες.

Ακριβώς μια προειδοποίηση - πρόκειται να υπεραπλουστεύσω τα πράγματα εδώ σε μια προσπάθεια να γίνει αυτό ευανάγνωστο από μη-μαθηματικά μεγάλα. Ελέγξτε τα άρθρα που σχετίζονται με το Wikipedia για μεγαλύτερο βάθος και τις πηγές της Wikipedia για ακόμα περισσότερα.

Απώλεια συμπίεσης

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

πώς λειτουργεί η συμπίεση αρχείων

Όπως μπορείτε να δείτε έχουμε δύο κόκκινα τούβλα, πέντε κίτρινα και τρία μπλε. Ο απλούστερος τρόπος να εκπροσωπήσετε αυτό είναι όπως βλέπετε παραπάνω: τα ίδια τα τούβλα. Αλλά δεν είναι ο μόνος τρόπος που μπορώ να το αντιληφθώ. Θα μπορούσα επίσης να το κάνω αυτό:

πώς λειτουργεί η συμπίεση αρχείων

Στην παραπάνω εικόνα μπορείτε να δείτε ακριβώς τις ίδιες πληροφορίες - δύο κόκκινα, πέντε κίτρινα και τρία μπλε - αλλά χρειάζεται πολύ λιγότερο χώρο. Έχω αντιπροσωπεύσει πλεονάζοντα τούβλα χρησιμοποιώντας αριθμούς, δηλαδή χρειάζομαι μόνο τρία τούβλα για να αντιπροσωπεύσω δέκα.

Αυτό σας δίνει μια γενική ιδέα για τη δυνατότητα συμπίεσης χωρίς απώλειες. Οι πληροφορίες που είναι περιττές αντικαθίστανται από οδηγίες που αναφέρουν στον υπολογιστή πόσα ίδια δεδομένα επαναλαμβάνουν. Ένα άλλο απλοποιημένο παράδειγμα:

fffffffuuuuuuuuuuuu

Μπορεί να "συμπιεστεί" για:

f7u12

Αυτή είναι μόνο μια μέθοδος χωρίς απώλειες συμπίεσης, φυσικά, αλλά δείχνει πώς αυτό είναι δυνατό. Χρησιμοποιούνται άλλα τεχνάσματα μαθηματικών, αλλά το κύριο πράγμα που πρέπει να θυμάστε σχετικά με την απώλεια συμπίεσης είναι ότι ενώ ο χώρος αποθηκεύεται προσωρινά, είναι δυνατό να αναδημιουργηθεί το αρχικό αρχείο εξ ολοκλήρου από το συμπιεσμένο. Αν δείτε τρία τούβλα με αριθμούς γνωρίζετε ακριβώς πώς να κάνετε τη στοίβα. Δεν χάνεται καμία πληροφορία, όπως υπονοεί το όνομα lossless.

Προγράμματα όπως το WinZip βασίζονται στη συμπίεση χωρίς απώλειες. Καταργούν αυτές τις περιττές πληροφορίες όταν συμπιέζετε (ή "zip") το αρχείο και το επαναφέρετε όταν κάνετε αποσυμπίεση (ή "unzip"). Τίποτα δεν χάθηκε.

Στον κόσμο της εικόνας, τα αρχεία PNG χρησιμοποιούν επίσης συμπίεση χωρίς απώλειες. Αυτός είναι ο λόγος για τον οποίο προσφέρουν ένα μικρότερο μέγεθος αρχείου για εικόνες με πολύ ομοιόμορφο χώρο: αυτές οι περιττές πληροφορίες αντιπροσωπεύονται χρησιμοποιώντας τις οδηγίες.

Φυσικά, αυτό είναι μια υπερπροσαρμογή, αλλά παίρνει το βασικό σημείο. Διαβάστε περισσότερα σχετικά με τη συμπίεση χωρίς απώλειες στη Wikipedia, αν σας ενδιαφέρει.

Απώλεια συμπίεσης

Φυσικά, υπάρχουν μόνο τόσα πολλά που μπορείτε να πετύχετε χρησιμοποιώντας μόνο μεθόδους χωρίς απώλειες. Ευτυχώς δεν είναι η μόνη επιλογή: μπορείτε επίσης απλά να αφαιρέσετε πληροφορίες. Αυτό ονομάζεται απώλεια συμπίεσης και δεν είναι τόσο τρελό όσο ακούγεται. στην πραγματικότητα, πιθανότατα έχετε πολλά αρχεία στον υπολογιστή σας, χρησιμοποιώντας απώλεια συμπίεσης.

Ένα MP3, για παράδειγμα. Εάν είστε σαν τους περισσότερους ανθρώπους, ο υπολογιστής σας αποθηκεύει χιλιάδες για σας, αλλά ξέρατε ότι δεν περιέχουν όλες τις πληροφορίες ήχου που έκανε η πρωτότυπη εγγραφή; Μερικοί ήχοι, που οι άνθρωποι δεν μπορούν ή δεν μπορούν να ακούσουν, αφαιρούνται ως μέρος της συμπίεσης. Όσο περισσότερο συμπιέζετε ένα αρχείο, τόσο περισσότερες πληροφορίες καταργούνται, γι 'αυτό και ένα υπερβολικά συμπιεσμένο αρχείο θα αρχίσει να ακούγεται λασπώδες.

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

Ένα άλλο παράδειγμα απώλειας συμπίεσης είναι η εικόνα JPEG. Γενικά, οι εικόνες που βλέπουν στον ιστό δεν χρειάζεται να είναι τόσο υψηλής ποιότητας όσο οι εικόνες που προορίζονται για εκτύπωση. Ως εκ τούτου, μπορείτε να αφαιρέσετε πολλές περιττές πληροφορίες σε μια εικόνα ιστού, ακόμη και αν αυτό θα φαινόταν απαίσια τυπωμένο.

Φυσικά, η συμπίεση επανειλημμένα ενός αρχείου με μεθόδους απώλειας μειώνει την ποιότητα - κάθε φορά που το κάνετε, χάνονται περισσότερα δεδομένα. Παρακάτω είναι μια φωτογραφία που έχω συμπιεστεί τρεις φορές για να το καταδείξω:

πώς λειτουργεί η συμπίεση αρχείων

Μπορείτε να δείτε από αριστερά προς τα δεξιά πώς μειώνεται η ποιότητα. Μπορεί να μην έχει σημασία, ανάλογα με το τι θα χρησιμοποιηθεί η εικόνα και γι 'αυτό υπάρχει απώλεια συμπίεσης.

Είναι σημαντικό να θυμάστε ότι τα αρχεία που είναι συμπιεσμένα χρησιμοποιώντας μεθόδους lossy χάνουν πραγματικά δεδομένα, πράγμα που σημαίνει ότι δεν μπορείτε να αναδημιουργήσετε το αρχικό αρχείο από ένα συμπιεσμένο χρησιμοποιώντας μεθόδους lossy. Είναι προφανές όταν το σκέφτεστε, αλλά πολλά έργα εκτύπωσης έχουν καταστραφεί λόγω έλλειψης κατανόησης αυτού του βασικού σημείου.

Έχω πραγματικά μόνο γρατζουνίσει την επιφάνεια εδώ, έτσι παρακαλώ: διαβάστε περισσότερα για την απώλεια συμπίεσης στη Wikipedia. Είναι κάτι συναρπαστικό.

συμπέρασμα

Η συμπίεση βοήθησε τον ιστό να γίνει αυτό που είναι. Τις ημέρες των συμπιεσμένων εικόνων με dialup έφερε φωτογραφίες στο πρόγραμμα περιήγησης, τουλάχιστον όχι με αποδεκτή ταχύτητα. Το συμπιεσμένο βίντεο καθιστά δυνατή τη δημιουργία ιστότοπων όπως το YouTube και όσοι χρησιμοποιούν δίκτυα κοινής χρήσης αρχείων είναι εξοικειωμένοι με τα αρχεία ZIP και RAR.

Έχετε κάτι να προσθέσετε; Είμαι βέβαιος ότι έχω χάσει μερικά βασικά σημεία για να με εκπαιδεύσουν (και τους άλλους αναγνώστες) στα παρακάτω σχόλια.

Image Credit: Εικόνα άνοιξη μέσω Shutterstock

In this article