1. ভূমিকা SQL Server উচ্চ প্রাপ্যতা
উচ্চ প্রাপ্যতা SQL Server হার্ডওয়্যার ব্যর্থতা, সফটওয়্যার সমস্যা বা পরিকল্পিত রক্ষণাবেক্ষণের সম্মুখীন হলেও ন্যূনতম ডাউনটাইমের সাথে সিস্টেমের সচল থাকার সক্ষমতাকে এটি বোঝায়। উচ্চ প্রাপ্যতার গুরুত্ব অপরিসীম। যখন ডেটাবেস অনুপলব্ধ হয়ে পড়ে, তখন প্রতিষ্ঠানগুলোকে তাৎক্ষণিক পরিণতির সম্মুখীন হতে হয়, যার মধ্যে রয়েছে রাজস্ব ক্ষতি, উৎপাদনশীলতা হ্রাস এবং গ্রাহক অসন্তুষ্টি।
যদিও উচ্চ উপলব্ধতা (HA) এবং দুর্যোগ পুনরুদ্ধার (DR) প্রায়শই বিনিময়যোগ্যভাবে ব্যবহৃত হয়, তারা বিভিন্ন ব্যর্থতার পরিস্থিতি মোকাবেলা করে। HA সার্ভার বা ইনস্ট্যান্স ক্র্যাশের মতো স্থানীয় ব্যর্থতার কারণে সৃষ্ট ডাউনটাইম কমানোর উপর দৃষ্টি নিবদ্ধ করে, যেখানে DR একটি সম্পূর্ণ ডেটা সেন্টার বা অঞ্চলকে প্রভাবিত করে এমন বৃহৎ আকারের দুর্যোগ থেকে পুনরুদ্ধারের জন্য ডিজাইন করা হয়েছে।
দুটি গুরুত্বপূর্ণ মেট্রিক্স HA পরিকল্পনাকে নির্দেশ করে:
- পুনরুদ্ধারের সময় উদ্দেশ্য (RTO) ব্যর্থতার পরে সর্বাধিক গ্রহণযোগ্য ডাউনটাইম নির্ধারণ করে
- রিকভারি পয়েন্ট অবজেক্টিভ (RPO) সর্বোচ্চ সহনীয় ডেটা ক্ষতি নির্দিষ্ট করে।
প্রাপ্যতা সাধারণত "নয়"-এ পরিমাপ করা হয়: ৯৯.৯% (তিন-নয়) বছরে ৮.৭৬ ঘন্টা ডাউনটাইম দেয়, ৯৯.৯৯% (চার-নয়) ৫২.৬ মিনিট দেয় এবং ৯৯.৯৯৯% (পাঁচ-নয়) বছরে মাত্র ৫.২৬ মিনিটের মধ্যে ডাউনটাইম সীমাবদ্ধ করে।
2. SQL Server উচ্চ প্রাপ্যতা সমাধানের ওভারভিউ
২.১ HA সমাধানের বিভাগসমূহ
SQL Server উচ্চ প্রাপ্যতা সমাধানগুলিকে বিভিন্ন মাত্রায় শ্রেণীবদ্ধ করা যেতে পারে:
- ইনস্ট্যান্স বনাম ডাটাবেস স্তরের সুরক্ষা: ফেইলওভার ক্লাস্টার ইনস্ট্যান্সের মতো ইনস্ট্যান্স-স্তরের সুরক্ষাগুলি সমস্ত ডাটাবেস এবং সার্ভার অবজেক্ট সহ সমগ্র ইনস্ট্যান্সকে সুরক্ষিত করে, যেখানে সর্বদা অন অ্যাভাইলেবিলিটি গ্রুপের মতো ডাটাবেস-স্তরের সুরক্ষাগুলি নির্দিষ্ট ডাটাবেসগুলিকে সুরক্ষিত করে।
- সিঙ্ক্রোনাস বনাম অ্যাসিনক্রোনাস ডেটা মুভমেন্ট: সিঙ্ক্রোনাস ডেটা মুভমেন্ট শূন্য ডেটা লস নিশ্চিত করে কিন্তু লেটেন্সি আনতে পারে, যেখানে অ্যাসিনক্রোনাস মুভমেন্ট কর্মক্ষমতাকে অপ্টিমাইজ করে কিন্তু সম্ভাব্য ডেটা লস গ্রহণ করে।
- স্বয়ংক্রিয় বনাম ম্যানুয়াল ফেলওভার: স্বয়ংক্রিয় ফেলওভার ম্যানুয়াল হস্তক্ষেপ ছাড়াই ডাউনটাইম কমিয়ে দেয়, অন্যদিকে ম্যানুয়াল ফেলওভার অধিক নিয়ন্ত্রণ প্রদান করে কিন্তু প্রশাসকের পদক্ষেপের প্রয়োজন হয়।
২.২ সাধারণ HA সমাধান
SQL Server আটটি প্রাথমিক উচ্চ প্রাপ্যতা সমাধান প্রদান করে, প্রতিটি নির্দিষ্ট পরিস্থিতি মোকাবেলা করে:
- সর্বদা উপলভ্যতা গ্রুপগুলিতে
- ধারণকৃত উপলব্ধতা গোষ্ঠী
- বিতরণকৃত প্রাপ্যতা গোষ্ঠী
- ফেইলওভার ক্লাস্টার ইনস্ট্যান্স
- SQL Server প্রতিলিপি
- লগ শিপিং
- ডাটাবেস মিররিং
- পরিচালিত ইনস্ট্যান্স লিঙ্ক
৩. সর্বদা উপলব্ধ গ্রুপ
সর্বদা চালু উপলব্ধতা গ্রুপগুলি প্রতিনিধিত্ব করে SQL Serverএর প্রিমিয়ার ডাটাবেস-স্তরের উচ্চ প্রাপ্যতা এবং দুর্যোগ পুনরুদ্ধার সমাধান, চালু করা হয়েছে SQL Server ২০১২. এটি ডাটাবেসের গ্রুপগুলিকে একক ইউনিট হিসাবে একসাথে ব্যর্থ হতে সক্ষম করে এবং কোয়েরি অফলোডিংয়ের জন্য পঠনযোগ্য সেকেন্ডারি প্রতিলিপি প্রদান করে।
মুখ্য সুবিধা
- মোট ৯টি পর্যন্ত প্রতিলিপির জন্য সমর্থন (১টি প্রাথমিক + ৮টি মাধ্যমিক)
- সিঙ্ক্রোনাস-কমিট মোডে ৫টি পর্যন্ত প্রতিলিপি (১টি প্রাথমিক + ৪টি মাধ্যমিক)
- সিঙ্ক্রোনাস মোডে শূন্য ডেটা ক্ষতি সহ স্বয়ংক্রিয় ফেলওভার
- কোয়েরি অফলোডিংয়ের জন্য পঠনযোগ্য গৌণ প্রতিলিপি
- সেকেন্ডারি রেপ্লিকাগুলিতে ব্যাকআপ অফলোডিং
- স্বয়ংক্রিয় সংযোগ রাউটিংয়ের জন্য গ্রুপ লিসেনারের উপলব্ধতা
- লোড ব্যালেন্সিং রিড কোয়েরির জন্য কেবল পঠনযোগ্য রাউটিং
- একাধিক ডাটাবেস একসাথে একটি গ্রুপ হিসাবে ব্যর্থ হয়
বাস্তবায়ন পদক্ষেপ
- উইন্ডোজ সার্ভার ফেলওভার ক্লাস্টারিং (WSFC) অথবা লিনাক্স পেসমেকার ক্লাস্টার কনফিগার করুন
- সকলের জন্য সর্বদা চালু উপলব্ধতা গ্রুপ বৈশিষ্ট্য সক্ষম করুন SQL Server দৃষ্টান্ত
- নিশ্চিত করুন যে ডাটাবেসগুলি সম্পূর্ণ পুনরুদ্ধার মডেল ব্যবহার করে এবং সম্পূর্ণ ব্যাকআপ থাকে
- প্রতিটি প্রতিরূপে ডাটাবেস মিররিং এন্ডপয়েন্ট তৈরি করুন
- প্রাপ্যতা গ্রুপ তৈরি করুন এবং ডাটাবেস যোগ করুন
- পছন্দসই মোড সহ প্রাথমিক এবং মাধ্যমিক প্রতিলিপি কনফিগার করুন
- Availability Group Listener তৈরি এবং কনফিগার করুন
- পঠনযোগ্য সেকেন্ডারি ব্যবহার করলে কেবল-পঠনযোগ্য রাউটিং কনফিগার করুন
- ব্যর্থতা প্রক্রিয়া পরীক্ষা করুন এবং অ্যাপ্লিকেশন সংযোগ যাচাই করুন
সেরা জন্য
- সর্বোচ্চ আপটাইম প্রয়োজন এমন মিশন-সমালোচনামূলক ডাটাবেস
- স্থানীয় HA এবং ভৌগোলিক DR উভয়েরই প্রয়োজন এমন প্রতিষ্ঠানগুলি
- পঠন-স্কেল ক্ষমতা প্রয়োজন এমন পরিবেশ
- রিপোর্টিং কোয়েরি অফলোড করার মাধ্যমে যেসব অ্যাপ্লিকেশন উপকৃত হয়
- শূন্য ডেটা ক্ষতি সুরক্ষা প্রয়োজন এমন ডেটাবেস
- সমন্বিত ব্যর্থতা প্রয়োজন এমন একাধিক-ডাটাবেস অ্যাপ্লিকেশন
ভালো দিক
- সিঙ্ক্রোনাস-কমিট মোডের মাধ্যমে শূন্য ডেটা ক্ষতি
- স্বয়ংক্রিয় ফেইলওভার ডাউনটাইম কমিয়ে দেয় (সাধারণত সেকেন্ড)
- পঠনযোগ্য সেকেন্ডারিগুলি প্রাথমিকের উপর চাপ কমায়
- কোনও শেয়ার্ড স্টোরেজের প্রয়োজন নেই
- উইন্ডোজ এবং লিনাক্স উভয় প্ল্যাটফর্ম সমর্থন করে
- দুর্যোগ পুনরুদ্ধারের জন্য ভৌগোলিক বন্টন
- ব্যাকআপ অপারেশনগুলি সেকেন্ডারিগুলিতে অফলোড করা যেতে পারে
- ফেইলওভারের পরেও অ্যাপ্লিকেশন সংযোগের স্ট্রিং অপরিবর্তিত থাকে
মন্দ দিক
- সম্পূর্ণ কার্যকারিতার জন্য এন্টারপ্রাইজ সংস্করণ প্রয়োজন
- স্ট্যান্ডার্ড সংস্করণ বেসিক এজি-তে সীমাবদ্ধ (১টি ডাটাবেস, ১টি সেকেন্ডারি, কোন রিডযোগ্য সেকেন্ডারি নেই)
- জটিল কনফিগারেশন এবং ব্যবস্থাপনা
- ক্লাস্টারিং অবকাঠামো প্রয়োজন (WSFC বা পেসমেকার)
- ইনস্ট্যান্স-স্তরের অবজেক্টের (লগইন, কাজ) ম্যানুয়াল সিঙ্ক্রোনাইজেশন প্রয়োজন
- সিঙ্ক্রোনাস মোড লেনদেনের বিলম্বের প্রবর্তন করতে পারে
- একাধিক সার্ভারের লাইসেন্সিং খরচ
তথ্যসূত্র
- SQL Server সর্বদা উপলব্ধ গ্রুপ: সম্পূর্ণ নির্দেশিকা
- মাইক্রোসফট অফিসিয়াল ডকুমেন্ট: সর্বদা চালু থাকা উপলভ্যতা গোষ্ঠীর সংক্ষিপ্তসার (SQL Server)
৪. ধারণকৃত প্রাপ্যতা গোষ্ঠী
ধারণকৃত উপলব্ধতা গোষ্ঠী, চালু করা হয়েছে SQL Server ২০২২ সালে, লগইন, জব এবং অন্যান্য সার্ভার-স্তরের অবজেক্টের ম্যানুয়াল প্রতিলিপির প্রয়োজনীয়তা দূর করে, প্রতিলিপি জুড়ে ইনস্ট্যান্স-স্তরের অবজেক্টগুলিকে স্বয়ংক্রিয়ভাবে সিঙ্ক্রোনাইজ করে ঐতিহ্যবাহী সর্বদা অন অ্যাভেইলিবিলিটি গ্রুপগুলিকে প্রসারিত করা হয়েছে।
মুখ্য সুবিধা
- ইনস্ট্যান্স-লেভেল অবজেক্টের স্বয়ংক্রিয় সিঙ্ক্রোনাইজেশন (লগইন, ব্যবহারকারী, ভূমিকা)
- SQL Server সমস্ত প্রতিলিপি জুড়ে এজেন্টের কাজ প্রতিলিপি করা হয়েছে
- ডাটাবেস অনুমতিগুলি স্বয়ংক্রিয়ভাবে সিঙ্ক্রোনাইজ করা হয়
- সমস্ত সর্বদা চালু AG ক্ষমতা অন্তর্ভুক্ত
- সম্পূর্ণ পরিবেশ প্রতিলিপি সহ সরলীকৃত ব্যর্থতা
- উইন্ডোজ এবং লিনাক্স উভয় প্ল্যাটফর্মের জন্য সমর্থন
বাস্তবায়ন পদক্ষেপ
- নিশ্চিত করা SQL Server ২০২২ বা তার পরে সকল ক্ষেত্রে
- WSFC অথবা পেসমেকার ক্লাস্টার অবকাঠামো কনফিগার করুন
- সকল ক্ষেত্রে সর্বদা চালু বৈশিষ্ট্য সক্ষম করুন
- CONTAINED বিকল্প ব্যবহার করে Contained Availability Group তৈরি করুন
- অন্তর্ভুক্ত AG-তে ডাটাবেস যোগ করুন
- AG প্রেক্ষাপটের মধ্যে লগইন এবং কাজ তৈরি করুন
- শ্রোতা কনফিগার করুন এবং ব্যর্থতা পরীক্ষা করুন
সেরা জন্য
- সরলীকৃত এজি প্রশাসন চাইছে এমন প্রতিষ্ঠানগুলি
- ঘন ঘন ফেইলওভার পরীক্ষা বা অপারেশন সহ পরিবেশ
- অনেক ইনস্ট্যান্স-লেভেল অবজেক্টের প্রয়োজন এমন অ্যাপ্লিকেশন
- নতুন SQL Server ২০২২+ মোতায়েন
- যেসব দল ফেইলওভার-পরবর্তী কনফিগারেশন কমাতে চায়
ভালো দিক
- লগইন এবং কাজের ম্যানুয়াল সিঙ্ক্রোনাইজেশন দূর করে
- দ্রুততর, আরও নির্ভরযোগ্য ফেইলওভার
- প্রশাসনিক ব্যয় হ্রাস
- অ্যাপ্লিকেশনগুলি ফেইলওভারের পরপরই কাজ করে
- সরলীকৃত দুর্যোগ পুনরুদ্ধার পদ্ধতি
- সকল ঐতিহ্যবাহী এজি সুবিধা অন্তর্ভুক্ত
মন্দ দিক
- প্রয়োজন SQL Server 2022 বা পরে
- সম্পূর্ণ কার্যকারিতার জন্য এন্টারপ্রাইজ সংস্করণ প্রয়োজন
- বিদ্যমান ঐতিহ্যবাহী AG গুলিকে অন্তর্ভুক্ত AG তে রূপান্তর করা যাবে না
- সমস্ত প্রতিলিপিতে অবশ্যই অন্তর্ভুক্ত AG বৈশিষ্ট্য সমর্থন করতে হবে
- ঐতিহ্যবাহী AG-এর তুলনায় অতিরিক্ত জটিলতা
তথ্যসূত্র
৫. বিতরণকৃত প্রাপ্যতা গোষ্ঠী
বিতরণকৃত প্রাপ্যতা গোষ্ঠী, চালু করা হয়েছে SQL Server ২০১৬ সালে, উন্নত দুর্যোগ পুনরুদ্ধার এবং অভিবাসন পরিস্থিতির জন্য পৃথক ক্লাস্টার জুড়ে দুটি স্বাধীন এজিকে সংযুক্ত করে একটি "প্রাপ্যতা গোষ্ঠীর উপলভ্যতা গোষ্ঠী" আর্কিটেকচার সক্ষম করে।
মুখ্য সুবিধা
- দুটি স্বাধীন প্রাপ্যতা গ্রুপকে সংযুক্ত করে
- প্রতিটি এজি নিজস্ব স্বাধীন ক্লাস্টার বজায় রাখে
- ক্রস-প্ল্যাটফর্ম সাপোর্ট (উইন্ডোজ থেকে লিনাক্স)
- শেয়ার্ড ক্লাস্টার সদস্যপদ ছাড়াই ক্রস-ক্লাস্টার প্রতিলিপি
- একটি AG প্রাথমিক হিসেবে কাজ করে, অন্যটি মাধ্যমিক হিসেবে
- সিঙ্ক্রোনাস এবং অ্যাসিনক্রোনাস উভয় মোড সমর্থন করে
- অঞ্চল বা মহাদেশ জুড়ে ভৌগোলিক বন্টন
বাস্তবায়ন পদক্ষেপ
- প্রথম প্রাপ্যতা গ্রুপ (প্রাথমিক DAG) তৈরি এবং কনফিগার করুন
- দ্বিতীয় প্রাপ্যতা গ্রুপ (সেকেন্ডারি DAG) তৈরি এবং কনফিগার করুন
- দুটি AG-কে সংযুক্ত করে বিতরণকৃত AG তৈরি করুন
- AG গুলির মধ্যে ডেটা সিঙ্ক্রোনাইজেশন কনফিগার করুন
- অ্যাপ্লিকেশন সংযোগের জন্য প্রতিটি AG-তে শ্রোতা সেট আপ করুন
- ফেইলওভার নীতি এবং পরীক্ষা পদ্ধতি কনফিগার করুন
- ক্রস-ক্লাস্টার যোগাযোগ এবং প্রতিলিপি যাচাই করুন
সেরা জন্য
- স্বাধীন ডেটা সেন্টার জুড়ে বহু-অঞ্চলীয় দুর্যোগ পুনরুদ্ধার
- উইন্ডোজ থেকে লিনাক্সে ক্রস-প্ল্যাটফর্ম মাইগ্রেশন বা তদ্বিপরীত
- হাইব্রিড ক্লাউড দৃশ্যকল্পগুলি অন-প্রেমিসেসকে Azure-এর সাথে সংযুক্ত করছে
- বর্ধিত মাইগ্রেশন উইন্ডোর প্রয়োজন এমন প্রধান সংস্করণ আপগ্রেড
- একাধিক স্বাধীন ফেইলওভার ক্লাস্টার সহ প্রতিষ্ঠান
- মহাদেশ-বিস্তৃত প্রতিলিপি প্রয়োজন বিশ্বব্যাপী উদ্যোগগুলি
ভালো দিক
- সাইটগুলির মধ্যে ক্লাস্টার নির্ভরতাগুলিকে দ্বিগুণ করে
- প্রকৃত ভৌগোলিক বন্টন সক্ষম করে
- ক্রস-প্ল্যাটফর্ম পরিস্থিতি সমর্থন করে
- প্রতিটি এজি স্বাধীনভাবে ব্যর্থ হতে পারে
- জটিল মাইগ্রেশন প্রকল্পের জন্য আদর্শ
- কোনও শেয়ার্ড ক্লাস্টার অবকাঠামোর প্রয়োজন নেই
- বিভিন্ন উইন্ডোজ ডোমেইন বা লিনাক্স ডিস্ট্রিবিউশন বিস্তৃত করতে পারে
মন্দ দিক
- এন্টারপ্রাইজ সংস্করণ প্রয়োজন
- কনফিগারেশন এবং পরিচালনায় উচ্চ জটিলতা
- ক্লাস্টারিং এবং এজি প্রযুক্তি উভয়েরই গভীর ধারণা প্রয়োজন।
- স্ট্যান্ডার্ড AG-এর তুলনায় সমস্যা সমাধান করা আরও কঠিন
- ক্রস-রিজিওন পরিস্থিতির জন্য অতিরিক্ত ল্যাটেন্সি
- ফেইলওভার পদ্ধতির যত্নশীল পরিকল্পনা প্রয়োজন
তথ্যসূত্র
৬. ফেলওভার ক্লাস্টার ইনস্ট্যান্স (FCI)
ফেইলওভার ক্লাস্টার ইনস্ট্যান্সগুলি শেয়ার্ড স্টোরেজ এবং উইন্ডোজ সার্ভার ফেইলওভার ক্লাস্টারিং ব্যবহার করে ইনস্ট্যান্স-লেভেল উচ্চ প্রাপ্যতা প্রদান করে, যা সম্পূর্ণ স্বয়ংক্রিয় ফেইলওভার সক্ষম করে SQL Server সমস্ত ডাটাবেস এবং সার্ভার-স্তরের বস্তু সহ উদাহরণ।
মুখ্য সুবিধা
- ইনস্ট্যান্স-লেভেল সুরক্ষা (সমস্ত ডাটাবেস একসাথে ব্যর্থ হয়)
- শেয়ার্ড স্টোরেজ সহ অ্যাক্টিভ-প্যাসিভ কনফিগারেশন
- স্বচ্ছ ফেইলওভারের জন্য ভার্চুয়াল নেটওয়ার্ক নাম (VNN)
- সক্রিয় নোড ব্যর্থ হলে স্বয়ংক্রিয় ফেইলওভার
- শূন্য ডেটা ক্ষতি (একক কপি ডেটা)
- সার্ভার-স্তরের অবজেক্ট অন্তর্ভুক্ত (লগইন, কাজ, লিঙ্কযুক্ত সার্ভার)
- সব সমর্থন করে SQL Server পুনরুদ্ধার মডেল
বাস্তবায়ন পদক্ষেপ
- উইন্ডোজ সার্ভার ফেইলওভার ক্লাস্টার (WSFC) কনফিগার করুন
- শেয়ার্ড স্টোরেজ সেট আপ করুন (SAN, SMB, স্টোরেজ স্পেস ডাইরেক্ট)
- ক্লাস্টার কোরাম সেটিংস কনফিগার করুন
- ইনস্টল করুন SQL Server প্রথম নোডে ফেইলওভার ক্লাস্টার ইনস্ট্যান্স হিসেবে
- FCI তে অতিরিক্ত নোড যোগ করুন
- ভার্চুয়াল নেটওয়ার্কের নাম এবং আইপি ঠিকানা কনফিগার করুন
- ক্লাস্টার নোডের মধ্যে পরীক্ষামূলক ব্যর্থতা
- VNN ব্যবহারের জন্য ক্লায়েন্ট অ্যাপ্লিকেশনগুলি কনফিগার করুন
সেরা জন্য
- বিদ্যমান শেয়ার্ড স্টোরেজ অবকাঠামো সহ প্রতিষ্ঠানগুলি
- উদাহরণ-স্তরের সুরক্ষা প্রয়োজন এমন পরিবেশ
- একটি একক ডেটা সেন্টারের মধ্যে স্থানীয় উচ্চ প্রাপ্যতা
- যেসব অ্যাপ্লিকেশনের জন্য সমস্ত ডাটাবেস একসাথে ব্যর্থ হতে হবে
- সার্ভার-স্তরের বস্তুগুলিকে সুরক্ষিত রাখতে হবে এমন পরিস্থিতি
- শুধুমাত্র উইন্ডোজ-ভিত্তিক পরিবেশ (FCI-এর জন্য Linux সমর্থিত নয়)
ভালো দিক
- সম্পূর্ণ ইনস্ট্যান্স-স্তরের সুরক্ষা
- শূন্য ডেটা ক্ষতির নিশ্চয়তা
- স্বয়ংক্রিয় ফেইলওভার ক্ষমতা
- লগইন বা কাজ সিঙ্ক্রোনাইজ করার কোন প্রয়োজন নেই
- ডেটার একটিমাত্র কপি সংরক্ষণের খরচ কমায়
- সমস্ত পুনরুদ্ধার মডেল সমর্থন করে
- ফেইলওভারের পরে অ্যাপ্লিকেশন সংযোগের স্ট্রিংগুলি অপরিবর্তিত রয়েছে
মন্দ দিক
- ব্যয়বহুল শেয়ার্ড স্টোরেজ অবকাঠামো প্রয়োজন
- শেয়ার্ড স্টোরেজ ব্যর্থতার একটি একক বিন্দু
- কোন পঠন-স্কেল ক্ষমতা নেই (শুধুমাত্র একটি সক্রিয় নোড)
- সংরক্ষণের সীমাবদ্ধতার কারণে সীমিত ভৌগোলিক বন্টন
- স্ট্যান্ডার্ড সংস্করণ ২টি নোডের মধ্যে সীমাবদ্ধ
- শুধুমাত্র উইন্ডোজ (লিনাক্স সাপোর্ট নেই)
- AG-এর তুলনায় দীর্ঘ ব্যর্থতা সময় (সাধারণত মিনিট)
- জটিল স্টোরেজ কনফিগারেশন এবং ব্যবস্থাপনা
তথ্যসূত্র
- SQL Server ফেলওভার ক্লাস্টার: ডিবিএ-র জন্য সম্পূর্ণ নির্দেশিকা
- মাইক্রোসফট অফিসিয়াল ডকুমেন্ট: সর্বদা ফেইলওভার ক্লাস্টার ইনস্ট্যান্স চালু থাকে (SQL Server)
7. SQL Server প্রতিলিপি
SQL Server রেপ্লিকেশন হল একটি ডেটা ডিস্ট্রিবিউশন প্রযুক্তি যা একাধিক সার্ভারে ডেটা কপি এবং বিতরণ করে, যা সহজ একমুখী বিতরণ থেকে জটিল মাল্টি-মাস্টার কনফিগারেশন পর্যন্ত বিভিন্ন টপোলজি সমর্থন করে, যদিও এটি প্রাথমিকভাবে বিশুদ্ধ উচ্চ প্রাপ্যতা সমাধানের পরিবর্তে রিপোর্টিংয়ের জন্য ব্যবহৃত হয়।
মুখ্য সুবিধা
- চার ধরণের প্রতিলিপি: স্ন্যাপশট, লেনদেন, মার্জ, পিয়ার-টু-পিয়ার
- দানাদার তথ্য নির্বাচন (নির্দিষ্ট টেবিল, কলাম, সারি)
- একক প্রকাশকের একাধিক গ্রাহকের জন্য সমর্থন
- দ্বি-মুখী এবং বহু-মাস্টার টপোলজি উপলব্ধ
- নমনীয় সময়সূচী এবং সিঙ্ক্রোনাইজেশন বিকল্পগুলি
- মার্জ প্রতিলিপির জন্য দ্বন্দ্ব সমাধান
- WHERE predicates সহ ফিল্টারিং ক্ষমতা
বাস্তবায়ন পদক্ষেপ
- ডিস্ট্রিবিউটর সার্ভার কনফিগার করুন (প্রকাশকের মতো আলাদা বা একই হতে পারে)
- প্রকাশক ডাটাবেসে প্রকাশনা তৈরি করুন
- প্রয়োজনীয়তার উপর ভিত্তি করে প্রতিলিপির ধরণ নির্বাচন করুন
- প্রতিলিপি তৈরির জন্য নিবন্ধগুলি (টেবিল, দর্শন, সঞ্চিত পদ্ধতি) বেছে নিন।
- প্রয়োজনে ফিল্টারিং এবং ডেটা ট্রান্সফর্মেশন কনফিগার করুন
- সাবস্ক্রাইবার ডাটাবেস সেট আপ করুন
- সাবস্ক্রিপশন তৈরি করুন (পুশ বা টানুন)
- স্ন্যাপশট দিয়ে সাবস্ক্রিপশন শুরু করুন
- রেপ্লিকেশন এজেন্ট এবং ল্যাটেন্সি পর্যবেক্ষণ করুন
সেরা জন্য
- একাধিক রিপোর্টিং সার্ভারে ডেটা বিতরণ করা
- কাজের চাপ রিপোর্ট করার সাথে সাথে পঠন-স্কেল পরিস্থিতি
- দূরবর্তী স্থানগুলিতে আংশিক তথ্য বিতরণ
- একাধিক উৎস থেকে তথ্য একত্রীকরণ
- মাঝে মাঝে সংযুক্ত পরিস্থিতি (প্রতিলিপি একত্রিত করুন)
- দুর্যোগ পুনরুদ্ধার কৌশলে সহায়ক ভূমিকা
ভালো দিক
- প্রতিলিপিকৃত ডেটার উপর দানাদার নিয়ন্ত্রণ
- একাধিক গ্রাহক সমর্থিত
- নমনীয় টপোলজির বিকল্পগুলি
- নির্দিষ্ট টেবিল বা কলামগুলির প্রতিলিপি তৈরি করতে পারে
- ফিল্টারিং নেটওয়ার্ক ট্র্যাফিক হ্রাস করে
- ভিন্নধর্মী প্রতিলিপি সমর্থন করে (SQL Server ওরাকলের কাছে)
- স্ট্যান্ডার্ড সংস্করণের সাথে কাজ করে
মন্দ দিক
- কোনও স্বয়ংক্রিয় ফেইলওভার ক্ষমতা নেই
- জটিল কনফিগারেশন এবং ব্যবস্থাপনা
- প্রতিলিপি দ্বন্দ্বের সম্ভাবনা (মার্জ এবং পিয়ার-টু-পিয়ার)
- ডেটা সিঙ্ক্রোনাইজেশনে বিলম্ব
- স্কিমা পরিবর্তনের জন্য সতর্ক সমন্বয় প্রয়োজন
- প্রাথমিক HA সমাধান হিসেবে ডিজাইন করা হয়নি
- সমস্যা সমাধান চ্যালেঞ্জিং হতে পারে
- পিয়ার-টু-পিয়ারের জন্য এন্টারপ্রাইজ সংস্করণ প্রয়োজন
তথ্যসূত্র
- SQL Server প্রতিলিপি: ডিবিএ-র জন্য সম্পূর্ণ নির্দেশিকা
- মাইক্রোসফটের অফিসিয়াল ডকুমেন্ট: SQL Server প্রতিলিপি
৮. লগ শিপিং
লগ শিপিং স্বয়ংক্রিয় ট্রানজ্যাকশন লগ ব্যাকআপ, কপি এবং রিস্টোর প্রক্রিয়ার মাধ্যমে একটি ওয়ার্ম স্ট্যান্ডবাই ডিজাস্টার রিকভারি ও হাই অ্যাভেইলেবিলিটি সমাধান প্রদান করে, যা সিঙ্ক্রোনাইজড সেকেন্ডারি ডেটাবেস রক্ষণাবেক্ষণের জন্য একটি সহজ ও সাশ্রয়ী পন্থা।
মুখ্য সুবিধা
- SQL এজেন্টের মাধ্যমে স্বয়ংক্রিয় ব্যাকআপ, কপি এবং কাজ পুনরুদ্ধার করুন
- একাধিক সেকেন্ডারি সার্ভারের জন্য সমর্থন
- কনফিগারযোগ্য ব্যাকআপ এবং পুনরুদ্ধারের ব্যবধান
- স্ট্যান্ডবাই মোড সেকেন্ডারিতে কেবল পঠনযোগ্য অ্যাক্সেসের অনুমতি দেয়
- ত্রুটি পুনরুদ্ধার সুরক্ষার জন্য বিলম্বিত লগ পুনরুদ্ধার
- কেন্দ্রীভূত পর্যবেক্ষণের জন্য মনিটর সার্ভার
- লেনদেন লগ কম্প্রেশন সাপোর্ট
বাস্তবায়ন পদক্ষেপ
- নিশ্চিত করুন যে প্রাথমিক ডাটাবেস সম্পূর্ণ পুনরুদ্ধার মডেল ব্যবহার করে
- প্রাথমিক ডাটাবেসের সম্পূর্ণ ব্যাকআপ তৈরি করুন
- NORECOVERY দিয়ে সেকেন্ডারি সার্ভারে ব্যাকআপ পুনরুদ্ধার করুন
- প্রাথমিক ডাটাবেসে লগ শিপিং কনফিগার করুন
- সকল সার্ভারে অ্যাক্সেসযোগ্য শেয়ার্ড ব্যাকআপ ফোল্ডার নির্দিষ্ট করুন
- প্রাথমিকে ব্যাকআপ কাজের সময়সূচী কনফিগার করুন
- সেকেন্ডারিতে কপি এবং রিস্টোর কাজ কনফিগার করুন
- ঐচ্ছিকভাবে মনিটর সার্ভার কনফিগার করুন
- পরীক্ষা ব্যর্থতা পদ্ধতি
সেরা জন্য
- সাশ্রয়ী দুর্যোগ পুনরুদ্ধার সমাধান
- স্ট্যান্ডার্ড এডিশন লাইসেন্সপ্রাপ্ত প্রতিষ্ঠান
- মিনিটের পর মিনিট ডেটা ক্ষতি সহ্য করার দৃশ্যপট
- ম্যানুয়াল ফেইলওভারের সাথে আরামদায়ক পরিবেশ
- ত্রুটি সুরক্ষার প্রয়োজনে বিলম্বিত পুনরুদ্ধার
- STANDBY মোড ব্যবহার করে কাজের চাপ রিপোর্ট করা
- জটিল অবকাঠামো ছাড়াই সহজ ডিআর প্রয়োজনীয়তা
ভালো দিক
- সহজ কনফিগারেশন এবং অপারেশন
- স্বল্পমূল্য (স্ট্যান্ডার্ড সংস্করণ সমর্থন)
- একাধিক সেকেন্ডারি সার্ভার সমর্থিত
- কনফিগারযোগ্য বিলম্ব লজিক্যাল ত্রুটি থেকে রক্ষা করে
- স্ট্যান্ডবাই মোডে কেবল পঠনযোগ্য প্রতিবেদন
- উচ্চ নেটওয়ার্ক লেটেন্সি সহ্য করে
- প্রাথমিক সার্ভারের উপর ন্যূনতম প্রভাব
- সুপ্রতিষ্ঠিত, প্রমাণিত প্রযুক্তি
মন্দ দিক
- কোনও স্বয়ংক্রিয় ফেইলওভার ক্ষমতা নেই
- প্রতিটি ডাটাবেসের জন্য আলাদাভাবে কনফিগার করতে হবে
- সিঙ্ক্রোনাইজেশন বিলম্ব (মিনিট থেকে ঘন্টা)
- ব্যাকআপ ব্যবধানের উপর ভিত্তি করে সম্ভাব্য ডেটা ক্ষতি
- ম্যানুয়াল ফেলওভার RTO বৃদ্ধি করে
- প্রয়োজন SQL Server সকল সার্ভারে এজেন্ট চলছে
- লগ পুনরুদ্ধারের সময় সেকেন্ডারি ডাটাবেস অ্যাক্সেসযোগ্য নয়
- ফেইলওভারের পরে অ্যাপ্লিকেশনগুলির সংযোগ স্ট্রিং পরিবর্তন প্রয়োজন
তথ্যসূত্র
- SQL Server লগ শিপিং: ডিবিএ-এর জন্য সম্পূর্ণ নির্দেশিকা
- মাইক্রোসফট অফিসিয়াল ডকুমেন্ট: লগ শিপিং সম্পর্কে (SQL Server)
৯. ডাটাবেস মিররিং
ডাটাবেস মিররিং হল একটি অবচিত ডাটাবেস-স্তরের উচ্চ প্রাপ্যতা সমাধান যা পরবর্তীতে কোনও বর্ধিতকরণ পায়নি SQL Server ২০১২ সালে, যদিও এটি বর্তমান সংস্করণগুলিতে এখনও উপলব্ধ। মাইক্রোসফ্ট দৃঢ়ভাবে সমস্ত নতুন স্থাপনার জন্য সর্বদা অন অ্যাভাইলেবিলিটি গ্রুপগুলিতে স্থানান্তর করার পরামর্শ দেয়।
মুখ্য সুবিধা
- প্রধান এবং আয়না সার্ভার আর্কিটেকচার
- স্বয়ংক্রিয় ব্যর্থতার জন্য ঐচ্ছিক সাক্ষী সার্ভার
- দুটি অপারেটিং মোড: উচ্চ নিরাপত্তা এবং উচ্চ কর্মক্ষমতা
- সিঙ্ক্রোনাস এবং অ্যাসিঙ্ক্রোনাস অপারেশন সাপোর্ট
- স্বয়ংক্রিয় পৃষ্ঠা মেরামতের ক্ষমতা
- ডাটাবেস-স্তরের সুরক্ষা
- ডেটা ট্রান্সমিশনের জন্য এনক্রিপশন সমর্থন
বাস্তবায়ন পদক্ষেপ
- ডাটাবেস সম্পূর্ণ পুনরুদ্ধার মডেল ব্যবহার করে তা নিশ্চিত করুন
- NORECOVERY দিয়ে সম্পূর্ণ ব্যাকআপ তৈরি করুন এবং মিরর সার্ভারে পুনরুদ্ধার করুন
- প্রিন্সিপাল এবং মিররে মিররিং এন্ডপয়েন্ট তৈরি করুন
- প্রমাণীকরণের জন্য সার্টিফিকেট কনফিগার করুন
- সার্ভারের মধ্যে মিররিং সেশন স্থাপন করুন
- স্বয়ংক্রিয় ব্যর্থতার জন্য ঐচ্ছিকভাবে সাক্ষী সার্ভার কনফিগার করুন
- অপারেটিং মোড সেট করুন (উচ্চ নিরাপত্তা বা উচ্চ কর্মক্ষমতা)
- পরীক্ষা ব্যর্থতা পদ্ধতি
সেরা জন্য
- লিগ্যাসি সিস্টেমগুলি ইতিমধ্যেই ডেটাবেস মিররিং ব্যবহার করছে
- স্থানান্তর সম্ভব না হওয়া পর্যন্ত বিদ্যমান কনফিগারেশনগুলি বজায় রাখা
- অন্য কোনও পরিস্থিতির সুপারিশ করা হয়নি (বৈশিষ্ট্যটি বন্ধ করা হয়েছে)
ভালো দিক
- সাক্ষী সহ উচ্চ নিরাপত্তা মোডে দ্রুত স্বয়ংক্রিয় ব্যর্থতা
- উচ্চ নিরাপত্তা মোডে শূন্য ডেটা ক্ষতি
- অংশীদার থেকে স্বয়ংক্রিয় পৃষ্ঠা মেরামত
- একক ডাটাবেসের জন্য উপলব্ধতা গোষ্ঠীর চেয়ে সহজ
- ট্রান্সমিশনের জন্য এনক্রিপশন সমর্থন করে
- ন্যূনতম ডাউনটাইম সহ রোলিং আপগ্রেড
মন্দ দিক
- থেকে বন্ধ করা হয়েছে SQL Server ২০১২ (সরানো হতে পারে)
- প্রতি-ডাটাবেস কনফিগারেশন এবং ফেইলওভার
- পঠনযোগ্য আয়না নেই (পঠন-স্কেল ক্ষমতা নেই)
- প্রতিটি ডাটাবেস স্বাধীনভাবে ব্যর্থ হয়
- ফেইলওভারের পরে সংযোগ স্ট্রিং আপডেট প্রয়োজন
- দুটি সার্ভারের মধ্যে সীমাবদ্ধ (প্রিন্সিপাল এবং মিরর)
- কোনও বর্ধিতকরণ বা নতুন বৈশিষ্ট্য নেই
- মাইক্রোসফট অলওয়েজ অন এজি-তে মাইগ্রেশনের সুপারিশ করেছে
তথ্যসূত্র
১০. পরিচালিত ইনস্ট্যান্স লিঙ্ক
পরিচালিত ইনস্ট্যান্স লিঙ্ক এর মধ্যে একটি হাইব্রিড সংযোগ তৈরি করে SQL Server এবং Azure SQL পরিচালিত ইন্সট্যান্স বিতরণকৃত উপলব্ধতা গ্রুপ প্রযুক্তি ব্যবহার করে, দুর্যোগ পুনরুদ্ধার, মাইগ্রেশন এবং ক্লাউড ইন্টিগ্রেশন পরিস্থিতির জন্য প্রায় রিয়েল-টাইম ডেটা প্রতিলিপি সক্ষম করে।
মুখ্য সুবিধা
- বিতরণকৃত এজি প্রযুক্তি ব্যবহার করে প্রায় রিয়েল-টাইম প্রতিলিপি
- একমুখী প্রতিলিপি (SQL Server (২০১৬-২০১৯ থেকে আজুর পর্যন্ত)
- ফেইলব্যাক সহ দ্বি-মুখী প্রতিলিপি (SQL Server 2022+)
- প্রতি লিঙ্কে একটি ডাটাবেস (একাধিক লিঙ্ক সমর্থিত)
- Azure SQL পরিচালিত ইনস্ট্যান্সে পঠনযোগ্য প্রতিলিপি
- লাইসেন্স-মুক্ত প্যাসিভ ডিআর রেপ্লিকা বিকল্প
- ন্যূনতম ডাউনটাইম সহ অনলাইন মাইগ্রেশন
বাস্তবায়ন পদক্ষেপ
- প্রস্তুত করা SQL Server পরিবেশ (VPN অথবা ExpressRoute to Azure)
- Azure SQL পরিচালিত ইন্সট্যান্স কনফিগার করুন
- সর্বদা চালু AG বৈশিষ্ট্যটি চালু করুন SQL Server
- ডাটাবেস মিররিং এন্ডপয়েন্ট তৈরি করুন
- মধ্যে সার্টিফিকেট বিনিময় করুন SQL Server এবং এমআই
- SSMS বা স্ক্রিপ্ট ব্যবহার করে পরিচালিত ইনস্ট্যান্স লিঙ্ক তৈরি করুন
- প্রতিলিপি এবং সিঙ্ক্রোনাইজেশন যাচাই করুন
- রিড-স্কেলের জন্য ব্যবহার করলে রিড-অনলি রাউটিং কনফিগার করুন
- পরীক্ষা ব্যর্থতা পদ্ধতি
সেরা জন্য
- ক্লাউড-ভিত্তিক সেকেন্ডারি সহ হাইব্রিড দুর্যোগ পুনরুদ্ধার
- Azure SQL পরিচালিত ইনস্ট্যান্সে অনলাইন মাইগ্রেশন
- অ্যানালিটিক্স অফলোড করা এবং Azure-এ রিপোর্ট করা
- হাইব্রিড ক্লাউড কৌশল গ্রহণকারী প্রতিষ্ঠানগুলি
- Azure পরিষেবা ইন্টিগ্রেশনের প্রয়োজন এমন পরিস্থিতি
- লাইসেন্স-মুক্ত প্যাসিভ ডিআর-এর মাধ্যমে খরচ অপ্টিমাইজেশন
ভালো দিক
- Azure-এ সবচেয়ে ভালো পারফরম্যান্স ও সর্বনিম্ন ডাউনটাইমে মাইগ্রেশন
- ব্যবসায়িক সমালোচনামূলক স্তরে সত্যিকারের অনলাইন মাইগ্রেশন
- দ্বি-মুখী ব্যর্থতা সহ SQL Server 2022+
- লাইসেন্স-মুক্ত প্যাসিভ ডিআর রেপ্লিকা খরচ কমায়
- সম্পূর্ণ মাইগ্রেশন ছাড়াই Azure পরিষেবার সাথে ইন্টিগ্রেশন
- Azure প্রতিলিপি ব্যবহার করে পঠন-স্কেল ক্ষমতা
- Azure পাশে স্বয়ংক্রিয় ব্যাকআপ
- Azure অঞ্চলে ভৌগোলিক বন্টন
মন্দ দিক
- প্রতি লিঙ্ক সীমাবদ্ধতার জন্য একটি ডাটাবেস
- MI তে ফেইলওভার গ্রুপের সাথে ব্যবহার করা যাবে না
- সিস্টেম ডাটাবেসগুলি প্রতিলিপি করা হয়নি
- ইনস্ট্যান্স-স্তরের বস্তুর জন্য ম্যানুয়াল সিঙ্ক্রোনাইজেশন প্রয়োজন
- SQL Server ২০১৬-২০১৯ শুধুমাত্র একমুখী (কোনও ফেইলব্যাক নেই)
- ম্যানেজড ইনস্ট্যান্সের জন্য অ্যাজুর খরচ
- নেটওয়ার্ক সংযোগের প্রয়োজনীয়তা (VPN/ExpressRoute)
- বৈশিষ্ট্যের সীমাবদ্ধতা (ফাইল টেবিল, ফাইল স্ট্রিম সমর্থিত নয়)
তথ্যসূত্র
১১. উচ্চ প্রাপ্যতা সমাধানের তুলনা
১১.১ বৈশিষ্ট্য তুলনা সারণী
| বৈশিষ্ট্য | সর্বদা AG-তে | ধারণকৃত এজি | বিতরণকৃত এজি | FCI | প্রতিলিপি | লগ শিপিং | মিরর | এমআই লিংক |
|---|---|---|---|---|---|---|---|---|
| সংস্করণ | এনটি/এসটিডি | এনটি/এসটিডি | মহেশপুর | এনটি/এসটিডি | এনটি/এসটিডি | এনটি/এসটিডি | এনটি/এসটিডি | এনটি/এসটিডি |
| সুরক্ষা স্তর | ডেটাবেস | ডাটাবেস+ইনস্ট্যান্স | ডেটাবেস | দৃষ্টান্ত | ডাটাবেস/বস্তু | ডেটাবেস | ডেটাবেস | ডেটাবেস |
| ডেটা সিঙ্ক | সিঙ্ক/অসিঙ্ক | সিঙ্ক/অসিঙ্ক | সিঙ্ক/অসিঙ্ক | শেয়ারকৃত | এসিঙ্ক | এসিঙ্ক | সিঙ্ক/অসিঙ্ক | এসিঙ্ক |
| অটো ফেইলওভার | হাঁ | হাঁ | হাঁ | হাঁ | না | না | হাঁ | না |
| পঠন-স্কেল | হাঁ | হাঁ | হাঁ | না | হাঁ | সীমিত | না | হাঁ |
| RTO | সেকেন্ড | সেকেন্ড | সেকেন্ড | মিনিট | ম্যানুয়াল | ম্যানুয়াল | সেকেন্ড | ম্যানুয়াল |
| আঞ্চলিক পাসপোর্ট অফিসে | শূন্য/সর্বনিম্ন | শূন্য/সর্বনিম্ন | শূন্য/সর্বনিম্ন | শূন্য | যত্সামান্য | মিনিট | শূন্য/সর্বনিম্ন | যত্সামান্য |
| সমর্থন অবস্থা | সক্রিয় | সক্রিয় | সক্রিয় | সক্রিয় | সক্রিয় | সক্রিয় | অননুমোদিত | সক্রিয় |
১১.২ HA সমাধান নির্বাচন করুন
সমাধান নির্বাচন করার সময়, নিম্নলিখিত বিষয়গুলি বিবেচনা করুন:
- বাজেট সংক্রান্ত বিষয়গুলো সমাধান নির্বাচনে উল্লেখযোগ্যভাবে প্রভাব ফেলে: এন্টারপ্রাইজ এডিশনের প্রয়োজনীয়তা লাইসেন্সিং খরচকে প্রভাবিত করে, অন্যদিকে অবকাঠামোগত চাহিদাগুলো এফসিআই-এর জন্য ব্যয়বহুল শেয়ার্ড স্টোরেজ থেকে শুরু করে অ্যাভেইলেবিলিটি গ্রুপের জন্য সাধারণ সার্ভার পর্যন্ত বিভিন্ন ধরনের হয়ে থাকে।
- জটিলতা উল্লেখযোগ্যভাবে ভিন্ন: লগ শিপিং সহজতম বাস্তবায়ন প্রদান করে, যেখানে বিতরণকৃত উপলব্ধতা গোষ্ঠীগুলির জন্য ব্যাপক দক্ষতার প্রয়োজন হয়।
- RTO প্রয়োজনীয়তা প্রযুক্তি পছন্দগুলিকে চালিত করে। সেকেন্ডের ডাউনটাইম চাহিদা সর্বদা চালু থাকে উপলব্ধতা গ্রুপ বা স্বয়ংক্রিয় ফেলওভার সহ FCI। মিনিট সহনশীলতা লগ শিপিংয়ের মতো ম্যানুয়াল ফেলওভার সমাধানগুলিকে অনুমতি দেয়।
- RPO প্রয়োজনীয়তাগুলিও সমানভাবে গুরুত্বপূর্ণ: শূন্য ডেটা ক্ষতি সিঙ্ক্রোনাস সমাধানগুলিকে বাধ্যতামূলক করে, যখন মিনিট সহনশীলতা লগ শিপিংকে সক্ষম করে।
- অবকাঠামোগত সীমাবদ্ধতা, পঠন-স্কেলের চাহিদা, ভৌগোলিক বিতরণের প্রয়োজনীয়তা এবং ক্লাউড হাইব্রিড পরিস্থিতি - এই সবকিছুই সর্বোত্তম সমাধান নির্বাচনকে প্রভাবিত করে।
12. এর জন্য সর্বোত্তম অভ্যাস SQL Server উচ্চ প্রাপ্যতা
12.1 পরিকল্পনা এবং নকশা
প্রতিটি ডাটাবেসের জন্য সতর্ক RTO এবং RPO বিশ্লেষণের মাধ্যমে ব্যবসায়িক প্রয়োজনীয়তা মূল্যায়ন করুন। সবচেয়ে অত্যাধুনিক বিকল্পগুলো বেছে না নিয়ে, প্রয়োজনীয়তার সাথে মেলে এমন উপযুক্ত সমাধান নির্বাচন করুন। স্তরভিত্তিক পদ্ধতি ব্যবহার করে স্থানীয় উচ্চ প্রাপ্যতা এবং ভৌগোলিক দুর্যোগ পুনরুদ্ধার উভয়ের জন্য পরিকল্পনা করুন। নেটওয়ার্ক ডায়াগ্রাম, ফেইলওভার পদ্ধতি এবং রিকভারি রানবুক সহ আর্কিটেকচারটি বিস্তারিতভাবে নথিভুক্ত করুন।
১২.২ বাস্তবায়ন নির্দেশিকা
নির্ধারিত পরীক্ষা এবং যাচাইকরণের জন্য সিমুলেটেড ব্যর্থতার মাধ্যমে নিয়মিতভাবে ব্যর্থতা পরীক্ষা পদ্ধতি পরীক্ষা করুন SQL Server উচ্চ প্রাপ্যতা সমাধান এবং দলের প্রস্তুতি। স্বাস্থ্য এবং কর্মক্ষমতা ক্রমাগত পর্যবেক্ষণ করুন ব্যবহার করে SQL Serverএর অন্তর্নির্মিত সরঞ্জামগুলি যেমন SQL Server প্রোফাইলার এবং DMV। সিঙ্ক্রোনাইজেশন ল্যাগ, ফেইলওভার ইভেন্ট এবং স্বাস্থ্য অবনতির জন্য ব্যাপক সতর্কতা কনফিগার করুন। বজায় রাখুন। SQL Server ব্যাকআপ কৌশল HA বাস্তবায়ন সত্ত্বেও, কারণ ব্যাকআপগুলি লজিক্যাল দুর্নীতি এবং দুর্ঘটনাজনিত মুছে ফেলার বিরুদ্ধে প্রতিরক্ষার শেষ লাইন হিসাবে রয়ে গেছে। ক্রমবর্ধমান আপডেট, সুরক্ষা প্যাচ এবং ফার্মওয়্যার আপডেটের মাধ্যমে সিস্টেমগুলিকে আপডেট রাখুন। প্রকৃত পুনরুদ্ধার এবং অ্যাপ্লিকেশন পরীক্ষার মাধ্যমে পর্যায়ক্রমে পুনরুদ্ধার পদ্ধতিগুলি যাচাই করুন এবং কীভাবে পরিস্থিতি পরিচালনা করতে হয় তা জানুন পুনরুদ্ধার মোডে আটকে থাকা ডাটাবেসগুলি.
12.3 মনিটরিং এবং রক্ষণাবেক্ষণ
এর মতো সরঞ্জামগুলি ব্যবহার করুন SQL Server ক্রিয়াকলাপ নিরীক্ষক, SQL Server কর্মক্ষমতা মনিটর, এবং স্বাস্থ্য পর্যবেক্ষণের জন্য ব্যাপকভাবে ডায়নামিক ম্যানেজমেন্ট ভিউ, এবং পরিচালনা ডিবিসিসি চেকডিবি নিয়মিতভাবে ডাটাবেস অখণ্ডতা যাচাই করুন। অ্যাভেইলেবিলিটি গ্রুপ হেলথের ভিজ্যুয়াল মূল্যায়নের জন্য সর্বদা অন ড্যাশবোর্ড ব্যবহার করুন। সিঙ্ক্রোনাইজেশন ল্যাগ সাবধানে পর্যবেক্ষণ করুন, বিশেষ করে অ্যাসিঙ্ক্রোনাস রেপ্লিকা এবং লগ শিপিংয়ের জন্য। ফেইলওভার ইভেন্টগুলি সাবধানতার সাথে ট্র্যাক করুন SQL Server বর্ধিত ইভেন্ট এবং প্যাটার্নের কারণ বিশ্লেষণ করুন। স্বাভাবিক ক্রিয়াকলাপের জন্য কর্মক্ষমতা ভিত্তিরেখা স্থাপন করুন এবং সম্ভাব্য সমস্যাগুলি নির্দেশ করে এমন বিচ্যুতি পর্যবেক্ষণ করুন। ক্রমবর্ধমান কাজের চাপকে সমর্থন করে এমন অবকাঠামো নিশ্চিত করার জন্য নিয়মিত সক্ষমতা পরিকল্পনা পর্যালোচনা পরিচালনা করুন।
13। প্রায়শই জিজ্ঞাসিত প্রশ্নাবলী
প্রশ্ন: উচ্চ প্রাপ্যতা এবং দুর্যোগ পুনরুদ্ধারের মধ্যে পার্থক্য কী? SQL Server?
উত্তর: উচ্চ প্রাপ্যতা ডেটা সেন্টারের মধ্যে স্থানীয় ব্যর্থতার জন্য ডাউনটাইম কমিয়ে দেয়, সাধারণত স্বয়ংক্রিয় ব্যর্থতা এবং RTO সেকেন্ড বা মিনিটের মধ্যে। দুর্যোগ পুনরুদ্ধার আঞ্চলিক বিপর্যয় থেকে রক্ষা করে, সাধারণত ম্যানুয়াল ব্যর্থতা এবং দীর্ঘ RTO এর মাধ্যমে কিন্তু সমগ্র সুবিধাগুলিকে প্রভাবিত করে এমন ঘটনাগুলিকে কভার করে।
প্রশ্ন: হাই অ্যাভেইলেবিলিটি (HA) এবং রিড-স্কেল সলিউশনের মধ্যে পার্থক্য কী?
হাই অ্যাভেইলেবিলিটি সলিউশনগুলো ব্যর্থতার সময়েও ডাটাবেসকে অ্যাক্সেসযোগ্য রাখে এবং আপটাইম ও স্বয়ংক্রিয় ফেইলওভার ক্ষমতার উপর মনোযোগ দেয়। রিড-স্কেল সলিউশনগুলো একাধিক ডাটাবেস রেপ্লিকার মধ্যে রিড-অনলি ওয়ার্কলোড বিতরণ করে কোয়েরির পারফরম্যান্স উন্নত করে এবং থ্রুপুট ও রেসপন্স টাইমের উপর মনোযোগ দেয়। যদিও এগুলোর উদ্দেশ্য ভিন্ন, অলওয়েজ অন অ্যাভেইলেবিলিটি গ্রুপের মতো একই প্রযুক্তি একই সাথে উভয় সুবিধাই প্রদান করতে পারে: রিডেবল সেকেন্ডারি রেপ্লিকাগুলো রিড-স্কেল ক্ষমতা দেওয়ার পাশাপাশি হাই অ্যাভেইলেবিলিটির জন্য ফেইলওভার টার্গেট হিসেবেও কাজ করে।
প্রশ্নঃ কোনটি SQL Server আমার প্রয়োজনের জন্য উচ্চ প্রাপ্যতা সমাধান সবচেয়ে ভালো?
সর্বোত্তম সমাধান নির্ভর করে RTO ও RPO লক্ষ্যমাত্রা, বাজেট, সংস্করণের প্রাপ্যতা, পরিকাঠামো এবং দক্ষতার উপর। অলওয়েজ অন অ্যাভেইলেবিলিটি গ্রুপস বেশিরভাগ এন্টারপ্রাইজ পরিস্থিতির জন্য উপযুক্ত, অন্যদিকে লগ শিপিং ব্যয়-সংবেদনশীল পরিবেশের জন্য ভালোভাবে কাজ করে। তুলনামূলক সারণীর সাথে মিলিয়ে প্রয়োজনীয়তাগুলো মূল্যায়ন করুন।
প্রশ্ন: সর্বদা চালু থাকা গ্রুপগুলির জন্য কি এন্টারপ্রাইজ সংস্করণের প্রয়োজন হয়?
উত্তর: স্ট্যান্ডার্ড সংস্করণ উল্লেখযোগ্য সীমাবদ্ধতা সহ বেসিক অ্যাভেইলিবিলিটি গ্রুপগুলিকে সমর্থন করে: প্রতি গ্রুপে একটি ডাটাবেস, একটি সেকেন্ডারি রেপ্লিকা, এবং কোনও পঠনযোগ্য সেকেন্ডারি নেই। একাধিক ডাটাবেস, আটটি সেকেন্ডারি এবং পঠনযোগ্য রেপ্লিকা সহ সম্পূর্ণ কার্যকারিতার জন্য এন্টারপ্রাইজ সংস্করণ প্রয়োজন।
প্রশ্ন: আমি কি লগ শিপিং ব্যবহার করতে পারি? SQL Server স্ট্যান্ডার্ড সংস্করণ?
হ্যাঁ, স্ট্যান্ডার্ড এডিশনে লগ শিপিং সম্পূর্ণরূপে সমর্থিত, যা এন্টারপ্রাইজ এডিশন লাইসেন্সিংবিহীন সংস্থাগুলোর জন্য এটিকে একটি আকর্ষণীয় ও সাশ্রয়ী দুর্যোগ পুনরুদ্ধার সমাধান করে তোলে।
প্রশ্ন: অলওয়েজ অন অ্যাভেইলেবিলিটি গ্রুপ এবং ডাটাবেস মিররিংয়ের মধ্যে পার্থক্য কী?
উত্তর: ডাটাবেস মিররিং অপ্রচলিত এবং এটি পৃথক ডাটাবেস স্তরে পরিচালিত হয় যেখানে কোনও পঠনযোগ্য সেকেন্ডারি অ্যাক্সেস নেই। সর্বদা অন অ্যাভাইলেবিলিটি গ্রুপগুলি আটটি পর্যন্ত সেকেন্ডারি, পঠনযোগ্য প্রতিলিপি এবং উন্নত পর্যবেক্ষণ সহ ডাটাবেসের গ্রুপগুলিকে সমর্থন করে। মাইক্রোসফ্ট সর্বদা অন-এ স্থানান্তর করার পরামর্শ দেয়।
প্রশ্ন: ফেইলওভার ক্লাস্টার ইনস্ট্যান্স এবং অ্যাভেইলেবিলিটি গ্রুপের মধ্যে আমি কীভাবে নির্বাচন করব?
A: শেয়ার্ড স্টোরেজ অবকাঠামো সহ ইনস্ট্যান্স-লেভেল সুরক্ষার জন্য FCI বেছে নিন। ডাটাবেস-লেভেল সুরক্ষা, রিড-স্কেল ক্ষমতা এবং শেয়ার্ড স্টোরেজ ছাড়াই ভৌগোলিক বিতরণের জন্য Availability Groups বেছে নিন। ব্যাপক সুরক্ষার জন্য সংস্থাগুলি প্রায়শই উভয়কেই একত্রিত করে।
প্রশ্ন: আমি কি একাধিক একত্রিত করতে পারি? SQL Server উচ্চ প্রাপ্যতা সমাধান?
উত্তর: হ্যাঁ, সমাধানগুলিকে একত্রিত করা সাধারণ। FCIs Availability Group এর প্রতিরূপ হিসেবে কাজ করতে পারে, যা ইনস্ট্যান্স-লেভেল স্থানীয় HA এবং ডাটাবেস-লেভেল ভৌগোলিক DR প্রদান করে। লগ শিপিং অতিরিক্ত দূরবর্তী সুরক্ষার জন্য Availability Group এর পরিপূরক হতে পারে। সম্মিলিত কনফিগারেশনগুলি পুঙ্খানুপুঙ্খভাবে পরীক্ষা করুন।
প্রশ্ন: সিঙ্ক্রোনাস এবং অ্যাসিনক্রোনাস রেপ্লিকেশনের মধ্যে পার্থক্য কী?
A: সিঙ্ক্রোনাস রেপ্লিকেশন কমিট করার আগে সেকেন্ডারি স্বীকৃতির জন্য অপেক্ষা করে, যা শূন্য ডেটা ক্ষতির নিশ্চয়তা দেয় কিন্তু সম্ভাব্যভাবে বিলম্বিত করে। অ্যাসিঙ্ক্রোনাস রেপ্লিকেশন অপেক্ষা না করেই এগিয়ে যায়, কর্মক্ষমতা অপ্টিমাইজ করে কিন্তু ফেইলওভারের সময় সম্ভাব্য ডেটা ক্ষতির সৃষ্টি করে।
প্রশ্ন: যদি আমার কাছে থাকে তবে কি আমার এখনও ব্যাকআপের প্রয়োজন? SQL Server উচ্চ প্রাপ্যতা কনফিগার করা হয়েছে?
উ: একেবারে হ্যাঁ। উচ্চ প্রাপ্যতা হার্ডওয়্যার ব্যর্থতা থেকে রক্ষা করে কিন্তু লজিক্যাল দুর্নীতি, দুর্ঘটনাজনিত মুছে ফেলা, অথবা সমস্ত কপিতে প্রতিলিপি তৈরি করে এমন দূষিত ক্রিয়াকলাপ থেকে রক্ষা করতে পারে না। পয়েন্ট-ইন-টাইম পুনরুদ্ধার এবং সম্মতির প্রয়োজনীয়তার জন্য ব্যাকআপ অপরিহার্য।
প্রশ্ন: যদি আমার কাছে থাকে তবে কি আমার এখনও ব্যাকআপের প্রয়োজন? SQL Server উচ্চ প্রাপ্যতা কনফিগার করা হয়েছে?
উ: অবশ্যই হ্যাঁ। উচ্চ প্রাপ্যতা হার্ডওয়্যার ব্যর্থতা থেকে রক্ষা করে কিন্তু ডাটাবেস দুর্নীতি, দুর্ঘটনাজনিত মুছে ফেলা বা দূষিত কর্মকাণ্ড থেকে রক্ষা করতে পারে না। পয়েন্ট-ইন-টাইম পুনরুদ্ধার এবং সম্মতির প্রয়োজনীয়তার জন্য ব্যাকআপ অপরিহার্য। যেসব ক্ষেত্রে ডাটাবেস ফাইলগুলি দূষিত হয়ে যায়, এবং ব্যাকআপগুলি অনুপলব্ধ থাকে বা দূষিতও হয়, বিশেষায়িত SQL ডাটাবেস মেরামত সফ্টওয়্যার ক্ষতিগ্রস্ত MDF, NDF এবং ব্যাকআপ ফাইল থেকে ডেটা পুনরুদ্ধার করতে সাহায্য করতে পারে।
প্রশ্ন: একটি কন্টেইন্ড অ্যাভেইলিবিলিটি গ্রুপ কী এবং এটি একটি নিয়মিত অ্যাভেইলিবিলিটি গ্রুপ থেকে কীভাবে আলাদা?
A: ধারণকৃত উপলব্ধতা গোষ্ঠী, চালু করা হয়েছে SQL Server ২০২২ সালে, লগইন, জব এবং মেটাডেটার মতো ইনস্ট্যান্স-লেভেল অবজেক্টগুলিকে স্বয়ংক্রিয়ভাবে সিঙ্ক্রোনাইজ করা হয়। নিয়মিত উপলব্ধতা গোষ্ঠীগুলি কেবল ডাটাবেস অবজেক্টগুলিকে সিঙ্ক্রোনাইজ করে, যার জন্য ইনস্ট্যান্স অবজেক্টগুলির ম্যানুয়াল প্রতিলিপি প্রয়োজন।
প্রশ্ন: আমি কি এখান থেকে ডেটা প্রতিলিপি করতে পারি? SQL Server Azure SQL পরিচালিত ইনস্ট্যান্সে?
উত্তর: হ্যাঁ, পরিচালিত ইন্সট্যান্স লিঙ্ক এর মধ্যে হাইব্রিড প্রতিলিপি প্রদান করে SQL Server এবং আজুর। SQL Server ২০১৬-২০১৯ একমুখী প্রতিলিপি সমর্থন করে, যখন SQL Server ২০২২+ দুর্যোগ পুনরুদ্ধার, মাইগ্রেশন এবং হাইব্রিড পরিস্থিতির জন্য ব্যর্থতার সাথে দ্বি-মুখী প্রতিলিপি সক্ষম করে।
প্রশ্ন: কী হয় SQL Server ফেইলওভারের সময় এজেন্টের চাকরি?
A: ঐতিহ্যবাহী Availability Groups-এর ক্ষেত্রে, সেকেন্ডারি রেপ্লিকাগুলিতে ম্যানুয়ালি কাজ তৈরি করতে হবে। Contained Availability Groups (SQL Server ২০২২+) স্বয়ংক্রিয়ভাবে কাজগুলিকে সিঙ্ক্রোনাইজ করে। ফেইলওভার ক্লাস্টার ইনস্ট্যান্সগুলিতে ইনস্ট্যান্স-লেভেল সুরক্ষার অংশ হিসেবে কাজগুলি অন্তর্ভুক্ত থাকে।
14. উপসংহার
SQL Server বিভাগীয় ডাটাবেস থেকে শুরু করে মিশন-ক্রিটিকাল এন্টারপ্রাইজ সিস্টেম পর্যন্ত বিভিন্ন প্রয়োজনীয়তা পূরণের জন্য ব্যাপক উচ্চ প্রাপ্যতা সমাধান প্রদান করে। প্রতিটি সমাধান স্বতন্ত্র ক্ষমতা এবং বিনিময় প্রদান করে যা ডাটাবেস প্রশাসকদের অবগত সিদ্ধান্তের জন্য বুঝতে হবে।
অলওয়েজ অন অ্যাভেইলেবিলিটি গ্রুপস আধুনিক ডেপ্লয়মেন্টের জন্য ফ্ল্যাগশিপ প্রযুক্তি হিসেবে পরিচিত, যেখানে কন্টেইনড অ্যাভেইলেবিলিটি গ্রুপস অ্যাডমিনিস্ট্রেশনকে সহজ করে এবং ডিস্ট্রিবিউটেড অ্যাভেইলেবিলিটি গ্রুপস অত্যাধুনিক ক্রস-প্ল্যাটফর্ম সিনারিও সক্ষম করে। ফেইলওভার ক্লাস্টার ইনস্ট্যান্সেস ইনস্ট্যান্স-স্তরের সুরক্ষার চাহিদা পূরণ করে চলেছে, অন্যদিকে লগ শিপিং ব্যয়-সংবেদনশীল সিনারিওগুলির জন্য প্রাসঙ্গিক। ম্যানেজড ইনস্ট্যান্স লিঙ্ক অন-প্রিমিসেস এবং ক্লাউডের মধ্যে সংযোগ স্থাপন করে ক্লাউড হাইব্রিডের সম্ভাবনা উন্মুক্ত করে। SQL Server Azure এর সাথে।
নির্দিষ্ট ব্যবসায়িক চাহিদার সাথে মিল রেখে সমাধান তৈরি করা সাফল্যের গুরুত্বপূর্ণ কারণ। সকলের জন্য এক-আকারের পদ্ধতি নেই। প্রতিষ্ঠানগুলিকে অবশ্যই RTO এবং RPO প্রয়োজনীয়তা, বাজেটের সীমাবদ্ধতা, অবকাঠামোগত ক্ষমতা এবং প্রশাসনিক দক্ষতার যত্ন সহকারে মূল্যায়ন করতে হবে। প্রায়শই, সেরা স্থাপত্য ব্যাপক সুরক্ষার জন্য একাধিক সমাধানকে একত্রিত করে। আপনার HA কৌশলটি বৃহত্তর ক্লাউড গ্রহণ পরিকল্পনার সাথে কীভাবে সামঞ্জস্যপূর্ণ তা বিবেচনা করুন এবং আপনার SQL Server অবকাঠামো আপনার ব্যবসার চাহিদা অনুযায়ী নির্ভরযোগ্যতা প্রদান করে।
লেখক সম্পর্কে
ইউয়ান সেং একজন সিনিয়র ডাটাবেস অ্যাডমিনিস্ট্রেটর (DBA) যার ১০ বছরেরও বেশি অভিজ্ঞতা রয়েছে SQL Server পরিবেশ এবং এন্টারপ্রাইজ ডাটাবেস ব্যবস্থাপনা। তিনি আর্থিক পরিষেবা, স্বাস্থ্যসেবা এবং উৎপাদন সংস্থা জুড়ে শত শত ডাটাবেস পুনরুদ্ধারের পরিস্থিতি সফলভাবে সমাধান করেছেন।
ইউয়ান বিশেষজ্ঞ SQL Server ডাটাবেস পুনরুদ্ধার, উচ্চ প্রাপ্যতা সমাধান এবং কর্মক্ষমতা অপ্টিমাইজেশন। তার ব্যাপক বাস্তব অভিজ্ঞতার মধ্যে রয়েছে মাল্টি-টেরাবাইট ডাটাবেস পরিচালনা, সর্বদা অন প্রাপ্যতা গ্রুপ বাস্তবায়ন এবং মিশন-সমালোচনামূলক ব্যবসায়িক সিস্টেমের জন্য স্বয়ংক্রিয় ব্যাকআপ এবং পুনরুদ্ধার কৌশল তৈরি করা।
তার প্রযুক্তিগত দক্ষতা এবং ব্যবহারিক পদ্ধতির মাধ্যমে, ইউয়ান এমন ব্যাপক নির্দেশিকা তৈরির উপর মনোনিবেশ করেন যা ডাটাবেস প্রশাসক এবং আইটি পেশাদারদের জটিল সমাধানে সহায়তা করে SQL Server দক্ষতার সাথে চ্যালেঞ্জ জানাতে। তিনি সর্বশেষ খবরের সাথে আপডেট থাকেন SQL Server রিলিজ এবং মাইক্রোসফটের ক্রমবর্ধমান ডাটাবেস প্রযুক্তি, নিয়মিতভাবে পুনরুদ্ধারের পরিস্থিতি পরীক্ষা করে নিশ্চিত করে যে তার সুপারিশগুলি বাস্তব-বিশ্বের সেরা অনুশীলনগুলি প্রতিফলিত করে।
সম্পর্কে প্রশ্ন আছে SQL Server পুনরুদ্ধারের প্রয়োজন নাকি অতিরিক্ত ডাটাবেস সমস্যা সমাধানের নির্দেশিকা প্রয়োজন? ইউয়ান স্বাগত জানায়? প্রতিক্রিয়া এবং পরামর্শ এই প্রযুক্তিগত সম্পদ উন্নত করার জন্য।