কম্পিউটার

রেডিস জেডিস - জেডিস লাইব্রেরি ব্যবহার করে সেট ভ্যালুতে CRUD অপারেশনগুলি কীভাবে সম্পাদন করা যায়

এই টিউটোরিয়ালে, আমরা শিখব কিভাবে জেডিস লাইব্রেরি ব্যবহার করে একটি সেট মানের উপর CRUD অপারেশন করতে হয়।

জেডিস লাইব্রেরি

জেডিস হল রেডিস ডেটাস্টোরের জন্য একটি জাভা ক্লায়েন্ট লাইব্রেরি। এটি ছোট এবং ব্যবহার করা খুব সহজ, এবং redis 2.8.x, 3.x.x এবং উপরের ডেটাস্টোরের সাথে সম্পূর্ণ সামঞ্জস্যপূর্ণ। আপনি এখানে জেডিস লাইব্রেরি সম্পর্কে আরও তথ্য পেতে পারেন।

মান সেট করুন

সেট হল অনন্য উপাদানগুলির একটি ক্রমবিহীন সংগ্রহ, রেডিস-এ, সেটগুলিকে একটি মান হিসাবে সংরক্ষণ করা যেতে পারে এবং রেডিস ডাটাবেসে সংরক্ষিত একটি সেট মান সংরক্ষণ, পরিচালনা এবং পুনরুদ্ধার করতে বিভিন্ন রেডিস কমান্ড ব্যবহার করা যেতে পারে। আপনি এখানে সেট কমান্ড সম্পর্কে আরও তথ্য পেতে পারেন।

প্রকল্প সেটআপ

আপনার প্রিয় IDE-তে একটি সাধারণ মাভেন প্রকল্প তৈরি করুন এবং আপনার pom.xml-এ নীচে উল্লিখিত নির্ভরতা যোগ করুন ফাইল।

<dependency>
  <groupId>redis.clients</groupId>
  <artifactId>jedis</artifactId>
  <version>3.0.1</version>
</dependency>

জেডিস লাইব্রেরির সর্বশেষ সংস্করণের জন্য, এই পৃষ্ঠাটি দেখুন।

রিডিস ইনস্টলেশন

আপনাকে Redis এর সর্বশেষ সংস্করণ ইনস্টল করতে হবে। রেডিস ইনস্টল করার বিষয়ে আরও তথ্যের জন্য এই পৃষ্ঠাটি দেখুন৷

জেডিস সংযোগ

Jedis এর একটি বস্তু তৈরি করুন ( redis.clients.jedis.Jedis ) আপনার জাভা কোডকে রেডিস-এর সাথে সংযুক্ত করার জন্য ক্লাস।

Jedis jedis = new Jedis();

আপনি যদি আপনার স্থানীয় মেশিনে এবং ডিফল্ট পোর্টে (6379) একটি redis পরিষেবা শুরু করেন তবে ডিফল্ট কনস্ট্রাক্টর ঠিক কাজ করবে। অন্যথায় আপনাকে সঠিক হোস্ট ইউআরএল এবং পোর্ট নম্বর পাস করতে হবে। কনস্ট্রাক্টরের মধ্যে একটি যুক্তি হিসাবে।

তৈরি করুন এবং যোগ করুন 

দুঃখিত পদ্ধতি সেট মান এক বা একাধিক উপাদান সন্নিবেশ. যদি সেট মান বিদ্যমান না থাকে, তাহলে সন্নিবেশ অপারেশন সম্পাদন করার আগে এটি প্রথমে একটি কী ধরে খালি সেট মান তৈরি করে।

/* Creating a new set <set-1> and inserting string values a, b, c, d */
jedis.sadd("set-1", "a", "b", "c", "d");

/* Creating a new set <set-2> and inserting string values 1, 2 */
jedis.sadd("set-2".getBytes(),"1".getBytes(),"2".getBytes());

সদস্যের অস্তিত্ব পরীক্ষা করুন 

সিসমেম্বার নির্দিষ্ট উপাদান সেটের সদস্য কিনা তা পরীক্ষা করার জন্য পদ্ধতি ব্যবহার করা হয়।

/* Check if ab is a member of <set-1> or not */
jedis.sismember("set-1", "ab");

/* Check if 1 is a member of <set-2> or not */
jedis.sismember("set-2".getBytes(), "1".getBytes());

সরান এবং ফেরত দিন 

স্পপ পদ্ধতিটি একটি কীতে সংরক্ষিত একটি সেট মান থেকে এক বা একাধিক এলোমেলো উপাদানগুলি সরাতে এবং ফিরিয়ে দিতে ব্যবহৃত হয়।

/* Removes and return single random element from the <set-1> */
jedis.spop("set-1");

/* Removes and return 3 random element from the <set-1> */
jedis.spop("set-1", 3);

আকার 

কার্ড পদ্ধতিটি একটি কীতে সংরক্ষিত একটি সেট মানের আকার পেতে ব্যবহৃত হয়।

/* Returns size of <set-1> */
jedis.scard("set-1");

মুছুন 

srem পদ্ধতিটি সেট মান থেকে এক বা একাধিক উপাদান মুছে ফেলার জন্য ব্যবহৃত হয়।

/* Remove a, b, c elements from <set-1> */
jedis.srem("set-1", "a", "b", "c");
		
/* Remove 2, 3 elements from <set-2> */
jedis.srem("set-1".getBytes(), "1".getBytes(), "b".getBytes());
থেকে 2, 3টি উপাদান সরান

সব পান

সদস্যদের একটি সেট মানের সমস্ত উপাদান পেতে পদ্ধতি ব্যবহার করা হয়।

/* Returns all elements from <set-1> */
jedis.smembers("set-1");
থেকে সমস্ত উপাদান ফেরত দেয়

ইউনিয়ন

একটি সেট মান উপর ইউনিয়ন অপারেশন সঞ্চালনের জন্য দুটি পদ্ধতি আছে. তারা নিম্নরূপ:-

  1. সানিয়ন :-  এটি দুই বা ততোধিক সেটে ইউনিয়ন অপারেশন সম্পাদন করে এবং একটি অ্যারে হিসাবে ফলাফল প্রদান করে।
    /* Get Union of <set-1>, <set-2> */
    jedis.sunion("set-1", "set-2");
  2. সানিয়নস্টোর :- এটি দুই বা ততোধিক সেটে ইউনিয়ন অপারেশন করে এবং একটি নতুন সেট মানের ফলাফল প্রদান করে।
    /* Get Union of <set-1>, <set-2> in set destination set <set-3> */
    jedis.sunionstore("set-3", "set-1", "set-2");

ছেদন

একটি সেট মান উপর ছেদ অপারেশন সঞ্চালনের জন্য দুটি পদ্ধতি আছে. তারা নিম্নরূপ:-

  1. sinter :-  এটি দুই বা ততোধিক সেটে ছেদ ক্রিয়া সম্পাদন করে এবং ফলাফলটি একটি অ্যারে হিসাবে প্রদান করে।
    /* Get Intersection of <set-1>, <set-2> */
    jedis.sinter("set-1", "set-2");
  2. sinterstore :- এটি দুই বা ততোধিক সেটে ছেদ সঞ্চালন করে এবং একটি নতুন সেট মান দিয়ে ফলাফল প্রদান করে।
    /* Get Intersection of <set-1>, <set-2> in set destination set <set-3> */
    jedis.sinterstore("set-3", "set-1", "set-2");

পার্থক্য

একটি সেট মান পার্থক্য অপারেশন সঞ্চালনের জন্য দুটি পদ্ধতি আছে. তারা নিম্নরূপ:-

  1. sdiff :-  এটি দুই বা ততোধিক সেটে পার্থক্য সম্পাদন করে এবং একটি অ্যারে হিসাবে ফলাফল প্রদান করে।
    /* Get Difference of <set-1>, <set-2> */
    jedis.sdiff("set-1", "set-2");
  2. sdiffstore :- এটি দুই বা ততোধিক সেটে পার্থক্য সম্পাদন করে এবং একটি নতুন সেট মানের ফলাফল প্রদান করে।
    /* Get Difference of <set-1>, <set-2> in set destination set <set-3> */
    jedis.sdiffstore("set-3", "set-1", "set-2");

রেফারেন্স :-

  1. কমান্ড ডক্স সেট করুন

জেডিস লাইব্রেরি ব্যবহার করে একটি সেট মানতে কীভাবে CRUD অপারেশন সম্পাদন করা যায় তার জন্যই এটি। আপনি যদি এটি পছন্দ করেন, অনুগ্রহ করে মন্তব্য বিভাগে আপনার চিন্তা শেয়ার করুন এবং অন্যদের সাথেও শেয়ার করুন৷


  1. Redis ZINCRBY - কিভাবে redis-এ সাজানো সেট মানের উপাদানের স্কোর বৃদ্ধি করা যায়

  2. Redis SMOVE - কিভাবে এলিমেন্টকে এক সেট থেকে অন্য সেটে redis এ সরানো যায়

  3. কিভাবে redis-এ কী স্ট্রিং মান সেট করতে হয় – Redis SET | SETNX | SETEX | পিসেটেক্স

  4. রেডিস জেডিস পাব সাব- জেডিস লাইব্রেরি ব্যবহার করে কীভাবে পাব/সাব সিস্টেম বাস্তবায়ন করবেন