ZNode Create, Read, Update এবং Delete করার জন্য Java API

Zookeeper API ব্যবহার করে Programming - জুকিপার (Zookeeper) - Big Data and Analytics

289

Zookeeper-এর Java API ব্যবহার করে আপনি ZNode তৈরি (Create), পড়া (Read), আপডেট (Update) এবং মুছে ফেলা (Delete) করতে পারেন। Zookeeper একটি ডিস্ট্রিবিউটেড সিস্টেমের মধ্যে সিঙ্ক্রোনাইজেশন এবং কনফিগারেশন ম্যানেজমেন্টের জন্য ব্যবহৃত হয়, এবং Java API এর মাধ্যমে আপনি এটি সহজেই পরিচালনা করতে পারেন।

Zookeeper এর Java API ব্যবহার করতে, আপনাকে Zookeeper ক্লায়েন্ট তৈরি করতে হবে এবং এর মধ্যে নির্দিষ্ট কমান্ডগুলি ব্যবহার করতে হবে যেমন create(), getData(), setData(), এবং delete()

এখানে ZNode তৈরি, পড়া, আপডেট এবং মুছে ফেলার জন্য Java API ব্যবহার করার বিস্তারিত উদাহরণ দেওয়া হল:


1. ZNode তৈরি (Create)

ZNode তৈরি করতে create() পদ্ধতি ব্যবহার করা হয়। এটি একটি পাথ এবং একটি ডেটা গ্রহণ করে, এবং নতুন ZNode তৈরি করে।

উদাহরণ:

import org.apache.zookeeper.*;
import org.apache.zookeeper.data.Stat;

public class ZookeeperCreateNode {
    public static void main(String[] args) throws Exception {
        // Zookeeper সার্ভারের সাথে কানেক্ট হওয়া
        String connectString = "localhost:2181"; // Zookeeper সার্ভারের পাথ
        int sessionTimeout = 3000; // সেশনের টাইমআউট

        ZooKeeper zk = new ZooKeeper(connectString, sessionTimeout, event -> {});

        // নতুন ZNode তৈরি করা
        String path = "/myZNode"; // ZNode এর পাথ
        String data = "Hello, Zookeeper!"; // ZNode-এ ডেটা

        // ZNode তৈরি করা
        String createdPath = zk.create(path, data.getBytes(), ZooDefs.Ids.OPEN_ACL_UNSAFE, CreateMode.PERSISTENT);
        System.out.println("ZNode created at path: " + createdPath);

        zk.close();
    }
}

ব্যাখ্যা:

  • zk.create(path, data, acl, createMode): এই পদ্ধতিটি নতুন ZNode তৈরি করে।
    • path: ZNode-এর পাথ।
    • data: ZNode-এ ডেটা যা সংরক্ষিত হবে।
    • acl: অ্যাক্সেস কন্ট্রোল লিস্ট, যেখানে এখানে OPEN_ACL_UNSAFE ব্যবহার করা হয়েছে, যা সকলের জন্য অ্যাক্সেস খোলা থাকে।
    • createMode: ZNode-এর ধরন (Persistent, Ephemeral, Sequential)।

2. ZNode পড়া (Read)

ZNode এর ডেটা পড়তে getData() পদ্ধতি ব্যবহার করা হয়। এটি একটি ZNode-এর পাথ গ্রহণ করে এবং তার ডেটা ফেরত দেয়।

উদাহরণ:

import org.apache.zookeeper.*;
import org.apache.zookeeper.data.Stat;

public class ZookeeperReadNode {
    public static void main(String[] args) throws Exception {
        String connectString = "localhost:2181";
        int sessionTimeout = 3000;

        ZooKeeper zk = new ZooKeeper(connectString, sessionTimeout, event -> {});

        // ZNode এর ডেটা পড়া
        String path = "/myZNode";
        Stat stat = new Stat();  // ZNode এর স্ট্যাটাস ট্র্যাক করতে
        byte[] data = zk.getData(path, false, stat);

        System.out.println("Data from ZNode: " + new String(data));
        System.out.println("ZNode Version: " + stat.getVersion());

        zk.close();
    }
}

ব্যাখ্যা:

  • zk.getData(path, watch, stat): এটি ZNode-এর ডেটা ফেরত দেয় এবং তার মেটাডেটা (stat) প্রদান করে।
    • path: ZNode-এর পাথ।
    • watch: এটি যদি true হয়, তাহলে একটি Watch ট্রিগার হবে যা ZNode-এ পরিবর্তন হলে অবহিত করবে।

3. ZNode আপডেট (Update)

ZNode এর ডেটা আপডেট করতে setData() পদ্ধতি ব্যবহার করা হয়। এটি একটি ZNode এর ডেটা আপডেট করার জন্য ব্যবহৃত হয়।

উদাহরণ:

import org.apache.zookeeper.*;
import org.apache.zookeeper.data.Stat;

public class ZookeeperUpdateNode {
    public static void main(String[] args) throws Exception {
        String connectString = "localhost:2181";
        int sessionTimeout = 3000;

        ZooKeeper zk = new ZooKeeper(connectString, sessionTimeout, event -> {});

        // ZNode-এ ডেটা আপডেট করা
        String path = "/myZNode";
        String updatedData = "Updated data in Zookeeper!";

        // ZNode আপডেট করা
        Stat stat = zk.setData(path, updatedData.getBytes(), -1);
        System.out.println("ZNode updated, version: " + stat.getVersion());

        zk.close();
    }
}

ব্যাখ্যা:

  • zk.setData(path, data, version): এটি একটি নির্দিষ্ট ZNode-এ ডেটা আপডেট করতে ব্যবহৃত হয়।
    • path: ZNode-এর পাথ।
    • data: নতুন ডেটা যা আপডেট করা হবে।
    • version: যদি আপনি একটি নির্দিষ্ট সংস্করণে ডেটা আপডেট করতে চান, তবে এটি ব্যবহার করতে হবে। -1 দিলে সর্বশেষ সংস্করণে আপডেট হবে।

4. ZNode মুছে ফেলা (Delete)

ZNode মুছে ফেলতে delete() পদ্ধতি ব্যবহার করা হয়। এটি একটি ZNode এবং তার সকল চাইল্ড ZNode মুছে ফেলতে ব্যবহৃত হয়।

উদাহরণ:

import org.apache.zookeeper.*;

public class ZookeeperDeleteNode {
    public static void main(String[] args) throws Exception {
        String connectString = "localhost:2181";
        int sessionTimeout = 3000;

        ZooKeeper zk = new ZooKeeper(connectString, sessionTimeout, event -> {});

        // ZNode মুছে ফেলা
        String path = "/myZNode";

        // ZNode মুছে ফেলা
        zk.delete(path, -1);
        System.out.println("ZNode deleted at path: " + path);

        zk.close();
    }
}

ব্যাখ্যা:

  • zk.delete(path, version): এটি একটি ZNode মুছে ফেলতে ব্যবহৃত হয়।
    • path: ZNode-এর পাথ যা আপনি মুছে ফেলতে চান।
    • version: এটি ZNode এর সংস্করণ। সাধারণত -1 ব্যবহার করা হয় যদি আপনি সর্বশেষ সংস্করণে ZNode মুছে ফেলতে চান।

সারাংশ

Zookeeper Java API-এর মাধ্যমে ZNode তৈরি, পড়া, আপডেট এবং মুছে ফেলার কাজ খুবই সহজ। আপনি create(), getData(), setData(), এবং delete() পদ্ধতিগুলি ব্যবহার করে ZNode-এর উপর এই অপারেশনগুলি করতে পারেন। Java API ব্যবহার করে Zookeeper-এর মাধ্যমে আপনি ডিস্ট্রিবিউটেড সিস্টেমে ডেটা সিঙ্ক্রোনাইজেশন এবং কনফিগারেশন ম্যানেজমেন্ট খুবই সহজভাবে পরিচালনা করতে পারবেন।

Content added By
Promotion

Are you sure to start over?

Loading...