হ্যাডোপ স্ট্রিমিং: পাইথনে একটি হ্যাডোপ ম্যাপ্রেডস প্রোগ্রাম রচনা

হ্যাডোপ স্ট্রিমিংয়ের এই ব্লগ পোস্টটি হ'ল বিগ ডেটার প্রচুর পরিমাণে প্রক্রিয়াজাত করার জন্য পাইথনে একটি হ্যাডোপ ম্যাপ্রেডস প্রোগ্রাম লিখতে শেখার জন্য ধাপে ধাপে গাইড।

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



data-by-2025-hadoop-streaming



সূত্র: আইডিসি

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



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

জাভাতে টোস্টিং পদ্ধতি কী?

হডোপ স্ট্রিমিং কি?

হ্যাডোপ স্ট্রিমিং হডোপ বিতরণে আসে এমন একটি ইউটিলিটি। এটি বড় ডেটা বিশ্লেষণের জন্য প্রোগ্রামগুলি কার্যকর করতে ব্যবহৃত হতে পারে। হ্যাডোপ স্ট্রিমিং পাইথন, জাভা, পিএইচপি, স্কেলা, পার্ল, ইউএনআইএক্স এবং আরও অনেকগুলি ভাষা ব্যবহার করে করা যেতে পারে। ইউটিলিটি ম্যাপার এবং / বা রিডিউসার হিসাবে কোনও এক্সিকিউটেবল বা স্ক্রিপ্টের সাথে মানচিত্র / হ্রাস জব তৈরি করতে এবং পরিচালনা করতে আমাদের সহায়তা করে। উদাহরণ স্বরূপ:

AD হ্যাডোঅপহোম / বিন / হ্যাডোপ জার $ হ্যাডোপহোম / হ্যাডোপ-স্ট্রিমিং.জার



ইনপুট আমারআইপুট

-আউটপুট আমারআউটপুটডির

-ফোল্ডার / বিন / বিড়াল

-ড্রেসার / বিন / ডাব্লুসি

প্যারামিটারের বিবরণ:

পাইথন মানচিত্রের কোড Code:

mapper.py #! / usr / bin / python Import sys #Word গণ্য উদাহরণ # ইনপুটটি এসআইএসডিডিনে রেখার জন্য স্ট্যান্ডিন ইনপুট এসটিডিআইএন থেকে আসে: লাইন = লাইন.স্ট্রিপ () # শীর্ষস্থানীয় এবং পিছনের সাদা অংশের শব্দগুলি সরান = লাইন.স্প্লিট ( ) # রেখাকে শব্দের মধ্যে বিভক্ত করুন এবং শব্দের শব্দের জন্য একটি তালিকা হিসাবে প্রত্যাবর্তন করুন: # ফলাফলগুলি স্ট্যান্ডার্ড আউটপুটে লিখুন প্রিন্ট করুন '% s% s'% (শব্দ, 1) # শব্দটি সন্নিবেশ করান

হ্রাসকপি

অপারেটর আমদানি আইটেমটেটার থেকে #! / usr / বিন / পাইথন আমদানি সিস # শব্দের তাদের গণনাগুলিতে মানচিত্র তৈরি করতে একটি অভিধান ব্যবহার করে বর্তমান_শব্দ = কোনওটিই বর্তমান_কাউন্ট = 0 শব্দ = কোনও নয় # ইনপুট এসএসডিআইএন থেকে সিএস.স্টদিন লাইনের জন্য আসে: লাইন = লাইন.স্ট্রিপ () শব্দ, গণনা = লাইন.স্প্লিট ('', 1) চেষ্টা করুন: মান = ত্রুটি (গণনা) মান ব্যতীত বাদ দিন: চালিয়ে যান চলতি_শব্দ == শব্দ: কারেন্ট_কাউন্ট + = গণনা: যদি বর্তমান_শব্দ: প্রিন্ট '% s% s'% (কারেন্ট_ওয়ার্ড, কারেন্ট_কাউন্ট) কারেন্ট_কাউন্ট = কারেন্ট_ওয়ার্ড = শব্দ গণনা করুন কারেন্ট_ওয়ার্ড == শব্দ: '% s% s'% মুদ্রণ করুন (বর্তমান_শব্দ, কারেন্ট_কাউন্ট)

চালান:

  1. নিম্নলিখিত বিষয়বস্তু সহ একটি ফাইল তৈরি করুন এবং এর নাম word.txt করুন।

বিড়াল মাউস সিংহ হরিণ বাঘ সিংহ হাতির সিংহ হরিণ

  1. উপরের ফাইলটি বিদ্যমান যেখানে একই ফোল্ডারে ম্যাপার.পি এবং কমারপিপি স্ক্রিপ্টগুলি অনুলিপি করুন।

  1. টার্মিনালটি খুলুন এবং ফাইলটির ডিরেক্টরি সন্ধান করুন Com কম্যান্ড: ls: ডিরেক্টরিতে সমস্ত ফাইল তালিকাবদ্ধ করতে: ডিরেক্টরি / ফোল্ডার পরিবর্তন করতে

  1. ফাইলের বিষয়বস্তু দেখুন।
    আদেশ: বিড়াল file_name

> mapper.py বিষয়বস্তু

কমান্ড: বিড়াল mapper.py

> হ্রাসকারীপিপি এর সামগ্রী

কমান্ড: বিড়াল হ্রাসকপি

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

> ম্যাপার চালাও

আদেশ: বিড়াল word.txt | অজগর mapper.py

> কমান

আদেশ: বিড়াল word.txt | অজগর mapper.py | সাজান-কে 1,1 | পাইথন হ্রাসকপি

আমরা দেখতে পাচ্ছি যে ম্যাপার এবং রিডিউসার প্রত্যাশা অনুযায়ী কাজ করছে সুতরাং আমরা আর কোনও সমস্যার মুখোমুখি হব না।

চলমান হ্যাডোপে পাইথন কোড

আমরা হ্যাডোপে মানচিত্রের কাজটি চালানোর আগে, স্থানীয় ডেটা (word.txt) এইচডিএফএসে অনুলিপি করুন

> উদাহরণ: এইচডিএফএস ডিএফএস -পুট উত্স_পরিচালনা হ্যাডোপ_ডেসটিনেশন_ডাইরেক্টরি

আদেশ: hdfs dfs -put / home/edureka/MapReduce/word.txt / ব্যবহারকারী / এডুরেকা

জার ফাইলটির পাথ অনুলিপি করুন

জার সংস্করণের উপর ভিত্তি করে হডোপ স্ট্রিমিং জারের পথটি হ'ল:

/usr/lib/hadoop-2.2.X/share/hadoop/tools/lib/hadoop-streaming-2.2.X.jar

সুতরাং আপনার টার্মিনালে হাদুপ স্ট্রিমিং জারটি সনাক্ত করুন এবং পথটি অনুলিপি করুন।

আদেশ:

এলএস / ওসির / লিবি / শাদুপ ২.২.০১ / শরে / হাদুপ / টুলস / লিবি / শাদুপ- প্রবাহী ২২.২.০.০১.জার

মানচিত্রের কাজ চালান

আদেশ:

hadoop jar /usr/lib/hadoop-2.2.0/share/hadoop/tools/lib/hadoop-streaming-2.2.0.jar -file / home/edureka/mapper.py -mapper mapper.py -file / home / এডুরেকা / কমিয়ে দেওয়া / পাতলা করে দেওয়া-কমিয়ে দেওয়া। পিন-ইনপুট / ব্যবহারকারী / এডুরেকা / শব্দ-আউটপুট / ব্যবহারকারী / এডুরেকা / ওয়ার্ডকাউন্ট

হ্যাডোপ পরিসংখ্যান এবং তথ্যের জন্য একটি প্রাথমিক ওয়েব ইন্টারফেস সরবরাহ করে। যখন হ্যাডোপ ক্লাস্টারটি ব্রাউজারে খোলা http: // লোকালহোস্ট: 50070 চলছে। এখানে হ্যাডোপ ওয়েব ইন্টারফেসের স্ক্রিনশট রয়েছে।

এখন ফাইল সিস্টেমটি ব্রাউজ করুন এবং আউটপুট দেখার জন্য উত্পন্ন ওয়ার্ডকাউন্ট ফাইলটি সন্ধান করুন। স্ক্রিনশট নীচে।

পিএইচপি স্ট্রিং অ্যারে রূপান্তরিত

আমরা এই কমান্ডটি ব্যবহার করে টার্মিনালে আউটপুট দেখতে পাচ্ছি

আদেশ: hadoop fs -cat / ব্যবহারকারীর / edureka / ওয়ার্ডকাউন্ট / অংশ -00000

আপনি এখন শিখলেন কীভাবে হ্যাডোপ স্ট্রিমিং ব্যবহার করে পাইথনে লিখিত একটি মানচিত্রের প্রোগ্রামটি চালানো যায়!

এডুরেকার বিগ ডেটা ও হ্যাডোপ সম্পর্কিত একটি সরাসরি এবং প্রশিক্ষকের নেতৃত্বাধীন কোর্স রয়েছে, যা শিল্প অনুশীলনকারীদের দ্বারা নির্মিত co

আমাদের জন্য একটি প্রশ্ন আছে? দয়া করে মন্তব্য বিভাগে এটি উল্লেখ করুন এবং আমরা আপনার কাছে ফিরে আসব।