از چه دیتابیسی استفاده کنم !؟


#1

سلام . دوستان من با فریم ورک لاراول میخوام یک فروشگاه اینترنتی مانند دیجی کالا یا بامیلو بنویسیم
میخواستم دوستان دیتا بیس کار راهنمایی کنن که نحوه انتخاب دیتابیس باید چجوری باشه ! چیرو باید ملاک انتخاب قرار بدیم .

مثلاً یک سری از سایت ها برای یک بخشی از سایت mysql استفاده میکنن و برای بخش دیگیری nosql مانند mongodb
ملاک انتخاب دیتابیس در پروژه باید چی باشه .

ممنون


#2

خیلی بستگی داره که دقیقا می خواین چه کاری انجام بدید. ولی در کل یه فروشگاه جز OLTP دسته بندی می شه و یه دیتابیس relational کامل جواب کار رو می ده اما تو اینکه چی استفاده کنین برای شروع انتخاب هاتون یه جورایی به mysql و postgres محدود می شه که در این بین من postgres رو پیشنهاد می کنم.


#3

ممنون
من برای نمونه میخوام یک سایت شبیه دیجی کالا یا بامیلو تحلیل کنم ک دقیقا بخش فروشگاهی . فروشنده ، بازاریاب و … رو داره و بن این هم دارم فکر میکنم اگر تعداد درخواست ها در سایت زیاد شد مثل دیجی کالا اجزای تشکیل دهنده نرم افزار مانند دیتابیس زیر فشار کم نیارن
ممنوپ میشم راهنمایی کنید


#4

هر دو به خوبی جواب گو هستند. در سکیل های بزرگ به خوبی امتحان پس دادن. خیلی بیشتر postgres رو پیشنهاد می کنم.
اگر دیدید کند شدن یا مشکلی هست احتمال ۹۹.۹٪ یه جای کار از سمت شما می لنگه. مثلا دیتا مدل اشتباه یا join ها غیر مناسب و …


#5

نظرتون در مورد این لینک چیه ؟

https://www.percona.com/blog/2017/01/06/millions-queries-per-second-postgresql-and-mysql-peaceful-battle-at-modern-demanding-workloads/


#6

عرضم به حضورتون اشتباه بزرگی که خیلیا انجام می دند اینه که فقط به پرفرمنس نگاه می کنن. به پرفرمنس رو ملاک اول قرار می دن. در صورتی که خیلی چیزای مهمتری وجود داره. یه دیتابیس سیستم می تونه حسابی سریع باشه اما consistent نباشه و این به هیچ دردی نمی خوره. در انتخاب دیتابیس موارد خیلی زیادی نقش داره ولی پرفرمنس شاید جزء آخری ها باشه. postgres به شدت به standard اصلی SQL نزدیک هست و رفتار های قابل پیش بینی داره در مقابل mysql مثل PHP دیتابیس سیستم ها می مونه بی قاعده و زیاد دنباله رو استاندارد نیست و بعضی وفت ها یه چیزایی ازش می بینین که خیلی عجیبن. البته مواردی هست که mysql رو باید نصبت به postgres استفاده کنین اما شرایط شما یکی از اونها نیست.

سر فرصت یه مثال عجیب از mysql می زنم که چرا دنبال نکردن استاندارد براش بد حساب می شه.


#7

منتظر مثالتون هستم


#8

یه مثال خیلی ساده:

select date('2019-03-03') - date('2019-01-01') as days;

این کوئری در postgres مقدار ۶۱ رو برمی گردونه و در mysql عدد ۲۰۲ رو.

اینم لینک sqlfiddle که امتحان کنین:

http://sqlfiddle.com/#!17/340e0/186

یه مثال ساده از اینکه چرا به mysql می گم PHP دیتابیس ها.


#9

چی شد؟!!! جل الخالق
امروز اتفاقا یه PDF از Postgre دانلود کردم بخونم
البته من روانی و عاشق دیتابیس های گرافی شدم اجل شون Neo4j
واسه کارهای تشخیص تقلب و پولشویی خوب به کار میاد
عجیبه عجیب