PDA

View Full Version : سایز بانک اطلاعاتی؟؟؟



Ehsan Rafsanjani
دوشنبه 25 اردیبهشت 1385, 21:34 عصر
سلام خدمت دوستان
من برای track کردن تمام فعالیت های کاربران یک سایت از یه بانک sqlserver استفاده کردم که تمام فعالیت های کاربر رو ذخیره میکنه البته تا اینجا مشکلی نیست ولی نمی دونم چه سایزی برا ی دیتا بیسم انتخاب کنم مثلاً اگه 10000 نفر در روز بازدید کننده باشه و هر بازدید کننده 40-50 رکرود به جول اضافه کنه توی یه سال به چه حجمی از دیتا بیس احتیاج دارم؟؟؟؟؟؟
آیا اصلا track کردن تمام فعالیت کاربران کار شدنی؟؟
یه سوال دیگه سایتهایی مثل http://www.persianstat.com از چه حجمی از دیتابیس استفاده میکنند یا همین سایت برنامه نویس چه حجمی از دیتابیس رو برای ذخیره فعالیت کاربران قرار داده؟؟؟

AminSobati
دوشنبه 25 اردیبهشت 1385, 22:01 عصر
دوست عزیزم،
برای تخمین دقیق، باید پهنای هر رکورد رو بدست بیارید. مثلا به جدول Log نگاه کنید و ببینید از چه فیلدهایی استفاده میکنه. مثلا INT تنها 4 بایت اشغال میکنه. با دانستن ظرفیت هر فیلد، میتونین محاسبه کنین که مثلا 1000 رکورد چقدر خواهد شد

mzjahromi
سه شنبه 26 اردیبهشت 1385, 07:51 صبح
دوست عزیزم،
برای تخمین دقیق، باید پهنای هر رکورد رو بدست بیارید. مثلا به جدول Log نگاه کنید و ببینید از چه فیلدهایی استفاده میکنه. مثلا INT تنها 4 بایت اشغال میکنه. با دانستن ظرفیت هر فیلد، میتونین محاسبه کنین که مثلا 1000 رکورد چقدر خواهد شد
OverHead ها و اطلاعات اضافی چقدر روی حجم اثر داره؟
چیزی که معمولا دیده میشه همیشه اینه که حجم فایل با تعداد رکوردها نسبت خطی نداره

AminSobati
سه شنبه 26 اردیبهشت 1385, 22:12 عصر
عدم تناسب حجم کل دیتابیس با تعداد رکوردها در اینه که:
1) SQL Server به جای اینکه به ازاء ورود هر رکورد، دیسک رو مصرف کنه و حجم دیتابیس رو افزایش بده (که کاملا این روش مضر هست)، سعی میکنه به اندازه بیشتری فضا از دیسک رزرو کنه تا دیرتر نیاز به افزایش حجم پیدا کنه(یا دفعات کمتری نیاز به افزایش داشته باشه)
2) بعضا ممکنه حجم Log رو هم به حساب بیارن.
3)حجم بعضی فیلدها رو دقیقا شاید ندونیم. مثلا VARCHAR 100 داریم اما اطلاعاتش همگی 100 بایت رو مصرف نمیکنند.
4) بر اثر عملیات Delete، فضاهای خالی در دیتابیس بوجود میاد که جزو حجم دیتابیس به حساب میاد اما اطلاعات اونجا Insert نمیشه (و بلا استفاده میمونه). در این حالت Shrink نیاز هست.