PDA

View Full Version : حرفه ای: insert در حدود 210 میلیون رکورد در دیتا بیس در کمترین زمان ممکن



ramin_ramin
پنج شنبه 07 بهمن 1389, 09:16 صبح
با سلام
خدمت دوستان عرض کنم من یک سرور 16 پردازنده با 28 گیگ رم دارم می خواهم حدود 210 میلیون رکورد که در یک آرایه درون رم قرار دارند رو با یک روشی که بهینه بهینه باشه در دیتابیس اس کیو ال 2005 وارد کنم به نظر دوستان حرفه ای چه روشی مناسب است لطفا زحمت بکشید توضیح بدهید اگه یه نمونه کد هم بگذارید عالی میشه
قبلا ممنونم

ramin_ramin
پنج شنبه 07 بهمن 1389, 09:47 صبح
کسی از دوستان حرفه ای جواب ما رو نمیده ؟

Reza798
پنج شنبه 07 بهمن 1389, 09:57 صبح
سلام

از SqlBulkCopy استفاده کن - سرعت خیلی بیشتری نسبت به روش های دیگه داره

L u k e
پنج شنبه 07 بهمن 1389, 10:07 صبح
در مورد tablue valued function تحقیق کن
فکر کنم بهترین روش و آسونترین باشه خیلی هم روش جالبیه

ramin_ramin
پنج شنبه 07 بهمن 1389, 10:49 صبح
روستان عزیز نمونه کد من به صورت
com.CommandText = com.CommandText + " insert into TBL هستش که الان دارم باهاش کار میکنم ولی مشکل من اینه که این 210 میلیون رکورد را در 5 یا شش روز میتونه ذخیره کنه اونم با این سرور کت و کلفتی که من دارم من می خواهم این زمان را تا جایی که میتونم کم کنم

ramin_ramin
پنج شنبه 07 بهمن 1389, 11:43 صبح
کسی از دوستان جوابی داره ؟
ممنون میشم

mir555
پنج شنبه 07 بهمن 1389, 18:54 عصر
یک دیتا ست درست کن همه دیتا تو چند دقیقه توش اضافه کن بعدش با آپدیت اداپتور اطلاعات به بانک منتقل کن خیلی سریتر انجام میشه

Rejnev
پنج شنبه 07 بهمن 1389, 19:00 عصر
سرعت عمل درج در ديتابيس بستگي به سرعت ديسك سختتون داره. رم و cpu خيلي تاثير ندارند. تازه اگر هم تاثير داشته باشن بايد بلد باشي كه برنامه رو طوري اجرا كني كه روي چند هسته كار كنه.
ميشه بگيد اين ديتا ها كه در رم هست از كجا آورده شده؟