বিপুল সংখ্যক ফাইলের জন্য দ্রুততম সংক্ষেপন পদ্ধতি কী?


14

আমার প্রায় 350,000 মোটামুটি ছোট ফাইলের সাথে একটি ডিরেক্টরি সঙ্কলন করতে হবে যা মোট পরিমাণ 100 জিবি। আমি ওএসএক্স ব্যবহার করছি এবং বর্তমানে স্ট্যান্ডার্ড "সংক্ষেপণ" সরঞ্জামটি ব্যবহার করছি যা এই ডিরেক্টরিটিকে একটি .zip ফাইলে রূপান্তর করে। এটি করার কোনও দ্রুত উপায় আছে?


আপনি সম্ভবত টারকে বীট করতে পারবেন না, কারণ এটি আসলে সংকুচিত করে না, কেবল সংরক্ষণাগার, নির্দিষ্ট বিকল্পগুলির সাহায্যে এটি সক্ষম করে। উত্তরে, আমি প্রমাণ দেখতে চাই, কোনও মতামত ...
ড্যানিয়েল বেক

1
আপনি কতটা সংক্ষেপণ চান তা নির্ভর করে।
ta.speot.is

1
আমি টার ব্যবহার করে শেষ করেছি এবং গতির কারণে এখনও এটি সংকোচনের চেষ্টা করিনি। আমার যা প্রয়োজন তার জন্য এটি সময়মতো সম্পূর্ণ করতে সক্ষম হয়েছিল। ধন্যবাদ!
স্পাইক

@ ড্যানিয়েলবেক, টারের সাথে সমস্যা হচ্ছে তারা ডিরেক্টরি ট্রিটি দেখায় না। এমনকি একটি "ভিউ" পেতে, আমাদের পুরো টারটি আনজিপ করা দরকার। ডার বিকল্প আছে যা ডিরেক্টরি দেখুন দেখায়?
পেসারিয়ার

উত্তর:


15

ডিরেক্টরিগুলির জন্য আমি সর্বোচ্চ-সংক্ষেপণের সাথে tarপাইপযুক্ত ব্যবহার করতাম usebzip2

যাওয়ার সহজ উপায় হ'ল,

টার সিএফজে আর্কাইভ.আর.বিজ ২ দির-থেকে-সংরক্ষণাগারভুক্ত / 

আপনি যদি সংরক্ষণাগার থেকে ছোট ছোট ফাইল আনার
পরিকল্পনা না করেন এবং যখনই / যেখানেই প্রয়োজন হবে পুরো জিনিসটি বের করার পরিকল্পনা করছেন যদি এটি দুর্দান্ত কাজ করে ।
তবে, আপনি যদি না ফাইল ছোট সেট বের হতে চাইবে, তার খুব খারাপ নয়।

আমি এই জাতীয় সংরক্ষণাগারগুলিতে কল করতে পছন্দ করি filename.tar.bz2এবং ' xfj' বিকল্পটি দিয়ে বের করতে পারি ।

সর্বাধিক সংকোচনের পাইপটি দেখতে এমনটি লাগে,

tar cf - dir-to-be-সংরক্ষণাগার / | bzip2 -9 -> আর্কাইভ.আর.বিজে 2  
সংরক্ষণাগার ফাইলে # ^ টি জিপ-ইন করতে পাইপ টারবাল। 

দ্রষ্টব্য: '' bzip2'পদ্ধতি এবং আরও সংক্ষেপণ নিয়মিত gzipথেকে' tar cfz" থেকে ধীর হতে থাকে ।

আপনার যদি দ্রুত নেটওয়ার্ক থাকে এবং সংরক্ষণাগারটি অন্য কোনও মেশিনে স্থাপন করা হয়,
আপনি নেটওয়ার্ক জুড়ে একটি পাইপ দিয়ে গতি বাড়িয়ে নিতে পারেন (কার্যকরভাবে দুটি মেশিন একসাথে ব্যবহার করে)।

tar cf - dir / | ssh ব্যবহারকারী @ সার্ভার "bzip2 -9 -> /target-path/archive.tar.bz2"  
জিপ network করতে নেটওয়ার্কের ওপরে পাইপ টারবাল ^ এবং দূরবর্তী মেশিনে সংরক্ষণাগার।

কিছু তথ্যসূত্র,

  1. লিনাক্স জার্নাল: সংক্ষেপণ সরঞ্জামের তুলনায় , জুলাই 28, 2005
  2. জিজিপ বনাম বিজিপ 2 , আগস্ট 26, 2003
  3. একটি দ্রুত বেঞ্চমার্ক: জিজিপ বনাম Bzip2 বনাম এলজেডএমএ , মে 31, 2005

2
প্রশ্নকর্তা দ্রুততম পদ্ধতির জন্য জিজ্ঞাসা করলেন, 100 গিগাবাইটের ট্যারেজ চালিয়ে নেওয়া আজীবন সময় লাগবে! ডিস্ক স্পেসটি এত সস্তা হওয়ার সাথে একটি পয়েন্ট আসে যে অপ্রয়োজনীয় প্রতিটি শেষ সম্ভাব্য বিট বের করে আনার জন্য একসন গ্রহণ করা সম্পদের অপ্রয়োজনীয় বর্জ্য, একেবারে প্রয়োজনীয় না হলে। বেশিরভাগ ডিস্কের ব্যবহার স্ল্যাক স্পেসে গৃহীত হওয়ার সাথে, -1 দিয়ে ট্যারাটি জিপিং করা সম্ভবত কাজটি বেশ ভালভাবে করতে পারে এবং কয়েক মাস আগে পরবর্তী কাজটি চালিয়ে যাওয়ার অনুমতি দেয়!
অ্যান্ডি লি রবিনসন

যদিও আমি একমত যে 100 জিবি ফাইল সম্ভবত সামগ্রিকভাবে সংকোচনের জন্য উপযুক্ত নয়, তবে আমি মনে করি না যে 1 জিবি (বলুন) এর তুলনায় bzip2 100GB এর জন্য রৈখিকভাবে আরও বেশি সময় নেবে take কোনও উপায় দেখানোর জন্য কিছু তত্ত্ব বা ডেটা দেখতে পছন্দ করবে।
নিক

আমি বুঝতে পেরেছি যে bzip2 এর অভিধানটি অভিযোজিত, তাই এটি অনুসন্ধানের উইন্ডোটির মধ্যে ফাইলের শেষ অবধি অব্যাহতভাবে নতুন রিডানডান্সিকে খুঁজছে। ফাইলের এন্ট্রপির একাত্মতার সাপেক্ষে এটি তুলনামূলকভাবে রৈখিক হওয়া উচিত। এটি একটি খারাপ সংক্ষেপক হবে যে ধরে নিয়েছিল যে ফাইলটি শুরু থেকে খুব দ্রুত বাক্যগুলি সঙ্কুচিত করতে সক্ষম হওয়ার জন্য এটির প্রয়োজনীয় সমস্ত কিছু রয়েছে তবে কিছু ক্ষেত্রে এটির চেয়ে পুরানো হওয়ার আরও ভাল উপায় রয়েছে যদিও ১০০ জিবি ডেটাসেট সহ অভিজ্ঞতা সহ!
অ্যান্ডি লি রবিনসন

7

এই লোকটি সে সম্পর্কে কিছু গবেষণা করেছিল। এটি প্রদর্শিত হয় যে .zip দ্রুততর বড় ফাইলগুলি সংকোচিত করবে। তবে এটি বৃহত্তম সংকোচনের আকারের একটি দেয়। দেখে মনে হচ্ছে তিনি উইন্ডোজ ইউটিলিটিগুলি ব্যবহার করছিলেন তবে আমি ওএসএক্সের ইউটিলিটি প্রায় অপটিমাইজড হিসাবে বাজি ধরছি।

এখানে একটি দুর্দান্ত ওয়েবসাইট রয়েছে যেখানে অনেকগুলি ফাইলের গতির জন্য অসংখ্য কম্প্রেশন ইউটিলিটিগুলি বেঞ্চমার্ক করা হয়েছে। সেই সাইটে আরও অনেক পরীক্ষা রয়েছে যা আপনি নিজের জন্য সর্বোত্তম উপযোগিতা নির্ধারণ করতে দেখতে চেয়েছিলেন।

আপনি যে প্রোগ্রামটি ব্যবহার করেন তার সাথে বেশিরভাগ গতির কাজ করতে হয়। আমি উইন্ডোজের জন্য 7 জীপের ইউটিলিটি ব্যবহার করেছি এবং আমি এটি খুব দ্রুত হতে পেরেছি। যাইহোক, অনেকগুলি ফাইল সঙ্কুচিত করতে দীর্ঘ সময় লাগে তবে যাই হোক না কেন আমি এটি রাতারাতি যেতে দেব। অথবা আপনি কেবল পুরো জিনিসটি ট্যারে করতে পারেন এবং এটি সংকুচিত করতে পারবেন না ... ব্যক্তিগতভাবে আমি বড় সংরক্ষণাগারটি আনজিপিং ঘৃণা করি তাই আপনি যা করতে চান তা যদি আমি সতর্ক হই।


0

আমি ব্যবহার পছন্দ করি

tar cf - dir-to-be-archived/ | bzip2 -9 - > archive.tar.bz2

ফাইলগুলি অন্য সার্ভারে স্থানান্তরিত করার জন্য এবং সেগুলি একই সময়ে আচ্ছাদন করার জন্য


1
যা ইতিমধ্যে @nik দ্বারা উপরের উত্তরে পরামর্শ দেওয়া হয়েছে। জোরের জন্য সদৃশ হওয়ার দরকার নেই, কেবলমাত্র অন্য উত্তরটি আপভোট করুন বা আপনার কিছু জড়িত উত্তর দিতে চান না তবে কোনও মন্তব্য যুক্ত করুন। ; ও)
pbhj
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.