بمُرور الوقت، يُمكن أن ينمو حجم قاعِدة بَيانات Redis بشكل كبير. في بعض الأحيان، من أجل تذكّر بَعض العناصر أو لفهم المنطق، قد تَحتاج إلى الحُصول على جميع المفاتيح في قاعِدة البيانات. في Redis، هذه لَيست مُشكلة على الإطلاق. ومع هذا، سأقدّم لك أساسيّات Redis والأوامر قبل أن أعطيك أمر جاهز.
ما هو Redis؟
في عالم تكنولوجيا المَعلومات، كانَت قواعِد بَيانات NoSQL مَوجودة مُنذ فَترة طويلة. في البَداية، كان يتم التّعامل مَعها في البداية على أنّها فُضوليّة، ثُم أبهجت المُستخدمين بِكفاءتها في المَشاريع الصّغيرة. اليوم، يُمكن رؤية هذه الحُلول كل يوم في المَشاريع الكَبيرة بحيث تأتي الكَفاءة في المَقام الأوّل.
Redis هي قاعِدة بَيانات ذَات قِيمة رئيسيّة تُخزّن البيانات في الذاكرة وبالتّالي فهي فعّالة للغاية. ولكن وراء هذه الكفاءة يَكمن تقلّب البيانات، والذي قد لا يكون مقبول في بَعض الحالات. يَسمح لك Redis بتهيئة قاعِدة البَيانات وتَفريغ البَيانات في بعض الأحيان إلى ملَف على القُرص الصّلب. هناك عواقب للقيام بذلك، وستؤدّي إلى تدهور الأداء.
لمَزيد من المعلومات حَول الحُصول على جميع المفاتيح لـ Redis، ألقِ نظرة على مقالنا ما هو Redis.
تَطبيق Redis
لَدى Redis العَديد من الإستخدامات، على سَبيل المِثال
- ذاكِرة التّخزين المؤقّت: الأَكثر إستخدام نظرًا لكفائته العالِية جِدًا.
- دَعم الإستعلامات: هذا حَل مُمتاز لنظام طابور بسيط، على الرّغم من أنّه أقل شيوعًا.
- َخزين جَلسات المُستخدم: هو حَل بَديل لإستخدام الملفّات أو قاعدة البَيانات.
تحتاج إلى بيئة لإستكشاف REDIS. إقتراحي هو إستخدام Docker أو Linux. يُمكنك تثبيت Docker أو Linux على جِهاز إفتراضي إذا كُنت تُريد القيام بذلك على نظام ويندوز. فلا أريد التّركيز على الإختلافات في تَثبيت وإصدارات REDIS، لأن هناك العديد من تَوزيعات لينكس.
عمليّة التثبيت بسيطة للغاية وتتلخص في الأمر التالي.
sudo apt-get install redis-server
وبعد إكتمال التّثبيت، إذا لَم تَظهر رسالة خطأ: يجب تَثبيت REDIS وتَشغيله.
على المنفذ القياسي 6379 يُمكننا الإتصال بـ REDIS. لدينا العديد من المكتبات تحت تصرّفنا، إعتمادًا على لُغة البَرمجة. يأتي خادم REDIS مع تَطبيق عميل، يُمكننا إستخدامه لإختبار طريقة عمله. إعتمادًا على طريقة تثبيت الخادم، نبدأ تشغيل العَميل بِشكل مُختلف.
الخطوة الأولى في إختيار خادِم VPS الخاصّ بِك هي تثبيت نظام التّشغيل. سيكون لينكس في مُعظم الحالات. إقرأ هذا المقال. وأكتشف أَفضل تَوزيعات لينكس للإستضافة!
لقد حان الوقت لتعلّم الأوامر الأساسيّة، لأنّ لَديك بالفعل خادم وتطبيق يَسمح لك بالعَمل مع REDIS.
الأَوامر الأساسيّة
تَعيين مفتاح
يَقوم الأَمر SET hosting بتَعيين قِيمة للمِفتاح الذي تُحدده. على سَبيل المِثال، يقوم الأمر SET hosting ‘UltaHost‘ بإنشاء مفتاح الإستضافة بالقيمة ‘UltaHost’. يتم إرجاع رِسالة تُشير إلى نَجاح حِفظ البَيانات في قاعِدة البيانات عِند تنفيذ الأمر.
الحُصول على مِفتاح
يَقرأ الأَمر القِيمة المَوجودة تَحت المَفتاح المُحدّد. سيؤدّي تَنفيذ الأَمر إلى إرجاع القَيمة تَحت المِفتاح المُحدد (على سَبيل المِثال، ”إستضافة“). لو كُنت تُشير إلى مِفتاح الغير مَوجود، فستحصل على خَطأ (لا شَيء).
حذف المفتاح
يؤدّي هذا الأمر إلى إزالة المفتاح. ستتلقّى رِسالة ”(عدد صحيح) 1“ بعد الإزالة. تَحصُل على ”(عَدد صَحيح) 0“ إذا لَم يَعمل شيء ما.
مِفتاح EXIST
يتحقّق مما إذا كان المِفتاح المُعطى أو قائِمة المَفاتيح بأَكملها موجودة أم لا. سَتحصل على القيّمة (عَدد صَحيح) 1 إذا كان المِفتاح موجود و(عدد صَحيح) 0 إذا لم يكُن موجود. يُمكنك تَمرير قائمة مفاتيح بالإضافة إلى التّحقق مِن وجود مِفتاح واحد.
ثواني مفتاح EXPIRE
يحدّد هذا مِقدار الوَقت الذي سيَتم بَعده إزالَة المِفتاح والقِيمة مِن قاعِدة البَيانات. عَلى سَبيل المِثال، EXPIRE user_1234 60 سَيضبط الوَقت عَلى ستين ثانِية لـ user_1234.
نَمط المَفاتيح
يَبحث عَن الحُصول على جميع المفاتيح التي تطابق النّمط في الإستعلام. على سَبيل المِثال، سيقوم KEYS user_* بإرجاع قائِمة بالمَفاتيح التي تُطابق النّمط الذي قمّت بتحديده. ستظهر لك رسالة (قائمة أو سجل فارغ) إذا لم يَكُن هُناك مفتاح مطابق.
مِفتاح PERSIST
تَعطيل إنتهاء صلاحيّة المَفتاح أو إزالَة وَقت إنتهاء صلاحيّة المفتاح.
إعادة تَسمية المَفتاح مفتاح جديد
يغير هذا الأمر إسم المِفتاح إلى إسمه الجَديد.
نَوع المفتاح
يُرجع نَوع القِيمة المُخزّنة تَحت المَفتاح المُحدّد. ليس هذا هو النّوع الوحيد الذي يُمكن لـ REDIS تَخزينه، ولكنّك حتى الآن لم تعمل إلا مع السلاسل. بالنّسبة لنَوع بيانات معيّن يُمكنك إستخدام أوامر خاصة.
أَنواع البَيانات
دَعم الأَنواع المُتقدّمة في REDIS هو إمتداد لقُدرات قاعدة البيانات.
السلاسل
رُبما تَكون سِلسلة الأَحرف هي أكثر أنواع البيانات إستخدامًا في العالم. تَرجع شعبيتها إلى حَقيقة أنّه يُمكنك إستخدامها لتَخزين JSON و XML وأيّ نَوع آخر من النّصوص، ممّا يَعني أنّه لَيس لَديك أيّ قُيود تَقريبًا. يَضمن REDIS الثبات من خِلال عَدم تَحليل مُحتوى البَيانات المَنقولة بأيّ شَكل من الأشكال.
لكُل نَوع من البيانات، ستجد الأوامر المُصمّمة للعمل مع هذا النوع من البيانات.
القوائم
هو نَوع يُمكنك مُقارَنته بمَصفوفة مِن قِيم السّلاسل. يَتم الوُصول إلى البَيانات في القائِمة بتَرتيب إضافيّ أو حَسب رَقم الفَهرس. ويُمكن أن تَكون القوائِم نَفسها مَجموعات عِملاقة. يُمكن أن تَحتوي على أَكثر مِن أربعة مليار عُنصر.
أنشئ قائمة بإضافَة العُنصر الأوّل إلى القائمة. إستخدم الأمر LPUSH أو RPUSH للقيام بذلك. إضافةً عُنصر واحِد أو أَكثر إلى القائِمة هي مُهمّة كِلا الأمرين. الفَرق هو أنّ الأَمر LPUSH يُضيف عُنصرًا إلى بِداية القائِمة، بَينما يُضيف الأَمر RPUSH عُنصرًا إلى نِهاية القائِمة.
التّجزئة
هذه مصفوفات إرتباطيّة من العناصر. حتى الآن، كانت الطّريقة الوحيدة لإضافة العَناصر حتّى الآن هي إضافة عَناصر بمِفتاح وقِيمة. مِن خِلال تَحديد سمات لمِفتاح مُعيّن، توسّع المَصفوفات الإرتباطيّة الإحتمالات. هذا يجعل الأمر أشبه بالعَمل مع السجلّات في قاعِدة البيانات.
يُمكنك تعريف عُنصر جديد. سَيكون هذا تعيين بسيط لمُستخدم من قاعدة البيانات. سيحتوي على السِمتين الإسم والبريد الإلكتروني. سَيكون المِفتاح هو المعرّف مسبوقًا بالبادئة user_.
hmset user_1 name “Jon Snow” email [email protected]
بعد إِضافة مُستخدم بهذهِ الطّريقة، يُمكنك عَرض جَميع المَعلومات بإستخدام الأَمر HGETALL. والنّتيجة هي قائمة تعرض الحَقل واحد تلو الآخر، متبوع بالقيمة.
المجموعات
بإستثناء حَقيقة أنها تَحتوي على قيم فريدة وغير مُرتبة، فإن المجموعات تشبه إلى حدّ كَبير القوائم. هذا يَجعلها نوعًا أَكثر كَفاءة من القَوائم، وإذا كُنت تُخطط للحُصول على الكَثير من العَناصر التي ستعدلها أو تبحث عنها كثيرًا، فستحتاج إلى إستخدام المَجموعات.
أنت بحاجة إلى خادم مُحسَّن وسَريع لكي يَعمل Redis بفعاليّة. إستمتع بأداء Redis من خلال إختيار الإستضافة من UltaHost!
كيفيّة التحقّق من جَميع المَفاتيح في Redis؟
يَمكنني البدء في العمل الآن بَعد أن تعرّفت على المَفاهيم الأساسيّة لـ Redis. للحُصول على هَدف معيّن، ستستخدم الأمر GET، كما تَعلم بالفعل. ومع ذلك، تَحتاج إلى إستخدام أمر مُختلف لسَرد جَميع المَفاتيح في قاعِدة بَيانات Redis: KEYS. ما عليك سوى كتابة KEYS متبوعًا بنمط، وسَيقوم Redis بالبَحث في قاعِدة البَيانات عن جَميع المَفاتيح التي تُطابق هذا النّمط.
إذا كُنت تُريد قائِمة بكافة المَفاتيح، إستخدم عَلامة النّجمة (*). لذا فإن الأمر
KEYS *
سيعيد جميع المَفاتيح في قاعِدة البَيانات.
يُمكنك أَيضًا إستخدام redis-cli للحُصول على قائِمة بجَميع المَفاتيح بإستخدام الصّيغة التّالية:
$ redis-cli KEYS \*
أو يُمكنك تَحديد المَفاتيح التي تم إِرجاعها بإستخدام نَمط. على سَبيل المِثال
$ redis-cli KEYS V*
سَيعيد جميع السجلّات التي تَبدأ بالحَرف V
الخلاصة
يَحتوي REDIS على الكثير من الإمكانات لقاعِدة بَيانات ذات قيّمة مفتاحية، والعَناصر الواردة هُنا تهدف فقط إلى تقديم الأساسيّات. ستحتاج إلى أن تُصبح على دراية كاملة بكل هذا قَبل أن تتمكّن من الإنتقال إلى أَشياء أَكثر تقدمًا، مِثل تَنفيذ ذاكِرة تَخزين مؤقّت لتَطبيقك أو إعداد نِظام طابور بَسيط.
هَل تبحث عن منصّة إستضافة المواقع مع Redis؟ إختر UltaHost! قُم بزيادة سُرعة المواقع الإلكترونية والتّطبيقات الخاصّة بك من خِلال التّخزين المؤقّت المُدمج في كافة خُطّط الإستضافة والخَوادم مع أقراص SSD NVMe. فَريق الدّعم لدينا متاح على مدار الساعة طوال أيام الأسبوع. نحن نركز على التّوسع التلقائي والأداء والأمان من خِلال بنيتنا التحتيّة القويّة. إسمح لنا أن نُريك الفرق! ألقِ نظرة على خططنا!