Tìm hiểu về File nén và hai kiểu nén Lossless/Lossy

    TVD,  

    Hai kiểu nén dữ liệu chính là Lossless và Lossy có cơ chế hoạt động cùng các ưu nhược điểm khác nhau.

    Bất kỳ người sử dụng máy tính nào cũng đều quen thuộc với các định dạng File nén ZIP và RAR, hay bất cứ ai thường làm việc với các dữ liệu media như âm thanh, hình ảnh, video đều biết File nén là một phần không thể thiếu để có thể chia sẻ dễ dàng. Với các File nén, bạn sẽ không mất quá nhiều thời gian cũng như băng thông của mình để chia sẻ dữ liệu, mặc dù chất lượng của các dữ liệu media có thể bị giảm.
     

    tim-hieu-ve-file-nen-va-hai-kieu-nen-losslesslossy

     
    Về bản chất thì File nén là khá phức tạp và khó hiểu, là kết quả của khá nhiều công đoạn được sáng chế bởi những con người rất thông minh. Nhưng bài viết này sẽ cố gắng đơn giản hóa để bạn đọc có thể dễ dàng hiểu được bản chất và cách thức hoạt động của các loại File nén, thông qua hai kiểu nén dữ liệu chính là Lossless và Lossy.
     
    Kiểu nén Lossless
     
    Về cơ bản, kiểu nén Lossless sẽ dùng thuật toán đơn giản các phần dữ liệu dư thừa, không cần thiết và không làm mất dữ liệu. Để dễ hình dung hơn, bạn có thể tưởng tượng chồng gạch xếp hình dưới đây đại diện cho một dữ liệu đầy đủ.
     

    tim-hieu-ve-file-nen-va-hai-kieu-nen-losslesslossy

     
    Bạn có thể thấy ở đây chúng ta có hai khối gạch màu đỏ, năm cái màu vàng và ba màu xanh. Các viên gạch cùng màu đại diện cho các phần dữ liệu giống nhau và lặp lại. Tuy nhiên đó không phải cách thức duy nhất để đại diện cho dữ liệu, có thể thay đổi chúng như hình dưới.
     

    tim-hieu-ve-file-nen-va-hai-kieu-nen-losslesslossy

     
    Trong hình này, bạn chỉ cần một thuật toán chú thích và ba khối gạch để đại diện cho 10 khối gạch ở trên. Bạn vẫn có đầy đủ thông tin về các loại gạch bao gồm màu đỏ, vàng và xanh và số lượng của chúng. Trong khi không gian đã được giảm đi đáng kể. Ví dụ đơn giản này cho bạn một khái niệm cơ bản về kiểu nén Lossless, các thông tin giống nhau được thay thế bằng một thông tin đại diện và thuật toán cho biết số lượng của chúng.
     
    Một ví dụ đơn giản khác: bạn có một đoạn dữ liệu như sau "fffffffuuuuuuuuuuuucc" và sau khi nén kiểu Lossless nó sẽ thành "f7u12c2".
     

    tim-hieu-ve-file-nen-va-hai-kieu-nen-losslesslossy

     
    Tuy nhiên có rất nhiều dạng nén Lossless được sử dụng các thuật toán khác nhau, trên đây chỉ là một dạng đơn giản trong số đó. Nhưng về bản chất, các dữ liệu sau khi được nén đều có thể tái tạo lại toàn bộ như dữ liệu ban đầu sau khi giải nén, không có mất mát và thay đổi gì.
     
    Các phần mềm như WinZip đều dựa trên kiểu nén Lossless này, các file dữ liệu sau khi bị nén sẽ có dung lượng nhỏ hơn, tuy nhiên sau khi giải nén dữ liệu sẽ được khôi phục lại như ban đầu, không có phần dữ liệu nào bị mất đi. Trong các file hình ảnh, PNG cũng là một định dạng được nén theo kiểu Lossless.
     

    tim-hieu-ve-file-nen-va-hai-kieu-nen-losslesslossy

     
    Các dữ liệu media hiện nay, đặc biệt là file âm thanh cũng thường được sử dụng kiểu nén Lossless này, vì nó đảm bảo dữ liệu không bị mất đi và giống như bản gốc. Mặc dù có rất nhiều định dạng Lossless khác nhau (FLAC, APE, TAK, ALAC, TTA, WAV) do đó cũng có nhiều kiểu nén Lossless khác nhau cho ra các file với dung lượng từ cao đến thấp. Nhưng sau khi giải nén chúng đều cho ra dữ liệu với chất lượng giống nhau và giống bản gốc (nếu cùng một bản gốc). Do đó việc so sánh dung lượng và birate của các file nhạc Lossless là điều không cần thiết.
     
    Kiểu nén Lossy
     
    Về cơ bản, kiểu nén Lossy ngược lại với kiểu Lossless, vì nó loại bỏ hoàn toàn một phần của dữ liệu. Điều này là khá tồi tệ đối với các dữ liệu văn bản, vì bạn có thể bị cắt mất một vài dòng văn bản sau khi giải nén do một phần dữ liệu bị loại bỏ trong quá trình nén. Tuy nhiên rất nhiều dữ liệu media lại được sử dụng kiểu nén này.
     

    tim-hieu-ve-file-nen-va-hai-kieu-nen-losslesslossy

     
    Các file MP3 là một ví dụ điển hình, hầu hết các file nhạc số lưu trữ trên internet đều sử dụng định dạng này vì nó rất nhẹ, dung lượng có thể chỉ bằng 1/10 so với bản gốc. Tuy nhiên một số âm thanh của bản nhạc sẽ bị loại bỏ, đa số là các âm thanh mà chúng ta khó có thể nghe thấy. Tuy nhiên nếu càng nén với dung lượng càng nhỏ, thì lượng dữ liệu mất đi sẽ càng lớn và chất lượng âm thanh sẽ rất kém.
     
    Một định dạng phổ biến khác là file hình ảnh JPEG. Hầu hết các bức ảnh chia sẻ trên internet đều không cần phải có chất lượng cao như việc dành cho in ấn, mà thay vào đó là dung lượng nhỏ để dễ dàng chia sẻ. Do đó, bạn có thể loại một phần dữ liệu, như độ phân giải và các điểm ảnh giảm đi. Càng nén nhiều lần chất lượng hình ảnh sẽ càng giảm cùng với dung lượng, tuy nhiên điều đó còn phụ thuộc vào mục đích sử dụng của bức ảnh, nên chất lượng không phải lúc nào cũng được đặt lên hàng đầu.
     

    tim-hieu-ve-file-nen-va-hai-kieu-nen-losslesslossy

     
    Điều quan trọng nhất bạn nên nhớ là với kiểu nén Lossy, các dữ liệu sẽ thực sự bị loại bỏ và không cách nào khôi phục như bản gốc. Do đó mà một số bức ảnh sau khi in ra có chất lượng rất kém, do người sử dụng nhầm lần giữa các định dạng.
     
    Tạm kết
     
    Nhờ có các file nén theo kiểu Lossy mà chúng ta dễ dàng xem ảnh, nghe nhạc và xem YouTube trực tuyến. Bên cạnh đó kiểu nén Lossless giúp chúng ta lưu giữ được toàn bộ dữ liệu gốc, tận hưởng những bản nhạc tuyệt vời nhất (mặc dù đi kèm với đó là các thiết bị và khả năng thẩm âm tốt). Do đó mặc dù đối lập nhau, có những ưu nhược điểm khác nhau, nhưng hai kiểu nén dữ liệu này sẽ vẫn tồn tại và hiệu quả, ít ra là cho đến khi con người tìm được cách chia sẻ dữ liệu vượt trội hơn.
     
    Trên đây chỉ là những khái niệm cơ bản nhất và được viết để người đọc dễ hiểu nhất, còn về bản chất, các định dạng và thuật toán là vô cùng phức tạp. Hy vọng bài viết sẽ giúp bạn đọc có những hiểu biết cơ bản về file nén và hai kiểu nén dữ liệu Lossless và Lossy.
     
    Tham khảo: makeuseof, wiki
     
     
     
     
     
    Tin cùng chuyên mục
    Xem theo ngày

    NỔI BẬT TRANG CHỦ