#خلاصه_مطالب «فلسفه نرمافزار» در هفته گذشته:
۱. تکنولوژی Xamarin.Forms برای ساخت برنامههای موبایل
#xamarin #mobile #crossplatform
https://telegram.me/SoftwarePhilosophy/561
۲. افزایش بازدهی سرعت بانکهای اطلاعاتی با استفاده از حافظه اضافه (SQL Server)
#sqlserver
https://telegram.me/SoftwarePhilosophy/562
۳. امکانات و ویژگیهای PostCSS
#css #postcss #less #sass
https://telegram.me/SoftwarePhilosophy/563
۴.مفهوم Logical Query Processing
#sql
https://telegram.me/SoftwarePhilosophy/565
۵. مفهوم SEO و عملکرد آن
#seo
https://telegram.me/SoftwarePhilosophy/566
۶. مفهوم Parameter Binding در ASP.NET Web Api
#webapi #aspnet
https://telegram.me/SoftwarePhilosophy/568
ـــــــــــ
@SoftwarePhilosophy
۱. تکنولوژی Xamarin.Forms برای ساخت برنامههای موبایل
#xamarin #mobile #crossplatform
https://telegram.me/SoftwarePhilosophy/561
۲. افزایش بازدهی سرعت بانکهای اطلاعاتی با استفاده از حافظه اضافه (SQL Server)
#sqlserver
https://telegram.me/SoftwarePhilosophy/562
۳. امکانات و ویژگیهای PostCSS
#css #postcss #less #sass
https://telegram.me/SoftwarePhilosophy/563
۴.مفهوم Logical Query Processing
#sql
https://telegram.me/SoftwarePhilosophy/565
۵. مفهوم SEO و عملکرد آن
#seo
https://telegram.me/SoftwarePhilosophy/566
۶. مفهوم Parameter Binding در ASP.NET Web Api
#webapi #aspnet
https://telegram.me/SoftwarePhilosophy/568
ـــــــــــ
@SoftwarePhilosophy
#خلاصه_مطالب «فلسفه نرمافزار» در هفته گذشته:
۱. آزمونی برای سنجش سلامت یک تیم مهندسی (Iran Agile)
#softwareprocess #sdlc
https://t.me/SoftwarePhilosophy/702
۲. مفهوم Computer Vision یا «بینایی کامپیوتری» و مثالهایی از C#
#csharp #computervision #ai
https://t.me/SoftwarePhilosophy/704
۳. اس کیو ال سرور برای لینوکس (High Tec SQL)
#sqlserver #linux
https://t.me/SoftwarePhilosophy/705
۴. سوالات متداولی جلسات مصاحبه نیروهای جدید در مورد فریمورک Bootstrap
#bootstrap #css
https://t.me/SoftwarePhilosophy/707
۵. آشنایی با ۵ فریمورک برتر CSS
#css #framework
https://t.me/SoftwarePhilosophy/709
۶. آشنایی و مقایسه ابزارهای TFS و JIRA
#tfs #jira
https://t.me/SoftwarePhilosophy/711
ـــــــــــ
@SoftwarePhilosophy
۱. آزمونی برای سنجش سلامت یک تیم مهندسی (Iran Agile)
#softwareprocess #sdlc
https://t.me/SoftwarePhilosophy/702
۲. مفهوم Computer Vision یا «بینایی کامپیوتری» و مثالهایی از C#
#csharp #computervision #ai
https://t.me/SoftwarePhilosophy/704
۳. اس کیو ال سرور برای لینوکس (High Tec SQL)
#sqlserver #linux
https://t.me/SoftwarePhilosophy/705
۴. سوالات متداولی جلسات مصاحبه نیروهای جدید در مورد فریمورک Bootstrap
#bootstrap #css
https://t.me/SoftwarePhilosophy/707
۵. آشنایی با ۵ فریمورک برتر CSS
#css #framework
https://t.me/SoftwarePhilosophy/709
۶. آشنایی و مقایسه ابزارهای TFS و JIRA
#tfs #jira
https://t.me/SoftwarePhilosophy/711
ـــــــــــ
@SoftwarePhilosophy
#خلاصه_مطالب «فلسفه نرمافزار» در هفته گذشته:
۱. آشنایی با Xamarin Workbooks
#xamarin #dotnet
https://t.me/SoftwarePhilosophy/713
۲. بدهی فنی چیست؟ (ایران دات نت)
#softwareengineering #technicaldept
https://t.me/SoftwarePhilosophy/714
۳. محیط برنامهنویسی Continuous، یک محیط جذاب روی iPad و iPhone برای برنامهنویسی به زبانهای C# , F#
#crossplatform #csharp #fsharp #iphone
https://t.me/SoftwarePhilosophy/717
۴. کنترل سرعت اضافه کردن فیچر به نرمافزار
#softwareengineering
https://t.me/SoftwarePhilosophy/719
۵. قابلیت Always Encrypted در SQL Server 2016 (ایران دات نت)
#sqlserver
https://t.me/SoftwarePhilosophy/720
ـــــــــــ
@SoftwarePhilosophy
۱. آشنایی با Xamarin Workbooks
#xamarin #dotnet
https://t.me/SoftwarePhilosophy/713
۲. بدهی فنی چیست؟ (ایران دات نت)
#softwareengineering #technicaldept
https://t.me/SoftwarePhilosophy/714
۳. محیط برنامهنویسی Continuous، یک محیط جذاب روی iPad و iPhone برای برنامهنویسی به زبانهای C# , F#
#crossplatform #csharp #fsharp #iphone
https://t.me/SoftwarePhilosophy/717
۴. کنترل سرعت اضافه کردن فیچر به نرمافزار
#softwareengineering
https://t.me/SoftwarePhilosophy/719
۵. قابلیت Always Encrypted در SQL Server 2016 (ایران دات نت)
#sqlserver
https://t.me/SoftwarePhilosophy/720
ـــــــــــ
@SoftwarePhilosophy
Forwarded from DotNetZoom (ALI_1992)
#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 اس کیوال سرور
http://www.dotnettips.info/post/331/
http://www.dotnettips.info/post/332/
http://www.dotnettips.info/post/333/
___
@DotNetZoom
❇ذخیرهسازی فایل در دیتابیس
با چه روشی انجام شود؟
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 اس کیوال سرور
http://www.dotnettips.info/post/331/
http://www.dotnettips.info/post/332/
http://www.dotnettips.info/post/333/
___
@DotNetZoom
.NET Tips
آشنایی با قابلیت FileStream اس کیوال سرور 2008 - قسمت اول
مطلبی چندی قبل در مورد "ذخیره سازی فایلها در دیتابیس یا استفاده از فایل سیستم متداول؟" منتشر گردید، جهت برشمردن فواید ذخیره سازی فایلها در دیتابیس (+). اما معایب این نوع ذخیره سازی بررسی نشدند:الف) اختصاص یافتن قسمتی از بافر SQL Server به این امر.ب) با…