مصطلح native XML database أو ما يسمى قواعد بيانات XML الأصلية ظهر أول مرة في الحملة التسويقية لشركة Tamino وبسبب نجاح هذه الحملة انتشر مفهوم قواعد بيانات الـ XML انتشارا واسعا.
قواعد بيانات XML الأصلية يجب أن تحقق ما يلي:
تعرف نموذج منطقي لمستندات الــ XML يقوم بتخزين واسترجاع المستندات ويجب أن يتضمن العناصر والخصائص (الصفات)والــ PCDATA ويأخذ بعين الاعتبار ترتيب المستند .من الأمثلة عن هذه النماذج XPath
مستند الـ XML هو الوحدة الأساسية للتخزين المنطقي لها تماما كما نجد في قواعد البيانات العلائقية أن السطر هو الوحدة الأساسية للتخزين المنطقي .
لا تحتاج لنموذج تخزين فيزيائي مخصص مثلا يمكن أن تبنى على قاعدة بيانات علائقية أو أن تخزن في ملفات مفهرسة ومضغوطة.
بنية قواعد البيانات Native XML:
يوجد نوعين من قواعد البيانات Native XML وفقا للبنية وهما text-based و model-based
• Text-based : هي قواعد البيانات التي تخزن الــ XML كنص وذلك يمكن أن يكون ملف في نظام الملفات أو BLOB في قواعد البيانات العلائقية أو نمط تخزين نصي خاص (من المهم أن نلحظ أن قواعد البيانات التي أضافت دعم للــ XML من خلال CLOB Character Large Object تمثل قواعد بيانات XML أصلية )
من المعروف أن قواعد البيانات text-based native XML هي عبارة عن فهارس تسمح لمحرك الاستعلام أن يقفز بسهولة إلى أي نقطة من المستند مما يعطي هذه القواعد سرعة هائلة عند استرجاع المستندات أو أجزاء منها ويعود السبب في ذلك إلى وجود فهرس وحيد (index lookup) و وضع رأس القرص مرة واحدة وذلك بسبب أن الأجزاء الضرورية من المستند تخزن على بايتات متجاورة من القرص وبالتالي يتم استرجاع المستند أو أجزاء منه بعملية قراءة واحدة على عكس ما يتم في قواعد البيانات العلائقية أو بعض قواعد بيانات XML الأصلية من النمط model-based حيث يتم تجميع المستند من أجزاء مما يتطلب فهارس (index lookup) عديدة وكذلك عمليات قراءة متعددة.
قواعد بيانات XML الأصلية text-based مشابهة لقواعد البيانات الهيكلية (hierarchical) حيث كل منهما تفوق قواعد البيانات العلائقية في استرجاع البيانات وفقا لهيكلية معرفة مسبقا ولكنهما يمكن أن تواجها مشاكل في الأداء عند استرجاع البيانات بصيغ أخرى مثل عكس الهيكلية أو استرجاع جزء منها على الرغم من أن هذا الأمر غير مثبت بعد إلا أن قواعد البيانات العلائقية تسمح لكل الاستعلامات بنفس درجة التعقيد أن تنفذ بنفس الزمن .
• Model-based : بدلا من تخزين مستند الـ XML كنص فإنه يتم بناء object model داخلي للمستند وتخزين هذا الــ model , كيفية تخزين هذا النموذج (model) تعتمد على قاعدة البيانات . بعض قواعد البيانات تخزن الــ model في قاعدة بيانات علائقية أو غرضية التوجه مثلا تخزين الـ DOM في قاعدة بيانات علائقية ينتج جداول مثل :
Elements, Attributes, PCDATA, Entities, EntityReferences
قواعد أخرى تستخدم أنماط تخزين خاصة بها.
قواعد بيانات model-based native XML المبنية على قواعد بيانات أخرى لها أداء مشابه لتلك القواعد .
أما قواعد بيانات model-based native XML التي تستخدم أنماط تخزين خاصة بها فأداؤها مشابه لــ text-based عند استرجاع البيانات بنفس الترتيب الذي خزنت به وذلك لأنها تستخدم مؤشرات فيزيائية بين العقد (text-based أسرع عند استرجاع المستندات كنص أما model-based فهي أسرع عند استرجاع المستند كأشجار DOM )و بأسلوب مشابه للــ text-based فإن الـــ model-based تواجه مشاكل عند محاولة استرجاع البيانات بترتيب مختلف عن الترتيب الذي خزنت فيه .
>>>>يتبع,, مميزات ,,,منتجات,,,,
اخواني ,,,,,
هنا بدأت مشاركتي تأخذ المنحى العلمي البحثي,,,
ماأذكره عبارة عن دراستي لمجموعة من الكتب ومقالات البحث العلمية في هذا المجال,,,
وعلى هذا فهي تحتمل الخطأ والصواب,,,
وللامانة أنا ساقوم بذكر المراجع المعتمدة والله ولي التوفيق,,,
السلام عليكم