Microsoft Technologies Database Mirroring এর মৌলিক ধারণা গাইড ও নোট

309

Database Mirroring একটি হাই-অ্যাভেইলেবিলিটি (high availability) এবং ডাটা রিকভারি (data recovery) সমাধান যা Microsoft SQL Server-এ উপলব্ধ। এই প্রযুক্তি ব্যবহার করে, একটি ডেটাবেসের পুরো কপি অন্য একটি সার্ভারে (মিরর সার্ভারে) সিঙ্ক্রোনাইজ করা হয়, যাতে মূল ডেটাবেসে কোনো সমস্যা হলে ডেটা দ্রুত পুনরুদ্ধার করা যায়। মূলত, ডেটাবেস মিররিং হল একটি ডেটাবেসের রিয়েল-টাইম কপি তৈরি করার প্রক্রিয়া, যেখানে একটি প্রাইমারি (primary) ডেটাবেস এবং একটি মিরর (mirror) ডেটাবেস থাকে।

ডেটাবেস মিররিং হল একটি উচ্চ স্তরের রেডানডেন্স এবং ফেইলওভার সমাধান যা ডেটাবেস সার্ভারের ক্র্যাশ বা সমস্যা হলে তাত্ক্ষণিকভাবে ডেটাবেস সার্ভারকে পুনরুদ্ধার করার সুবিধা দেয়।


1. Database Mirroring এর প্রধান উপাদানসমূহ

ডেটাবেস মিররিং প্রক্রিয়া সাধারণত তিনটি প্রধান উপাদানের মাধ্যমে পরিচালিত হয়:

1.1. Primary Server (প্রাইমারি সার্ভার)

Primary Server হল সেই সার্ভার যেখানে মূল ডেটাবেস অবস্থান করে। এটি ডেটাবেসের সকল লেখার কাজ (write operations) এবং অন্যান্য রিড/রাইট অ্যাক্সেস পরিচালনা করে। এটি মূল ডেটাবেসের মালিক এবং এই সার্ভার থেকে ডেটার পরিবর্তনগুলো মিরর সার্ভারে পাঠানো হয়।

1.2. Mirror Server (মিরর সার্ভার)

Mirror Server হল সেই সার্ভার যেখানে প্রাইমারি সার্ভারের ডেটাবেসের সিঙ্ক্রোনাইজড কপি রাখা হয়। মিরর সার্ভারটি প্রাইমারি সার্ভারের কোনো সমস্যা হলে তা স্বয়ংক্রিয়ভাবে কার্যকরী হয়ে ওঠে এবং ডেটাবেসের কার্যক্রম চালিয়ে যায়। মিরর সার্ভারে ডেটা রিড অপারেশন সম্ভব হয়, কিন্তু এটি লিখিত পরিবর্তন গ্রহণ করে না (যতক্ষণ না ফেইলওভার ঘটছে)।

1.3. Witness Server (উইটনেস সার্ভার)

Witness Server হল ঐচ্ছিক একটি সার্ভার যা High Availability কনফিগারেশনে ব্যবহৃত হয়। এটি প্রাইমারি এবং মিরর সার্ভারের মধ্যে যোগাযোগের অবস্থান পর্যবেক্ষণ করে এবং একটি automatic failover পরিচালনা করার জন্য নির্বাচিত হয়। উইটনেস সার্ভার ফেইলওভার মেকানিজমের অংশ হিসেবে কাজ করে এবং মিররিং সেশনটি সক্রিয় রাখা সহ আরো কিছু ফিচার সমর্থন করে।


2. Database Mirroring এর কাজের পদ্ধতি

ডেটাবেস মিররিং দুটি প্রধান মুডে কাজ করতে পারে: Synchronous Mode এবং Asynchronous Mode

2.1. Synchronous Mode (সিঙ্ক্রোনাস মোড)

Synchronous Mode হল সেই মোড যেখানে প্রাইমারি সার্ভারে করা প্রতিটি ডেটাবেস অপারেশন (যেমন ইনসার্ট, আপডেট, ডিলিট) সম্পন্ন হওয়ার পরে তা মিরর সার্ভারে একটি প্রতিলিপি (replica) তৈরি হয়। এই মোডে ডেটা পুরোপুরি সিঙ্ক্রোনাইজ হয়, তবে কিছু বিলম্ব হতে পারে কারণ মিরর সার্ভারকে প্রতিটি ট্রানজেকশন নিশ্চিত করতে হয়।

লাভ:

  • এই মোডে ডেটাবেস কনসিস্টেন্সি সর্বাধিক থাকে, কারণ সমস্ত ডেটা সিঙ্ক্রোনাইজ করা হয়।

সীমাবদ্ধতা:

  • প্রাইমারি সার্ভারটির পারফরম্যান্সে কিছুটা প্রভাব পড়তে পারে, কারণ প্রতিটি রাইট অপারেশন মিরর সার্ভারে লেখা সম্পন্ন না হওয়া পর্যন্ত প্রক্রিয়া অপেক্ষা করে।

2.2. Asynchronous Mode (অ্যাসিঙ্ক্রোনাস মোড)

Asynchronous Mode হল সেই মোড যেখানে প্রাইমারি সার্ভারে ডেটাবেসের প্রতিটি পরিবর্তন মিরর সার্ভারে লেখা না হওয়া পর্যন্ত অপেক্ষা করা হয় না। এই মোডে, প্রাইমারি সার্ভারে ট্রানজেকশন সম্পন্ন হয়ে গেলে তা মিরর সার্ভারে বিলম্বে পাঠানো হয়।

লাভ:

  • সিস্টেমের পারফরম্যান্স উন্নত হয়, কারণ লেখার কাজ প্রাইমারি সার্ভারে দ্রুত ঘটে।

সীমাবদ্ধতা:

  • মিরর সার্ভারটির মধ্যে কিছু ডেটা লস হতে পারে, কারণ ডেটা সিঙ্ক্রোনাইজেশন বিলম্বিত হয়।

3. Database Mirroring এর সুবিধাসমূহ

3.1. High Availability (উচ্চ উপলভ্যতা)

ডেটাবেস মিররিং মূলত high availability (HA) সমাধান হিসেবে কাজ করে। ফেইলওভারের মাধ্যমে, ডেটাবেসের ডাউনটাইম কমিয়ে আনা হয় এবং সার্ভারের ক্র্যাশ বা সমস্যার ক্ষেত্রে স্বয়ংক্রিয়ভাবে ডেটাবেসের কপি চালু থাকে।

3.2. Data Redundancy (ডেটা রিডান্ডেন্সি)

ডেটাবেস মিররিং ডেটা রিডান্ডেন্সি নিশ্চিত করে, কারণ একাধিক সার্ভারে ডেটার কপি থাকে। এটি দুর্যোগের পরবর্তী সময়ে ডেটা হারানোর ঝুঁকি কমিয়ে দেয়।

3.3. Fast Failover (দ্রুত ফেইলওভার)

ফেইলওভারের সময়, মিরর সার্ভারটি প্রাইমারি সার্ভারের পরিবর্তে কার্যক্রম পরিচালনা শুরু করে, ফলে ব্যবসায়িক কার্যক্রমে কোনো বড় ধরনের বাধা আসে না। Automatic failover বা manual failover কনফিগারেশন অনুযায়ী এটি কাজ করতে পারে।

3.4. Reduced Downtime (ডাউনটাইম কমানো)

ডেটাবেস মিররিং ব্যবহারে সিস্টেমের ডাউনটাইম কমানো সম্ভব হয়, কারণ সার্ভারের ক্র্যাশ বা অপ্রত্যাশিত সমস্যার পরেও ডেটা ব্যবহারযোগ্য থাকে।


4. Database Mirroring এর সীমাবদ্ধতা

4.1. Limited to SQL Server Editions

ডেটাবেস মিররিং শুধুমাত্র কিছু নির্দিষ্ট SQL Server এডিশনে উপলব্ধ, যেমন SQL Server Enterprise Edition। অন্যান্য এডিশনে কিছু সীমাবদ্ধতা থাকতে পারে।

4.2. No Support for Backup and Restore

ডেটাবেস মিররিং এর মাধ্যমে ব্যাকআপ এবং রিস্টোর করার ব্যবস্থা সরাসরি সমর্থিত নয়। তবে, আপনি মিরর সার্ভারের কপি ব্যবহার করে ডেটা রিকভারি করতে পারেন, কিন্তু এটি একেবারে ব্যাকআপ সমাধান নয়।

4.3. Performance Impact

সিঙ্ক্রোনাস মোড ব্যবহারে পারফরম্যান্স কিছুটা প্রভাবিত হতে পারে, কারণ প্রতিটি রাইট অপারেশন মিরর সার্ভারে সিঙ্ক্রোনাইজ হতে অপেক্ষা করতে হয়।


সারাংশ

Database Mirroring SQL Server এর একটি শক্তিশালী high availability সমাধান যা ডেটাবেসের রিয়েল-টাইম কপি তৈরি করে রাখে এবং প্রয়োজনে দ্রুত ফেইলওভার ব্যবস্থা করে। এর মাধ্যমে আপনি ডেটা হারানোর ঝুঁকি কমিয়ে, ব্যবসায়িক অব্যাহতিপূর্ণতা নিশ্চিত করতে পারেন। তবে, এর কিছু সীমাবদ্ধতাও রয়েছে, যেমন ব্যাকআপ ও রিস্টোরের সীমাবদ্ধতা এবং পারফরম্যান্স ইম্প্যাক্ট।

Content added By
Promotion

Are you sure to start over?

Loading...