کیس سرور

کش چیست؟+بررسی انواع کش به زبان ساده

عکس مربوط به حافظه کش است.

Cash چیست؟

در یک عبارت کوتاه Cashها، باعث افزایش سرعت Read و Write می­شوند.

وقتی Application میخواهد یک عبارتی را روی دیسک Write کند این عمل به دو حالت شکل می­گیرد.

بررسی Cash  هنگام عمل Write

  • Write Trough Cash : به این شکل که Application فرمان Write  عبارتی را به Cash می­دهد و این دیتا ابتدا وارد Cash  شده و سپس از Cash  وارد  دیسک می­شود. وقتی دیتا در دیسک write شد ، دیسک به Application ، Ack را می­فرستد.
  • Write Back Cash : در این روش Application به دیسک دیتایی را برای write  می­فرستد، ودیتا وارد Cash می­شود و وقتی دیتا وارد Cash شد Ack  را به Application می­فرستد و سپس دیتا از Cash  وارد دیسک می­شود، و این روش سریعتر از حال Write Through Cash است.

اگر Write Through  به Write Back تبدیل شود، ۴  برابر افت Performance خواهد داشت.  Application فرمان Write دیتا را می­دهد، دیتا به Cash منتقل می­شود. در این حالت با قطع برق، اطلاعات Cash می­پرد ، برای جلوگیری از این موضوع، در سرور یک باتری­ای قرار می­دهند به نام Smart Storage Battery . این باتری دیتا را در هنگام قطع برق در کش نگه می­دارد و با وصل جریان برق، اطلاعات از کش به دیسک منتقل می­شود.

اگر باتری روی سرور به هر دلیل خراب شود  Write Back به Write Through  تبدیل می­شود.و برای اینکه ببینید باتری خراب شده یا نه، از ابزاری به اسم SSA استفاده می­شود.
ولی در صورتی که برق به مدت طولانی مثلا تا بیشتر از سه روز برق نیاید دیگر باتری این قابلیت را ندارد که دیتا را نگه دارد در این حالت از کش­هایی استفاده می­شود که قابلیت پشتیبانی از دیتا را در خود به هنگام قطع طولانی برق دارند. این کش ها را با عنوان FBWC می­شناسند.

۱- FBWC  :  Flash Backed Write Cash

انواع کش

۲- BBWC : Battery Backed Write Cash

 

در BBWC، روی کش فقط Dram  وجود دارد. ولی FBWC یک سری DRAM و یک سری Flash دارد. زمانی که برق می­رود اطلاعات از DRAM   به FLASH منتقل می­شود. BBWC روی سرورهای G6، G7 بیشتر استفاده می­شد در حالیکه امروزه روی سرورهای G9  به بعد ، از FBWC استفاده می­شود.

بررسی Cash هنگام عملیات Read


وقتی دیتا در دیسک Write می­شود به شکل Block  در دیسک ذخیره ­می­شود. اگر Application فرمان read را برای یک دیتایی مثلا A1 را صادر می­کند، ابتدا درون Cash را جستجو می­کند، A1  را پیدا نمی­کند و به سراغ دیسک می­رود. A1 را پیدا می­کند، A1 و  پس از آن A2 و همینطور A3 را به Cash  می­آورد، به عبارت دیگر دیتا های مرتبط با آن دیتایی که Application دستور Read آنرا صادر کرده را به درون Cash  منتقل می­کند که این سبب افزایش سرعت Read می­شود، به این مانیزم Read Ahead Cash  گفته می­شود.

Cash  کنترلرها یک حجمی دارند که معمولا روی سرورهای G9 و یا G10، ۲G و یا ۴G  است که یک قسمتی از این ظرفیت برای Read و قسمت دیگر برای  Write است. اگر بخواهید ظرفیت کش را زیاد کنید باید یک SSD روی سرور بگذارید که برای اضافه کردن SSD، کنترلر باید License Smart Array را داشته باشد. و نکته دیگر این است که این SSD که به کش منتقل شده فقط برای عمل Read استفاده می­شود ، برای write استفاده نمی­شود. و برای اینکه بتوانید روی سرور قابلیت پشتیبانی از RAID مثلا RAID5 را داشته باشید، حتما باید کش اضافه (SSD) را تهیه نمایید.

نویسنده

zhr__shrifi

نظر دهید

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

Call Now Button