رتبه موضوع:
  • 1 رای - 5 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
طراحی عمودی یا افقی دیتابیس برای این پروژه ؟
#1
سلام روز بخیر
یه پروژه انجمن داریم که قرار هست هر یوزر حداقل ۳۲ تا فیلد داشته باشه و تعداد یوزرها هم قراره به ۱۰۰هزار + برسه.
این انجمن هم واسه خودمون هست و به همین دلیل می خواهیم که خیلی خوب کار کنیم روش.

به نظر شما پیاده سازی از نوع key value (مثل وردپرس) عمودی باشه بهتره یا بصورت افقی و رایج ؟

فریم ورک هم هنوز در دست بررسی هست یا yii2 یا laravel5 یا zend2 

کلا در این زمینه چطور عمل می کنید؟
پاسخ
تشکر شده توسط:
#2
امروزه سیستمهای افقی مثل وردپرس و دروپال عملاً کارآیی مناسبی ندارن تا جایی که دیدم و دارن روند کارشون رو تغییر میدن. بخصوص توی حجم بالا این روش خیلی دیتابیس رو حجیم میکنه. درمورد فریمورک هم Yii2 و Laravel5 رو توصیه میکنم ولی Zend رو نه و اگه میخواین خیلی مهندسی شده کار کنید و ازطرفی سرعت رو هم داشته باشین، به سیمفونی و فالکن فکر کنید.
پاسخ
تشکر شده توسط: senator
#3
ممنون از شما، معذرت می خوام وردپرس که عمودی و key value هست. متوجه نشدم
پاسخ
تشکر شده توسط:
#4
من زیاد ساختار دیتابیس وردپرس رو ندیدم ولی تا جایی که بررسی کردم توی Drupal از روش افقی زیاد استفاده شده.
پاسخ
تشکر شده توسط:
#5
از این روش های افقی و عمودی یه مثال بیارین بد نیستااااا ما هم به اطلاعاتمون اضافه میشه!
پاسخ
تشکر شده توسط:
#6
روش افقی یعنی اینکه اطلاعات فیلدهای جداول خودشون بصورت رکوردهای یه جدول دیگه تعریف بشن و با ساختار Key-Value و یک جدول واسط، اطلاعات ثبت بشن. این روش باعث زیادشدن جداول در اغلب مواقع میشه (برای مثال جداولی مثل Taxonomy و... باید اضافه‌کنید) و ازطرفی کاربرد اصلیش در مواقعی هست که رکوردها دارای اطلاعات شناور هستن و ساختار جدولی ثابتی ندارن. برای مثال یک رکورد ممکنه دارای مقادیری باشه که توی رکوردهای دیگه نیست. در چنین مواقعی امروزی از NoSQL و دیتابیسهایی مثل MongoDB استفاده میشه و ترجیح میدن دیتابیسهای رابطه‌ای مثل MySQL رو برای همون ساختار عمودی نگه‌دارن. توی ساختار عمودی ستون‌های جدول ثابته و اگه یه جدول دارای یه مقدار خاصی نباشه براش توی رکورد مربوطه توی اون ستون Null درنظر میگیرن. این روش افزونگی اندکی ایجاد میکنه ولی سرعت کار رو بالا میبره و از پیچیدگی هم کم میکنه.
پاسخ
تشکر شده توسط: Eshpilen




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