ورود

View Full Version : بارگذاری رکوردهای میلیونی



karimkpg
یک شنبه 14 مهر 1392, 17:52 عصر
سلام
بنده یه سیستم گزارش گیری از تجهیزات آب دارم که در روز حدود 76320 تا رکورد به سیستم اضافه می شه که در ماه میشه حدود 22289600 رکورد که اگه کاربر بخواد یه گزارش چند ماهی از سیستم بگیره این عدد خیلی بیشتر از اینها هم میشه.در ضمن این جدول دارای 20 تا فیلد هست.
من برنامه نویسی این سیستم رو انجام دادم اما این گزارش گیری با یه سیستم خوب برای یک ماه تقریبا 60 ثانیه طول می کشه می خواستم بدونم چه راه حل هایی برای کاهش این زمان وجود داره؟ (در ضمن امکان پیجینگ وجود نداره چون کاربر یک گزارش کامل برای چاپ می خواد) با تشکر

mahan.2002
دوشنبه 15 مهر 1392, 13:27 عصر
با سلام
بنده یه پیشنهادی که میتونم انجام بدم اینکه اولا یه رو سیستون حتما ایندکس هایی مورد نظر رو قرار بدید ..
راهی بنظر من میرسه اینکه رکورد هایی در یک ماه رو در یک جدول قرار دهید و برای گزارش هایی کلی در جدول اصلی ...
برای گزارش ها زیر یک ماه از این جدول گزارش بگرید ... و برای گزارش هایی کلی از جدول اصلی استفاده کنید .. حتی میتونید برای گزارش هایی کمتر از شش ماه و یا سه ماه هم رکورد ها رو در جدول جداگانه قرار بدید.. ( البته همه رکورد ها رو حتما در جدول اصلی داشته باشید و برا ترتیب و نظم سیستم)
انشاالله جواب میده ..
موفق باشید.

karimkpg
دوشنبه 15 مهر 1392, 17:12 عصر
با سلام
بنده یه پیشنهادی که میتونم انجام بدم اینکه اولا یه رو سیستون حتما ایندکس هایی مورد نظر رو قرار بدید ..
راهی بنظر من میرسه اینکه رکورد هایی در یک ماه رو در یک جدول قرار دهید و برای گزارش هایی کلی در جدول اصلی ...
برای گزارش ها زیر یک ماه از این جدول گزارش بگرید ... و برای گزارش هایی کلی از جدول اصلی استفاده کنید .. حتی میتونید برای گزارش هایی کمتر از شش ماه و یا سه ماه هم رکورد ها رو در جدول جداگانه قرار بدید.. ( البته همه رکورد ها رو حتما در جدول اصلی داشته باشید و برا ترتیب و نظم سیستم)
انشاالله جواب میده ..
موفق باشید.
تشکر از راهنماییتون اما جدول رو نرم افزار سایتکت به صورت اتوماتیک می سازه و من فقط از روش گزارش گیری می کنم.با این حال راه جدیدی بنظرتون میرسه؟

mahan.2002
دوشنبه 15 مهر 1392, 19:55 عصر
با سلام دوباره
خب همین طور که میتونید گزارش تهیه کنید .. پس بنظرم مشکلی نباشه ...
شما میتونید اطلاعات رو از اون جدول استخراج کنید و در یک دیتا بیس جدا گانه نگهداری کنید به همان صورت یه جدول اصلی و جداول دیگر مانند جداول ماهیانه و سه ماه و شش ماه و سالیانه استخراج کنید ( البته میتونید اگر میخواین اطلاعاتون بروز باشه ( هر روز یا هر ساعت بسته به نیاز جدولتون رو آبدیت کنید و رکورد هایی جدید رو به جداول اضافه کنید )
با این روش میتونید ... اگر در اینکس گزاری روی اون جدول مشکل دارید بدون این که بخواهید جدول قبلی رو دستکاری کنید...براحتی بر روی این جدول و جداول که به صورت مدت دار ایجاد کردید گزارش گیری کنید..

ضمنا یه پیشنهاد سخت افزاری هم برای شما دارم که میتونه با استفاده از این راه در سرعت گزارش گیری تون خیلی موثر باشه شما با خرید یک هارد SSD با سرعت بالا کل بانک یا جداولی که بیشترین استفاده رو از اونها دارید رو در این هارد نگهداری کنید..
و برای نگه داری آرشیو یا بک آب از از هارد هایی معمولی تر استفاده کنید ... البته بنظرم حتی میتونید تنها 2 یا 3 جدولی که بیشتر نیاز دارید رو هم روی این هارد داشته باشید.. و بقیه دیتا بیس خود را هم که کمتر نیاز میشه رو بقیه هاردتون نگاه داری کنید .. که میتونید این کار رو با استفاده از تکنیک Filegroup انجام بدید که میتونید برای اطلاعات بیشتر یه سرچی در این مورد کنید البته برای انجام این کار و نحوه تکنیک هایی انجام این کار میتونید از دوستان در همین سایت سوال کنید ..