خانه SQL Server SQL Server اوراکل را پشت سر گذاشت! + آموزش و مسابقه SQL Server افزایش سرعت SQL Server نوشته شده توسط: فرید طاهری تاریخ انتشار: ۲۷ مهر ۱۳۹۴ آخرین بروزرسانی: 16 آذر 1403 زمان مطالعه: ۲ دقیقه ۰ (۰) SQL Server بهتر از اوراکل، در اکتبر ۲۰۱۵ SQL Server توانست رقیت دیرنه خود اوراکل را پشت سر بگذارد، بر اساس نمواداری که شرکت Gartner ارائه کرده است، این محصول به رهبری Database تبدیل شده است و یک بازار کار عالی در حال شکل گیری در کل دنیا است. البته باید اذعان داشت که SQL Server محبوبترین پایگاه داده در بین ایرانیان نیز است. برای درک بهتر مفاهیم آموزش جامع SQL Server را مطالعه کنید. SQL Server بهتر از اوراکل به طور کلی در SQL Server برای کار با دادههای رشتهای دو نوع Data Type (نوع داده) داریم. ۱- نوع داده Fixed Length (طول ثابت): زمانی که شما یک فیلد از این نوع داده تعریف کنید یک فضای ثابت در حافظه با توجه به نوع داده، طول آن و… اشغال میکند. برای مثال نوع داده Char، NChar هر دو از نوع Fixed Length هستند و حافظه تخصیص یافته به آنها به صورت زیر میباشد. یک فیلد با (۵)Char عبارت است از : با توجه به طول رشته حافظه تخصیص یافته ۵ بایت میباشد. چه مقدار شما ۱ کارکتر باشد و چه ۵ کارکتر (۵)NChar : با توجه به طول رشته و نوع آن (یونی کد بودن) حافظه تخصیص یافته ۱۰ بایت میباشد. چه مقدار شما ۱ کارکتر باشد و چه ۵ کارکتر. (حواستان باشد Data Type از نوع یونی کد بوده و هر کاراکتر آن ۲ بایت در حافظه اشغال میکند.) ۲- نوع داده Variable Length (طول متغییر): زمانی که شما یک فیلد از این نوع داده تعریف کنید یک فضای متغییر در حافظه با توجه به نوع داده، طول آن و… اشغال میکند. برای مثال نوع داده VarChar، NVarchar هر دو از نوع Variable Length هستند و حافظه تخصیص یافته به آنها به صورت زیر میباشد. (۵)Varchar : با توجه به طول رشته حافظه تخصیص یافته حداکثر ۵ بایت میباشد. اگر مقدار شما ۱ کارکتر باشد طول تخصیص یافته ۱ بایت و اگر ۵ کارکتر باشد طول تخصیص یافته به آن ۵ بایت میباشد. پیشنهاد میکنیم برای درک بهتر مفاهیم دوره کوئری نویسی پیشرفته را مطالعه کنید. (۵)NVarChar : با توجه به طول رشته حافظه تخصیص یافته حداکثر ۱۰ بایت میباشد. اگر مقدار شما ۱ کارکتر باشد طول تخصیص یافته ۲ بایت و اگر ۵ کارکتر باشد طول تخصیص یافته به آن ۱۰ بایت میباشد. (حواستان باشد Data Type از نوع یونی کد بوده و هر کاراکتر آن ۲ بایت در حافظه اشغال میکند.) سخن پایانی SQL Server بهتر از اوراکل، اما داستان زمانی است که شما از این Data Type Variable Length (نوع داده با طول متغییر) مانند VarChar،NVarchar در جداول خود استفاده کردهاید در این حالت رفتار SQL Server در تخصیص فضا به ازای این نوع Data Typeها کمی دور از انتظار است برندگان مسابقه بر اساس قرعه کشی: ۱- هادی جباری دارستانی ۲- حمید صادق ۳- محمد زکی زاده دوستان بالا لطفا با شماره ۰۲۱۴۴۲۷۷۶۹۹ تماس بگیرند تا کوپن تخفیف برای این دوستان اعلام گردد. با تشکر از همه دوستانی که در این مسابقه شرکت کردند. ما در نیک آموز منتظر نظرات ارزشمند شما درباره این مقاله هستیم. چه رتبه ای میدهید؟ میانگین ۰ / ۵. از مجموع ۰ اولین نفر باش معرفی نویسنده مقالات 5 مقاله توسط این نویسنده محصولات 9 دوره توسط این نویسنده فرید طاهری فرید طاهری بنیانگذار و مدیرعامل شرکت نیکآموز است او همچنین: ایدهپرداز محصولات آموزشی، آموزش سبکهای تدریس نوین و جذاب به مدرسین، متخصص دیجیتال مارکتینگ، برنامهنویس سیشارپ و SQL Server، طراح و تحلیلگر سیستمهای مالی و اداری، مشاور کسب و کارهای اینترنتی نیز میباشد. مقالات مرتبط ۰۲ آبان SQL Server ابزار Database Engine Tuning Advisor؛ مزایا، کاربردها و روش استفاده تیم فنی نیک آموز ۱۵ مهر SQL Server معرفی Performance Monitor ابزار مانیتورینگ SQL Server تیم فنی نیک آموز ۱۱ مهر SQL Server راهنمای جامع مانیتورینگ بکاپ ها در SQL Server تیم فنی نیک آموز ۰۸ مهر SQL Server Resource Governor چیست؟ آشنایی با نحوه پیکربندی و اهمیت های آن تیم فنی نیک آموز دیدگاه کاربران لغو پاسخ دیدگاه نام و نام خانوادگی ایمیل ذخیره نام، ایمیل و وبسایت من در مرورگر برای زمانی که دوباره دیدگاهی مینویسم. موبایل برای اطلاع از پاسخ لطفاً مرا با خبر کن ثبت دیدگاه Δ محمدحسین عبدالهی ۳۰ / ۰۷ / ۹۴ - ۰۵:۰۰ با سلام با sql server کار می کردم و می کنم و خواهم کرد…عاشق قابلیت Columnstore ایندکس در SQL 2016 به همراه Memory Optimized Table هستم که تا بی نهایت سرعت رو به اوج می رسونه! خاطرتون باشه اگر دو تا کوچولو رو بخوایم با هم مقایسه کنیم قطعاً یکی از موارد سنجش سن هست. ۱۹۸۹ کجا و ۱۹۸۰ کجا !؟! حالا – یعنی از ۲۰۱۴ – اس کیو ال با تکنولوژی هاش تازه جون گرفته. اینا به کنار سهولت کار با محصولات مایکروسافتی کجا و … بی خیال فقط امیدوارم زمانی که با اوراکل کار می کنین دیگه حداقل در ویندوز مایکروسافت نباشین (شوخی بود) و در پایان تشکر از تیم نیک آموز به رهبری جناب طاهری پاسخ به دیدگاه محمدحسین عبدالهی ۳۰ / ۰۷ / ۹۴ - ۰۵:۰۰ با سلام با sql server کار می کردم و می کنم و خواهم کرد…عاشق قابلیت Columnstore ایندکس در SQL 2016 به همراه Memory Optimized Table هستم که تا بی نهایت سرعت رو به اوج می رسونه! خاطرتون باشه اگر دو تا کوچولو رو بخوایم با هم مقایسه کنیم قطعاً یکی از موارد سنجش سن هست. ۱۹۸۹ کجا و ۱۹۸۰ کجا !؟! حالا – یعنی از ۲۰۱۴ – اس کیو ال با تکنولوژی هاش تازه جون گرفته. اینا به کنار سهولت کار با محصولات مایکروسافتی کجا و … بی خیال فقط امیدوارم زمانی که با اوراکل کار می کنین دیگه حداقل در ویندوز مایکروسافت نباشین (شوخی بود) و در پایان تشکر از تیم نیک آموز به رهبری جناب طاهری پاسخ به دیدگاه سعید ر ۳۰ / ۰۷ / ۹۴ - ۰۲:۲۵ جناب آقای طاهری با تشکر از توجه شما، سوالی داشتم که ایا موارد زیر (که تقریبا در اکثر نسخه های اوراکل Native می باشند) در نسخه های جدیذ Sql Server اضافه شده اند: – امکان وب سرویس داخلی و بومی دیتابیس از Package ها – امکان ذخیره json به عنوان نوع داده و البته کوری اسان در دیتابیس از همان نوع داده بدون پردازش اضافی – امکان Plagable بودن دیتابیس های مختلف – لاگ برداری از همه کوری های اجرا شده در پایگاه داده و تجزیه تحلیل و Tune اتوماتیک توصیه شده – امکانات مقیاس پذیری پایگاه داده – استفاده از زبان برنامه نویسی جاوا در پایگاه داده – امکان تعریف ابجکت های مختلف پایگاه داده در حافظه جهت دسرسی سریع در همه سطوح (جدول، ویو، فضای جدولی و …) – … ضمنا Oracle Application Express یا Apex نسخه ۵ با معماری MVC که کاربر بدون داشتن کمترین تجربه کدنویسی در سطح اپلیکیشن (نه کوری و پایگاه داده) می تواند برنامه های سطح وب و موبایل فوق العاده حرفه ای در سریع ترین زمان ممکن ارایه دهد که از امکانات داخلی پایگاه داده است. https://apex.oracle.com/en پاسخ به دیدگاه مسعود طاهری ۳۰ / ۰۷ / ۹۴ - ۱۰:۰۰ سلام قبول تمام این موارد تازه اضافه شد. اما Ranking چی بعد از چند سال جابجا شد. (این نکته مهم ) – امکان وب سرویس داخلی و بومی دیتابیس از Package ها این مورد در نسخه ۲۰۰۸ وجود داشته اما توصیه میشه از VS و WCF استفاده کنید. قدرت اون در حدی است که Nasdaq + BWIN داره باهاش کار می کنه و حجم زیادی درخواست را کمترین هزینه جواب میده – امکان ذخیره json به عنوان نوع داده و البته کوری اسان در دیتابیس از همان نوع داده بدون پردازش اضافی در ۲۰۱۶ اضافه شده و قبل از اون XML در ۲۰۰۵ وجود داشته. فکر می کنید چقدر از پروژه ها به سمت JSON میره هر نوع Engine باشه (چه اوراکل یا SQL) و با هر تکنولوژی کار کنه ذخیره + ایندکس گذاری و… این داده ها دارای چالش بزرگی در RDBMS ها است. فرض کن تراکنش های بانکی یک بانک به فرمت JSON در اوراکل ذخیره بشه (RDBMS) به نظر شما آیا با اعمال بهترین ایندکس ها باز هم سرعت اون به انداز سایر حالت های ذخیره سازی است (Row Based + Columnstore) مثال ۱۰ میلیارد رکورد در Columnstore ذخیره بشه و همون حالت را JSON کنید. – لاگ برداری از همه کوری های اجرا شده در پایگاه داده و تجزیه تحلیل و Tune اتوماتیک توصیه شده SQL برای انجام اینکار کلی DMF و DMV داره که از نسخه ۲۰۰۵ اضافه شده حالا چند سالی است که اون ها را ویژوالی کرده وگرنه از قبل وجود داشته و با Command کلی کار می شد انجام دارد Extended Event + Trace File + DMV+ DMF +System SP + Audit Log و…. – امکانات مقیاس پذیری پایگاه داده Always ON + PDW +SQL Azure – استفاده از زبان برنامه نویسی جاوا در پایگاه داده استفاده از CLR در SQL Server – امکان تعریف ابجکت های مختلف پایگاه داده در حافظه جهت دسرسی سریع در همه سطوح (جدول، ویو، فضای جدولی و …) اجازه بدین در فیلم دوم بررسی کنیم و کلی قابلیت دیگه که در Feature Packها وجود داردمثل External Activation SSSB Stream Insight و… در حوزه BI + DW واقعا حرف اول را می زنه (آمار گارتنر + TPC) SSIS SSAS (Multi Dimensional , Tabular Model) SSRS Power BI و… آینده خیلی مهم است. مطمئن باشید اوراکل هم بیکار نخواهد نشست چون برای اون RANK مربوط به TPC و گارتنر مهم است. هر دو محصول در حال اضافه کردن قابلیت های جدید هستند پاسخ به دیدگاه حمید صادق ۲۹ / ۰۷ / ۹۴ - ۱۱:۵۷ با سلامحمید صادق هستمیک نرم افزار تولیدی بر اساس sql server نوشتم که به زودی وارد بازار فروش می شود می خواهم قبل از ورود برنامه به بازار،دیتابیس برنامه را به نسخه sql server 2016 ارتقا بدهم تا از امکانات جدید آن استفاده کنم چون با توجه به پیچیدگی نحوه کار برنامه دیتابیس برنامه برای کاربر نهایی حجم بزرگی را خواهد داشت و سرعت و میزان حجم دیتابیس مهم است.یک سوال هم داشتم که ممنون می شوم راهنمایی بفرمایید:در حال حاظر من از نسخه کرک شده sql استفاده می کنم و می خواهم برای نسخه نهایی از لایسنس اصلی استفاده کنم آیا می توانم با خرید یک لایسنس همان نسخه را برای مشتریان استفاده کنم یا باید برای هر مشتری از یک لایسنس جداگانه استفاده کرد؟از آموزشهای خوب شما متشکرم و امیدوارم بتوانم از آموزشهای شما در بهتر شدن برنامه استفاده کنم پاسخ به دیدگاه مسعود طاهری ۲۹ / ۰۷ / ۹۴ - ۰۹:۲۳ سعید جان قضاوت ما سطحی نیست بر اساس آمار گارتنر + TPC اونها بهترین در دنیا هستن همه چیز را در نظر می گیرند تعداد کاربر استفاده کننده + قیمت و از همه مهمتر قابلیت ها + کارایی بهتر اعتبار آمار این دو سازمان را زیر سوال نبریم سازمان های بزرگ و معتبر. باور این موضوع برای خیلی ها سخت است اما واقعیت تلخ است. گذر زمان همه چیز را نشان خواهد داد. موفق باشید پاسخ به دیدگاه سعید ر ۲۹ / ۰۷ / ۹۴ - ۰۸:۳۷ با سلام، این که SQL Server در بسیاری از موسسات و (از جمله در ایران) و انهم بدلیل این که محصول مایکروسافت است استفاده می شود، دلیل بر پیشی گرفتن از سایر پایگاه داده ها نمی شود. قضاوت در این مورد و عنوان “پیشی گرفت” بسیار سطحی است. بهتر است مشتریان Oracle و SQL Server را هم مقایسه کرد. بسیاری از شرکت های معروف و بزرگ مخابراتی، ارتباطی و … چاره ای جز استفاده از محصولات اوراکل را ندارند. SQL Server بیشتر در سازمان های متوسط کارایی دارد. و بدلیل تعداد زیاد این سازمان ها محصول پرفروشی است… پاسخ به دیدگاه علی یگانه مقدم ۲۹ / ۰۷ / ۹۴ - ۱۰:۱۱ طبق اخباری که در سایت هایی نظیر tpc و … منتشر میشه اکثر شرکت ها یا از sql استفاده می کنند یا دارن از اوراکل به سمت sql server مهاجرت میکنند و کردندهمچنین بد نیست نگاهی به بزرگترین دیتابیس های جهان بندازیم که چندتای اول به خوبی به یاد دارم از sql server استفاده میکردنددر صد جدول ناسا قرار داره پاسخ به دیدگاه احمد رضاپور ۲۹ / ۰۷ / ۹۴ - ۰۳:۳۱ جناب آقای علی یگانه مقدم لطفا در مورد سرفصلهای این دوره سه سطحی اسکیوال توضیح دهید. نیز بفرمائید در کدام آموزشگاه تدریس میشود؟ با تشکر پاسخ به دیدگاه علی یگانه مقدم ۲۹ / ۰۷ / ۹۴ - ۱۰:۲۴ در همین سایت در بخش محصولات sql server میتوانی بیابیدآقای طاهری مدرس این دوره هستند و خودم هم از هر دوره استفاده کردم و به شدت راضی هستم.حتی دوره افزایش سرعت کوئری ها هم هست که از آن هم راضی بوده ام . پاسخ به دیدگاه احمد رضاپور ۲۹ / ۰۷ / ۹۴ - ۰۳:۳۱ جناب آقای علی یگانه مقدم لطفا در مورد سرفصلهای این دوره سه سطحی اسکیوال توضیح دهید. نیز بفرمائید در کدام آموزشگاه تدریس میشود؟ با تشکر پاسخ به دیدگاه ali ۲۹ / ۰۷ / ۹۴ - ۰۱:۳۶ علی نبی خانیطراح و پشتیبان sqlserverهستمبیشتر هم از این موارد استفاده میکنم:Compressionalways onPartitioning پاسخ به دیدگاه رقیه حجازی ۲۹ / ۰۷ / ۹۴ - ۱۲:۳۰ یک سوال از استاد طاهری داشتم. علت اینکه SqlServer یک Offset دو بایتی برای نوع داده های Variable در نظر می گیره چیه؟ پاسخ به دیدگاه مسعود طاهری ۲۹ / ۰۷ / ۹۴ - ۰۹:۱۹ برای مشخص شدن محل دیتا برای هر دیتا تایپ Variable Length این ۲ بایت در نظر می شود. دیتا Variable Length شما از چه آدرسی تا چه آدرسی در Page ذخیره شده. البته این آفست محل پایان را مشخص می کند. چون دیتا تایپ های Variable Length کنار هم ذخیره می شوند ابتدا این آفست های ۲ بایتی به ازای هر فیلد ایجاد میشه که محل پایان مقادیر فیلد را مشخص می کنه و بعدش خود مقادیر فیلدها نمایش داده می شود. البته من خیلی از این مبحث Internal را خلاصه گفتم پاسخ به دیدگاه 1 2 3 4 5