Programming languages
135 subscribers
202 photos
36 videos
49 files
249 links
A channel about all kind of programming languages, and their architectures and concepts.
Download Telegram
Backup Encryption (SQL Server)
#SQLServer
#ResourceGovernor
در SQL Server قابلیتی به نام Resource Governor وجود دارد شما بوسیله این قابلیت می توانید Resource های موجود در سرور مانند CPU,Memory,IO را به ازای هر کدام از Sessionها تقسیم نمایید.به مثال زیر توجه کنید
فرض کنید بانک اطلاعاتی دارید که بیش از 100 کاربر دارد می خواهید بیشترین قدرت (برای مثال 80 درصد) استفاده از CPU,Memory,IO را در اختیار کاربران گروه ثبت اطلاعات قرار دهید و مابقی را در اختیار کاربران گروه گزارش گیر. انجام اینکار با استفاده از Resource Governor در SQL Server امکان پذیر است. تصویر زیر نحوه عملکرد Resource Governor را نمایش می دهد.
این موضوع به تفضیل در دوره Performance Tuning بررسی خواهد شد.
https://nikamooz.com/product/course-performance-tuning-sql-server/
Resource Governor (SQL Server)
مانیتور کردن Resource Governor با استفاده از برنامه Performance Monitor ویندوز
#SQLServer
#Backup
#Restore
سلام دوستان امروز در کلاس Performance Tuning درباره افزایش سرعت عملیات Backup با استفاده از FileGroup و... صحبت کردیم قرار شد در کانال نیک آموز یک کتاب خوب در خصوص Backup & Restore معرفی کنیم. فایل PDF زیر یک کتاب خوب در این زمینه است در صورت تمایل می توانید آن را دانلود نمایید.
در خصوص افزایش سرعت بکاپ گیری با استفاده از FileGroup باید به این نکته اشاره کنم که با این امکان شما می توانید از بخش خاصی از بانک اطلاعاتی نسخه پشتیبان تهیه نمایید. در این حالت مسلما حجم فایل نسخه پشتیبان + زمان پشتیبان گیری کاهش پیدا خواهد کرد.
https://nikamooz.com/product/course-performance-tuning-sql-server/
#SQLServer
#HeapTable
سلام دوستان
همین الان در یکی از بانک های اطلاعاتی قدیمی درگیر یک جدول بودم که از نوع Heap بوده و کلی دردسر در پروژه ایجاد کرده بود. تصمیم گرفتم یک مطلب کوچک در این باره در کانال نیک آموز بنویسم.
جداول Heap جداولی هستند که فاقد Clustered Index هستند وجود این نوع جداول اغلب در سیستم های OLTP به عنوان یک آفت در Databaseها شناخته می شود. شما با استفاده از کوئری زیر می توانید لیست جداول Heap را در یک بانک اطلاعاتی استخراج کنید.
SELECT OBJECT_NAME(object_id),type_desc FROM sys.indexes
WHERE type_desc='HEAP'
GO
یکی از مهمترین مشکلات این نوع Scan کلیه Pageهای آن به ازای عملیات جستجو می باشد. همچنین برای اینکه با مشکلات دیگر این نوع جداول آشنا شوید مطالب امروز را در کانال نیک آموز دنبال کنید.
در انتها برای اینکه اطلاعات بیشتری در خصوص جداول Heap و Clustered بدست آورید می توانید به آدرس زیر مراجعه نمایید.
https://nikamooz.com/product/speed-in-sql-server/
#SQLServer
#HeapTable
یکی دیگر از مشکلات جداول Heap موضوعی با نام Forward Pointer (اشاره گرهای انتقال) است که این موضوع اغلب از دید خیلی از دوستانی که با SQL Server کار می کنند پنهان است.
این مشکل زمانی که شما رکوردهای جداول Heap را Update می کنید رخ می دهد و طی آن رکوردها به سایر Pageها منتقل می شود که این موضوع باعث تحمیل IO اضافی به کوئری ها هنگام خواندن اطلاعات از این نوع جداول خواهد شد.
تصویر زیر دید خوبی در این خصوص به شما ارائه می دهد.
Forward Pointer (Heap Table) @nikamooz
بدترین نوع تکمیل رزومه توسعه دهنده ها در جهان
هرکسی، این قالب از رزومه را برای توسعه دهنده‌ها دیده است، و این شیوه لطمه‌های بزرگی به هردوی متقاضی و صنعت وارد می‌نماید.

https://dzone.com/articles/the-worst-resume-in-the-world

#Developer_Resume
by @j_ghadiri
SQL Server (Heap Table) @nikamooz
#SQLServer
#Heap
#HeapTable
کلیه جداول Heap دارای حداقل یک IAM Page هستند که در آن آدرس Data Pageهای وابسته به جدول نوشته شده است. (تصویر زیر)
زمانی که SQL Server نیاز داشته باشد رکوردهای یک جدول را استخراج نماید با مراجعه به IAM Page آدرس کلیه Pageهای وابسته به جدول را استخراج و با مراجعه به آنها رکوردها را واکشی می کند.
Heap Table (SQL Server) @nikamooz
چک لیست امنیتی برنامه های وب
Web Vulnerability Checks Performed by Netsparker

https://www.netsparker.com/web-vulnerability-scanner/vulnerability-security-checks-index


#web_developer
#web_security
by @j_ghadiri
#SQLServer
#LogFile
سلام دوستان
امروز می خواهم مطالبی درباره Log File در SQL Server براتون در کانال نیک آموز قرار دهم.
همانگونه که اطلاع دارید هر بانک اطلاعاتی حداقل 2 فایل دارد که یکی از آنها Data File و دیگری Log File می باشد.
به فایل لاگ اصطلاحا Transaction Log File می گویند. SQL Server از این فایل جهت ثبت لاگ تغییرات بانک اطلاعاتی استفاده می کند. این تغییرات می توانند مربوط به اضافه شدن رکورد، ویرایش، حذف ، ساخت ایندکس و... باشند. بنابراین با این تفاسیر باید در نظر داشته باشید که این فایل حجم زیادی از دیتا را داخل خود ذخیره کرده و IO آن به شدت بالا است.
Log File (SQL Server) @nikamooz
#SQLServer
#LogFile
نحوه ذخیره سازی داده ها در Log File به شکل Sequential (ترتیبی) می باشد. بنابراین در جهت افزایش سرعت و کارایی مربوط به این فایل توصیه می گردد که این فایل را در یک دیسک جداگانه، جدای از دیسک مربوط به Data File قرار دهید.
لازم به ذکر است هنگام جداسازی دیسک های مربوط به دیتا فایل و لاگ فایل باید تنظیمات مربوط به RAID را مد نظر داشت.
یکی از بهترین RAIDها برای Log File استفاده از RAID 10 می باشد در صورتیکه از لحاظ هزینه امکان تهیه این نوع RAID نیست می توانید از RAID 1 استفاده کرده و لاگ فایل را در آن RAID قرار دهید.
تصویر زیر RAID بهینه برای جدا کردن دیتا فایل و لاگ فایل را با حداقل هزینه در جهت افزایش کارایی بانک اطلاعاتی نمایش می دهد.
RAID For Data File& Log File (SQL Server) @nikamooz
#SQLServer
#LogFile
معماری مربوط به لاگ فایل به دو صورت Physical و Logical می باشد.
معماری Physical این موضوع را می گوید که
درون لاگ فایل به یکسری Virtual Log File یا لاگ فایل مجازی تقسیم شده است که لاگ رکوردها در آن ثبت می شوند. به لاگ فایل مجازی اصطلاحا VLF می گویند.
معماری Logical این موضوع را می گوید که
هر لاگ رکوردی که در لاگ فایل ثبت می شود که شامل یکسری اقلام می باشد. هر کدام از این لاگ رکوردها برای خودشان یکسری LSN یا Log Sequence Number دارند. به ازای هر تراکنش (مثلا درج یک رکورد) ممکن است بیش از چند لاگ رکورد ثبت گردد که همه آنها با یک Transaction ID یکسان هستند و...
تصویر زیر VLFهای و Log Recordهای موجود در یک بانک اطلاعاتی را نمایش می دهد.
VLF & Log Record (SQL Server) @nikamooz