آموزش کار با دیتابیس mongodb در php – بخش اول

  • آپدیت شده در تاریخ

آموزش کار با دیتابیس mongodb در php

با بخش اول از آموزش کار با دیتابیس mongodb در php در خدمت شما هستیم.

آیا تاکنون از خود پرسیده اید گوگل چگونه در کسری از ثانیه در میلیاردها صفحه اینترنت جستجو میکند؟

یا شبکه اجتماعی مانند فیسبوک و اینستاگرام چگونه حجم عظیمی (میلیاردی) از اطلاعات کاربران را ذخیره و پردازش می کند؟

یا فروشگاهی های اینترنتی مثل آمازون (Amazon) و دیجی کالا که Catalogue-based هستند و بی نهایت محصول و ویژگی های تودرتو دارند چگونه با داده ها کار می کنند؟

آیا از SQL استفاده میکند؟ مسلما خیر, از تکنولوژی-ای به نام NoSQL استفاده میکند!

 

MongoDB چیست

mongoDB یک دیتابیس سندگرا (document) و NoSQL است که کارایی بالا, دسترسی سریع, و مقیاس پذیری (scalability) آسانی دارد.

آموزش کار با دیتابیس mongodb در php

رایج ترین دسته دیتابیس ها امروزه بر مبنای SQL میباشند و اینگونه دیتابیس ها “رابطه ای” یا “relational” نامیده میشوند مانند MySQL

اما با پیشرفت تکنولوژی طی سالیان اخیرنیاز به پردازش و ذخیره سازی بهینه تر , سرعت بالا و عدم امکان استفاده از جداول (Table) در بسیاری از پروژه های بزرگ احساس میشد.

از طرفی ذخیره سازی حجم بالایی از داده های بدون ساختار (non-structured data) در دیتابیس های SQL باعث کاهش شدید سرعت و کارایی دیتابیس میگردد. از این رو تکنولوژی جدیدی به نام NoSQL با اهدافی متفاوت ارائه شد.

هدف اصلی NoSQL ذخیره سازی و کار با داده های بدون ساختار و حجیم میباشد

NoSQL قابلیت مدیریت کردن و کار با حجم بسیار عظیمی از داده ها را داراست (facebook,amazon,..). مشخصا در آن برای کار با داده ها از زبان SQL استفاده نمیشود. بلکه به صورت بسیار ساده و روان از XML یا JSON برای این منظور استفاده میگردد.

 

مفاهیم پایه دیتابیس Mongodb

  • دیتابیس (database) : mongodb داده ها را در دیتابیس ها گروه بندی می کند همانند دیتابیس های رابطه ای (relational).

اگر تجربه کار با دیتابیس های رابطه ای مثل MySQL را داشتید می دانید که در یک RDBMS , یک دیتابیس دارای جداول (tables), روش های ذخیره سازی, view و غیره است.

در دیتابیس MongoDB , یک دیتابیس دارای collection ها است(معادل جدول ها).

برای مثال, یک دیتابیس برای سیستم بلاگ معمولا دارای کالکشن های articles, authors, comments, categories است.

 

  • کالکشن (Collection ): یک کالکشن معادل جدول در RDBMS (سیستم های مدیریت دیتابیس رابطه ای) است.  سند (document) داخل یک کالکشن می تواند فیلدهای متفاوت داشته باشد.

معمولا, همه سندها در یک collection یک منظور مشابه یا مرتبط را دارند.

فیلد های در دیتابیس NoSQL معادل ستون (column) ها در دیتابیس های رابطه ای است.

  • سند(Document) : یک رکورد (سطر) در Collection دیتابیس MongoDB و داده اصلی در دیتابیس است.

سندها مشابه یک آبجکت داده JSON هستند اما در دیتابیس بیشتر در فرمت گسترش یافته Binary JSON یا همان BSON استفاده می شود.

یک سند (Document) شامل مجموعه ای از فیلدها یا جفت های کلید-مقدار (key-value) هستند.

بهترین راه برای درک داکیومنت, آرایه های چندمجموعه ای است. در یک آرایه, شما مجموعه ای از کلیدها دارید که به مقدارهایی اشاره دارند. داکیومنت MongoDb .

 

نصب دیتابیس MongoDB

MongoDB بصورت Cross-Platform است به این معنی که وابسته به سیستم عامل خاصی نیست و بر روی بیشتر پلتفرم ها قابلیت اجرا را دارد و معماری های ۳۲ و ۶۴ بیت را پشتیبانی می کند

دیتابیس MongoDB بصورت باینری یا پکیج در دسترس است. در محیط production و ارایه محصول نهایی از نسخه باینری دیتابیس مانگو و معماری ۶۴بیت استفاده کنید.

 

نصب بر روی لینوکس Ubuntu

دستورات زیر را در ترمینال اجرا کنید

حالا برای آپدیت ریپازیتوری و نصب نسخه پایدار (stable) دستور زیر را اجرا کنید

خب تمام شد. دیتابیس MongoDB با موفقیت نصب شد. حالا می توانید سرویس مانگو را با دستورات زیر اجرا و یا استاپ کنید.

اگر با ارور برخوردید دستورات زیر را اجرا کنید

نصب روی ویندوز (Windows)

در ابتدا پکیج دیتابیس MongoDB را از سایت اصلی دانلود کنید.

سپس کل فایل فشرده را در درایو مثلا C:\ استخراج کنید

برای ذخیره اطلاعات دیتابیس ها نیاز است یک فولدر data و داخل آن db را ایجاد کنید چرا که پیش فرض خود mongoDB است.

برای اجرا وارد CMD بشید و بصورت زیر آن را اجرا کنید که باعث گوش دادن سرویس مانگو بر روی یک پورت خاص می شود.

خب تمام شد. دیتابیس MongoDB با موفقیت نصب شد. حالا می توانید سرویس مانگو را با دستورات زیر در یک پنجره CMD جدا اجرا و یا استاپ کنید.

جمع بندی

در بخش اول مقاله آموزشی نحوه کار با دیتابیس mongodb در php , مفاهیم زیر را بررسی کردیم :

  • دیتابیس mongodb و دیتابیس های نوع nosql چیست
  • مفاهیم پایه در دیتابیس MongoDB را بررسی کردیم.
  • تفاوت های ساختار داده دیتابیس رابطه ای و nosql را مختصر توضیح دادیم.
  • در نهایت نیز نحوه نصب آن روی دو پلتفرم پر استفاده لینوکس و ویندوز را بررسی کردیم.

در بخش دوم مقاله آموزشی نحوه کار با دیتابیس mongodb در php بطور خاص وارد ارتباط با دیتابیس MongoDB و نحوه انجام عملیات CRUD می شویم و یک مینی پروژه بلاگ را پیاده سازی می کنیم.

 

امیدوارم از بخش اول آموزش کار با دیتابیس mongodb در php نهایت استفاده را برده باشید.

هر سوالی داشتید ، از قسمت نظرات ارسال کنید . سریعا ، پاسخگوی سوالات شما هستیم .

موفق و پیروز باشید.

حسن شفیعی توسعه دهنده وب و موبایل مدیر سایت علاقه خاصی به برنامه نویسی وب و موبایل دارم و هر روز تلاش می کنم به این حوزه مسلط تر شوم و اطلاعاتم را به شکل کاربردی برای علاقه مندان در وب به اشتراک بگذارم. اگر نیاز به برنامه نویس برای انجام پروژه و نوشتن اسکریپت های سمت وب, اپلیکیشن های اندروید و ios, پیدا کردن راه حل توسعه و غیره داشتید حتما از طریق تماس با ما/ واتساپ/ تلگرام بهم پیام بدید. برایتهیه هاست مطمین و پرسرعت کلیک کنید
مطالب زیر را حتما بخوانید
دیدگاه کاربران (۲)

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

  1. علی ۶ فروردین ۱۳۹۸

    درود، آیا نصب mongodb نیاز به لایسنس داره ؟

    پاسخ
    1. حسن شفیعی ۶ فروردین ۱۳۹۸

      سلام. خیر نسخه رایگان از سایت توسعه دهنده می توانید دانلود و استفاده کنید.
      موفق باشید.

      پاسخ
دوره های آموزشی