ريديس MGET

Rydys Mget



وأوضح سلاسل ريديس

السلاسل هي بنية البيانات الأساسية والأساسية التي تقدمها قاعدة بيانات Redis. سلاسل Redis عبارة عن سلاسل ثنائية آمنة من البايت. إنها تشبه إلى حد كبير السلاسل العادية المتوفرة في لغات البرمجة مثل Java و c # .net. الأهم من ذلك ، يمكن استخدام سلاسل Redis لتخزين أي شيء تريده تقريبًا مثل السلاسل والأعداد الصحيحة و JSONs المتسلسلة و XMLs والقيم الثنائية. نظرًا لأن نوع بيانات سلسلة Redis آمن ثنائيًا ، يمكن تخزين الكائنات الثنائية مثل الصور ومقاطع الفيديو والمستندات بسهولة باستخدام السلاسل. بالإضافة إلى ذلك ، يمكن لسلسلة Redis واحدة الاحتفاظ بالبيانات حتى 512 ميجا بايت.







علاوة على ذلك ، يتم استخدام بنية بيانات سلسلة Redis بشكل شائع في حالات الاستخدام التالية:



  • التخزين المؤقت
    • تخزين الجلسة
    • استجابات API
    • صفحات HTML
  • يعداد
  • تنفيذ الصور النقطية والعمليات الأحادية

عمليات السلاسل الأكثر استخدامًا هي SET و GET و MGET و SETNX. يتم استخدام الأمرين INCRBY و INCRBYFLOAT بشكل شائع لإدارة العدادات التي تم تنفيذها باستخدام بنية بيانات سلسلة Redis. في هذا البرنامج التعليمي ، تم تفصيل أمر MGET.



كشف أمر MGET

يتم استخدام الأمر MGET لاسترداد قيم مفاتيح Redis المحددة. يقبل مفتاحًا واحدًا أو أكثر كوسيطات. علاوة على ذلك ، يعمل الأمر MGET على تعقيد الوقت O (N) حيث يكون N هو عدد المفاتيح المحددة. صيغة الأمر MGET هي كما يلي:





مفتاح MGET [ مفتاح ... ]

عند تنفيذ الأمر MGET ، يقوم بإرجاع مجموعة من القيم المخزنة في مفاتيح Redis المحددة. إذا كان المفتاح غير موجود ، فإنه يعرض القيمة الخاصة لا شيء. وبالمثل ، إذا كان المفتاح لا يحتوي على قيمة سلسلة ، فإن ملف لا شيء تم إرجاع القيمة.

حالة الاستخدام: قم بإحضار جميع استجابات API المخزنة مؤقتًا

لنفترض سيناريو يتم فيه استخدام نوع بيانات سلسلة Redis لتنفيذ ذاكرة تخزين مؤقت تحتوي على استجابات واجهة برمجة التطبيقات الحديثة. نستخدم الأمر SET لتخزين بعض ردود API الوهمية لأغراض العرض التوضيحي.



تعيين dummyhost / عملاء 'ريكي ، برنارد ، ماري ، صموئيل ، جو' تعيين dummyhost / الموردين 'جيمي ، جيريمي ، أندرو ، هيرا' تعيين dummyhost / الفواتير '{'invoices': [{'invoice_id': 1، 'invoice_payment': 1000}، {'invoice_id': 2، 'invoice_payment': 3400}]}'

نقوم بتخزين عدد من قيم السلسلة وكائن JSON المتسلسل باستخدام نوع بيانات سلسلة Redis.

الآن ، دعنا نستخدم الأمر MGET لاسترداد جميع الاستجابات في كل استدعاء لواجهة برمجة التطبيقات في وقت واحد.

mget dummyhost / العملاء dummyhost / الموردين dummyhost / الفواتير

انتاج:

1 ) 'ريكي ، برنارد ، ماري ، صموئيل ، جو'

اثنين ) 'جيمي ، جيريمي ، أندرو ، هيرا'

3 ) '{' الفواتير ': [{' هوية صوتية ': 1' دفع الفاتورة ': 1000} ، {' هوية صوتية ': اثنين، ' دفع الفاتورة ': 3400}]}'

كما هو متوقع ، يتم إرجاع القيم الموجودة في كل مفتاح كمصفوفة.

تحديد مفتاح غير موجود

كما ذكرنا ، يُرجع الأمر MGET القيمة الخاصة لا شيء عندما يتم توفير مفتاح غير موجود. دعنا نحدد مفتاحًا غير موجود يسمى 'غير موجود' لأمر MGET وننفذ المثال السابق على النحو التالي:

mget dummyhost / العملاء dummyhost / الموردين dummyhost / الفواتير غير موجود

كما ترى ، القيمة الأخيرة في المصفوفة هي لا شيء المرتبط بمفتاح Redis غير الموجود.

بشكل عام ، يعد الأمر MGET مرشحًا مثاليًا عندما نحتاج إلى استرداد قيم السلسلة المخزنة في مفاتيح متعددة في مكالمة واحدة بدلاً من استدعاء الأمر GET عدة مرات.

استنتاج

باختصار ، يعمل الأمر MGET على بنية بيانات سلسلة Redis لإرجاع القيم المخزنة في مفاتيح متعددة في مكالمة واحدة. يقبل مفتاح Redis واحدًا أو أكثر كوسيطات. كما هو موضح ، يعمل الأمر MGET في تعقيد الوقت O (N). أوضحت لك حالة الاستخدام كيفية استخدام الأمر MGET لجلب العديد من استجابات API المخزنة على مفاتيح متعددة بكفاءة.