প্রযুক্তিগতভাবে এস 3 এন, এস 3 এ এবং এস 3 এর মধ্যে পার্থক্য কী?


121

আমি https://wiki.apache.org/hadoop/AmazonS3 এবং নিম্নলিখিত শব্দগুলির অস্তিত্ব সম্পর্কে সচেতন :

এস 3 নেটিভ ফাইলসিস্টেম (ইউআরআই স্কিম: এস 3 এন) এস 3-এ নিয়মিত ফাইলগুলি পড়ার এবং লেখার জন্য একটি স্থানীয় ফাইল সিস্টেম। এই ফাইল সিস্টেমটির সুবিধা হ'ল আপনি অন্যান্য সরঞ্জামের সাহায্যে লিখিত এস 3-তে ফাইল অ্যাক্সেস করতে পারবেন। বিপরীতে, অন্যান্য সরঞ্জামগুলি হ্যাডোপ ব্যবহার করে লিখিত ফাইলগুলিতে অ্যাক্সেস করতে পারে। অসুবিধাটি হ'ল এস 3 দ্বারা আরোপিত ফাইল আকারের 5GB সীমা limit

এস 3 এ (ইউআরআই স্কিম: এস 3 এ) এস 3 নেটিভের উত্তরসূরি, এস 3 এন এফএস, এস 3 এ: সিস্টেমটি এস 3 এর সাথে যোগাযোগের জন্য অ্যামাজনের লাইব্রেরি ব্যবহার করে। এটি এস 3a বৃহত্তর ফাইলগুলি (5GB সীমা আর কোনও নয়), উচ্চতর পারফরম্যান্স অপারেশন এবং আরও অনেক কিছু সমর্থন করে। ফাইল সিস্টেমটি S3 নেটিভ / এর উত্তরসূরির প্রতিস্থাপনের উদ্দেশ্যে তৈরি করা হয়েছে: s3n: // ইউআরএল থেকে অ্যাক্সেসযোগ্য সমস্ত বস্তুগুলি কেবল ইউআরএল স্কিমা প্রতিস্থাপনের মাধ্যমে এস 3 এ থেকে অ্যাক্সেসযোগ্য হওয়া উচিত।

এস 3 ব্লক ফাইলসিস্টেম (ইউআরআই স্কিম: এস 3) এস 3 দ্বারা সমর্থিত একটি ব্লক-ভিত্তিক ফাইল সিস্টেম। ফাইলগুলি এইচডিএফএসের মতোই ব্লক হিসাবে সংরক্ষণ করা হয়। এটি নামগুলির কার্যকর প্রয়োগের অনুমতি দেয়। এই ফাইল সিস্টেমের জন্য আপনাকে ফাইল সিস্টেমের জন্য একটি বালতি উত্সর্গ করতে হবে - আপনার বিদ্যমান ফাইলটি সম্বলিত বালতি ব্যবহার করা উচিত নয়, বা একই বালতিতে অন্য ফাইলগুলি লেখা উচিত নয়। এই ফাইল সিস্টেমের দ্বারা সঞ্চিত ফাইলগুলি 5 গিগাবাইটের চেয়ে বড় হতে পারে তবে তারা অন্য এস 3 সরঞ্জামের সাথে আন্তঃযোগযোগ্য নয়।

ইউআরআই-তে কোনও চিঠি পরিবর্তন কেন এমন পার্থক্য করতে পারে? উদাহরণ স্বরূপ

val data = sc.textFile("s3n://bucket-name/key")

প্রতি

val data = sc.textFile("s3a://bucket-name/key")

এই পরিবর্তনের অন্তর্নিহিত প্রযুক্তিগত পার্থক্য কী? আমি এই পড়তে পারেন যে কোন ভাল নিবন্ধ আছে?

উত্তর:


136

ইউআরআই স্কিমের অক্ষর পরিবর্তনের ফলে একটি বড় পার্থক্য আসে কারণ এটি এস 3-তে ইন্টারফেস করার জন্য বিভিন্ন সফ্টওয়্যার ব্যবহার করে। কিছুটা HTTP এবং https এর মধ্যে পার্থক্যের মতো - এটি কেবলমাত্র একটি অক্ষরের পরিবর্তন, তবে এটি আচরণে একটি বড় পার্থক্যের সূচনা করে।

এস 3 এবং এস 3 এন / এস 3 এ এর ​​মধ্যে পার্থক্য হ'ল এস 3 એ অ্যামাজন এস 3 এর শীর্ষে একটি ব্লক-ভিত্তিক ওভারলে, যখন এস 3 এন / এস 3 এ নয় (তারা বস্তু ভিত্তিক)।

S3n এবং s3a এর মধ্যে পার্থক্য হ'ল s3n 5GB অবধি অবজেক্টগুলিকে সমর্থন করে, যখন এস 3a 5TB পর্যন্ত অবজেক্টগুলিকে সমর্থন করে এবং এর উচ্চতর পারফরম্যান্স রয়েছে (উভয়ই এটি বহু-অংশ আপলোড ব্যবহার করে কারণ)। s3a s3n এর উত্তরসূরি।

আপনি যদি এখানে রয়েছেন কারণ আপনি বুঝতে চান যে অ্যামাজন ইএমআর দিয়ে আপনার কোন এস 3 ফাইল সিস্টেমটি ব্যবহার করা উচিত, তবে অ্যামাজন থেকে এই নিবন্ধটি পড়ুন (কেবল ওয়েবব্যাক মেশিনে উপলভ্য)। নেটটি হ'ল: এস 3: // ব্যবহার করুন কারণ এস 3: // এবং এস 3 এন: // কার্যকরভাবে ইএমআর প্রসঙ্গে বিনিময়যোগ্য, যখন এস 3 এ: // ইএমআরের সাথে সামঞ্জস্যপূর্ণ নয়।

অতিরিক্ত পরামর্শের জন্য, স্টোরেজ এবং ফাইল সিস্টেমের সাথে কাজ পড়ুন ।


13
অ্যামাজন থেকে সমর্থন নিবন্ধটি এখনও আপ টু ডেট বলে মনে হচ্ছে, তবে আমি এখন s3aস্কিমটি ব্যবহার করে ইএমআর জবস থেকে এস 3 তে চিঠি লিখতে পারি । উত্তরটি সংশোধন করা সম্ভব।
mlg

1
@ মিগ যদিও এস 3 এ কাজ করতে পারে এবং এটি আমার অভিজ্ঞতাতে কাজ করে বলে মনে হচ্ছে, এটি প্রযুক্তিগতভাবে এডাব্লুএস দ্বারা সমর্থিত নয়। সুতরাং, আমি মনে করি আপনি এটি নিজের ঝুঁকিতে ব্যবহার করবেন।
jarmod

আপনি এখানে নিবন্ধটি উদ্ধৃত করেছেন নিবন্ধটি আর কাজ করে না। আপনি কি লিঙ্কটি আপডেট করতে পারবেন?
ক্রিশস্থানং

@ চিরিস্তং দেখে মনে হচ্ছে এটি আর উপলভ্য নয় তাই প্রদত্ত ওয়েবেব্যাক মেশিনের লিঙ্ক।
জারমড

2
মূলত, এডাব্লুএস সমর্থনটি কোনও সমর্থন টিকিটের জন্য s3: // un3 of s3a: // এর প্রস্তাব দেয়
অভি

56

অ্যাপাচি হ্যাডোপে "s3: //" বলতে মূল এস 3 ক্লায়েন্টকে বোঝায়, যা স্কেলিবিলিটির জন্য একটি মানহীন কাঠামো ব্যবহার করে। সেই লাইব্রেরিটি অবহেলা করা হয়েছে এবং শীঘ্রই মুছে ফেলা হবে,

s3n হ'ল এর উত্তরসূরি, যা অবজেক্টগুলিতে সরাসরি পথের নাম ব্যবহার করে, যাতে আপনি অন্যান্য অ্যাপ্লিকেশন সহ ডেটা পড়তে এবং লিখতে পারেন। এস 3: // এর মতো এটি এস 3 এর সাথে কথা বলতে jets3t.jar ব্যবহার করে।

অ্যামাজনের ইএমআর পরিষেবাতে, এস 3: // বলতে অ্যামাজনের নিজস্ব এস 3 ক্লায়েন্টকে বোঝায়, যা আলাদা। ইএমআর-তে এস 3: // এর একটি পথ সরাসরি অবজেক্ট স্টোরের কোনও বস্তুকে বোঝায়।

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

আপনি যদি হ্যাডোপ ২.7 বা তার বেশি ব্যবহার করেন তবে এস 3 এ ব্যবহার করুন। আপনি যদি হ্যাডোপ 2.5 বা তার আগে ব্যবহার করছেন। s3n, আপনি যদি হ্যাডোপ ২.6 ব্যবহার করেন তবে এটি আরও কঠোর পছন্দ। - আমি যদি s3a ব্যবহার করে চেষ্টা করতাম এবং s3n এ ফিরে যেতে চাই যদি সমস্যা হয়-

ইতিহাসের আরও তথ্যের জন্য, http://hortonworks.com/blog/history-apache-hadoops-support-amazon-s3/ দেখুন

2017-03-14 আসলে আপডেট করুন, হ্যাডোপ ২. in এ এস3 এ পার্টিশনটি ভেঙে গেছে, যেহেতু ব্লকের আকারটি একটিতে ফিরে এসেছেlistFiles() তা 0: স্পার্ক এবং শূকর বিভাজনের মতো জিনিসগুলি কাজকে একটি টাস্ক / বাইটে ভাগ করে দেয়। কোর ফাইল সিস্টেম অপারেশন এবং ডেটা জেনারেশন খুশি থাকলেও আপনি হ্যাডোপ ২.6 এ বিশ্লেষণমূলক কাজের জন্য এস 3a ব্যবহার করতে পারবেন না। Hadoop 2.7 এটি স্থির করে।

2018-01-10 আপডেট হ্যাডোপ 3.0 এর s3: এবং s3n বাস্তবায়নগুলি কেটেছে: s3a আপনি যা পান তা সবই। এটি এখন তার পূর্বসূরীর চেয়ে উল্লেখযোগ্যভাবে ভাল এবং অ্যামাজন বাস্তবায়নের মতো কমপক্ষে অভিনয় করে। অ্যামাজনের "এস 3:" এখনও ইএমআর অফার করছে, এটি তাদের ক্লোজ সোর্স ক্লায়েন্ট। আরও তথ্যের জন্য EMR ডক্সের সাথে পরামর্শ করুন ।

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