আমি du -sh
সাধারণ লিনাক্স ফাইল সিস্টেমে জানি । তবে এইচডিএফএস দিয়ে কীভাবে করবেন?
উত্তর:
hadoop fs -du -s -h /path/to/dir
পাঠ্যযোগ্য আকারে একটি ডিরেক্টরি আকার প্রদর্শন করে।
hdfs -du -s -h /path/to/dir
এটি আরও উপযুক্ত।
ম্যাট ডি এবং অন্যদের উত্তরগুলিতে প্রসারিত করে , কমান্ডটি অ্যাপাচি হাদুপ 3.0.0 পর্যন্ত হতে পারে
hadoop fs -du [-s] [-h] [-v] [-x] URI [URI ...]
এটি প্রদত্ত ডিরেক্টরিতে থাকা ফাইলগুলির আকার এবং ডিরেক্টরিগুলি কেবল কোনও ফাইলের ক্ষেত্রে কোনও ফাইলের দৈর্ঘ্য প্রদর্শন করে।
বিকল্পসমূহ:
- -S একটি পরিণাম ডেকে আনবে বিকল্প ফাইল লেন্থ সমষ্টিগত সারসংক্ষেপ বরং পৃথক ফাইল চেয়ে প্রদর্শিত হচ্ছে। -S বিকল্প ব্যতীত গণনাটি প্রদত্ত পথ থেকে 1-স্তরের গভীরে গিয়ে সম্পন্ন করা হয়।
- -H বিকল্প একটি ফাইলের মাপ ফরম্যাট হবে পাঠযোগ্য ফ্যাশন (যেমন 64.0m পরিবর্তে 67108864)
- -V বিকল্প প্রদর্শন করা হবে কলামের নাম একটি শিরোলেখ লাইন হিসেবে।
- -X বিকল্প হবে স্ন্যাপশট অগ্রাহ্য ফলাফলের হিসাব থেকে। -X বিকল্পটি (ডিফল্ট) ছাড়া ফলাফল সর্বদা আইএনওড থেকে দেওয়া পথের নীচে থাকা সমস্ত স্ন্যাপশট সহ গণনা করা হয়।
du
নিম্নলিখিত বিন্যাস সহ তিনটি কলাম রিটার্ন করে: +-------------------------------------------------------------------+
| size | disk_space_consumed_with_all_replicas | full_path_name |
+-------------------------------------------------------------------+
## উদাহরণ কমান্ড:
hadoop fs -du /user/hadoop/dir1 \
/user/hadoop/file1 \
hdfs://nn.example.com/user/hadoop/dir1
প্রস্থান কোড: সাফল্যে 0 এবং ত্রুটিতে -1 প্রদান করে।
এটির সাহায্যে আপনি জিবিতে আকার পাবেন
hdfs dfs -du PATHTODIRECTORY | awk '/^[0-9]+/ { print int($1/(1024**3)) " [GB]\t" $2 }'
ডিরেক্টরিতে কোনও নির্দিষ্ট গ্রুপের মোট মোট গণনা করার চেষ্টা করার সময় -s
বিকল্পটি কাজ করে না (হ্যাডোপ ২. 2..১ এ)। উদাহরণ স্বরূপ:
ডিরেক্টরি কাঠামো:
some_dir
├abc.txt
├count1.txt
├count2.txt
└def.txt
ধরুন প্রতিটি ফাইলের আকার 1 কেবি। আপনি সম্পূর্ণ ডিরেক্টরিটি এর সাথে সংক্ষেপ করতে পারেন:
hdfs dfs -du -s some_dir
4096 some_dir
যাইহোক, যদি আমি "গণনা" থাকা সমস্ত ফাইলের যোগফলটি কমান্ডটি ছোট করি falls
hdfs dfs -du -s some_dir/count*
1024 some_dir/count1.txt
1024 some_dir/count2.txt
এটিকে পেতে আমি সাধারণত আউটজিকে পাস করি।
hdfs dfs -du some_dir/count* | awk '{ total+=$1 } END { print total }'
2048
ডিরেক্টরিটির আকার পেতে hdfs dfs -du -s -h / $ আপনার ডিরেক্টরি ডিরেক্টরি ব্যবহার করা যেতে পারে। hdfs dfsadmin -report দ্রুত ক্লাস্টার স্তর স্টোরেজ রিপোর্ট দেখতে ব্যবহার করা যেতে পারে।
হ্যাডোপ ক্লাস্টারে ব্যবহৃত% স্পেস
sudo -u hdfs hadoop fs –df
নির্দিষ্ট ফোল্ডারের অধীনে ক্ষমতা:
sudo -u hdfs hadoop fs -du -h /user
hadoop fs -du -h /user
(আমার ব্যবহারের দরকার ছিল না sudo
)
sudo
প্রয়োজন হয় না এবং খুব কম ব্যবহার করা উচিত।
hdfs dfs -count <dir>
ম্যান পৃষ্ঠা থেকে তথ্য:
-count [-q] [-h] [-v] [-t [<storage type>]] [-u] <path> ... :
Count the number of directories, files and bytes under the paths
that match the specified file pattern. The output columns are:
DIR_COUNT FILE_COUNT CONTENT_SIZE PATHNAME
or, with the -q option:
QUOTA REM_QUOTA SPACE_QUOTA REM_SPACE_QUOTA
DIR_COUNT FILE_COUNT CONTENT_SIZE PATHNAME
কমান্ড হওয়া উচিত hadoop fs -du -s -h \dirPath
-du [-s] [-h] ...: নির্দিষ্ট ফাইলের সাথে মেলে এমন ফাইলগুলির দ্বারা ব্যবহৃত বাইটে স্থানের পরিমাণটি দেখান।
-s :
প্যাটার্নের সাথে মেলে এমন প্রতিটি পৃথক ফাইলের আকার দেখানোর পরিবর্তে মোট (সারাংশ) আকার দেখায়।
-h : বিভিন্ন বাইটের চেয়ে মানব-পঠনযোগ্য ফ্যাশনে ফাইলের আকারগুলি ফর্ম্যাট করে। (প্রাক্তন এমবি / জিবি / টিবি ইত্যাদি)
নোট করুন, এমনকি -s বিকল্প ব্যতীত, এটি কেবলমাত্র আকারের সংক্ষিপ্তসারগুলি ডিরেক্টরিতে একটি স্তরকে দেখায়।
আউটপুটটি আকার আকারের নাম (পুরো পথ)