HiveQL, Hive এর কুয়েরি ভাষা, একটি শক্তিশালী aggregation functions প্রদান করে, যা বড় ডেটাসেটের উপর বিভিন্ন ধরনের গাণিতিক ও পরিসংখ্যানিক অঙ্কন করার জন্য ব্যবহৃত হয়। এই aggregation functions ব্যবহার করে ব্যবহারকারীরা ডেটার সারাংশ তৈরি করতে পারেন, যেমন যোগফল, গড়, গোনা, সর্বোচ্চ ও সর্বনিম্ন মান নির্ধারণ করা।
এখানে HiveQL-এ ব্যবহৃত প্রধান aggregation functions এর সম্পর্কে আলোচনা করা হলো:
১. SUM() – যোগফল
SUM() ফাংশনটি ব্যবহার করা হয় একটি কলামে থাকা সমস্ত সংখ্যার যোগফল বের করতে। এটি সাধারণত সংখ্যামূলক ডেটার জন্য ব্যবহৃত হয়।
উদাহরণ:
SELECT SUM(salary) FROM employees;
এখানে salary কলামে থাকা সমস্ত বেতনের যোগফল বের করা হবে।
বিশেষত্ব:
- এটি NULL মান উপেক্ষা করে, অর্থাৎ যেকোনো
NULLমান যোগফলে অন্তর্ভুক্ত হবে না।
২. AVG() – গড়
AVG() ফাংশনটি একটি কলামের গড় মান বের করতে ব্যবহৃত হয়। এটি কলামের সমস্ত মানের যোগফল নিয়ে তার উপর ভিত্তি করে গড় নির্ধারণ করে।
উদাহরণ:
SELECT AVG(salary) FROM employees;
এখানে salary কলামের গড় বেতন বের করা হবে।
বিশেষত্ব:
AVG()ফাংশনটি NULL মান উপেক্ষা করে, তাই এই ফাংশনটি শুধুমাত্র ডেটার গড় পরিসংখ্যান প্রদান করে।
৩. COUNT() – গণনা
COUNT() ফাংশনটি একটি কলামে কতোটি রেকর্ড বা মান রয়েছে তা গননা করতে ব্যবহৃত হয়। এটি NULL মানও গননা করে না, শুধুমাত্র বাস্তব মান গননা করে।
উদাহরণ:
SELECT COUNT(*) FROM employees;
এখানে employees টেবিলের সমস্ত রেকর্ডের সংখ্যা (rows count) পাওয়া যাবে।
SELECT COUNT(salary) FROM employees;
এই কুয়েরি salary কলামের মধ্যে যেসব রেকর্ডে বেতন রয়েছে তার সংখ্যা গননা করবে।
বিশেষত্ব:
COUNT(*)পুরো টেবিলের রেকর্ড গননা করবে, যেখানেCOUNT(column_name)শুধুমাত্র ঐ কলামে বাস্তব মান গননা করবে এবং NULL মান উপেক্ষা করবে।
৪. MAX() – সর্বোচ্চ মান
MAX() ফাংশনটি একটি কলামে থাকা সর্বোচ্চ মান বের করতে ব্যবহৃত হয়। এটি সাধারণত সংখ্যামূলক কলাম বা তারিখের কলামের জন্য ব্যবহৃত হয়।
উদাহরণ:
SELECT MAX(salary) FROM employees;
এখানে salary কলামে সর্বোচ্চ বেতন বের করা হবে।
বিশেষত্ব:
- এটি NULL মান উপেক্ষা করে এবং সর্বোচ্চ মান প্রদান করে।
৫. MIN() – সর্বনিম্ন মান
MIN() ফাংশনটি একটি কলামে থাকা সর্বনিম্ন মান বের করতে ব্যবহৃত হয়। এটি সংখ্যামূলক কলাম বা তারিখের কলামের জন্য ব্যবহৃত হয়।
উদাহরণ:
SELECT MIN(salary) FROM employees;
এখানে salary কলামে সর্বনিম্ন বেতন বের করা হবে।
বিশেষত্ব:
- এটি NULL মান উপেক্ষা করে এবং সর্বনিম্ন মান প্রদান করে।
Aggregation Functions এর ব্যবহার
Aggregation functions সাধারণত GROUP BY কুয়েরির সাথে ব্যবহার করা হয়, যাতে একাধিক গ্রুপের উপর aggregation অপারেশন করা যায়। এই ফাংশনগুলি একে অপরের সাথে কম্বাইন করেও ব্যবহার করা যায়, যেমন একসাথে গড় এবং যোগফল বের করা।
উদাহরণ ১: GROUP BY এর সাথে ব্যবহার
SELECT department, AVG(salary), MAX(salary), MIN(salary)
FROM employees
GROUP BY department;
এখানে প্রতিটি ডিপার্টমেন্টের গড়, সর্বোচ্চ এবং সর্বনিম্ন বেতন বের করা হচ্ছে।
উদাহরণ ২: COUNT() এবং SUM() এর সাথে ব্যবহার
SELECT department, COUNT(*), SUM(salary)
FROM employees
GROUP BY department;
এখানে প্রতিটি ডিপার্টমেন্টের মোট কর্মচারীর সংখ্যা এবং মোট বেতন বের করা হচ্ছে।
উপসংহার
HiveQL এর aggregation functions (যেমন SUM(), AVG(), COUNT(), MAX(), MIN()) হল Hive-এর একটি গুরুত্বপূর্ণ বৈশিষ্ট্য, যা ব্যবহারকারীদের ডেটার উপর বিভিন্ন ধরনের গাণিতিক এবং পরিসংখ্যানিক বিশ্লেষণ করতে সক্ষম করে। এই ফাংশনগুলি ডেটার সারণি (dataset) থেকে কার্যকরী তথ্য বের করতে সাহায্য করে এবং GROUP BY ক্লজের সাথে ব্যবহার করলে আরও শক্তিশালী বিশ্লেষণ সম্ভব। Hive এর মাধ্যমে বড় ডেটাসেটের উপর সহজেই বিভিন্ন গণনা করা যায়, যা Big Data বিশ্লেষণে অত্যন্ত কার্যকরী।
Read more