"hadoop fs" শেল কমান্ড এবং "hdfs dfs" শেল কমান্ডের মধ্যে পার্থক্য কি?


109

তাদের সমান হওয়ার কথা?

তবে, " " কমান্ডগুলি স্থানীয় ফাইলগুলি hadoop fsপ্রদর্শন করার hdfs filesসময় কেন " hdfs dfs" কমান্ডগুলি দেখায়?

এখানে হ্যাডোপ সংস্করণ তথ্য রয়েছে:

Hadoop 2.0.0-mr1-cd4.2.1 সাবভার্সন গিট: //ubuntu-slave07.jenkins.cloudera.com/var/lib/jenkins/workspace/CDH4.2.1- প্যাকেজিং- এমআর 1 / বিল্ড / সিডি 4 / এমআর 1 / 2.0.0 -mr1-cd4.2.1 / উত্স -r jenkins দ্বারা সোমবার এপ্রিল 22 10:48:26 পিডিটি 2013 সংকলিত


1
এই প্রশ্নটি জিজ্ঞাসা করা আমার ভুল। hdfs dfshdfs ফাইল খুব প্রদর্শন করুন।
চার্লি লিন

উত্তর:


140

নিম্নলিখিত তিনটি কমান্ড যা একই প্রদর্শিত হয় কিন্তু মিনিটের পার্থক্য রয়েছে

  1. hadoop fs {args
  2. hadoop dfs {আরগস}
  3. hdfs dfs gs আরগস gs

  hadoop fs <args>

এফএস একটি জেনেরিক ফাইল সিস্টেমের সাথে সম্পর্কিত যা কোনও ফাইল সিস্টেম যেমন স্থানীয়, এইচডিএফএস ইত্যাদির দিকে ইঙ্গিত করতে পারে তাই আপনি যখন স্থানীয় ফাইলএস, (এস) এফটিপি, এস 3 এবং অন্যদের মতো বিভিন্ন ফাইল সিস্টেমের সাথে কাজ করছেন তখন এটি ব্যবহার করা যেতে পারে So


  hadoop dfs <args>

ডিএফএস এইচডিএফএসের সাথে খুব নির্দিষ্ট। এইচডিএফএস সম্পর্কিত সম্পর্কিত অপারেশন জন্য কাজ করবে। এটি অবমুক্ত করা হয়েছে এবং এর পরিবর্তে আমাদের এইচডিএফএস ডিএফ ব্যবহার করা উচিত ।


  hdfs dfs <args>

২ য় হিসাবে একই, এইচডিএফএস সম্পর্কিত সমস্ত ক্রিয়াকলাপের জন্য কাজ করবে এবং হ্যাডোপ ডিএফএসের পরিবর্তে প্রস্তাবিত কমান্ড

hdfsকমান্ড হিসাবে শ্রেণীবদ্ধ তালিকা নীচে ।

  namenode|secondarynamenode|datanode|dfs|dfsadmin|fsck|balancer|fetchdt|oiv|dfsgroups

এমনকি যদি আপনি hadoop dfs ব্যবহার করেন তবে এটি hdfs সন্ধান করবে এবং এই আদেশটি hdfs dfs এ দেবে


5
মজাদার :-). সুতরাং, যদি hadoop fsস্থানীয় বা এইচডিএফএসের মতো কোনও ফাইল সিস্টেমের সাথে সম্পর্কিত হয়, তখন আমি কীভাবে এইচডিএফএসের মূল ডিরেক্টরি কন্টেন্ট প্রদর্শন করতে পছন্দ করি hadoop fs -ls /? এছাড়াও, আমি hadoop fs -ls /কমান্ডটি চালানোর সময় হ্যাডুপকে কীভাবে আমার স্থানীয় মূল ডিরেক্টরি কন্টেন্ট প্রদর্শন করতে পারি ?
sgsi

8
আপনি কমান্ডের fileযুক্তি হিসাবে দৃষ্টান্ত হিসাবে পাস হওয়া ইউআরআইতে স্কিমা ব্যবহার করে স্থানীয় এফএস উল্লেখ করতে পারেন hadoop fs(যেমন hdoop fs -ls file:///)। যদি কিছু না বলা হয় তবে এটি স্কাইমার কাছে ডিফল্ট হয় hdfs, এএফআইকে ( hdoop fs -ls /== hadoop fs -ls hdfs:///)।
frb

2
এবং hadoop fs -ls file:///স্থানীয় ফাইলগুলি তালিকাভুক্ত করার জন্য আরও প্রচলিত উপায় থাকা সত্ত্বেও আমার কেন দরকার হবে ?
শ্রুতাহা

কেন 'এইচডিএফএস' এর পক্ষে 'হাদুপ' অবমূল্যায়ন করা হয়েছিল? কোনও কার্যকরী পার্থক্য আছে বা এটি কেবল সিনট্যাক্সের পরিবর্তন?
শুক্লসওয়াগ

31

এখানে চিত্র বর্ণনা লিখুন

https://hadoop.apache.org/docs/current/hadoop-project-dist/hadoop-common/FileSystemShell.html

ফাইল সিস্টেম (এফএস) শেলের মধ্যে বিভিন্ন শেল-জাতীয় কমান্ড রয়েছে যা হ্যাডোপ বিতরণকারী ফাইল সিস্টেম (এইচডিএফএস) পাশাপাশি হ্যাডোপ সমর্থনকারী অন্যান্য ফাইল সিস্টেম যেমন স্থানীয় এফএস, ওয়েবএইচডিএফএস, এস 3 এফএস এবং অন্যান্যগুলির সাথে সরাসরি ইন্টারঅ্যাক্ট করে।

বিন / হাদুপ fs <args>

সমস্ত এফএস শেল কমান্ড আর্গুমেন্ট হিসাবে ইউআরআইয়ের পথ নেয়। ইউআরআই ফর্ম্যাটটি হ'ল স্কিম: // কর্তৃপক্ষ / পথ। এইচডিএফএসের জন্য স্কিমটি এইচডিএফএস, এবং স্থানীয় এফএসের জন্য স্কিমটি ফাইল। প্রকল্প এবং কর্তৃপক্ষ areচ্ছিক। নির্দিষ্ট না করা থাকলে কনফিগারেশনে নির্দিষ্ট করা ডিফল্ট স্কিম ব্যবহার করা হয়। এইচডিএফএস ফাইল বা ডিরেক্টরি যেমন / পিতা / মাতা / সন্তানের এইচডিএফএস: // নামনোডহোস্ট / পিতামাতার / শিশু হিসাবে বা কেবলমাত্র / পিতামাতার / শিশু হিসাবে নির্দিষ্ট করা যেতে পারে (আপনার কনফিগারেশনটি এইচডিএফএস: // নামনোডহোস্টের দিকে নির্দেশিত রয়েছে)।

এফএস শেলের বেশিরভাগ কমান্ড একই ইউনিক্স কমান্ডের মতো আচরণ করে। প্রতিটি কমান্ডের সাথে পার্থক্য বর্ণিত হয়েছে। ত্রুটি সম্পর্কিত তথ্য stderr এ প্রেরণ করা হয় এবং আউটপুট stdout এ প্রেরণ করা হয়।

যদি এইচডিএফএস ব্যবহার করা হয়,

hdfs dfs

একটি প্রতিশব্দ।


5

fs কোনও ফাইল সিস্টেমকে বোঝায়, এটি স্থানীয় বা এইচডিএফএস হতে পারে তবে ডিএফএস কেবলমাত্র এইচডিএফএস ফাইল সিস্টেমকে বোঝায়। সুতরাং আপনার যদি বিভিন্ন ফাইল সিস্টেমের মধ্যে অ্যাক্সেস / ট্রান্সফার ডেটা সঞ্চালনের প্রয়োজন হয় তবে fs এ যাওয়ার উপায়।


5

আমি যা বলতে পারি তা থেকে hdfs dfsএবং এর মধ্যে কোনও পার্থক্য নেই hadoop fs। আপনি হ্যাডোপের কোন সংস্করণ ব্যবহার করছেন তার উপর ভিত্তি করে এগুলি কেবল ভিন্ন নামকরণের কনভেনশন। উদাহরণস্বরূপ, মধ্যে নোট 1.2.1 ব্যবহার hdfs dfsকরার সময় 0.19 ব্যবহারসমূহ hadoop fs। লক্ষ্য করুন পৃথক কমান্ডগুলি ভারব্যাটিম বর্ণিত হয়েছে। তারা অভিন্ন ব্যবহার করা হয়।

এছাড়াও লক্ষ করুন যে উভয় কমান্ডই আপনার নির্দিষ্ট (hdfs, ফাইল, s3, ইত্যাদি) উপর নির্ভর করে বিভিন্ন ফাইল সিস্টেমকে উল্লেখ করতে পারে। যদি কোনও ফাইল সিস্টেম তালিকাভুক্ত না হয়, তবে সেগুলি ডিফল্ট হয়ে যায় যা আপনার কনফিগারেশনে নির্দিষ্ট করা আছে।

আপনি হ্যাডোপ ২.০ ব্যবহার করছেন এবং এটি আলফা সংস্করণগুলি ব্যবহার করে এবং আপনার কনফিগারেশনে এইচডিএফএসকে ডিফল্ট স্কিম হিসাবে ব্যবহার করার জন্য সেট করা আছে ( ২.০.৫ ডকুমেন্টেশনের ভিত্তিতে ) দেখে মনে হচ্ছে hadoop fshdfs dfsকমান্ড আগে থেকে বাম করা যেতে পারে এবং যেহেতু কনফিগারেশনে নির্দিষ্ট করা নেই, শুধু স্থানীয় ফাইল সিস্টেমে খেলাপি যেতে পারে।

সুতরাং আমি কেবল আটকে থাকব hadoop fsএবং ডকুমেন্টেশনে যেহেতু খুব বেশি চিন্তা করব না, সেগুলি অভিন্ন।


3

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

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

এফএস শেল ফাইল সিস্টেম (এফএস) শেলটি বিন / হাদুপ fs দ্বারা চালিত করা হয়। সমস্ত এফএস শেল কমান্ড আর্গুমেন্ট হিসাবে ইউআরআইয়ের পথ নেয়। ইউআরআই ফর্ম্যাটটি হ'ল স্কিম: // স্বাতন্ত্র্য / পথ। এইচডিএফএসের জন্য স্কিমটি এইচডিএফএস, এবং স্থানীয় ফাইল সিস্টেমের জন্য স্কিম ফাইল। প্রকল্প এবং কর্তৃপক্ষ areচ্ছিক। নির্দিষ্ট না করা থাকলে কনফিগারেশনে নির্দিষ্ট করা ডিফল্ট স্কিম ব্যবহার করা হয়। এইচডিএফএস ফাইল বা ডিরেক্টরি যেমন / পিতা / মাতা / সন্তানের এইচডিএফএস: // নামনোডহোস্ট / পিতামাতার / শিশু হিসাবে বা কেবলমাত্র / পিতামাতার / শিশু হিসাবে নির্দিষ্ট করা যেতে পারে (আপনার কনফিগারেশনটি এইচডিএফএস: // নামনোডহোস্টের দিকে নির্দেশিত রয়েছে)। এফএস শেলের বেশিরভাগ কমান্ড একই ইউনিক্স কমান্ডের মতো আচরণ করে।

ডিএফএসহেল এইচডিএফএস শেলটি বিন / হ্যাডোপ ডিএফএস দ্বারা চালিত হয়। সমস্ত এইচডিএফএস শেল কমান্ড আর্গুমেন্ট হিসাবে ইউআরআইয়ের পথ নেয়। ইউআরআই ফর্ম্যাটটি হ'ল স্কিম: // স্বাতন্ত্র্য / পথ। এইচডিএফএসের জন্য স্কিমটি এইচডিএফএস, এবং স্থানীয় ফাইল সিস্টেমের জন্য স্কিম ফাইল file প্রকল্প এবং কর্তৃপক্ষ areচ্ছিক। নির্দিষ্ট না করা থাকলে কনফিগারেশনে নির্দিষ্ট করা ডিফল্ট স্কিম ব্যবহার করা হয়। এইচডিএফএস ফাইল বা ডিরেক্টরি যেমন / পিতা / মাতা / সন্তানের এইচডিএফএস: // নামনোড: নেমনোডপোর্টপোর্ট / প্যারেন্ট / চাইল্ড বা কেবলমাত্র / পিতা / মাতা / সন্তানের হিসাবে নির্দিষ্ট করা যেতে পারে (আপনার কনফিগারেশনটি নামনড: নেমনেডপোর্টের দিকে নির্দেশ করে)। এইচডিএফএস শেলের বেশিরভাগ কমান্ড একই ইউনিক্স কমান্ডের মতো আচরণ করে।

সুতরাং উপরের দিক থেকে এটি উপসংহারে আসা যায় যে এটি সমস্ত স্কিম কনফিগারের উপর নির্ভর করে। পরম ইউআরআই, অর্থাৎ স্কিম: // এ / বি সহ এই দুটি কমান্ড ব্যবহার করার সময় আচরণটি অভিন্ন হবে। কেবলমাত্র এটির জন্য ডিফল্ট কনফিগার করা স্কিম মান এবং যথাক্রমে fs এবং dfs এর জন্য এইচডিএফএস যা আচরণের পার্থক্যের কারণ।


এইচডিএফএস ডিএফএস কেন এইচডিএফএস ডিএফএস / এর চেয়ে আলাদা অবস্থানের দিকে নির্দেশ করে?
মেল

হ্যাডুপের জন্য বাশের মতো ইন্টারেক্টিভ শেল থাকলে
ক্রিস

2

fs= ফাইল সিস্টেম
dfs= বিতরণ ফাইল সিস্টেম

fs = অন্যান্য ফাইল সিস্টেম + বিতরণ করা ফাইল সিস্টেম

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

এটি সমস্ত স্কিম কনফিগার করার উপর নির্ভর করে। পরম ইউআরআই সহ এই দুটি কমান্ড ব্যবহার করার সময়, scheme://a/bআচরণটি অভিন্ন হবে। শুধুমাত্র তার ডিফল্ট কনফিগার প্রকল্প মান file://এবং hdfs://জন্য fsএবং dfsযথাক্রমে যা আচরণের পার্থক্য কারণ।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.