PDA

View Full Version : سیستم امار گیر وبسایت



mr.patrick
دوشنبه 26 فروردین 1392, 20:00 عصر
سلام بر همگی
در حال پیاده سازی یک سیستم امارگیر وبسایت مثل وبگذر هستیم
سوال اولم در مورد پیاده سازی دیتابیس این سیستم هست.
- یک یا چند جدول برای هر کاربر به طور جدا؟
- یک یا جند جدول به طور مشترک برای تمام کاربران؟
منظورم اینه که اطلاعات اماری هر کاربرو داخل جدول منحصر به فرد خودش ذخیره کنم یا یک جدول کلید در نظر بگیرم و تمام اطلاعات اماری کاربران رو داخل اون ذخیره کنم و بعد از اون با کلید بهش دسترسی پیدا کنم؟

سوال دوم نحوه ی ذخیره سازی اطلاعات داخل دیتابیس هست.
به عنوان مثال یک سایت در روز چند هزار بازدید داره،اگر بخوام بعد از هر بازدید یه کوئری ایجاد و اجرا کنم فشار زیادی به دیتابیس وارد میشه
راه بهتری برای این کار وجود داره؟ چطوری؟

با تشکر

behrozi.ir
دوشنبه 26 فروردین 1392, 20:19 عصر
یک یا جند جدول به طور مشترک برای تمام کاربران مناسب تره :چشمک: ، فرض کن 1000 نفر تو سایت ثبت نام کنن اون وقت چند هزار تا جدول داری :اشتباه:

در مورد بازدید های بالا ، شما باید سرور اختصاصی خوبی داشته باشی
فکر همچین سایت هایی را هم باید بکنی :لبخند:
http://www.webgozar.com/stats/1463835
http://www.persianstat.com/Results.aspx?id=10117487&mode=1
http://www.webgozar.com/stats/2334264

mr.patrick
دوشنبه 26 فروردین 1392, 20:28 عصر
فرض کن 1000 نفر تو سایت ثبت نام کنن اون وقت چند هزار تا جدول داریخب به این خاطر گفتم جدول مجزا برای هر کاربر چون اگر امار بازدی تمام کاربران رو بخواییم داخل یه جدول بریزیم خودش به مرور میشه چند میلیون رکورد و معمولا انجام یه سری کارها روی این رکورد ها مشکل میشه


در مورد بازدید های بالا ، شما باید سرور اختصاصی خوبی داشته باشیاون که جای خود دارد :لبخند:

و اما این:

سوال دوم نحوه ی ذخیره سازی اطلاعات داخل دیتابیس هست.
به عنوان مثال یک سایت در روز چند هزار بازدید داره،اگر بخوام بعد از هر بازدید یه کوئری ایجاد و اجرا کنم فشار زیادی به دیتابیس وارد میشه
راه بهتری برای این کار وجود داره؟ چطوری؟راه مناسبی برای درج دسته جمعی امار ها وجود داره؟
یعنی به نظرم رسیده امار وبسایت رو مثلا داخل فایل به طور موقت نگه دارم و در هنگام لاگین کاربر اطلاعات داخل فایل رو منتقل کنم به دیتابیس. اینجوری امار ها رو تا یه حدی جمع کردم. نسبت به این که دونه دونه درج بشن بهتره فکر کنم

behrozi.ir
دوشنبه 26 فروردین 1392, 21:02 عصر
راه مناسبی برای درج دسته جمعی امار ها وجود داره؟
یعنی به نظرم رسیده امار وبسایت رو مثلا داخل فایل به طور موقت نگه دارم و در هنگام لاگین کاربر اطلاعات داخل فایل رو منتقل کنم به دیتابیس. اینجوری امار ها رو تا یه حدی جمع کردم. نسبت به این که دونه دونه درج بشن بهتره فکر کنم
این بر میگرده به مباحث مهندسی نرم افزار و اصول پایگاه داده
شما اطلاعاتی که میخواهید ذخیره کنید را روی کاغذ بنویسید و با استفاده از قوانین نرمال سازی و درک خود از سیستم آمار، دیتابیس را به صورت نرمال و فاقد افزونگی تهیه کنید.
استفاده از فایل را هم توصیه نمیکنم، به جای آن از دیتا موقت استفاده کنید.

mr.patrick
دوشنبه 26 فروردین 1392, 22:22 عصر
استفاده از فایل را هم توصیه نمیکنم، به جای آن از دیتا موقت استفاده کنید.

میشه در این مورد بیشتر توضیح بدی؟ دقیقا چکار باید بکنم؟

ravand
سه شنبه 27 فروردین 1392, 10:04 صبح
برای اینکه همه ی بازدید ها در یک جدول ثبت بشه میتونی از نام کاربری کاربر استفاده کنی و یک دستوری بنویسی که بگه انتخاب کن همه ی رکوردها رو از جدول فلان که فیلد کاربر مساوی نام کاربری فرد باشه.

$sqlii="SELECT * FROM amar where karbar='{$valuei}'";