স্থানীয় ফাইল সিস্টেমে কীভাবে এইচডিএফএস থেকে ফাইল অনুলিপি করবেন


135

স্থানীয় ফাইল সিস্টেমে কীভাবে এইচডিএফএস থেকে ফাইল অনুলিপি করবেন। ফাইলের অধীনে কোনও ফাইলের কোনও শারীরিক অবস্থান নেই, এমনকি ডিরেক্টরিও নয়। আমি কীভাবে তাদের আরও বৈধতার জন্য তাদের আমার স্থানীয় স্থানান্তরিত করতে পারি i

উত্তর:


242
  1. bin/hadoop fs -get /hdfs/source/path /localfs/destination/path
  2. bin/hadoop fs -copyToLocal /hdfs/source/path /localfs/destination/path
  3. আপনার ওয়েব ব্রাউজারটি এইচডিএফএস ওয়েবেইউআই ( namenode_machine:50070) এর দিকে নির্দেশ করুন, আপনি যে ফাইলটি অনুলিপি করতে চান তা ব্রাউজ করুন, পৃষ্ঠাটি নীচে স্ক্রোল করুন এবং ফাইলটি ডাউনলোড করতে ক্লিক করুন ।

নিখুঁত তারিক, আমি এটি পেয়েছি, ফাইলের অধীনে কোনও ফাইলের কোনও শারীরিক অবস্থান নেই, এমনকি ডিরেক্টরিও নয়। বিন / হ্যাডোপ ডিএফএস-এলএস / ব্যবহার / হাদুপ / মাইফোল্ডার ফাইলটি দেখতে পাচ্ছি , ফাইলটি পরীক্ষা করার জন্য আমি তথ্য পেয়েছি , আপনি এটি এইচডিএফএস থেকে স্থানীয় ফাইল সিস্টেমে অনুলিপি করতে পারেন , তাই আমি যদিও উইনসপি থেকে তাদের সরিয়ে নিতে পারি
সূর্য

2
আবারও আমাকে তারিকের কথা উল্লেখ করতে হবে, আপনাকে সময় এবং জ্ঞানের অবদানের জন্য অনেক ধন্যবাদ। অনেক ধন্যবাদ . আপনি অনেক সমর্থন করেছিলেন, এটি আমার মতো নতুন বিয়ের জন্য প্রচুর আত্মবিশ্বাস দেয়।
সূর্য

1
আমি দেখি. আপনি যদি ফাইলটির বিষয়বস্তু দেখতে চান বা ওয়েবইতে ফাইলটি খুলতে চান তবে আপনি আসলে hdfs ক্যাট কমান্ডটি ব্যবহার করতে পারেন। এটি আপনাকে আপনার স্থানীয় এফএসে ফাইল ডাউনলোড করা থেকে বাঁচাবে। আপনি স্বাগত জানাই। এবং যদি আপনি আপনার প্রশ্নের উত্তরগুলির সাথে 100% সন্তুষ্ট হন তবে আপনি সেগুলিকে চিহ্নিত করতে পারেন যাতে অন্যরা এতে উপকৃত হতে পারে .. কেবলমাত্র এইটির জন্য নয়, সাধারণভাবে।
তারিক

2
কেবল আমার ল্যাট মন্তব্যে যোগ করতে, এটি যদি বাইনারি ফাইল হয় তবে বিড়াল আপনাকে আসল সামগ্রীটি প্রদর্শন করবে না। বাইনারি ফাইলের সামগ্রী দেখতে আপনি ব্যবহার করতে পারেন: বিন / হাদুপ fs -text / পাথ / থেকে / ফাইল
তারিক

1
এটি একটি বাগ (স্থির) বলে মনে হচ্ছে। উত্তর দেখুন।
তারিক

27

হাডোপ ২.০ এ,

hdfs dfs -copyToLocal <hdfs_input_file_path> <output_path>

কোথায়,

  • hdfs_input_file_path হতে প্রাপ্ত http://<<name_node_ip>>:50070/explorer.html

  • output_path ফাইলের স্থানীয় পথ, যেখানে ফাইলটি অনুলিপি করা হয়।

  • আপনি getজায়গায় ব্যবহার করতে পারেন copyToLocal


15

স্থানীয় ফাইল সিস্টেমে এইচডিএফএস থেকে ফাইল অনুলিপি করতে নিম্নলিখিত কমান্ডটি চালানো যেতে পারে:

hadoop dfs -copyToLocal <input> <output>

  • <input>: আপনি অনুলিপি করতে চান এইচডিএফএস ডিরেক্টরি পথ (যেমন / মায়াডাটা)
  • <output>: গন্তব্য ডিরেক্টরি পথ (যেমন ~ / ডকুমেন্টস)

1
এটি আমার পক্ষে কাজ করবে বলে মনে হয় না। এটি সর্বদা <ইনপুট> ফাইল খুঁজে পায় না বলে। আমি ক্লৌডের ভিএম উদাহরণটি ব্যবহার করছি যার শতকরা 6.৪ ভাগ রয়েছে
সুথারমোনিল

@ সুথারমোনিল আপনি কি নিশ্চিত যে ফাইলটি আসলে আছে? আপনি কি সেখানে ব্রাউজ করতে পারেন hadoop fs -ls?
ডেনিস জাহেরউদ্দিন 21

6

আপনি এই উভয় উপায়ে অর্জন করতে পারেন।

1.hadoop fs -get <HDFS file path> <Local system directory path>
2.hadoop fs -copyToLocal <HDFS file path> <Local system directory path>

উদা:

আমার ফাইলগুলি /sourcedata/mydata.txt এ অবস্থিত আমি এই ফাইল / ব্যবহারকারী / রাভি / মাইডিটাতে স্থানীয় ফাইল সিস্টেমে ফাইলটি অনুলিপি করতে চাই

hadoop fs -get /sourcedata/mydata.txt /user/ravi/mydata/

3

যদি আপনার উত্স "ফাইল" একই ডিরেক্টরি গাছের মধ্যে থাকা একাধিক ফাইলের (সম্ভবত মানচিত্র-হ্রাসের ফলস্বরূপ) মধ্যে বিভক্ত হয়ে যায়, আপনি এটি স্থানীয় ফাইলটিতে অনুলিপি করতে পারেন:

hadoop fs -getmerge /hdfs/source/dir_root/ local/destination

এটি গ্রহণ করা উচিত। এটি বেশিরভাগ লোকই সন্ধান করছেন, কোনও বিভক্ত ফাইল নয়।
জেমস

2

এটি আমার উবুন্টুর ভিএম উদাহরণে কাজ করেছিল।

hdfs dfs -copyToLocal [hadoop ডিরেক্টরি] [স্থানীয় ডিরেক্টরি]


0

আপনি যদি ডকার ব্যবহার করছেন তবে আপনাকে নিম্নলিখিত পদক্ষেপগুলি করতে হবে:

  1. এইচডিএফএস থেকে নামনোডে ফাইলটি অনুলিপি করুন (hadoop fs -get output / part-r-00000 / out_text) xt "/ আউট_টেক্সট" নামনোডে সংরক্ষণ করা হবে।

  2. নামডোক থেকে স্থানীয় ডিস্কে ফাইলটি অনুলিপি করুন (ডকার সিপি নেমনেড: / আউট_টেক্সট আউটপুট.টেক্সট)

  3. আউটপুট.টেক্সট আপনার বর্তমান কার্যকারী ডিরেক্টরিতে থাকবে


-3
bin/hadoop fs -put /localfs/destination/path /hdfs/source/path 

1
এইচডিএফএস ডিএফএস-আউটপুট হ'ল স্থানীয় এফএস থেকে এইচডিএফএস-এ ফাইলগুলি চাপানোর জন্য একটি আদেশ। hdfs dfs -get সঠিক বিকল্প
b_rousseau
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.