কম্পিউটার টিউটোরিয়াল

Redis-এ বড় লিস্ট দক্ষতার সাথে ডিলিট করার ধাপে ধাপে গাইড

Redis-এ বড় অবজেক্ট ডিলিট করা কেন স্লো, সে সম্পর্কে জানতে এই সংক্ষিপ্ত ওভারভিউ পড়ুন

Redis-এ একটি বড় লিস্ট ডিলিট করতে:

  1. কীকে একটি ইউনিক, নেমস্পেসড কীতে রিনেম করুন যাতে লিস্টটি অন্য Redis ক্লায়েন্টদের কাছে "ডিলিটড" দেখাবে azonই।

  2. লিস্ট থেকে এলিমেন্টগুলো ছোট ছোট ব্যাচে ইনক্রিমেন্টালি ডিলিট করুন যতক্ষণ না লিস্টটি খালি হয়। আমাদের ডিলিট কমান্ডের সাইজ লিমিট করে আমরা নিশ্চিত করি যে সার্ভারকে অনেকক্ষণ ব্লক করতে হয় না।

দয়া করে নোট করুন যে নিচের কোড Redis কানেকশন ফেইলার গ্রেসফুলি হ্যান্ডেল করে না। যদি কোনো Redis কমান্ড ফেইল হয় এবং এক্সেপশন থ্রো করে, তবে আপনাকে ম্যানুয়ালি ক্লিন আপ করতে হবে।

슈ডো-কোড

# কী রিনেম করুন newkey = "gc:hashes:" + redis.INCR("gc:index") redis.RENAME("my.list.key", newkey) # এলিমেন্টগুলো ১০০-র ব্যাচে ট্রিম অফ করুন while redis.LLEN(newkey) > 0 redis.LTRIM(newkey, 0, -99) end 

Ruby

$redis = Redis.new def delete_list(key) # কী রিনেম করুন newkey = "gc:lists:#{$redis.incr("gc:index")}" $redis.rename(key, newkey) # এলিমেন্টগুলো ১০০-র ব্যাচে ট্রিম অফ করুন while $redis.llen(newkey) > 0 $redis.ltrim(newkey, 0, -99) end end # উদাহরণ: # # delete_list("my.large.list")

উপরের পদ্ধতির ব্যাকগ্রাউন্ড জব ব্যবহার করে কিছু উদাহরণ ইমপ্লিমেন্টেশন Ruby-তে:

  • Resque
  • Sidekiq

← "Deleting Large Objects in Redis"-এ ফিরে যান


  1. RediSearch 2.0: Redis-এর জন্য নেক্সট-জেন রিয়েল-টাইম সার্চ

  2. রেডিস লঞ্চপ্যাড: সবচেয়ে প্রিয় ডেটাবেসের শক্তি আনলক করা

  3. নবিনীকৃত Redis.io পরিচিতি: আধুনিক ডিজাইন, আপডেটেড ডক্স, উন্নত ইউজার অভিজ্ঞতা

  4. ফাস্টলি কম্পিউট@এজ সাথে রেডিস ইন্টিগ্রেশন করে দক্ষ পেজ ভিউ ট্র্যাকিং