ftp
3 سال پیش توسط ftp مطرح شد
1 پاسخ

بهینه کردن ستون های دیتابیس

@hossein.r.1442
@mhyeganeh
@golshahimohammadreza
@endworld
سلام ما اگه برای بلاک کردن یوزر در دیتابیس یک ستون اضافه کنیم و یک و صفربگیره ایا درسته یا کار بهتر از این هم وجود داره سوالم به ایت خاظر هست که اگه تعداد رکوردهای مت چند میلیون باشه و ما به ازای هر رکورد یک ستونی داشته باشیم که فقط ۱و۰ بگیره یکم کار بیهوده ای هست و فشار زیادی به رم خواهد آورد راه جایگزینی وجود داره


ثبت پرسش جدید
محمدحسن یگانه
تخصص : Full-Stack Web Developer Freel...
@mhyeganeh 3 سال پیش مطرح شد
2

راه دیگه اش اینه که یک جدول جداگانه برای کاربران بلاک شده داشته باشید (مثلا users_blocked) که از طریق فیلد user_id بعنوان FK به جدول users متصل باشه. خوبی این روش اینه که به ساختار جدول users تون نیازی نیست دست بزنید و از نظر سرعت هم با توجه به اینکه FK ها index میشن مشکلی نخواهد بود.

با اینکه شاید راه بالا حرفه ای تر و برای توسعه های بیشتر بهتر باشه، ولی اگر خیلی دغدغه بهره وری و حجم دارید، شاید همون روشی که خودتون اشاره کردید، یعنی اضافه کردن یک فیلد جدید به جدول users (مثلا is_blocked) با نوع Boolean یا TinyInt(1) بهتر باشه. این نوع datatype حجم اشغالی بسیار پایینی داره و اصلا اون طور نیست که می‌فرمایید «فشار زیادی به رم خواهد آورد». میشه گفت تفاوتش اصلا معنا دار نیست و در حد شوخیه...


برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام