سدنا (پایگاه داده)
مخزن | |
---|---|
نوشتهشده با | سی, C++ |
سیستمعامل | چندسکویی |
نوع | پایگاه داده اکسامال |
مجوز | مجوز آپاچی ۲.۰ |
سدنا یک سیستم مدیریت پایگاه داده متنباز است که ذخیره سازی محلی داده های اکسامال را فراهم میکند. تصمیمات طراحی متمایز به کار رفته در سدنا عبارتند از: (الف) استراتژی ذخیره سازی خوشه بندی مبتنی بر طرحواره برای داده های اکسامال و (ب) مدیریت حافظه بر اساس فضای آدرس لایهای. [۱]
سازمان داده
[ویرایش]سازماندهی داده ها در سدنا با هدف ایجاد تعادل در عملکرد بین جستجوهای اکسامال و اجرای به روز رسانی ها طراحی شده است. [۱] دو تصمیم اصلی طراحی در سازمان داده در سدنا عبارتند از:
- اشاره گرهای مستقیم برای نشان دادن روابط گره اکسامال مانند روابط والدین، فرزند و خواهر و برادر استفاده می شوند. برخلاف رویکردهای مبتنی بر رابطه که مستلزم انجام اتصالات برای پیمایش یک سند اکسامال هستند، پیمایش در سدنا با دنبال کردن یک اشارهگر مستقیم انجام میشود.
- یک راهبرد ذخیره سازی مبتنی بر طرحواره اکسامال توصیفی ایجاد شده است که شامل گره های خوشه بندی یک سند اکسامال با توجه به جایگاهشان در طرحوارههای توصیفی سند است. بر خلاف طرحواره تجویزی که از قبل شناخته شده است و معمولاً در طرحواره DTD یا XML مشخص می شود، طرح توصیفی از داده ها به صورت پویا تولید می شود (و به صورت تدریجی نگهداری می شود) و بیانگر یک خلاصه ساختاری مختصر و دقیق برای دادهها است. استفاده از طرحواره توصیفی به جای نسخه تجویزی، استراتژی ذخیره سازی را برای هر سند اکسامال قابل اجرا میکند، حتی اسنادی که فاقد طرحواره تجویزی است.
شکل زیر اصول کلی سازماندهی داده ها در سدنا را نشان میدهد. طرحواره توصیفی که به صورت درختی از گرههای طرحواره نمایش داده میشود، جزء مرکزی در سازمان داده است. هر گره طرحواره دارای یک نوع گره اکسامال [۲] (به عنوان مثال عنصر ، ویژگی ، متن و غیره) است و دارای یک اشاره گر برای بلاک های داده است که گره های اکسامال مربوط به گره طرحواره داده شده را ذخیره می کند. بسته به نوع گره، برخی از گره های طرحواره نیز با نام (مانند گره های عنصر ، گره های ویژگی) برچسب گذاری می شوند. بلوک های داده مربوط به یک گره طرحواره مشترک از طریق اشاره گرها به یک لیست دو طرفه متصل می شوند. توصیفگرهای گره ها در یک لیست از بلوکها تا حدی بر اساس ترتیب سند مرتب شدهاند. [۳]
<library>
<book>
<title>Foundations of Databases</title>
<author>Abiteboul</author>
<author>Hull</author>
<author>Vianu</author>
</book>
<book>
<title>An Introduction to Database Systems</title>
<author>Date</author>
<issue>
<publisher>Addison-Wesley</publisher>
<year>2004</year>
</issue>
</book>
...
<paper>
<title>A Relational Model for Large Shared Data Banks</title>
<author>Codd</author>
</paper>
</library>
استنادها
[ویرایش]
- ↑ ۱٫۰ ۱٫۱ Ilya Taranov et al. Sedna: native XML database management system (internals overview). In ACM SIGMOD '10: Proceedings of the 36th international conference on Association for Computing Machinery's Special Interest Group on Management of Data, pages 1037-1045, New York, NY, USA, 2010. ACM.
- ↑ M.F. Fernandez, A. Malhotra, J. Marsh, M.Nagy, and N. Walsh (editors). XQuery 1.0 and XPath 2.0 Data Model (XDM). W3C Recommendation, World Wide Web Consortium, January 2007.
- ↑ S. Boag, D. Chamberlin, M. F. Fernandez, D. Florescu, J. Robie, and J. Simeon (editors). XQuery 1.0: An XML query language. W3C recommendation, World Wide Web Consortium, January 2007