مساحة المفاتيح (مخزن البيانات الموزع)

مثال على مساحة المفاتيح مع عدد من عائلات الأعمدة.

مساحة المفاتيح (أو نطاق المفاتيح ) في مخزن بيانات NoSQL هي كائن يجمع جميع عائلات الأعمدة في تصميم معين. [ 1 ] [ 2 ] وهي المجموعة الخارجية للبيانات في مخزن البيانات. [ 3 ] وهي تشبه مفهوم المخطط في أنظمة إدارة قواعد البيانات العلائقية . [ 4 ] عادةً، توجد مساحة مفاتيح واحدة لكل تطبيق.

بناء

قد تحتوي مساحة المفاتيح على عائلات أعمدة أو أعمدة فائقة . يحتوي كل عمود فائق على عائلة أعمدة واحدة أو أكثر، وتحتوي كل عائلة أعمدة على عمود واحد على الأقل. تُعد مساحة المفاتيح أعلى مستوى تجريد في مخزن البيانات الموزع . وهذا أمر أساسي للحفاظ على الاستدلالات الهيكلية في استرجاع البيانات الديناميكي. [ 5 ] يتم دمج خوارزميات بروتوكول الترحيل المتعددة ضمن هذا الإطار البسيط. [ 6 ]

مقارنة مع أنظمة قواعد البيانات العلائقية

تُشابه مساحة المفاتيح أهمية المخطط في قواعد البيانات. ولكن على عكس المخطط، لا تُحدد مساحة المفاتيح بنيةً مُحددة، كما هو الحال في نموذج الكيانات والعلاقات المُستخدم على نطاق واسع في نماذج البيانات العلائقية . فعلى سبيل المثال، قد تحتوي مساحة المفاتيح على عائلات أعمدة، لكل منها عدد مختلف من الأعمدة، أو حتى أعمدة مختلفة. لذا، فإن عائلات الأعمدة التي تُشبه مفهوم الصف في قواعد البيانات العلائقية لا تُحدد بنيةً ثابتة. والفرق الوحيد بينها وبين المخطط هو أنها تحتوي أيضًا على عدد من "الكائنات"، وهي الجداول في أنظمة إدارة قواعد البيانات العلائقية، وعائلات الأعمدة أو الأعمدة الرئيسية في هذه الحالة.

لذا، في مخازن البيانات الموزعة، يقع العبء الكامل للتعامل مع الصفوف التي قد تتغير من تحديث مخزن البيانات إلى آخر على عاتق المبرمجين.

أمثلة

كمثال، نعرض عددًا من مجموعات الأعمدة في مساحة مفاتيح. CompareWithتحدد الكلمة المفتاحية كيفية إجراء مقارنة الأعمدة. في هذا المثال، تم اختيار معيار UTF-8 . توجد طرق أخرى للمقارنة، مثل AsciiTypeو BytesTypeو LongTypeو TimeUUIDType.

<Keyspace Name= "DeliciousClone" > <KeysCachedFraction> 0.01 </KeysCachedFraction> <ColumnFamily CompareWith= "UTF8Type" Name= "Users" /> <ColumnFamily CompareWith= "UTF8Type" Name= "Bookmarks" /> <ColumnFamily CompareWith= "UTF8Type" Name= "Tags" /> <ColumnFamily CompareWith= "UTF8Type" Name= "UserTags" /> <ColumnFamily CompareWith= "UTF8Type" CompareSubcolumnsWith= "TimeUUIDType" ColumnType= "Super" Name= "UserBookmarks" /> </Keyspace>

يُظهر مثال آخر نموذج بيانات مبسط لنسخة من تويتر :

<Keyspace Name= "TwitterClone" > <KeysCachedFraction> 0.01 </KeysCachedFraction> <ColumnFamily CompareWith= "UTF8Type" Name= "Users" /> <ColumnFamily CompareWith= "UTF8Type" Name= "UserAudits" /> <ColumnFamily CompareWith= "UTF8Type" CompareSubcolumnsWith= "TimeUUIDType" ColumnType= "Super" Name= "UserRelationships" /> <ColumnFamily CompareWith= "UTF8Type" Name= "Usernames" /> <ColumnFamily CompareWith= "UTF8Type" Name= "Statuses" /> <ColumnFamily CompareWith= "UTF8Type" Name= "StatusAudits" /> <ColumnFamily CompareWith= "UTF8Type" CompareSubcolumnsWith= "TimeUUIDType" ColumnType= "Super" Name= "StatusRelationships" /> </Keyspace>

مراجع

  1. رونالد ماثيز (18 مارس 2010). "تثبيت واستخدام أباتشي كاساندرا مع جافا - الجزء 2 (نموذج البيانات): مساحات المفاتيح" . سوديسو - حلول تطوير البرمجيات. مؤرشف من الأصل في 3 فبراير 2014. تم الاطلاع عليه في 28 مارس 2011. مساحات المفاتيح بسيطة للغاية، ومن وجهة نظر إدارة قواعد البيانات العلائقية ، يمكنك مقارنتها بمخطط قاعدة البيانات، حيث يكون لديك عادةً مخطط واحد لكل تطبيق. تحتوي مساحة المفاتيح على عائلات الأعمدة. لاحظ، مع ذلك، أنه لا توجد علاقة بين عائلات الأعمدة، فهي مجرد حاويات منفصلة.
  2. "نظرة عامة: المصطلحات/الاختصارات: مساحة المفاتيح" . ويكي كاساندرا. مؤرشف من الأصل بتاريخ 23 يوليو 2013. تم الاطلاع عليه بتاريخ 31 مارس 2011. [مساحة المفاتيح] تحتوي على عائلات أعمدة متعددة.
  3. آرين سركيسيان (23 أغسطس 2010). "ما هو العمود الفائق؟ مقدمة لنموذج بيانات كاساندرا" . مدونة آرين سركيسيان. مؤرشف من الأصل في 31 ديسمبر 2010. تم الاطلاع عليه في 25 مارس 2011. مساحة المفاتيح هي المجموعة الخارجية لبياناتك. جميع عائلات الأعمدة الخاصة بك توضع داخل مساحة المفاتيح. من المحتمل أن تُسمى مساحة المفاتيح الخاصة بك باسم تطبيقك.
  4. جاي هاريسون (23 أغسطس 2010). "اللعب مع كاساندرا وأوراكل" . المصطلحات في قواعد بيانات NoSQL. مقتطفات من موقع جاي هاريسون الإلكتروني . تم الاطلاع عليه بتاريخ 25 مارس 2011. في كاساندرا:
    • مساحة المفاتيح تشبه المخطط
    • تُشبه عائلة الأعمدة الجدول إلى حد كبير
    قد يكون الأمر مربكًا، حيث تستخدم كل قاعدة بيانات NoSQL المصطلحات بشكل مختلف عن بعضها البعض، وتستخدم جميعها المصطلحات بشكل مختلف عن قواعد البيانات العلائقية.
  5. فاجين وآخرون (2009). "التجزئة القابلة للتوسيع - طريقة وصول سريعة للملفات الديناميكية". معاملات ACM لأنظمة قواعد البيانات . 41 (3): 315-344 . 
  6. فو وآخرون . "قضايا أمنية وحلول لبروتوكولات إدارة المفاتيح في شبكة الترحيل متعددة القفزات". معاملات IEICE في الاتصالات . 94 (5): 1295-1302 .