در دنیای تجاری امروز، حجم عظیم داده هایی که برای بسیاری از کاربردها و نرم افزارها مورد نیاز است با ساختار سنتی بانک های اطلاعاتی قابل پیاده سازی نیست. بنابراین پایگاه داده های NoSQL به معنای Not only SQL)نه تنها SQL (پا به عرصه ظهور گذاشتند که اساس کار آنها بر تعریف جدول و استفاده از زبانSQL برای مدیریت و تغییر داده ها نمی باشد. هدف این پایگاه داده ها بهبود کاستی ها و محدودیت های پایگاه داده های رابطه ای از قبیل عدم مقیاس پذیری، عدم کفایت سرعت برای داده های حجیم، عدم توانایی تحمل پذیری افرازبندی و عدم پشتیبانی از داده های با حجم بالا است. این نوع پایگاه داده ها در چهار مدل داده ای کلید مقدار، سندگرا، ستونگرا و گرافی به وجود آمده اند.
MongoDB یک پایگاه داده غیر رابطه ای سندگرا و کد باز است که مقیاس پذیری اتوماتیک، کارایی و دسترس پذیری بالا را تامین می کند. هدف از این پژوهش، ارائه گرامری برای تبدیل ساختار سند پایگاه داده MongoDB به شمای XMLمی باشد. از آنجا که در دنیای واقعی، سیستمهای کامپیوتری و بانکهای اطلاعاتی شامل اطلاعات در فرمهای ناسازگار هستند، یکی از وقت گیرترین چالشها برای گسترش دهندگان، انتقال اطلاعات بین چنین سیستم هایی شده است. به دلیل اینکه XML یک روش مستقل از سخت افزار و نرم افزار برای انتقال و توزیع اطلاعات می باشد، بنابراین با استفاده از XML ، اطلاعات تجاری می تواند بر روی محیط اینترنت به آسانی مبادله شود. به کمک XML ایجاد و ساخت اطلاعاتی که برنامه های کاربردی مختلف بتوانند با آن کار کنند بسیار آسان می شود.
برای نیل به این اهداف در این پژوهش ابتدا دسته بندی دستورات در پايگاه داده MongoDBمورد مطالعه قرار گرفت و سپس قواعد نحوی دستورات پايگاه داده MongoDB و معادل آنها در XQuery و SQL استخراج شد. در این تحقیق دستورات Remove ، Update وInsert به صورت فازی در زبان XQuery پوشش داده شدند و در مرحله بعد نمايش مفهوم عدم قطعیت در XMLمورد بررسی قرار گرفت و سپس به بررسی چند پرس وجوی نمونه پرداخته شد و به منظور غلبه بر محدودیت های XQuery ، منطق فازی در عملیات XQuery وارد گردید. همچنین اینکه XQuery فازی براساس مجموعه-های فازی کار می کند، با در نظر گرفتن چندین مجموعه فازی پرس وجوی داده مورد بررسی قرار گرفت به طور کلی ابتدا مفاهیم پیشرفته در پایگاه داده مبتنی بر نوع NoSQL و بخصوص پایگاه دادهMongoDB معرفی گردیدو در ادامه با بررسی کارهای پیشین جایگاه روش پیشنهادی در تحقیق مشخص شد. در روش پیشنهادی نسخه توسعه یافتگی XML ارائه گردید و با بهره گیری از یک مطالعه موردی مزایا و معایب روش پیشنهادی مشخص شد و در نهایت پیاده سازی در PMF Fuzzy XML Editorانجام پذیرفت.
بیان مساله
در این پژوهش بر روی پایگاه داده سندگرای مونگو دی بی که کد باز و رایگان است، تمرکز خواهد شد. مونگو دی بی یک پایگاه داده غیر رابطه ای سندگرا و کد باز است که مقیاس پذیری اتوماتیک، کارایی و دسترس پذیری بالا را تأمین می کند و در سال 2009 به زبان C++ نوشته شده است. نام این پایگاه داده از کلمه هومونگوس به معنی عظیم مشتق شده است[8]. مونگو دی بی برخلاف پایگاه داده-های رابطه ای بدون پیش نویس می باشد. به این معنی که اسناد درون یک مجموعه، اجباری به داشتن فیلدهای یکسان و نیز ساختاری یکسان ندارند. همچنین فیلدهای مشترک در اسناد یک مجموعه ممکن است انواع دادهای مختلف داشته باشند.
-4 اهداف تحقیق:
هدف از این پژوهش، ارائه گرامری برای تبدیل ساختار سند پایگاه داده مونگو دی بی به شمای ایکس م ال میباشد. از آنجا که در دنیای واقعی، سیستمهای کامپیوتری و بانکهای اطلاعاتی شامل اطلاعات در فرمهای ناسازگار هستند، یکی از وقتگیرترین چالشها برای گسترش دهندگان، انتقال اطلاعات بین چنین سیستمهایی شده است. ایکس ام ال به معنی زبان نشانه گزاری توسعه پذیر و قابل گسترش میباشد. در ابتدا لازم است با کلمات تشکیل دهنده ایکس ام ال آشنا شويم.
مارک آپ به معنی "نشانه گزاری" اطلاعات می باشد. قدمت استفاده از مارک آپ به قبل از کامپيوتر بر می گردد. مثلاً در دنيای نشر از علائم خاصی در متن های ويرايش شده استفاده تا به پردازنده متن (انسان و يا ماشين) اعلام شود، چه نوع عملياتی را در رابطه با اطلاعات میبايست انجام دهد. اچ تی ام ال يکی از زبانهای کلاسيک نشانه گذاری است. مثلاً با افزودن تگ < بولد > به مرورگر اعلام می-شود که به چه صورت می بايست اطلاعات نمايش داده شوند.
زبان در مفهوم کلی مجموعه ای از علائم معنی دار است که از طریق آن می توان در برقراری ارتباط و تبادل اطلاعات استفاده نمود. مانند: زبان فارسی، زبان انگلیسی، علائم مورس، زبان کامپیوتر و ... .
با کنار هم قرار دادن دو واژه اشاره شده، به زبان نشانه گذاری می رسیم. زبان نشانه گذاری، به مجموعه ای از کلمات معنی دار و با مفهوم که توسط عده ای (با آگاهی و انتخاب) استفاده می گردد، اطلاق می گردد. اچ تی ام ال، نمونه ای مناسب در اين زمينه است. تمام افرادی که از تگهای اچ تی ام ال استفاده می نمايند، به درستی نسبت به مفهوم و جايگاه هر يک از تگهاآشنائی داشته و با آگاهی کامل آنها را برای بيان خواسته های خود استفاده می نمايند. مثلاً مشخص است که استفاده از تگ < اچ 1 > چه نوع پيامدهایی را به دنبال خواهد داشت. تگ فوق، توسط مولفين صفحات وب آگاهانه انتخاب می گردد و مرورگرها نيز متناسب با تعاريف از قبل مشخص شده، واکنش مناسب خود را در رابطه با نحوه نمايش انجام خواهند داد. يک زبان توسعه پذير ، زبانی است که دارای مکانيزم لازم برای افزودن کلمات به گونه ای است که توسط ساير استفاده کنندگان نيز قابل فهم باشد. در دنيای واقعی و در ارتباط با زبان های طبيعی ما هرگز شاهد چنين وضعيتی نخواهيم بود یعنی افزودن يک واژه با معنی مورد نظر خود و استفاده از واژه با همان معنی توسط ساير استفاده کنندگان. با توجه به تعاريف ارائه شده، يک زبان نشانه گذاری توسعه پذير، می بايست يک زبان نشانه گذاری با قابليت افزودن کلماتی بيشتر باشد. در عمل زبان نشانه گذاری توسعه پذير، به سيستمی برای تعريف تمام زبان های نشانه گذاری با قابليت توسعه وضعيت موجود، اطلاق میگردد.
نگاشت ساختار سند پایگاه داده مونگو دیبی به شمای ایکس ام ال به منظور ارائه یک زمینه مستقل
1. ارائه روشی به منظور ادغام اسناد اف – ایکس ام ال در یکدیگر در پایگاه داده مونگو دیبی به منظور جایگزین نمودن کلید خارجی در پایگاه داده رابطه ای
2. نگاشت تمامی عناصر موجود در پایگاه داده رابطه فازی به اف – ایکس ام ال