DotNet | دات نت
1.12K subscribers
665 photos
229 videos
484 files
707 links
تو این روزا بهتره که همیشه علم خودمون رو بالا ببریم و بتونیم با سریع ترین راه ممکن خودمونو بروز نگه داریم.
- سعی کنیم از کمترین امکانات بیشترین بهره رو ببریم
منتظرت هستیم😉
دنیا رو جای بهتری برای یادگیری کنیم 🌹
#course #book


🆔 @dotnetcode
Download Telegram
#SqlServer, #Storage
ذخیره‌سازی فایل در دیتابیس
با چه روشی انجام شود؟

varbinary?
file table?
...
حجم اطلاعات زیاد هستش
روش بهینه برای ذخیره‌سازی چه روشی ست؟
برای نگهداری دادهای LOB یعنی CLOB ها و BLOB ها روش‌های مختلفی وجود داره.
تعریف BLOB: مخفف Binary Large Object هست مانند Image
تعریف CLOB: مخفف Character Large Obeject هست مانند Text
اولین روش این هستش که ما مستقیماً داده رو در خود SQL در قالب یک فیلد از نوع VarBinary- XML-Nvarchar(MAX) و... ذخیره کنیم. اولین قوت این روش این هستش که کنترل مواردی مانند امنیت، جستجو، پشتیبانی Backup، عملیات مربوط به تراکنش و لغو آن و ... بر عهده خود SQL می‌باشد
اما نقاط ضعف این روش:
افزایش حجم LOGT - محدودیت حجم ۲ گیگابایت - وجود Fragmentation - استفاده زیاد از Buffer pool و Ram سیستم و ...
یکی از روش‌های رایج دیگر نگهداری فایل، خارج از دیتابیس می‌باشد. که معمولاً اصل فایل (مثلاً تصویر) رو در یک پوشه خاص ذخیره می‌کنند و آدرس اون رو در یک فیلد از نوع Varchar یا Nvarchat نگهداری می‌کنند. در این روش کاهش Fragmentation - عدم استفاده از Buffer Pool - افزایش حجم ذخیره‌سازی به اندازه دیسک و ... جزو مزیت‌ها می‌باشد
نقاط ضعف این روش:
در این روش SQL هیچ کنترلی روی این فایل نداره. مثلاً در زمان بک آپ گیری از دیتابیس، از این پوشه بک آپی گرفته نمی شه و کنترل مواردی مانند امنیت و تراکنش‌ها بر عهده SQL نمی‌باشد. به دلیل درگیری بین SQL و NTFS، دارای کد نویسی پیچیده می‌باشد و ....
و
اما یکی از روش‌های بسیار مناسب Filestream می‌باشد که از نسخه 2008 ارائه شد و مزیت‌های دو روش اشاره شده دارا می‌باشد. راه‌اندازی FileStream نیازمند تنظیمات سطح سرور و سطح Instance می‌باشد.
در ادامه به یک سؤال مهم جواب می‌دهیم:
چه زمانی برای ذخیره‌سازی اطلاعات از Filestream استفاده کنیم؟؟
پاسخ:
در تئوری گفته شده است که برای داده‌های با حجم بیش از یک مگابایت اما در عمل برای داده‌های با حجم بیش از ۲۵۶KB و برای داده‌های با حجم کمتر از ۲۵۶KB نوع Nvarchar (MAX) مناسب‌تر می‌باشد.

و اما ساختار دیگری که می‌توان از آن برای نگهداری فایل‌ها استفاده کرد File Table می‌باشد که از نسخه ۲۰۱۲ معرفی شد. در واقع متوان به این صورت گفت که File Table از همکاری بین File Stream و نوع داده‌ای Hierachy ایجاد شده است. در واقع با ایجاد FileTable ارتباط بین SQL, Ntfs رو برقرار کرده‌ایم. به این معنا که با حذف فایل از SQL، اطلاعات این فایل از NTFS نیز حذف می‌شود و با تغییر محل فایل در SQL، این تغییر مکان در NTFS نیز اعمال می‌شود.

محسن بندامیر
@Mohsen_Bandamir

کانال تخصصی SqlServer
@SQLSERVER_professional

آشنایی با قابلیت FileStream اس کیوال سرور
https://www.dotnettips.info/post/331/
https://www.dotnettips.info/post/332/
https://www.dotnettips.info/post/333/
📽مسیر کامل دوره یادگیری توسعه پایگاه های داده SQL Server

حدود 25 ساعت دوره از مبتدی تا پیشرفته

📁به همراه تمام فایل ها و زیرنویس ها

برای کسانی که میخواهند تازه SQL Server را شروع کنند

برای حرفه ای شدن در SQL Server هم شدیدا توصیه میکنم مسیر پرس و جو داده ها با T-SQL از SQL Server رو حتما ببنید

—دانلود 📥 :

پارت اول | پارت دوم

🗂 دقت کنید باید همه پارت ها دانلود بشوند و بعد همه پارت ها را انتخاب کنید و Extract کنید


ما رو به دوستان خودتان معرفی کنید 😉🌹

#course #pluralsight #sql #sqlserver

🆔 @dotnetcode
📽مسیر کامل دوره یادگیری پرس و جو داده ها با T-SQL از SQL Server

حدود 20 ساعت دوره از مبتدی تا پیشرفته

📁به همراه تمام فایل ها و زیرنویس ها

برای کسانی که می خواهند در SQL Server حرفه ای شوند!

—دانلود 📥 :

پارت اول

🗂 دقت کنید باید همه پارت ها دانلود بشوند و بعد همه پارت ها را انتخاب کنید و Extract کنید


ما رو به دوستان خودتان معرفی کنید 😉🌹

#course #pluralsight #sql #sqlserver

🆔 @dotnetcode