همانطور که اطلاع دارید بر اساس گزارش گارتنر SQL Server به عنوان Leadership (سردسته، سرکرده) در حوزه DMBSها انتخاب شده است.
این موضوع به مدد قابلیتهای فنی محصول، نظرات فنی کاربران و آیندهنگری که این محصول دارد میباشد. برای کسب اطلاعات بیشتر در خصوص گزارش گارتنر و پارامترهای مورد ارزیابی آن میتوانید به این لینک مراجعه نمایید. (گوشه سمت راست Note1 و… را حتما مطالعه کنید)
اما در فیلم آموزشی امروز SQL Server 2016 را با سه پایگاه داده برتر (Oracle,IBM DB2,SAP) مقایسه کردهایم در این مقایسه Memory Optimized Table و همچنین Columnstore Index را ملاک قرار دادهایم و بررسی کردهایم که این سه پایگاه داده آیا قابلیتی مشابه آن را دارند در صورتیکه چنین قابلیتی دارند ….
لازم میدانم اشاره کنم که در این فیلم آموزشی ما 3 شرکت معتبری (Nsadaq , BWIN , StackOverflow) که از قابلیت SQL Server استفاده کردهاند را به طور خلاصه بررسی نمودهایم پیشنهاد من به شما این است که حتماً این فیلم را دانلود و مشاهده نمایید
حتما نظرات خود را در مورد این فیلم آموزشی در قسمت نظرات بنویسید.
منبع: آموزش برنامه نویسی نیک آموز
35 دیدگاه
وحید
من نظرم اینه شما اول برو سراغ آن شرکنایی که از Oracle استفاده میکنند بعد برو سراغ شرکت ها و مثال های sql اگر قراره مقایسه کنید هرچند که این دو محصول قابل مقایسه با هم نیستند و هر کدام بنا به اقتضا کاربری خود را دارد. لذا این بحثی که شما راه انداختی فقط جنبه تبلیغی داره و 100 البته که مشتری های اورراکل هیچ کدام حتی 1 درصد هم به Engin های دیگه فکر نمیکنند.
فرید طاهری
سلام دوست عزیز
از روی نظرتان حدسم این هست که شما فیلم را نگاه نکرده اید.
ما داخل فیلم مقایسه را بر اساس یک منبع معتبر انجام دادهایم، صد البته داخل فیلم بارها هم اشاره کردهایم که دوستانی که با سایر دیتابیس ها مثل اوراکل کار می کنند، حتما نظراتشان را همین جا در قسمت نظرات بنویسند.
اگر شما هم در زمینه اوراکل تخصصی دارید لطفا بفرمایید تا ما و سایر دوستان هم استفاده کنیم.
مسعود طاهری
سلام وحید جان
شما اول برو سراغ آن شرکنایی که از Oracle استفاده میکنند
اگر بتوانید خودتان Case Study معتبر معرفی کنید خوشحال می شویم
سری به TPC.org بزنید (در اعتبار اون شکی نیست) نگاهی به Rank ها بیاندازید وضعیت SQL Server را کنترل کنید.
حتما خبری بوده که گارتنر با توجه به نظرات فنی مشتریان و… SQL Server را به عنوان Leadership انتخاب کرده.
مشتری های اورراکل هیچ کدام حتی 1 درصد هم به Engin های دیگه فکر نمیکنند
باید در نظر داشته باشید که هیچ وقت سویچ از یک DB به DB دیگر عاقلانه نیست که معمولا هزینه های زیادی به سازمان تحمیل می کند.
اما می توان اینگونه گفت که با توجه به قابلیت های اخیر SQL Server و انتخاب آن به عنوان Leadership توسط گارتنر می توان به یکی از گزینه های کم هزینه برای راه اندازی پروژه های Enterprise از SQL Server استفاده نمود.
SQL Server به نسبت اوراکل و DB2 بسیار هزینه کمتری دارد و قابلیت های موجود در آن جوابگوی پروژه های Enterprise است . Case Studyهای مطرح دنیا را بررسی کنید.
امیدوارم از نظرات من ناراحت نشده باشید
موفق باشید
hamid asri
سلام . بازم مرسی و مثل همیشه عالی.
حداقل برای من که با اس کیو ال اشنا هستم خیلی جالب بود. کسانی هم که با دیتا بیس انجین های دیگه مثل اوراکل کار می کنن خوب از هزینه های اون ،از یاد گیری اولیه گرفته تا پیاده سازیش ، به خوبی اشنا هستند
و خوب تو این فیلم چند تا از سایت های معروف هم نام برده شد . پس کاملا مشخصه که کدوم شرکت و دیتا بیس انجین لیدره خوبی انتخاب شده .
منتظر فیلم سوم هم هستیم و واقعا برام جای سواله که چرا هنوز ای کیو ال 2000؟
چرا هنوز نصب به روش Next ، next؟؟؟
چرا هنوز نرم افزار هایی که بخش خوبی از بازار رو گرفتن هنوز Select * from ؟؟؟
alireza
سلام.
اگه به مقاله http://www.brentozar.com/archive/2014/06/memory-analytics-whats-different-sql-server-oracle/ نگاه کنین دلیل index نشدن Columnstore در اوراکل ذکر شده. در اصل sql server با اینکارش عملا دیتابیس رو به یه دیتاورهاوس تبدیل کرده. پس طبیهیه که از چنین دیتابیسی دیگه نمیشه برای oltp استفاده کرد
مسعود طاهری
سلام لینک خوبی بود.
البته در نظر داشته باشید که در SQL Server 2016 کلا اوضاع فرق کرده شما یک جدول Memory Optimized Table را دارید و روی آن می توانید Columnstore Index ایجاد نمایید یعنی در سیستم OLTP این قابلیت مفید را دارید. یا جدول از نوع Disk based دارید (جداول کلاسیک) و بعد می توانید روی آن Update table Nonclustered Columnstore Index ایجاد نمایید در این صورت Optimizer از این ایندکس شما هر کجا صلاح باشد استفاده می کند.
پس می بینید که مایکروسافت با دقت تمام این نوع ایندکس را در اختیار سیستم های OLTP قرار می دهد.
تغییرات شگرفی در این خصوص در نسخه 2016 ارائه شده است. برای کسب اطلاعات بیشتر می توانید به لینک زیر مراجعه کنید
https://nikamooz.com/tag/sql-server-2016/
ضمنا در دمو ارائه شده توسط شرکت مایکروسافت 60 میلیارد رکورد در Memory Optimized و Columnstore Index تواما ذخیره شذه و کوئری که Group By حجم زیادی از اطلاعات را در بر می گیرد با استفاده از این نوع ایندکس در کمتر از چند ثانیه (زیر 3 ثانیه) نتیجه را تحویل می دهد.
در سایت برای این موضوع مطلب گذاشته شده است.
nikamooz.com/7-new-feature-in-sql-server-2016/
علی میرنیا
با سلام
Forrester research که SAP می باشد که شما می توانید متن مقاله رو از لینک زیر دانلود نماید
خیلی خوب بوده و الان به سطح رضایت خوبی تبدیل شده اوراکل که واقعا خوب هستش ولی از لحاظ قیمت قبول دارم زیاد هستش SAP هم لازم نیست بگیم بزرگترین شرکت نرم افزاری شرکتی دنیا هستش و محصولاتی که ارائه میده عالی هستش .
مسعود طاهری
علی جان در خصوص تست تان می توانید بفرمایید.
محمدرضا خاکپور
بهترین پایگاه داده کدام است؟ (مقایسه پایگاه داده ها)
مسعود طاهری
جناب خاکپور سلام
لینک مقاله شما کمی قدیمی است (ظاهرا مقاله برای سال 1386 است)
علی میرنیا
با سلام
مسعود طاهری
سلام علی جان
لطفا دلایل خود را ذکر کنید
در ضمن در نظر داشته باشید که تعداد vulnerability database گزارش شده برای SQL Server خیلی کمتر از اوراکل و… است.
http://www.unitek.com/training/blog/wp-content/uploads/2014/03/least-vulnerable-database-5-years-in-a-row.jpg
موسسه ای که آمار را استخراج می کند (کارش درست است)
https://nvd.nist.gov/
در ضمن این موسسه هم کارش درسته (بی طرف عمل می کنه)
secunia.com
همچنین SQL Server گواهینامه امنیتی EAL4+ جهت ورود به وزارت دفاع و استفاده در ارگانهای نظامی آمریکا را اخذ کرده است.
https://www.commoncriteriaportal.org/files/epfiles/0811b_pdf.pdf
پس بدونید که امنیت اون را آدم هایی با تخصص بالا تست کرده اند.
متشکرم
فرشید علی اکبری
سلام
محمد
سلام به همه متخصصان
آقا این بحث اراکل و اس کیو ال از اون اختلافهایی که تبدیل به اختلافات قبیله ای شده.
واقعا تو این چند ساله متاسفانه خیلی بحث های متعصبانه ای از هر دو طرف شنیدم.
من خودم در حال اضر با SQL دارم کار می کنم و هیچ تعصبی رو هم رو این مورد نداشته و ندارم و هر کسی هم که مبحثی رو عنوان میکنه خوشحال میشم.
ولی همونطور که مطلع هستید (جناب آقای میر نیا) تنها یک پارامتر دخیل نیست.
تا اونجایی که من میدونم یک نرم افزار رو در زمینه دیتابیس در همه ی این موارد تست می کنن و بعد یک امتیازی رو بهش اختصاص میدن:
Cross-Box Scale Limits
High Availability
Scalability and Performance
Security
Replication
Management Tools
RDBMS Manageability
Development Tools
Programmability
Integration Services
Integration Services – Advanced Adapters
Integration Services – Advanced Transforms
Master Data Services
Data Warehouse
Analysis Services
BI Semantic Model (Multidimensional)
BI Semantic Model (Tabular)
PowerPivot for SharePoint
Data Mining
Reporting Services Features
Report Server Database Server Edition Requirements
Business Intelligence Clients
Spatial and Location Services
Additional Database Services
Other Components
حالا تو یجایی Oracle برتره و یک جایی هم SQL
در ثانی اراکل سبقه ی بیشتری نسبت به SQL داره و اگر نتونسته باشه بازار رو از آن خودش کنه باید بهش شک کرد.
ولی باید اشاره کرد مایکروسافت با توجه به سابقه ی کمی که در زمینه SQL داره (نسبت به اراکل) بدور از هرگونه اغراق باید گفت که پیشرفت واقعا خوبی داشته.
در آخر خواهشم اینه که اگر قرار به کسی انتقادی وارد بشه باید سازنده باشه نه اینکه جنبه تخریبی داشته باشه.
با تشکر
محمد
در ضمن پیرو صحبت شما در خصوص این موضوع :
لطفا نحوه تست اون کوئری به همراه پارامترهایی که داخل اون 3 تا دیتابیس دخیل کردید رو بفرمایید تا ما هم بیشتر در جریان موضوع باشیم.
از قبیل نوع دیتاتایپ
نوع ایندکس و تنظیمات مربوط به اون(Fill Factor,Pad index,….)
نوع کوئری(Join ,Sub Query,CTE,…)
و همینطور Query Hint یا Table Hint
با سپاس
علی میرنیا
سلام
مسعود طاهری
علی جان چند تا نکته
1- شما مطمئن هستید ایندکس Columnstore ایجاد کرده اید. چون ایندکس Columnstore ساختار BTree ندراد و شما دو پارامتر PadIndex و Fillfactorی که ذکر کردید در ساختارهای BTree مفهوم دارد. و اگر در ساختار Columnstore Index آن را استفاده کنید با خطای زیر مواجه می شوید
Msg 35317, Level 15, State 1, Line 1
CREATE INDEX statement failed because specifying FILLFACTOR is not allowed when creating a columnstore index. Consider creating a columnstore index without specifying FILLFACTOR.
دو حالت وجود دارد
1- شاید شما ایندکس از نوع NonClustered عادی ایجاد کرده اید
2- یا به اشتباه این پارامتر را اینجا ذکر کرده اید
در هر حالت
1- زمانی که شما از این نوع ایندکس استفاده کنید Data شما به شدن قشرده خواهد شد. ظرفیت ایندکس خود را چک کنید و ببینید اوضاع چگونه است
2- امکان ایجاد ایندکس به صورت Clustered Columnstore ایندکس در نسخه 2014 وجود دارد که به مراتب قدرت آن بیشتر است و حجم آن کمتر. (البته اگر جدول + ایندکس NonClustered Columnstore را با هم در نظر بگیرید)
3- Columnstore ایندکس نسخه 2016 به مراتب قابلیت های بهتری نسبت به نسخه های قبلی دارد. یکی از این قابلیت ها Aggregate Push-down می باشد در این حالت SQL Server در Storage برخی از تایج مربوط به Aggregation را Persist می کند که این موضوع باعث می شود برخی از نتایج Aggregation از قبل در Storage به صورتpre calculus در نظر گرفته می شود و کوئری این مرحله را خارج از دیتابیس انجام ندهد
4- در ضمن می توان تحت شرایطی این نوع ایندکس (Columnstore Index) را هم برای افزایش کارایی پارتیشن بندی کرد.
5- یکسری تنظیمات خاص در سطح سیستم عامل و برخی تنظیمات خاص سخت افزاری (البته این موارد در صورت لزوم است)
برای آشنایی با معماری Columnstore و تاثیر آن در کارایی پایگاه داده می توانید از مجموعه مقالات زیر استفاده کنید
http://www.nikoport.com/columnstore/
مسعود طاهری
ببخشید حالت دیگه ای هم ممکن است وجود داشته باشه و اون هم این است که شما یک کلاستر ایندکس با Fillfactor=85 و همچنین Padindex ایجاد کرده باشید و روی آن یک Non Clustered Columnstore Index سوار کرده باشید.
که بهتر بود ایندکس کلاستر خودتون را فشرده می کردید.
البته نمی دونم چگونه دیتا این جدل را پر کرده اید.
1- آیا Row Group های ایندکس Columnstore را بررسی کرده اید. چند تا بوده است ؟ چقدر از آنها فشرده بوده و…
2- آیا وضعیت Fragmentation ایندکس کلاستر خودتون را کنترل کرده اید
3- و…
شهرام اکبرزاده
با سلام خدمت همه دوستان گرامی
با توجه به آنکه در مورد اراکل متعصب هستم، نمی خواستم در این صفحه مطلبی قرار دهم تا به مواردی که از این پس بیان می شوند، جهت دهم اما لطفا به این مطلب هم توجه کنید که تنها با یک ویژگی نمی توان بهترین دیتابیس را انتخاب کرد. درست است که Sql Server دارای Memory Optimized Table است اما هیچگاه با این ویژگی نمی توان آنرا بهترین دیتابیس دنیا بر شرمد. خواهش می کنم به این لینک که مشکلات In Memory Database را مطرح می کند توجه کنید :
http://www.computing.co.uk/ctg/feature/2371368/whats-holding-back-in-memory-databases
موفق باشید
علی میرنیا
سلام
مسعود طاهری
علی جان
عوامل خیلی زیاد در این زمنیه دخالت داره مثل وجود Delta Store در Columnstore و… ای کاش شرایط پیش می آمد می توانستم روی Case Study شما دقیق تر Zoom بشم می دونم که زمان اون را میشه با استفاده Clustered Columnstore موجود در 2014 به شدت کاهش داد حتی در حد میلی ثانیه. چون Benchmarkهایی که در دنیا به ازای این موضوع تست شد واقعا تایید شده هستند.
به لینک زیر نگاهی بکنید یک مقاله خوب که معماری و تغییرات 2016 و 2014 را درباره Columnstore ایندکس به خوبی بررسی کرده (خلاصه و مفید) قسمت 6.6 را نگاه کنید حجم دیتا نسبتا زیاد روی یک CPU اینتل Haswell تست شده زمان های اون واقعا قابل توجه است در حد میلی ثانیه و…
http://www.vldb.org/pvldb/vol8/p1740-Larson.pdf
http://blogs.technet.com/b/dataplatforminsider/archive/2014/04/16/sql-server-2014-and-hp-sets-two-world-records-for-data-warehousing-leading-in-both-performance-and-price-performance.aspx
امیدوارم اگر چنین Case داشتید برای مقایسه بتوانیم با هم همکاری کنیم.
علی میرنیا
سلام
رضا
سلام و خشته نباشد خدمت آقایان طاهری
سوالی داشتم ولی جایی برای پرسش پیدا نکردم جز اینجا. خوب میشه بخشی برای سوال و جواب متفرقه نیز راه اندازی کنید.
سوال: آیا فیلد های Nullable در Sql Server (از هر نوعی : عدد ، تاریخ ، رشته و …) در صورت خالی بودن ، حجمی از دیتابیس اشغال میکنند ؟
بسیار ممنون میشم که فیلم آموزشی کوتاهی در این مورد تهیه بفرمایید و از تجربیات و علم شما استفاده کنیم.
شادی سرتاسر وجودتان
مسعود طاهری
مایکروسافت در SQL Server برای چنین حجم هایی راه کارهایی مانند
علی میرنیا
با سلام
رضا
من یک سوال در مورد مقدار حافظه ای که فیلد نال میگیره پرسیدم. منتها فکر کنم یا غیب شده یا شما دوست عزیز تاییدش نکردید. ممنون میشم جواب بدید
فرید طاهری
سلام دوست عزیز سوال شما ارتباطی به موضوع بحث ندارد، به همین جهت پاسخ داده نشد.
لطفا سوالات خارج از بحث را در قسمت تماس با ما و یا اگر محصول مربوطه را دریافت کرده اید در قسمت پشتیبانی محصولات بپرسید.
یک نکته: توجه نمایید که اولیت پاسخ ما با مشتریان نیک آموز می باشد.
با تشکر
رضا
بله بنده هم در همون سوالم نوشتم که جایی برای پرسیدن شوالم پیدا نکردم و دوستداران شما ،خوشحال میشن که بخشی در مورد سوال و جواب در سایت قرار بدید. به هر حال بهتر بود بنده رو همون روز راهنمایی میکردید که سوالم رو کجا بپرسم. با شتکر فراوان
فرید طاهری
از لطف شما سپاسگزارم.
ولی متاسفانه با توجه به سوالات زیاد این امکان برایمان مقدور نیست که یک انجمن در سایت راه اندازی کنیم.
با تشکر
مهدی ربانی ذبیحی
با سلام وخسته نباشید من مدتی هست که کنار اس کیول اوراکل هم کار می کنم معمولا بیشتر زمانی سمت اوراکل و محصولاتش باید رفت که با محصولات متن باز و مخصوصا لینوکس کار میشه چون اوراکل توی مستندات خودش اعلام کرده بهترین کارایی رو دیتابیسش روی لینوکس داره و اصلا در زمینه ویندوز خودش ادعا نداره
سلیم ظریف برگی
با سلام
محمد
کاری ب فیلم اموزشیتون ندارم, ولی من با ssas, sq server ۲۰۱۲ نزدیک ۸۰۰ملیون رکورد واکشی کردم, دیتابیس کرش کرد, مقایسه اوراکل با اس کیو ال بیمنطقه حالا چه برسه به db2 که غولیه واسه خودش
فقط میتونم اینو بگم بهترین مجموعه ماکروسافت, افیس شه همین مابقی خواسته بگه ما هم هستیم
مسعود طاهری
سلام دوست عزیز
می توانید در خصوص نحوه واکشی تون توضیح بدهید؟
من هم دارم استفاده می کنم از SQL Server با میلیاردها رکورد ….
منتها می دونم از این محصول چه جوری کار بکشم
یه سری به سایت TPC.org بزنید. چارت های گارت نر + امنیت …. را بررسی کنید
تستر
لینک دانلود خرابه بررسی کنید
آرزو محمدزاده
لطفا مجدد این مورد را تست نمایید.
سپاس از همراهی شما