DevToys Web Pro iconDevToys Web Proব্লগ
আমাদের রেট দিন:
ব্রাউজার এক্সটেনশন ব্যবহার করে দেখুন:

Bzip2 ডিকমপ্রেসর

ইনপুট ফরম্যাট:
Base64 ইনপুট
  • অথবা একটি .bz2 ফাইল ড্রপ করুন

    ডিকমপ্রেস করা আউটপুট
  • Bzip2 সম্পর্কে

    Bzip2 Burrows-Wheeler ব্লক-সোর্টিং অ্যালগরিদমের পর Huffman কোডিং ব্যবহার করে, ফলে gzip-এর তুলনায় ভালো কমপ্রেশন রেশিও পাওয়া যায়, তবে গতি ধীর হয় এবং মেমরি ব্যবহার বেশি হয়।

    • Linux/macOS-এ একক ফাইল কমপ্রেশনের জন্য সাধারণ (.bz2 এক্সটেনশন)
    • সাধারণ কমপ্রেশন: gzip-এর তুলনায় 10–15% ভালো রেশিও
    • CLI কমপ্রেস: bzip2 file.txt
    • CLI ডিকমপ্রেস: bunzip2 file.txt.bz2
    • প্রায়ই tar-এর সাথে ব্যবহার করা হয়: tar -xjf archive.tar.bz2

    সমস্ত প্রক্রিয়াকরণ আপনার ব্রাউজারেই হয় — কোনো ডেটা কোনো সার্ভারে পাঠানো হয় না।

    প্রযুক্তিগত বিবরণ

    Bzip2 ডিকমপ্রেসর কীভাবে কাজ করে

    টুলটি কী করে

    Bzip2 ডিকমপ্রেসর ব্রাউজারেই সম্পূর্ণভাবে .bz2 কমপ্রেসড ফাইল ডিকোড করে, এবং মূল আনকমপ্রেসড কনটেন্ট তৈরি করে। এটি কোনো সার্ভার-সাইড প্রসেসিং ছাড়াই JavaScript-এ Burrows-Wheeler Transform এবং Huffman coding ডিকমপ্রেশন পাইপলাইন ইমপ্লিমেন্ট করে। এটি কেবল ডিকোড-অনলি টুল — এটি bzip2 ডেটা ডিকমপ্রেস করে, কিন্তু নতুন bzip2 আর্কাইভ তৈরি করে না।

    ডেভেলপারদের সাধারণ ব্যবহারক্ষেত্র

    ডেভেলপাররা কমান্ড-লাইন টুল ইনস্টল না করেই দ্রুত bzip2-কমপ্রেসড লগ ফাইল, ডাটাবেস ডাম্প, বা সোর্স আর্কাইভ ইনস্পেক্ট করতে এই টুল ব্যবহার করেন। bzip2 প্রি-ইনস্টল না থাকা সিস্টেমে (Windows, minimal containers) কাজ করার সময়, প্যাকেজ রিপোজিটরি থেকে ডাউনলোড করা .bz2 ফাইলের কনটেন্ট এক নজরে দেখতে হলে, বা টার্মিনাল না ছুঁয়েই সহকর্মীর কাছ থেকে পাওয়া একটি একক ফাইল ডিকমপ্রেস করতে হলে এটি উপকারী।

    ডেটা ফরম্যাট, টাইপ বা ভ্যারিয়েন্ট

    Bzip2 সাধারণত gzip-এর তুলনায় 10-15% ভালো কমপ্রেশন রেশিও পেতে Burrows-Wheeler Transform (BWT), Move-to-Front encoding, এবং Huffman coding-এর একটি পাইপলাইন ব্যবহার করে, তবে গতি তুলনামূলকভাবে ধীর। ফাইলগুলো .bz2 এক্সটেনশন ব্যবহার করে এবং 'BZ' ম্যাজিক বাইট দিয়ে শুরু হয়, এরপর একটি ভার্সন ইন্ডিকেটর থাকে। ব্লক সাইজ 100k থেকে 900k পর্যন্ত (হেডারে 1-9 ডিজিট দিয়ে নির্দেশিত), যেখানে বড় ব্লক ভালো কমপ্রেশন দেয় কিন্তু ডিকমপ্রেস করতে বেশি মেমরি লাগে।

    সাধারণ ভুল ও এজ কেস

    Bzip2, gzip-এর মতো এতটা পরিষ্কারভাবে স্ট্রিমিং ডিকমপ্রেশন সাপোর্ট করে না — কোনো আউটপুট তৈরি হওয়ার আগে পুরো ব্লক পড়তে হয়, যার ফলে খুব বড় ফাইল ব্রাউজারের উল্লেখযোগ্য মেমরি ব্যবহার করতে পারে। মাল্টি-স্ট্রিম bzip2 ফাইল (প্যারালাল কমপ্রেশনের জন্য pbzip2 দিয়ে তৈরি) একাধিক সংযুক্ত bzip2 স্ট্রিম ধারণ করে, যা কিছু ডিকোডার ভুলভাবে হ্যান্ডেল করে। টুলটি স্ট্যান্ডার্ড সিঙ্গেল-স্ট্রিম .bz2 ফাইল হ্যান্ডেল করে; .tar.bz2 আর্কাইভের ক্ষেত্রে আপনি raw tar কনটেন্ট পাবেন, যা এখনও এক্সট্র্যাক্ট করতে হবে।

    কোডের বদলে কখন এই টুল ব্যবহার করবেন

    bzip2 ইউটিলিটি ইনস্টল না করেই ফাইলের কনটেন্ট এক নজরে দেখতে হলে দ্রুত একবারের ডিকমপ্রেশনের জন্য এই ব্রাউজার টুল ব্যবহার করুন। পাইপলাইনে স্ক্রিপ্টেড ডিকমপ্রেশন, একাধিক আর্কাইভের ব্যাচ প্রসেসিং, বা এক্সট্র্যাকশন প্রয়োজন এমন .tar.bz2 ফাইল হ্যান্ডেল করতে হলে কমান্ড-লাইন bzip2/pbzip2 বা Python-এর bz2 মডিউলের মতো ভাষার লাইব্রেরি ব্যবহার করুন, যা স্ট্রিমিং সাপোর্ট করে এবং tar এক্সট্র্যাকশনের সঙ্গে ইন্টিগ্রেট হয়।