Hive Query Language (HQL) হলো Apache Hive-এ ব্যবহৃত একটি কাস্টম SQL অনুরূপ কুয়েরি ভাষা, যা বিগ ডেটা ওয়্যারহাউজিং এবং বিশ্লেষণের জন্য ব্যবহৃত হয়। Hive মূলত Hadoop-এ ডেটাবেস লেভেলের কার্যকলাপ করার জন্য ডিজাইন করা হয়েছিল এবং HQL ব্যবহার করে ডেটাবেসের মতো কাঠামো তৈরি করা যায়। Hive এর সাহায্যে Hadoop ব্যবহারকারীরা SQL-এর মতো কুয়েরি লেখার মাধ্যমে বৃহৎ পরিমাণ ডেটা সহজেই বিশ্লেষণ এবং প্রক্রিয়া করতে পারে।
HQL Hadoop-এর HDFS (Hadoop Distributed File System) এবং অন্যান্য ডেটা স্টোরেজ সিস্টেমে থাকা ডেটার উপর কাজ করতে সহায়তা করে, যেমন Hive, HBase বা RDBMS। এটি SQL-এর মতো কুয়েরি সিনট্যাক্স ব্যবহার করে, তবে এটি বিশেষভাবে ডিজাইন করা হয়েছে বিগ ডেটার জন্য।
HQL ডেটা সঞ্চয়ের জন্য Hive টেবিল ব্যবহার করে, যেগুলো একে একে ফাইলগুলিতে সঞ্চিত হয়। টেবিলগুলি হ্যাডুপ ডিস্ট্রিবিউটেড ফাইল সিস্টেমে (HDFS) সঞ্চিত থাকে এবং এগুলোর মাধ্যমে ডেটাকে সহজে প্রক্রিয়া করা যায়।
Hive SQL-এর মতোই বিভিন্ন ডেটা টাইপ সাপোর্ট করে যেমন:
HQL কিছু সাধারণ SQL কুয়েরি কমান্ড অনুসরণ করে, যেমন:
Hive Query Language-এ বিভিন্ন ধরনের কাজ করা যায় যেমন ডেটা নির্বাচন, ফিল্টারিং, গ্রুপিং, এবং বিভিন্ন ধরনের জয়েন অপারেশন। Hive সাধারণত ডেটাবেসের মত কাজ করার জন্য সহজ উপায় প্রদান করে, যা HDFS বা HBase এর ডেটার উপর কার্যকরীভাবে পরিচালিত হয়।
SELECT column1, column2
FROM my_table
WHERE column1 > 100
ORDER BY column2;
এখানে my_table
থেকে column1
এবং column2
নির্বাচন করা হয়েছে, যেখানে column1
এর মান ১০০ এর বেশি, এবং ফলাফলকে column2
এর মান অনুযায়ী সাজানো হয়েছে।
SELECT column1, COUNT(*)
FROM my_table
GROUP BY column1;
এই কুয়েরি my_table
থেকে column1
এর মান অনুসারে ডেটাকে গ্রুপ করে এবং প্রতিটি গ্রুপে কয়টি রেকর্ড আছে তা গননা করে।
SELECT a.column1, b.column2
FROM table1 a
JOIN table2 b
ON a.id = b.id;
এখানে, table1
এবং table2
কে id
কলামের মাধ্যমে জয়েন করা হয়েছে এবং উভয়ের নির্বাচিত কলামগুলি প্রদর্শিত হচ্ছে।
INSERT INTO table_name (column1, column2)
VALUES ('value1', 'value2');
এই কুয়েরি table_name
এ নতুন ডেটা ইনসার্ট করে।
Hive Query Language (HQL) হলো একটি SQL-অনুরূপ কুয়েরি ভাষা, যা বিগ ডেটা প্রক্রিয়াকরণের জন্য ব্যবহৃত হয় এবং Hadoop-এর সাথে একীভূত হয়ে কাজ করে। এটি মূলত ব্যাচ প্রক্রিয়াকরণের জন্য ডিজাইন করা হয়েছে এবং বিশাল পরিমাণ ডেটা বিশ্লেষণ করতে সহায়তা করে। HQL ব্যবহার করে ডেটাবেসের মতো ডেটা কাঠামো তৈরি করা যায় এবং ডেটা বিশ্লেষণ করা সহজ হয়। Hive SQL সিনট্যাক্স অনুসরণ করায় SQL জানলে এটি শেখা সহজ, তবে এটি রিয়েল-টাইম প্রক্রিয়াকরণের জন্য উপযুক্ত নয়।
Read more