• 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
MongoDB چیست؟
#1
پایگاه داده MongoDB یکی ازبهترین پایگاه داده های بدون رابطه ایی می‌باشد که بسیار انعطاف پذیر و قوی و سریع و گسترش پذیر می‌باشد. مدل دادها بصورت json می باشند. قواعد و دستورالعملها همان قواعد نحوی(syntax) جاوا اسکریپت می‌باشند که رابط shell آن از قواعد جاوا اسکریپت پیروی میکند.بنابراین بسیار ساده و آسان می‌باشد. بعضی از ویژگیهای مونگو بسیار شبیه به مدل پایگاه داده sql می باشد، اما بعضی ویژگی‌های در مونگو وجود ندارند. نظیر:join ها یا trigger ها یا تراکنش های چند سطری پیچیده، که پیاده سازی آنها به روش های برنامه نویسی قابل انجام است.


مفاهیم اصلی
سندها یا Documents
سندها همان مفهوم ردیف ها در دیتابیس های رابطه ایی(sql) می باشند

مجموعه ها یا collection
مجموعه ها همان جداول در دیتابیس های رابطه ایی می‌باشد.

دیتابیس
این مفهوم دست نخورده باقی‌مانده و همان مفهوم DB در دیتابیس های رابطه‌ای می‌باشد.


ویژگی ها
سندگرا
سندها بسیار شبیه به نوع داده ایی دیکشنری در زبان‌های برنامه نویسی بوده و به همین منظور برای برنامه نویس بسیار راحت می‌باشد.
قابلیت سندگرا و آرایه ای بودن نیاز به اتصال های اضافی را کاهش داده است.
اسکیمای داینامیک آن باعث ایجاد چندریختی های آسانتر شده
هر سند دارای یک کلید مخصوص “_id” هست که در بین سندهای یک مجموعه یکتا هست.
قدرتمند و سریع
وجود سرعت بسیار زیاد در خواندن و نوشتن داده‌ها
ایجاد ایندکس گذاری بر روی کلیدها(key)
در هر زمانی ممکن است پردازش بصورت offload و منطقی سمت کلاینت انجام گیرد که این طراحی سبب بالا بردن کارایی MongoDB شده.
میرورینگ و کلاسترینگ
مونگو هم چنین دارای سرویس کلاسترینگ می‌باشد.

سرویس کلاسترینگ MongoDB بیشتر برای سازمان و شرکتهایی به کار میرود که برنامه ی آنها تحت هر شرایطی باید اجرا شود و در حالت اجرا باقی بماند حتی زمانی که یکی از سرورها از سرویس خارج شده باشد. در سرویس کلاسترینگ تمامی سرورها همان برنامه و قوانینی را که باقی سرورها اجرا میکنند اجرا خواهند کرد لذا اگر سروری از سرویس خارج شود باقی سرورها بلافاصه شروع به کار خواهند کرد که به آن Failover گفته میشود. زمانی که سرور از سرویس خارج شده دوباره به کار افتاد باقی سرورها آگاه میشوند و روند عادی دوباره ادامه خواهد یافت. به این عمل Failback گفته میشود

گسترش پذیری آسان
زمانی که چند سرور برنامه MongoDB را با یکدیگر اجرا میکنند که نتیجه آن احتمال خطای کمتر و سرعت لود بالاتربرنامه هاست. MongoDB بر پایه scale out بودن طراحی شده است، سندگرا بودن مدل داده‌ها این اجازه را میدهد که داده‌ها به طور جداگانه در روی چندین سرور پخش شوند که داده‌ها و لود کردن یک گروه را به تعادل می‌رساند. توزیع مجدد دسته ها اتوماتیک است که این امکان را میدهد که برنامه نویسان بدون نگرانی از ذخیره داده‌ها روی برنامه نویسی تمرکز کنند به این تکنیک شارد(Shard) گفته می‌شود که مجموعه ها و داده را در بین چندین سرور بصورت خودکار و اتوماتیک انجام می‌دهد.

رابط چندگانه
دارای API های زبان‌های عمومی بوسیله Driverها و shell مونگو می‌باشد.
  پاسخ
تشکر شده توسط :


پرش به انجمن:


کاربران در حال بازدید این موضوع: 1 مهمان