رفتن به مطلب

تفکیک جداول دیتابیس


پست های پیشنهاد شده

سلام دوستان.

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

حتی جداولی که با هم رابطه ی یک به یک دارند .

بعنوان مثال :

یک جدول دانشجو داریم که هر دانشجو یک خوابگاهی رو میگیره . ( رابطه ی یک به یک )(البته چند به یک هم میشه گفت )

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

به همین دلیل جدول مشخصات دانشجو و خوابگاه رو تفکیک کردم ,

یک کلید خارجی برای جدول مشخصات دانشجو ها گذاشتم که با کلید اصلی جدول خوابگاه ارتباط داشته باشه .

تو تصویر نشون دادم.

میخوام بدونم در وب , تو این نوع سناریوها کدوم رو بهینه تر میدونید ؟ از لحاظ سرعت و ...

و بر چه معیاری جداول رو تفکیک میکنید ؟

post-1361-0-16969000-1378714687_thumb.jp

ویرایش شده توسط pary_daryayi
لینک به ارسال

سعی کنید چیدمان جداول به صورتی باشند که کمترین JOIN رو مجبور باشید پیاده کنید رو سرور , درواقع JOIN ها پر هزینه ترین روش برای واکشی اطلاعات است و در وب زیاد توصیه نمیشه که از جداول رابطه ایی بصورت گسترده استفاده کنید

  • امتیاز 3
لینک به ارسال

خیر , افزونگی خود بار زیادی برای سرور دارد , بنابراین سعی کنید با کمترین JOIN الگوهای ذهنی خود را پیش ببرید , و در صورت امکان کمتر استفاده کنید , گاها پیش می اید SELECT زدن بصورت معمولی و استفاده نکردن از جداول رابطه ایی خروجی سریع تری نسبت به مدل رابطه ایی دارد .

یکی از نکاتی که در وب برای بهنیه سازی توصیه میشود درواقع همین مطلب است , حتما جستجو کنید

  • امتیاز 3
لینک به ارسال

ممنونم.

اگه لینک خوبی میشناسید ممنون میشم معرفی کنید . چون مطالب مربوط اکثرا تکراری و بصورت کلی هستند . با همون مثال همیشگی افراد و سفارشها ....

اینکه در مورد طراحی جداول در وب صحبت بشه زیاد ندیدم .

ویرایش شده توسط pary_daryayi
لینک به ارسال

همیشه نیاز نیست شما یک رابطه ایجاد کنید.بستگی به شرایط داره

مثلا ایجاد join بسته به این داره که داده هایی رو که تفکیک میکنین آیا زیاد در select هاتون شرکت دارند و این فیلدها زیاد اپدیت نمیشن و در چند جدول مورد استفاده قرار نمیگیرن اگر بله،نیاز به ایجاد یک جدول دیگه و join نیست اگه نه بهتره از جدول اصلی جدا بشن

البته در نسخه های جدید join سربار زیادی ایجاد نمیکنه و این مربوط به نسخه های قدیمیتر بود

  • امتیاز 3
لینک به ارسال

لطفا برای ارسال دیدگاه وارد شوید

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



ورود به حساب کاربری
×
×
  • اضافه کردن...