پیش از هر چیز بهتر است تفاوت یک پایگاه داده معمولی با Oracle Real Application Clusters را بدانیم. بر خلاف یک پایگاه داده معمولی Oracle، که کل پایگاه داده یک عنصر واحد است، Oracle Real Application Clusters به چندین منبع مختلف اجازه میدهند تا به یک پایگاه داده واحد دسترسی داشته باشند. حداکثر تعداد منابعی که میتوانند به یک پایگاه داده Oracle RAC دسترسی داشته باشند، ۱۰۰ منبع است که لازم است همگی روی یک سرور اجرا شوند تا دسترسی واحدی داشته باشند. بنابراین فقط از طریق همان سرور خاص میتوان به پایگاه داده دسترسی داشت و پایگاه داده تنها از منابع پردازشی (حافظه، CPU و غیره) سرور استفاده خواهد کرد.
هر Cluster مجموعهای از سرورهای متصل است که برای کاربران نهایی و برنامههای کاربردی به نظر یک عضو واحد میرسد. Oracle RAC برای ایجاد این امکان به نرمافزار Oracle Clusterware متکی است. Oracle Clusterware سرورهای پشت صحنه را به هم متصل میکند تا به عنوان یک واحد با هم کار کنند. Oracle Clusterware ستون فقرات یا زیرساختی را فراهم میکند که فعالیت Oracle RAC را ممکن میسازد.
در محیط Oracle RAC، از آنجا که چندین واحد از پایگاه داده یکسانی استفاده میکنند، کاربران پایگاه داده از توان بالاتر و ثبات ارائه شده توسط یک Cluster بهرهمند میشوند؛ اگر یکی از موارد دچار مشکلی شود، پایگاه داده همچنان از طریق نمونههای دیگر خدمات لازم را ارائه میکند. تا آنجا که به کاربران مربوط میشود، Cluster که شامل مجموعهای از سرورها است و هر یک از نمونهها را میزبانی میکند، به عنوان یک موجودیت واحد ظاهر میشود.
Clusters چیست؟
یک Cluster در علوم کامپیوتر مجموعهای از گرههای محاسباتی است که با هم کار میکنند و میتوان آنها را آزادانه به عنوان یک سیستم واحد در نظر گرفت. به عبارت دیگر یک Cluster متشکل از چندین سرور به هم پیوسته است که باعث میشود به نظر برسد که کاربران نهایی و برنامهها یک سرور واحد هستند.
Real Application Clusters چیست؟
عناصر متعددی که به پایگاه داده یکسانی دسترسی دارند، تعریف کوتاه یک Oracle Real Application Cluster است که مزایای زیر را به همراه دارد.
- وجود تنها یک نمونه در هر گره
- دسترسی فیزیکی یا منطقی به هر فایل پایگاه داده
- دسترسی به دادههای تحت کنترل نرمافزار
Application Cluster
Clusteware، نرمافزاری است که همه گرههای یک سیستم را به هم متصل میکند. اوراکل پایگاه داده را به عنوان ساختارهایی که در فایلهای دائمی روی دیسک قرار دارند، شامل فایلهای داده، فایلهای کنترل و redolog های آنلاین تعریف میکند. در مورد RAC cluster، پایگاه داده باید روی دیسک فیزیکی مشترک ذخیره شود که همه سرورهای Cluster به طور مساوی به آن دسترسی داشته باشند. سرورها از طریق یک شبکه ذخیرهسازی با فضای ذخیره شده مشترک ارتباط برقرار میکنند.
سرورهای موجود در Cluster با استفاده از نرمافزار Application Cluster به هم متصل شدهاند. این باعث میشود به نظر برسد که سرورها یک سرور واحد هستند. سرورهای موجود در Cluster با استفاده از یک شبکه خصوصی اختصاصی معروف به Cluster Interconnect با یکدیگر ارتباط برقرار میکنند. هر سرور به یک شبکه عمومی متصل است که به Cluster اجازه میدهد تا با دنیای بیرون، از جمله کلاینتها و سرورهای برنامه ارتباط برقرار کند. در RAC cluster، هر نمونه میتواند تراکنشها را همزمان انجام دهد زیرا دسترسیهای لازم برای اطمینان از یکپارچگی دادهها در اختیار قرار گرفته است.
حداقل شرایط مورد نیاز برای RAC
- حداقل ۲ گره
- حداقل دو NIC برای هر گره
- حداقل یک فضای ذخیرهسازی مشترک (DAS/NAS/SAN)
- سیستمعامل یکسان برای همه گرهها
- غیرفعال کردن NTP (پروتکل زمان شبکه)
- پیکربندی SSH (پوسته امن)
نحوه نصب RAC
در زمان نصب، گرههایی را که باید به صورت Grid نصب کنیم، انتخاب کنیم؛ این بدان معناست که نیازی به پیکربندی دستی نیست و ضمن راهاندازی شبکه همه گرهها هم نصب میشوند و تنظیمات فقط برای گره اول انجام میشود. OrainstRoot.sh و root.sh به صورت دستی در تمام گرهها اجرا میشود و باید oratab و initab را در همه گرهها تنظیم کنیم. تمام گرهها برای دریافت دادهها از پروندههای فیزیکی باید به فضای ذخیرهسازی مشترک دسترسی داشته باشند و در نهایت unInstaller فقط باید روی یک گره اجرا شود.
مزایای Real Application Clusters
هزینه پایین مالکیت
Clusterهای کاربردی واقعی هزینه کلی مالکیت را به طور موثرتری نسبت به سایر محصولات پایگاه داده Cluster کاهش میدهد. این امر تا حد زیادی به دلیل تصویر تکسیستم ارائه شده توسط معماری Real Application Clusters است.
مقیاسپذیری گسترده
محیط مقیاسپذیر ارائه شده، شما را قادر میسازد تا با افزودن گرهها، عملکرد و ظرفیت را افزایش دهید. در برخی از سیستم عاملها میتوانید گرهها را به صورت پویا در حالی که Cluster در حال اجرا است اضافه کنید. امکان اضافه کردن تا ۶۴ گره در محیط RAC فراهم شده است.
دسترسی بالا
دسترسی بالا به سیستمهایی با اجزای اضافی اشاره دارد که خدمات مداوم و بدون وقفه را حتی در هنگام خرابی ارائه میدهند. در اکثر پیکربندیهایی که میزان دسترسی بالایی دارند، گرهها از یکدیگر جدا شدهاند، به طوری که خرابی در یک گره بر کل سیستم تاثیر نمیگذارد.
مدیریت Buffer Cache
اوراکل منابعی مانند اطلاعات بلوک داده را در حافظه نهان بافر ذخیره میکند. ذخیره این اطلاعات به صورت محلی عملیات پایگاه داده و ورودی خروجی دیسک را کاهش میدهد. از آنجا که هر نمونه حافظه خاص خود را دارد، Real Application Clusters حافظههای بافر چندین گره را فراهم میکنند، در حالی که ورودی خروجی دیسک را به حداقل میرساند. این کار باعث بهینهسازی عملکرد و افزایش حافظه موثر میشود که تقریبا برابر مجموع کل حافظه موجود در پایگاه داده Cluster است. برای انجام این کار، Real Application Clusters از سرویس جهانی حافظه پنهان (GCS) برای هماهنگسازی عملیات بین چندین حافظه بافر و بهینهسازی ویژگیهای عملکرد بالای اوراکل استفاده میکنند. در صف قرار دادن خدمات جهانی (GES) نیز در زمینه هماهنگسازی با مدیریت ارتباطات intranode کمک میکند.
قفل ردیف
توانایی خواندن چندگانه تضمین میکند که عملیات خواندن و عملیات نوشتن باعث مسدود کردن یکدیگر نشوند و امکان انجام هر دوی این عملیات به صورت همزمان وجود داشته باشد. این امکان همچنین با ایجاد Snapshot، نسخههای سازگار از بلوکهایی که به دلیل تراکنشی که انجام ندادهاند، تغییر پیدا کردهاند را بازیابی میکند.
مدیریت بازیابی، پشتیبانگیری آنلاین و بایگانی
Real Application Clusters همچنین از کلیه ویژگیهای پشتیبانگیری و بایگانی اوراکل که در پایگاههای داده تکنمونهای اوراکل موجود است پشتیبانی میکنند. این شامل پشتیبانگیری آنلاین و آفلاین از کل پایگاه داده یا ایجاد جداول جداگانه میشود.
مقاله پیشنهادی“مزایای HPE Synergy در مقابل سیسکو UCS”
آشنایی با انواع Oracle Real Application Clusters
Oracle Flex Clusters
اگر قصد استفاده از Oracle RAC با تعداد زیادی گره را دارید، Oracle Flex Cluster راه حل خوبی است. همه گرههای موجود در این Cluster به یک Cluster واحد Oracle Grid Infrastructure تعلق دارند. شما میتوانید از معماری Oracle Flex Clusters برای متمرکز ساختن تصمیمات هنگام استفاده از منابع برای برنامههای مختلف و همچنین مدیریت پاسخ به خرابیهای سطح سرویس و مدیریت بازیابی استفاده کنید. Oracle Flex Cluster از دو نوع گره تشکیل شده است:
- گرههای هاب: گرههای هاب با سایر گرهها اتصال دارند و دسترسی مستقیم به ذخیرهسازی مشترک دارند. گرههای هاب مشابه نسخههای قبلی Oracle RAC Databases در نسخههای قبلی اوراکل هستند.
- گرههای برگ: گرههای برگ فقط با گرههای هاب اتصال دارند و ممکن است دسترسی مستقیم به فضای ذخیرهسازی مشترک نداشته باشند.
شما میتوانید در یک Oracle Flex Cluster تا ۶۴ گره هاب و تعداد زیادی گره برگ داشته باشید. برای اجرای انواع مختلف برنامهها میتوانید از دو نوع گره استفاده کنید. پایگاهدادههای Oracle RAC که روی گرههای برگ در یک Oracle Flex Clusters اجرا میکنید، گره خواننده نامیده میشود. شما میتوانید حداکثر ۶۴ گره خواننده را روی یک گره هاب اجرا کنید تا کوئریهای موازی گستردهای را روی مجموعه دادههای بزرگی اجرا کنید. تا زمانی که گره هاب که مجموعهای از گرههای خواننده به آن متصل هستند هنوز بخشی از یک Cluster است، گرههای خواننده میتوانند بدون ایجاد هیچ گونه کندی در عملکرد پایگاه داده به کار خود ادامه دهند.
Oracle Extended Clusters
به طور معمول، شما محیط Oracle RAC را از یک مرکز داده واحد اجرا میکنید؛ با این حال، میتوانید Oracle RAC را بر روی یک Oracle Extended Clusters پیکربندی کنید. در مواردی که گرههای Cluster از نظر جغرافیایی بین چندین مرکز داده در یک منطقه یا حتی در شهرهای مختلف پراکنده شدهاند این روش بسیار کاربردی خواهد بود.
یک Extended Cluster، یک معماری ویژه Oracle RAC است که به شما امکان میدهد با اجازه دادن به همه گرهها در همه سایتها تراکنشها را به عنوان بخشی از یک Cluster پایگاه داده، در صورت بروز خرابی سایت به سرعت بازیابی کنید. اگرچه یک Extended Cluster دسترسی بهتری نسبت به راه اندازی Oracle RAC محلی دارد، اما نمیتواند شما را در برابر انواع مشکلات و خرابیهای ممکن محافظت کند. برای حفاظت جامع از دادهها و توانایی انجام بازیابی، اوراکل توصیه میکند که از Oracle Data Guard در کنار Oracle RAC استفاده کنید.
جمعبندی
اگر تا اینجای مطلب همراهمان بودید، برایتان واضح است که استفاده از پایگاه داده Oracle Real Application Clusters نسبت به پایگاه دادههای معمولی مزایای زیادی به همراه دارد. با استفاده از پایگاه داده Cluster، کاربر نهایی احساس میکند که به یک پایگاه داده واحد متصل شده و متوجه Cluster بودن آن نخواهد شد. با این حال مزایایی مثل مقیاسپذیری گسترده، دسترسی بالا و هزینه پایین مالکیت را به همراه دارد که در طول مطلب به طور کامل به آن پرداختیم. همه موارد را که کنار هم قرار دهیم، به این نتیجه میرسیم که Oracle Real Application بدون شک یکی از راهکارهایی است که ضمن تامین نیازهای سازمانی، با فراهم کردن دسترسیپذیری بالا و مزایای دیگری که به همراه دارد، باعث بهبود چشمگیر تجربه کاربران و عملکرد سازمانی خواهد شد.