Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon كيف يعمل تقسيم البيانات في مجموعة Redis


كيف يعمل تقسيم البيانات في مجموعة Redis


إليك كيفية عمل تقسيم البيانات في مجموعة Redis:

مشاركة مجموعة Redis

يستخدم Redis Cluster آلية تقسيم مدمجة لتقسيم البيانات تلقائيًا عبر عقد Redis المتعددة. الجوانب الرئيسية لكيفية عمل ذلك هي:

1. تقسيم مساحة المفاتيح: يتم تقسيم مساحة المفاتيح بالكامل في مجموعة Redis إلى 16,384 فتحة تجزئة. فتحات التجزئة هذه مسؤولة عن توزيع البيانات عبر المجموعة.

2. تعيين فتحات التجزئة: يتم تعيين مجموعة فرعية من فتحات التجزئة البالغ عددها 16,384 فتحة تجزئة لكل عقدة Redis في المجموعة. يتم تخصيص فتحات التجزئة للعقد من خلال وظيفة التجزئة.

3. وضع البيانات: عندما يريد العميل تخزين زوج من المفاتيح والقيمة، يقوم العميل بحساب قيمة التجزئة للمفتاح باستخدام وظيفة التجزئة المحددة مسبقًا. يتم بعد ذلك تعيين قيمة التجزئة هذه إلى إحدى فتحات التجزئة البالغ عددها 16384. يتم بعد ذلك تخزين البيانات على عقدة Redis التي تمتلك فتحة التجزئة هذه.

4. النسخ المتماثل: يوجد لكل فتحة تجزئة عقدة أساسية مسؤولة عن تقديم طلبات القراءة/الكتابة. بالإضافة إلى ذلك، هناك عقد متماثلة واحدة أو أكثر تحتفظ بنسخة من البيانات للتوفر العالي.

5. إعادة التوزيع التلقائي: عند إضافة العقد أو إزالتها من المجموعة، تتم إعادة موازنة تعيينات فتحة التجزئة تلقائيًا لضمان التوزيع المتساوي للبيانات والتحميل عبر المجموعة.

فوائد مشاركة مجموعة Redis

1. قابلية التوسع: من خلال توزيع البيانات عبر عقد متعددة، يمكن لمجموعة Redis التوسع للتعامل مع كميات كبيرة من البيانات وإنتاجية عالية.

2. التوفر العالي: يضمن النسخ المتماثل لفتحات التجزئة عبر العقد الأساسية والنسخ المتماثلة التوفر العالي، حيث يمكن للعملاء الاستمرار في الوصول إلى البيانات حتى في حالة فشل بعض العقد.

3. وصول العميل الشفاف: تتم معالجة تعيين فتحة التجزئة بشفافية بواسطة مجموعة Redis، بحيث يمكن للعملاء الوصول إلى البيانات دون الحاجة إلى معرفة تفاصيل التقسيم الأساسي.

4. الإدارة التلقائية: تقوم Redis Cluster بأتمتة إدارة التجزئة، بما في ذلك إعادة توازن البيانات مع نمو المجموعة أو تقلصها.

بشكل عام، تسمح بنية التجزئة الخاصة بـ Redis Cluster بتوفير مخزن بيانات موزع قابل للتطوير ومتاح وسهل الإدارة، مما يجعله مناسبًا تمامًا للتطبيقات ذات أحجام البيانات الكبيرة أو متطلبات الإنتاجية العالية.

الاستشهادات:
[1] https://scalegrid.io/blog/intro-to-redis-sharding/
[2] https://redis.io/redis-enterprise/technology/redis-enterprise-cluster-architecture/
[3] https://yandex.cloud/en/docs/managed-redis/concepts/sharding
[4] https://redisson.org/glossary/sharding.html
[5] https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/CacheNodes.NodeGroups.html