-
2018/05/23, 13:58 #1
وصل شدن به دیتابیس MongoDB در زبان PHP
سلام دوستان
لطفا در مورد چگونگی اتصال به دیتابیس MongoDB در زبان برنامه نویسی PHP توضیح بدید.
و یه سوال دیگه این که آیا از MongoDB استفاده کنم بهتره یا دیتابیس MySQL؟ -
1
-
2018/05/24, 13:46 #2
سلام تو زبان برنامه نویسی PHP برای وصل شدن به دیتابیس MongoDB می تونی از دو روش زیر استفاده کنی.
روش اول ارسال اطلاعات دیتابیس به عنوان آرگومان:
کد:$db = new MongoClient('mongodb://localhost', array( 'username' => 'abc', 'password' => 'abc@123', 'db' => 'abc' ));
کد:$m = new Mongo(); $db = $m->abc; $db->authenticate('abc', 'abc@123');
اما در مورد کارایی (performance) دیتابیس MangoDB که جز دیتابیس های NoSQL و سند محور (document-store) محسوب میشود بنابراین از دیتابیس ها رابطه ای مانند MySql بهتر است. همچنین از لحاظ سرعت insert, update, delete داده هایی با سایزهای متفاوت کارایی MangoDB از سایر دیتابیس ها مانند MySQL, MS SQL Server, Oracle بهتر است.
البته دیتابیس MongoDB هم مانند سایر دیتابیس ها معایبی دارد:
- کارایی ضعیف تر در استفاده از توابع تجمعی (aggregate functions). در خصوص جستارهای تجمعی یا انبوهشی (aggregation query) مانند average,sum,max,.. که نیازمند گروه بندی داده هاست (مثل دستور group by در SQL) در MangoDB لازم است تا خود به کمک مدل برنامه نویسی موازی نگاشت کاهش (MapReduce) توابع تجمعی خود را به لخواه پیادهسازی کنید. این نقص هم در نسخ جدید این دیتابیس مرتفع میگردد.
- کارایی ضعیف تر جستارها بر اساس مقادیر غیر کلید querying based on non-key values)
- در MangoDB خبری از الحاق (join) نیست. تصمیم بر سر ارتباط اسناد در MangoDB که می تواند بهصورت مرجع داخلی یا خود فایل به صورت تو در تو در اسناد دیگر باشد می تواند در کارایی تاثیر گذار باشد.
- دیتابیس MySQL یک استاندارد صنعتی (industry standard) است و به طور گسترده تری نسبت به MangoDB تحت حمایت است و امکانات بیش تری برایش وجود دارد و باگ های بسیاری در آن رفع گردید است.
موضوعات مشابه
-
بدست آوردن زمان اجرای دستور در Mongodb
توسط nzarif در انجمن MongoDBپاسخ: 1آخرين نوشته: 2016/07/28, 12:18 -
بدست آوردن زمان اجرای دستور در Mongodb
توسط nzarif در انجمن SQL Serverپاسخ: 1آخرين نوشته: 2016/07/28, 12:18