PDA

View Full Version : خوب بد زشت در پایگاه داده



com_engineer_ab
جمعه 08 مرداد 1389, 23:44 عصر
سام دوستان
می خواستم نظرتون رو در مورد سرعت اجرای دستورات در 3 حالت زیر بدونم و اینکه کدام یک سرعت بلایی در اجرا دارند.
1- اجرای دستورات sql به صورت کد نویسی
2- نوشتن پروسیجر در دیتاست وصدا زدن اون
3- نوشتن پروسیجر در sql server و صدا زدن اون

nafissw
شنبه 09 مرداد 1389, 11:31 صبح
با سلام

به نظرم اگر سرور قوي باشد (و البته بستگي به تعداد كاربران سيستم) روش سوم سريعتر از بقيه است

موفق باشيد

Ir.WebDeveloper
شنبه 09 مرداد 1389, 11:45 صبح
معمولا روش سوم بهترینه ،روش دوم هم چون از فایل های xsd استفاده میشه به نظرم خیلی پرسرعت نیست نسبت به SP.
ضمن اینکه SP جلوی Injection رو هم میگیره.

موفق باشید.

mohammad_2039
شنبه 09 مرداد 1389, 12:43 عصر
قطعا روش سوم سریعتره، اما سر کلاسهای UML به شدت از این کار نهی میکنند چون باید کدها در سطح برنامه نوشته بشن نه تو sqlserver، و اگه کسی بخواد کد شما رو بخونه باید هه چیز تو برنامه در دسترس باشه.

behnam25214
شنبه 09 مرداد 1389, 15:09 عصر
منم روش 3 رو ترجیح میدم.

FastCode
شنبه 09 مرداد 1389, 17:43 عصر
ضمن اینکه SP جلوی Injection رو هم میگیره.
عین این جملست:
آمپول جلوی بیماری رو میگیره.
خوب اگر هوا تزریق کنیم چی؟

به نظر من روش ۲ اصلاً به درد نمیخوره چون با AutoGenerate کردن خیلی مشکل به هم میزنه.
روش اول هم یه جورایی مشکل late-binding داره و scalable نیست.
قدرت کافی هم نداره و همیشه قدرت بیشتر توش مساوی سرعت کمتره.
و دیگش هم اینه که بهترین Editor برای این کار, از بدترین Editor برای اون ۲ تا روش دیگه بدتره و اعصاب خورد کنه.(رو اعصابت راه میره)

مشکل روش دوم هم اینه که مشکل concurrency داره.که قابل حله.
ماههای اول که یه مشتری باهاش کار مکنه اصلاُ صداش در نمیاد ولی باید آماده باشید.
یه سوال توی stackoverflow.com بود که گفته بود بدترین design-pattern های پایگاه داده از نظر شما چیه؟
اگر اون سوال رو بخونی خیلی کمکت میکنه.الان لینکش رو ندارم.اگر پیدا کنم به همین سوال اضافه میکنم.

FastCode
یک شنبه 10 مرداد 1389, 11:51 صبح
ببخشید من فراموش کردخم سرعت رو مقایسه کنم.
تو حالت معمولی بدون ترافیک بالا بین برنامه و sql
رتبه بندی اینطوریه:
3- نوشتن پروسیجر در sql server و صدا زدن اون
1- اجرای دستورات sql به صورت کد نویسی
2- نوشتن پروسیجر در دیتاست وصدا زدن اون

com_engineer_ab
دوشنبه 11 مرداد 1389, 10:22 صبح
ببخشید من فراموش کردخم سرعت رو مقایسه کنم.
تو حالت معمولی بدون ترافیک بالا بین برنامه و sql
رتبه بندی اینطوریه:
3- نوشتن پروسیجر در sql server و صدا زدن اون
1- اجرای دستورات sql به صورت کد نویسی
2- نوشتن پروسیجر در دیتاست وصدا زدن اون

و اگه ترافيك بالا بود چطور مي شه

FastCode
یک شنبه 24 مرداد 1389, 20:39 عصر
و اگه ترافيك بالا بود چطور مي شه

میتونید جای اولی و سومی رو عوض کنید.کار آسونی نیست.
3- نوشتن پروسیجر در sql server و صدا زدن اون
1- اجرای دستورات sql به صورت کد نویسی
==>>

1- اجرای دستورات sql به صورت کد نویسی
3- نوشتن پروسیجر در sql server و صدا زدن اون

rozegar21
دوشنبه 25 مرداد 1389, 12:56 عصر
سلام من دارم یه وب سایت برای یک فروشگاه طراحی میکنم به نظرتون کدوم روش رو استفاده کنم

mahdi87_gh
دوشنبه 25 مرداد 1389, 14:25 عصر
دوستان من در یک کتابی خوندم که Linq برای اجرای دستورات دارای شرط ،ابتدا کل رکوردها رو از بانک لود میکنه و بعدش فیلترینگ رو اعمال میکنه اما در عوض مزیت هایی رو هم بدنبال داره.
حالا که اینجا بحث سرعت برنامه رو دوستان دنبال میکنند میخواستم نظر دوستان رو بدونم که آیا این مزیت های Linq ارزش تاخیری رو که در پی داره، دارند؟