درباره نویسنده

12 Comments

  1. مجتبی شهریور

    مجتبی شهریور

     سلام
    مقاله خوبی داشتین
    متشکرم
    وقعازمن از این خصوصیت در اس کیو ال اطلاع نداشتم بهره بردم

    پاسخ دادن
  2. Hamid J. Fard

    Hamid J. Fard

     مقاله خلاصه و مفید بود فقط چند نکته رو در ادامه مقاله اضافه کنم:

    نکته ۱: Database Snapshot جای Backup رو نمی گیره پس هیچوقت به عنوان Backup ازش استفاده نشه.
    نکته ۲: سرعت بازدهی پایگاه داده به دلیل وجود عملیات Copy On Write کاهش میابد.
    نکته ۳: پایگاه داده اصلی نمی تواند دیگر به عنوان Scalable استفاده شود.
    نکته ۴: توانایی ساخت Database Snapshot در فایل سیستم FAT32 وجود ندارد.
    نکته ۵: امنیت و ساختار فایلهای پایگاه داده اصلی بعد از Snapshot نمی توانند تغییر کنند. به عنوان مثال یک فایل به صورت Read-Only است و بعد از Snapshot دیگر ما توانایی تغییر آن به Read-Write را نداریم.
    نکته ۶: این عملیات برای مواردی همچون گذارشگیری و برگرداندن داده های تغییر یافته شده است. در بعضی مواقع ما نیاز داریم که داده های بسیاری را به صورت دستی تغییر دهیم که این عملیات ممکن است به شکست انجامد و ما نیازمند آن هستیم که داده های تغییر یافته شده را حالت اول برگردانیم این روش یکی از معمول روشهاست.
    نکته ۷: FileStream پشتیبانی نمی شود و اینکه زمان عمر مفید Snapshot حداکثر ۲۴ ساعت می باشد.
    نکته ۸: اگر اندازه فایل Snapshot از فضای دیسک بیشتر یا هم اندازه شود Database Snapshot به صورت Suspected در می آید و شما نیاز دارید که آن را حذف کنید.
    نکته ۹: اگر بیش از یک Snapshot از پایگاه داده وجود داشته باشد شما نمی توانید آن را Restore کنید.
    نکته ۱۰: و از همه مهمتر اینکه در زمان Restore جفت پایگاه داده و Snapshot از دسترس خارج می شوند و بعد از عملیات Restore به صورت اتوماتیکوار از فایل تراکنش دوباره می سازد که این باعث می شود زنجیره تراکنش از بین برود. پس در نتیجه قبل از Restore کردن شما باید یک Full Backup از پایگاه داده اصلی بگیرید.
    امیدوارم این نکات خاطر شما رو ناراحت نکرده باشه.
    پاسخ دادن
    1. فرشید علی اکبری

      فرشید علی اکبری

       سلام

      نکات دلسرد کننده ای بود، ظاهراً با توجه به این ایرادات وارده، باید با این وجود عطایش را به لقایش بخشید؟ ولی مطمئناً مایکروسافت با درنظر گرفتن هزینه هایی که این امکاندهی برای کاربرانش دارد، در دسترس قرار دادن این امکان رو جهت استفاده بجا توسط DBAها ترجیح داده و درغیر اینصورت در نسخه های بعدی حذف میشد.
      موفق باشید. 
      پاسخ دادن
  3. مجتبی مزورعی

    مجتبی مزورعی

    خوب می فرمودید
    وقتی ما ابزار بک آپ گیری را داریم چه نیازی به این ابزار هست ؟
    مزیت های این روش نسبت به بک آپ گیری معمولی چیست ؟

    معومولا به خاطر اینکه پروسه اتچ کردن با ارور همراه است برای انتقال پایگاه داده از روش بک آپ گیری استفاده می کنند
    آیا این روش را برای انتقال پایگاه داده می توان به کار برد ؟

    با تشکر

    پاسخ دادن
  4. علی یگانه مقدم

    علی یگانه مقدم

    یکی از کاربردهای آن به نظرم میتواندی این باشد که به عنوان مثال یک سیستم مدیریت محتوا دارید که قصد دارید نسخه دمو آن را به کاربر نشان دهید تا با آن کار کنید. میتواند دیتا اضافه کند و … ولی هر ۲۴ ساعت دیتابیس به حالت اولیه برمیگردد.

    پاسخ دادن
  5. Hamid J. Fard

    Hamid J. Fard

     مجتبی مزورعی: این نوع ابزارها به دلیل اینکه SQL Server مجوزهای لازم را از سازمان ANSI بگیره ارایه میشه. ولی خب یک مزیتهایی هم داره همانطور که در نظر قبلی گفتم به درد گزارشگیری سبک قبل از تغییرات می خوره. و اینکه این چه ربطی به یک آپ و اتچ کردن داره؟ این روش برای انتقال داده نیست. وقتی ما میگیم Restore یعنی اینکه داده های پایگاه داده اصلی را به زمان قبل از Snapshot برگردانیم.

    علی یگانه مقدم: مثال شما درسته اما اگر در یک سروری باشد که در اختیار مشتری نباشد یعنی شما بتوانید هر ۲۴ ساعت پایگاه داده را به حالت اولیه برگردانید.
    پاسخ دادن
    1. علی یگانه مقدم

         بله منم اشاره کردم که برای نسخه های دمو
      که مسلما دست مشتری نیست و فقط از این جهت هست که مشتری نسخه رو قبل از خرید به طور عملی تجربه کنه

      پاسخ دادن
  6. مسعود طاهری

    مسعود طاهری

    سلام دوستان 

    حمید عزیز به همه نکات لازم اشاره کرده فقط در جهت تکمیل
    به طور خلاصه و با سانسور همه پیچیدگی ها در مکانیزم Copy On Write
    چنانچه یک  Page در بانک اطلاعاتی مبدا تغییر پیدا کند محتوای آن قبل از تغییر به Snapshot Database کپی می شود و این عمل یکبار انجام می شود.
    حال چنانچه شما خواهان واکشی اطلاعات از Snapshot Database باشید چنانچه Page مربوط به آن در Snapshot  Database وجود داشته باشد این اطلاعات از آنجا واکشی و در غیر از دیتابیس اصلی واکشی خواهد شد.
    پس ملاحضه می کنید به ازای مکانیزم Copy on Write عملیات IO افزایش خواهد یافت.
    برای کسب اطلاعات بیشتر درباره معماری Copy on Write به لینک های زیر مراجعه کنید
    تصاویر موجود در لینک ها دید خوبی درباره این مکانیزم ارائه می کند
    پاسخ دادن
  7. رضا بیات

    رضا بیات

     با سلام و احترام

    ضمن تشکر از آقا حمید و آقای طاهری ممنون از نکاتی که همه دوستان اضافه فرمودند

    پاسخ دادن
  8. مسعود طاهری

    مسعود طاهری

    رضا جان یادم رفت از شما تشکر کنم متشکرم

    منتظر مقالات بعدی شما هستیم
    موفق باشید
    پاسخ دادن
  9. حسن ضرابی

    حسن ضرابی

       با سلام و خسته نباشید

    از بابت توضیحات کلیدی آقای مهندس Hamid J. Fard بسیار سپاسگزارم خیلی خوب توضیح دادند و همچنین از اقای مسعود طاهری و از اقای رضا بیات

    پاسخ دادن
  10. مصطفی

    مزیت استفاده از Snapshot سرعت بالای آن در هنگام ایجاد، بازگردانی و اِشغال فضای کمتر می‌باشد. ویژگی بارز Snapshot این است که Client می‌تواند پس از ایجاد بر روی آن Query (کوئری) اجرا کند و مانند فایل بک‌آپ نیاز به ایجاد یک پایگاه داده مجزا و بازگردانی بک‌آپ برروی پایگاه داده ایجاد شده ندارد؛ این یکی از مهم‌ترین دلایل برای اضافه نمودن این قابلیت توسط تیم توسعه دهنده SQL Server بوده‌است.

    پاسخ دادن

ارسال نظر

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

تمامی حقوق مادی و معنوی این وب سایت متعلق به نیک آموز می باشد.
این سایت توسط تیم آموزش برنامه نویسی نیک آموز مدیریت می شود.