কম্পিউটার

হ্যালো, রেডিস স্ট্যাক

হ্যালো, রেডিস স্ট্যাক

আজ আমরা রেডিস স্ট্যাক ঘোষণা করতে পেরে রোমাঞ্চিত। রেডিস স্ট্যাক নেতৃস্থানীয় রেডিস মডিউলগুলির ক্ষমতাগুলিকে একক পণ্যে একত্রিত করে, যা ডেভেলপারদের জন্য রেডিসের গতি এবং স্থিতিশীলতার সাথে আধুনিক, রিয়েল-টাইম অ্যাপ্লিকেশন তৈরি করা সহজ করে তোলে৷

প্রস্তাবনা

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

রিয়েল-টাইম অভিজ্ঞতা প্রদান করে এমন অ্যাপ্লিকেশনগুলি তৈরি করতে, আপনার একটি ডাটাবেস প্রয়োজন যা যেকোনো অনুরোধ প্রক্রিয়া করতে পারে, একটি সাধারণ বস্তু পুনরুদ্ধার, একটি অনুসন্ধান বা একটি জটিল একত্রীকরণ, দ্রুততম সম্ভাব্য প্রতিক্রিয়া সময় সহ, বিশেষত এক মিলিসেকেন্ডের কম সময়ে। যুক্তিটি সহজ:একটি সাধারণ অ্যাপ্লিকেশনে, প্রতিটি ব্যবহারকারীর মিথস্ক্রিয়া ডাটাবেসে একাধিক কল তৈরি করে, যার ফলে উল্লেখযোগ্য ওভারহেড হতে পারে; আপনি যদি শেষ-ব্যবহারকারী এবং অ্যাপের মধ্যে নেটওয়ার্কের রাউন্ড ট্রিপ লেটেন্সি যোগ করেন, তাহলে ডাটাবেসে ব্যয় করা প্রতিটি অতিরিক্ত মিলিসেকেন্ড একটি রিয়েল-টাইম শেষ-ব্যবহারকারীর অভিজ্ঞতা প্রদান করা আরও কঠিন করে তোলে।

এটি ডেটা মডেল যাই হোক না কেন, এটি একটি কী/মান, নথি, স্ট্রিম, গ্রাফ, টাইম সিরিজ, বা সম্ভাব্য ডেটা স্ট্রাকচার যাই হোক না কেন৷

এখন পর্যন্ত আমরা কি করেছি?

DB-Engines-এ গত 24 মাসের প্রবণতা স্পষ্ট করে, সবচেয়ে দ্রুত বর্ধনশীল ডেটা মডেলগুলি হল কী-মান, অনুসন্ধান, নথি, গ্রাফ এবং টাইম সিরিজ৷ এই প্রবণতাটিও দেখায় যে কম এবং কম বিকাশকারীরা তাদের অ্যাপ্লিকেশনগুলিকে রিলেশনাল ডাটাবেসের সাথে মডেল করতে বেছে নিচ্ছে৷

হ্যালো, রেডিস স্ট্যাক

দেখা যাচ্ছে, আমরা বিগত চার বছর ধরে বেশ কিছু ডেডিকেটেড ডেটা ইঞ্জিন তৈরি করতে ব্যয় করেছি যা আধুনিক ডেটা মডেল এবং ডেটা প্রসেসিং ক্ষমতা, যেমন অনুসন্ধান, নথি, গ্রাফ, টাইম সিরিজ সহ রেডিসের মূল কী/মূল্য ডেটা-স্ট্রাকচার কার্যকারিতাকে প্রসারিত করে। , এবং সম্ভাব্য ডেটা স্ট্রাকচার।

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

আমাদের সম্প্রদায় এবং গ্রাহকদের কথা শোনার পর, আমরা বুঝতে পেরেছি যে আমাদের অগ্রণী রেডিস মডিউলগুলির বিকাশকারীর অভিজ্ঞতা এবং তারা যে দক্ষতাগুলি প্রদান করে, তাদের ডকুমেন্টেশন এবং তাদের কার্যকারিতা সমর্থন করে এমন ক্লায়েন্টদের সাথে আমাদের সহজ করা দরকার। আমরা ডেভেলপারদের সাহায্য করতে চেয়েছিলাম যে মুহূর্ত থেকে তারা Redis ব্যবহার করা শুরু করেছে সেই মুহূর্ত থেকে সম্পূর্ণরূপে উৎপাদনশীল হতে।

এই কারণেই আমরা রেডিস স্ট্যাক তৈরি করেছি৷

রিডিস স্ট্যাক

রেডিস স্ট্যাক একটি একক পণ্যে শীর্ষস্থানীয় রেডিস মডিউলকে একীভূত করে। এটি আমাদের Redis-ভিত্তিক অনুসন্ধান, নথি, গ্রাফ, এবং সময় সিরিজের ক্ষমতার সাথে নির্মাণ শুরু করা সহজ করে তোলে৷

রেডিস স্ট্যাক হল তিনটি উপাদানের একটি স্যুট:

  1. Redis স্ট্যাক সার্ভার RediSearch, RedisJSON, RedisGraph, RedisTimeSeries এবং RedisBloom এর সাথে ওপেন সোর্স রেডিসকে একত্রিত করে
  2. RedisInsight৷ Redis ডেটা ভিজ্যুয়ালাইজ এবং অপ্টিমাইজ করার জন্য একটি শক্তিশালী টুল, যা রিয়েল-টাইম অ্যাপ্লিকেশন ডেভেলপমেন্টকে আগের চেয়ে সহজ এবং আরও মজাদার করে তোলে
  3. রিডিস স্ট্যাক ক্লায়েন্ট SDK জাভা, জাভাস্ক্রিপ্ট এবং পাইথনের শীর্ষস্থানীয় অফিসিয়াল রেডিস ক্লায়েন্ট অন্তর্ভুক্ত করে। এই ক্লায়েন্টগুলিতে আমাদের অবজেক্ট ম্যাপিং লাইব্রেরির নতুন স্যুট অন্তর্ভুক্ত রয়েছে যা বিকাশকারী-বান্ধব বিমূর্ততাগুলি অফার করে যা আপনাকে কোডের কয়েকটি লাইন দিয়ে উত্পাদনশীল করে তোলে। .NET, Node.js, Java, এবং Python-এর জন্য Redis OM নামে পরিচিত, এই লাইব্রেরিগুলি স্প্রিং, ASP.NET কোর, ফাস্টএপিআই এবং এক্সপ্রেসের মতো প্রধান অ্যাপ্লিকেশন ফ্রেমওয়ার্কগুলির সাথে একীভূত করাকে আগের চেয়ে সহজ করে তোলে৷
হ্যালো, রেডিস স্ট্যাক

Redis Stack দিয়ে শুরু করা

রেডিস স্ট্যাক এখন সাধারণত রেডিস 6.2 এর জন্য উপলব্ধ, এবং আমাদের কাছে রেডিস 7.0 এর জন্য একটি রিলিজ প্রার্থীও রয়েছে৷

আমরা Redis স্ট্যাকের সাথে দ্রুত শুরু করার বিভিন্ন উপায় প্রদান করছি:

  • redis.io থেকে সরাসরি Redis Stack ডাউনলোড করুন
  • আপনার পছন্দের প্যাকেজ ম্যানেজার ব্যবহার করে অথবা রেডিস স্ট্যাক ডকার ইমেজ চালু করে ইনস্টল করুন
  • রেডিস এন্টারপ্রাইজ ক্লাউডে একটি বিনামূল্যের ডাটাবেস তৈরি করে বা আমাদের স্থির পরিকল্পনাগুলির একটি ব্যবহার করে ক্লাউডে রেডিস স্ট্যাক স্থাপন করুন৷ এছাড়াও আমরা Redis এন্টারপ্রাইজ সফ্টওয়্যারে Redis Stack-এর ক্ষমতা প্রদান করছি যে কেউ স্ব-পরিচালনা বা অন-প্রাঙ্গনে স্থাপন করার জন্য।

একবার আপনার Redis স্ট্যাক সার্ভার চালু হয়ে গেলে, আপনি অবিলম্বে আপনার Redis ডেটা কল্পনা, বিশ্লেষণ এবং অপ্টিমাইজ করতে RedisInsight-এর সুবিধা নিতে পারেন। RedisInsight-এর মধ্যে একটি সিরিজ নির্দেশিকা রয়েছে যা আপনাকে রেডিস স্ট্যাক ব্যবহারের কয়েকটি ক্ষেত্রে নিয়ে যায়।

ক্লায়েন্টের দিক থেকে, আমরা বেশ কয়েকটি নেতৃস্থানীয় Redis ক্লায়েন্ট — Jedis (Java), redis-py (Python), এবং node-redis (JavaScript) — এবং আমাদের নতুন অবজেক্ট ম্যাপিং লাইব্রেরি (redis-om-spring)-এ Redis Stack সমর্থন করছি , redis-om-python, redis-om-node, redis-om-dotnet)।
আপনি আপনার নতুন তৈরি ডাটাবেস বিকাশ শুরু করতে আমরা সমর্থন করি এমন প্রতিটি ভাষার জন্য একটি উদাহরণ সংগ্রহস্থল ক্লোন করতে পারেন৷

Redis &Redis Stack

আমরা রিয়েল-টাইম অ্যাপ্লিকেশনের মহাবিশ্ব সম্পর্কে উত্তেজিত যেটি আমরা বিশ্বাস করি যে রেডিস স্ট্যাক সম্ভব করবে। কিন্তু আমরা খুব স্পষ্ট করে বলতে চাই যে রেডিস স্ট্যাক রেডিসের প্রতিস্থাপন নয়।

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

আপনি যখন রেডিস স্ট্যাক চালানোর জন্য প্রস্তুত হন, তখন আপনি রেডিস রেপ্লিকেশন মেকানিজম ব্যবহার করে বা আপনার RDB বা AOF ফাইলগুলি লোড করে সহজেই আপনার ডেটা স্থানান্তর করতে পারেন৷

হ্যালো, রেডিস স্ট্যাক

লাইসেন্সিং

রেডিস স্ট্যাকের সমস্ত কোডবেস উপাদান সকলের ব্যবহারের জন্য উন্মুক্ত এবং বিনামূল্যে, 

কিন্তু আমরা এখনও রেডিস স্ট্যাক লাইসেন্সিং মডেল সম্পর্কে খুব স্পষ্ট হতে চাই:

  • রেডিস স্ট্যাক সার্ভার রেডিস সোর্স অ্যাভেলেবল লাইসেন্স (আরএসএএল) (যে লাইসেন্সটি আমরা আমাদের রেডিস মডিউলগুলির সাথে ব্যবহার করেছি) এর অধীনে সরবরাহ করা হয়েছে
  • আমরা এর বিদ্যমান সার্ভার সাইড পাবলিক লাইসেন্স (SSPL) এর অধীনে RedisInsight প্রদান করছি  
  • প্রধান রেডিস ক্লায়েন্ট এবং আমাদের অবজেক্ট ম্যাপিং লাইব্রেরিগুলি একটি ওপেন সোর্স MIT লাইসেন্সের অধীনে প্রকাশ করা হয়েছে
হ্যালো, রেডিস স্ট্যাক

সারাংশে

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

আমরা Redis Stack-এ সক্ষমতা যোগ করা চালিয়ে যাব, যাতে ডেভেলপারদের রিয়েল-টাইম যুগের জন্য আধুনিক অ্যাপ্লিকেশনগুলিকে দ্রুত এবং সহজে বিকাশ করতে দেয় যা সম্পূর্ণরূপে Redis-এর উপর ভিত্তি করে৷

Redis Stack এবং এটি যে ক্ষমতা প্রদান করে সে সম্পর্কে আরও জানতে, আমাদের RedisDays ইভেন্টে ডিলিভার করা Redis Stack-এ ডিপ-ডাইভ সেশনে টিউন করুন এখন চাহিদা অনুযায়ী উপলব্ধ৷

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

FAQ

রেডিস স্ট্যাকের উপাদানগুলি কী কী?

রেডিস স্ট্যাক হল একটি একক প্যাকেজ যাতে রয়েছে ওপেন সোর্স রেডিস লিডিং রেডিস মডিউল (রেডিস স্ট্যাক সার্ভার), এবং রেডিসইনসাইট।

রেডিস স্ট্যাক সার্ভারের প্রাথমিক প্রকাশের জন্য, আমরা পাঁচটি মডিউল অন্তর্ভুক্ত করছি:RedisJSON, RedisSearch, RedisGraph, RedisTimeSeries এবং RedisBloom৷

রেডিস স্ট্যাক অফিসিয়াল রেডিস ক্লায়েন্ট এবং অবজেক্ট ম্যাপিং লাইব্রেরি দ্বারা সমর্থিত এবং ডেভেলপারদের স্প্রিং, ASP.Net কোর, এক্সপ্রেস এবং ফাস্টএপিআই সহ বেশ কয়েকটি অ্যাপ্লিকেশন ফ্রেমওয়ার্ক সহ উন্নত রেডিস স্ট্যাক ক্ষমতাগুলি সহজেই ব্যবহার করতে দেয়৷

রেডিস স্ট্যাক ডেভেলপারদের জন্য কোন ক্ষমতা প্রদান করে?

Redis Stack ডেভেলপারদের অনুমতি দেয়: 

  • ইন্ডেক্স এবং কোয়েরি রিডিস ডেটা, অ্যাগ্রিগেশন চালান, একটি পূর্ণ-পাঠ্য অনুসন্ধান সম্পাদন করুন 
  • উন্নত ভেক্টর সাদৃশ্য অনুসন্ধান চালান (KNN)
  • নিস্টেড JSON নথিগুলিকে দক্ষতার সাথে সঞ্চয় করুন এবং ম্যানিপুলেট করুন
  • সম্পত্তি গ্রাফ হিসাবে সম্পর্ক তৈরি করুন এবং মডেল করুন
  • সঞ্চয় করুন, প্রশ্ন করুন, এবং সামগ্রিক সময়-সিরিজ ডেটা
  • দ্রুত, স্থান এবং গণনা দক্ষ সম্ভাব্য ডেটা স্ট্রাকচারের সুবিধা নিন 
  • RedisInsight ব্যবহার করে সহজেই Redis ডেটা ভিজ্যুয়ালাইজ, ডিবাগ এবং বিশ্লেষণ করুন

আপনি কি রেডিস স্ট্যাকে আরও ক্ষমতা যুক্ত করবেন?

আমরা Redis স্ট্যাকে নতুন ক্ষমতা বা এমনকি মডিউল যোগ করার কথা বিবেচনা করব যদি:

  1. আমরা আমাদের সম্প্রদায়ের চাহিদা দেখি
  2. নতুন ক্ষমতাগুলি Redis দৃষ্টিভঙ্গি মেনে চলে 
  3. রেডিস ইনকর্পোরেটেড ইঞ্জিনিয়ারিং দল আনুষ্ঠানিকভাবে সংযোজন সমর্থন করতে পারে

কেন RedisGears প্রথম Redis Stack প্রকাশের অংশ নয়?

RedisGears ডাটাবেস ট্রিগার, স্ট্রিম প্রসেসিং, ডিস্ট্রিবিউটেড ফাংশন, এবং সম্পূর্ণ প্রোগ্রামেবিলিটি রেডিসে যোগ করে।

এই বছরের শেষের দিকে জাভাস্ক্রিপ্টের সমর্থন GA হলে আমরা RedisGears-কে Redis Stack-এ যোগ করব।

আমি কি বিনামূল্যে রেডিস স্ট্যাক স্ব-পরিচালনা করতে পারি?

হ্যাঁ, আপনি পারেন!

Redis অবজেক্ট-ম্যাপিং লাইব্রেরি কি?

Redis অবজেক্ট-ম্যাপিং লাইব্রেরিগুলি Redis কমান্ড API-এর উপরে বিমূর্ততার একটি স্তর প্রদান করে, যেমনটি একটি ORM একটি SQL ডাটাবেসের জন্য করে। আসুন রেডিস অবজেক্ট ম্যাপিং লাইব্রেরি থেকে মূল রেডিস ক্লায়েন্ট লাইব্রেরিগুলিকে আলাদা করি৷

কোর রেডিস ক্লায়েন্ট লাইব্রেরিগুলির নিম্নলিখিত দায়িত্ব রয়েছে:

  • Redis প্রোটোকল (RESP, ইত্যাদি) প্রয়োগ করুন।
  • সংযোগ পরিচালনা করুন (TCP, ইত্যাদি), পুনরায় সংযোগ, সার্ভার আবিষ্কার, ইত্যাদি।
  • এক্সিকিউশন লজিক ম্যানেজ করুন (থ্রেড, অ্যাসিঙ্ক আইও, ইত্যাদি)
  • নির্বিচারে Redis কমান্ড কার্যকর করার জন্য একটি API প্রকাশ করুন
  • একটি ভাষা-বাক্যপূর্ণ ফ্যাশনে Redis কমান্ড প্রকাশ করুন
  • সংযোগ স্ট্রিং এর মাধ্যমে যেকোনো Redis স্থাপনার সাথে সংযোগ করুন

অবজেক্ট-ম্যাপিং লাইব্রেরি অতিরিক্ত লিভারেজ প্রদান করে:

  • ডেভেলপারদের সাধারণ রেডিস ব্যবহারের ক্ষেত্রে কোডের সবচেয়ে কম লাইনে প্রয়োগ করার অনুমতি দিন। এই মুহূর্তে, এর মধ্যে রয়েছে ডোমেন মডেলিং এবং সাবলীল ক্যোয়ারী APIs। ভবিষ্যতে, আমরা ক্যাশিং, সেশন স্টোরেজ, রেট লিমিটিং, লিডারবোর্ড এবং ডি-ডুপ্লিকেটর সহ অন্যান্য সাধারণ রেডিস ব্যবহারের ক্ষেত্রে সমর্থন যোগ করব।
  • রেডিস স্ট্যাকের দ্বারা প্রদত্ত ক্ষমতাগুলির জন্য একটি উচ্চ-স্তরের API প্রকাশ করুন
  • অন্তর্নিহিত Redis কমান্ডগুলি প্রকাশ না করে Redis-এর সুবিধা প্রদান করুন
  • প্রধান অ্যাপ্লিকেশন ফ্রেমওয়ার্কের সাথে একীভূত করুন (যেমন, স্প্রিং, ASP.NET কোর, FastAPI, Express)

এই অবজেক্ট-ম্যাপিং লাইব্রেরিগুলি সর্বদা এক বা একাধিক মূল রেডিস লাইব্রেরির উপর নির্ভর করে৷

রেডিস স্ট্যাকের জন্য কি .NET ক্লায়েন্ট উপলব্ধ আছে?

বর্তমানে, .NET ডেভেলপারদের জন্য প্রস্তাবিত ক্লায়েন্ট হল StackExchange, যা আনুষ্ঠানিকভাবে Redis, Inc দ্বারা সমর্থিত নয়। আপনি RedisSearch-এর জন্য NRediSearch, RedisGraph-এর জন্য NRedisGraph, এবং RedisTimeSeries-এর জন্য NRedisTimeSeries-এর মাধ্যমে ক্লায়েন্টকে প্রসারিত করতে পারেন। আপনি redis-om-dotnet লাইব্রেরিও ব্যবহার করতে পারেন যা StackExchange-এর উপরে তৈরি হয়।

আমি কি Redis Enterprise ক্লাউডে RedisInsight-এর সাথে কাজ করতে পারি?

RedisInsight এখনও Redis Enterprise ক্লাউডে উপলব্ধ নয়৷ যাইহোক, আপনি আপনার ক্লাউড ডাটাবেসের সাথে RedisInsight অ্যাপ্লিকেশনের সাথে সংযোগ করতে পারেন। আমরা এই বছরের শেষের দিকে ক্লাউডে RedisInsight যোগ করার পরিকল্পনা করছি৷

আমি কি আমার রেডিস স্ট্যাক ডাটাবেসকে রেডিস এন্টারপ্রাইজ ক্লাউডে সহজেই স্থানান্তর করতে পারি?

হ্যাঁ, আপনি কোনো ডাউনটাইম ছাড়াই আমাদের সম্পূর্ণরূপে পরিচালিত ক্লাউড পরিষেবাতে আপনার ডাটাবেস স্থানান্তর করতে আমাদের রেপ্লিকা-অফ সলিউশনের সুবিধা নিতে পারেন৷


  1. রেডিস লঞ্চপ্যাড পেশ করা হচ্ছে

  2. Redis.io রিফ্রেশ করা এবং প্রসারিত করা

  3. RedisDays সান ফ্রান্সিসকো 2022 ওভারভিউ

  4. ফাস্টলি কম্পিউটে রেডিস ব্যবহার করুন