Data Update এবং Delete করা

Data CRUD Operations - এইচবেইজ (HBase) - Big Data and Analytics

473

HBase একটি কলাম-ওরিয়েন্টেড ডেটাবেস যা দ্রুত ডেটা সঞ্চয় এবং অ্যাক্সেসের জন্য ডিজাইন করা হয়েছে। এতে ডেটা আপডেট (Update) এবং ডিলিট (Delete) করার প্রক্রিয়া কিছুটা আলাদা, কারণ এটি RDBMS (Relational Database Management System) নয়, বরং NoSQL ডেটাবেস। এখানে HBase-এ ডেটা আপডেট এবং ডিলিট করার জন্য সাধারণ পদ্ধতি আলোচনা করা হবে।

HBase-এ Data Update করা


HBase-এ ডেটা আপডেট করার জন্য Put অপারেশন ব্যবহার করা হয়। HBase একটি কলাম-ওরিয়েন্টেড ডেটাবেস হওয়ায়, আপনি শুধুমাত্র সেই কলামটি আপডেট করতে পারেন, যার জন্য আপনি rowkey এবং কলামের নাম জানেন। HBase-এ একবার Put অপারেশন ব্যবহার করলে, এটি মূলত পুরানো মানের উপর নতুন মান লিখে দেয়, যেহেতু HBase একটি "লজিক্যাল ডিলিট" পদ্ধতি ব্যবহার করে।

১. Put কমান্ড ব্যবহার করে ডেটা আপডেট করা

HBase Shell থেকে ডেটা আপডেট করার জন্য, প্রথমে সেই টেবিলের মধ্যে নতুন মান আপলোড করতে হবে।

উদাহরণ: ধরা যাক, আপনার একটি student নামক টেবিল আছে এবং আপনি rowkey হিসেবে 1001 ব্যবহার করতে চান, এবং name কলামে নতুন মান "John Doe" লিখতে চান।

hbase shell
hbase(main):001:0> put 'student', '1001', 'info:name', 'John Doe'

এই কমান্ডটি student টেবিলের 1001 রো (row) তে info:name কলামের মান আপডেট করে "John Doe" করবে।

২. অথবা অ্যাপ্লিকেশন লেভেলে Java API ব্যবহার করে ডেটা আপডেট করা

Java প্রোগ্রামিং ল্যাঙ্গুয়েজে HBase-এ ডেটা আপডেট করার জন্য, Put অপারেশন ব্যবহার করতে হবে। নিচের উদাহরণটি Java কোডে একটি আপডেট অপারেশন দেখায়:

import org.apache.hadoop.hbase.client.Put;
import org.apache.hadoop.hbase.client.HTable;
import org.apache.hadoop.hbase.util.Bytes;

public class HBaseUpdateExample {
    public static void main(String[] args) throws Exception {
        HTable table = new HTable(config, "student");
        Put put = new Put(Bytes.toBytes("1001"));
        put.add(Bytes.toBytes("info"), Bytes.toBytes("name"), Bytes.toBytes("John Doe"));
        table.put(put);
        table.close();
    }
}

এই কোডটি student টেবিলের 1001 রোতে name কলামে "John Doe" মান আপডেট করবে।

HBase-এ Data Delete করা


HBase-এ ডেটা ডিলিট করার জন্য Delete অপারেশন ব্যবহার করা হয়। এটি নির্দিষ্ট রো এবং কলামের ডেটা মুছে ফেলে। তবে, HBase-এ ডেটা সরাসরি ডিলিট হয় না, বরং এটি একটি লজিক্যাল ডিলিট পদ্ধতিতে কাজ করে, যার ফলে আপনি পরবর্তীতে সেই ডেটাকে "ডিলিট" হিসেবে চিহ্নিত করতে পারেন, কিন্তু প্রকৃতপক্ষে ডেটা ফিজিক্যালি মুছে যায় না যতক্ষণ না আপনি কম্প্যাকশন অপারেশন চালান।

১. Delete কমান্ড ব্যবহার করে ডেটা ডিলিট করা

HBase Shell থেকে ডেটা ডিলিট করতে, delete কমান্ড ব্যবহার করা হয়। নিচের উদাহরণে 1001 রো থেকে info:name কলামটি ডিলিট করা হচ্ছে:

hbase shell
hbase(main):001:0> delete 'student', '1001', 'info:name'

এই কমান্ডটি student টেবিলের 1001 রো থেকে info:name কলামটি ডিলিট করে দেবে।

২. Java API ব্যবহার করে ডেটা ডিলিট করা

Java প্রোগ্রামিং ল্যাঙ্গুয়েজে HBase-এ ডেটা ডিলিট করতে, Delete অপারেশন ব্যবহার করতে হবে। নিচের উদাহরণে Java কোডে একটি ডিলিট অপারেশন দেখানো হয়েছে:

import org.apache.hadoop.hbase.client.Delete;
import org.apache.hadoop.hbase.client.HTable;
import org.apache.hadoop.hbase.util.Bytes;

public class HBaseDeleteExample {
    public static void main(String[] args) throws Exception {
        HTable table = new HTable(config, "student");
        Delete delete = new Delete(Bytes.toBytes("1001"));
        delete.deleteColumns(Bytes.toBytes("info"), Bytes.toBytes("name"));
        table.delete(delete);
        table.close();
    }
}

এই কোডটি student টেবিলের 1001 রো থেকে info:name কলামটি ডিলিট করবে।

HBase-এ সেরা প্র্যাকটিস (Best Practices)


  1. ডেটা আপডেটের জন্য Put ব্যবহার করুন: HBase-এ আপডেট করতে হলে, নতুন মান রেখে পুরনো মান overwrite করতে হবে, যেহেতু HBase ফিজিক্যালি ডেটা মুছে ফেলে না।
  2. কলাম-ওরিয়েন্টেড স্টোরেজে ডেটা মুছুন: HBase কলাম-ওরিয়েন্টেড ডেটাবেস হওয়ায়, শুধুমাত্র প্রয়োজনীয় কলাম মুছুন, কারণ এটি দ্রুত অপারেশন সম্পাদন করতে সহায়ক।
  3. ডিলিটের পর কম্প্যাকশন করুন: HBase-এ ডিলিট করা ডেটা যতক্ষণ না কম্প্যাকশন হয়, ততক্ষণ পর্যন্ত স্টোরেজে অক্ষত থাকে। তাই নিয়মিত কম্প্যাকশন চালান যাতে মুছে ফেলা ডেটা ফিজিক্যালি সরানো যায়।
  4. ব্যাচ অপারেশন ব্যবহার করুন: বড় আকারে ডেটা আপডেট বা ডিলিট করতে হলে, ব্যাচ অপারেশন ব্যবহার করুন যাতে একাধিক Put বা Delete একসঙ্গে কার্যকর করা যায়।

এইভাবে, HBase-এ ডেটা আপডেট এবং ডিলিট করা যায়। আপডেট করার জন্য Put এবং ডিলিট করার জন্য Delete অপারেশন ব্যবহার করা হয়, এবং এগুলো সঠিকভাবে পরিচালনার জন্য কিছু কনফিগারেশন ও সেরা প্র্যাকটিস মেনে চলা উচিত।

Content added By
Promotion

Are you sure to start over?

Loading...