মূলত নভেম্বর ২০২০-এ ObjectRocket.com/blog-এ প্রকাশিত
Rackspace-এ, ObjectRocket টিম আপনার MongoDB® ডাটাবেস ম্যানেজ করতে সাহায্য করতে পারে। আমরা আপনার MongoDB ডাটাবেসের জন্য ডিজাস্টার রিকভারি, রেপ্লিকেশন, ফল্ট টলারেন্স এবং হাই অভেলেবিলিটি অফার করি।
ভূমিকা
ObjectRocket বর্তমানে Sharded এবং Replica MongoDB ইনস্ট্যান্স অপশন অফার করে, কিন্তু পর্দার পেছনে, আমরা ডেটা রিডান্ডেন্সি এবং ফল্ট টলারেন্সের জন্য সবসময় তিন-সদস্যের রেপ্লিকা সেট ব্যবহার করি। Sharded ইনস্ট্যান্সগুলো ডেডিকেটেড mongos সার্ভার, কনফিগ সার্ভার, এবং শার্ডগুলো নিয়ে গঠিত, যেগুলো প্রতিটি একটি তিন-সদস্যের রেপ্লিকা সেট।
যাইহোক, ডিজাস্টার রিকভারি একটি আলাদা বিষয়। ObjectRocket একটি ডিজাস্টার রিকভারি স্কিম অফার করে যেখানে আপনার Sharded এবং Replica MongoDB ইনস্ট্যান্সগুলো অন্য একটি ডেটা সেন্টারে মিরर्ड মেম্বার রেপ্লিকা সেট পায় একটি অতিরিক্ত খরচে যা আপনি ডিজাস্টার ইভেন্টের ক্ষেত্রে ব্যবহার করতে পারেন।
প্যাকেজ
সকল ObjectRocket ম্যানেজড MongoDB ইনস্ট্যান্স হাই অভেলেবিলিটি, রেপ্লিকেশন (ডেটা রিডান্ডেন্সি), এবং ফল্ট টলারেন্স এক প্যাকেজ হিসেবে পায়।
হাই অভেলেবিলিটি
হাই অভেলেবিলিটি (HA)-এর সাথে, আপনি বিভিন্ন টেকনোলজির মাধ্যমে সবসময় আপনার ডেটা অ্যাক্সেস করতে পারেন। যাইহোক, প্রায় যেকোনো HA সমাধানের একটি কী কম্পোনেন্ট হলো আপনার ডেটার একটি রেপ্লিকা। এখানেই ডেটা রিডান্ডেন্সি কাজে আসে। আপনি শুধু একটি ডাটাবেস দেখেন, কিন্তু পর্দার পেছনে, সেটির দুটি বা তার বেশি সঠিক কপি (রেপ্লিকা) থাকে, যা ফেইলযএর ক্ষেত্রে একটি রেপ্লিকা সেট নোড থেকে অন্য নোডে শিফট করতে সাহায্য করে।
ফল্ট টলারেন্স
ফল্ট টলারেন্স হলো সেই বৈশিষ্ট্য যা একটি সিস্টেমকে একই ফল্ট зোনের ভিতরে একটি কম্পোনেন্টের ব্যর্থতার ঘটনায় সঠিকভাবে চালিয়ে যেতে সক্ষম করে। ব্যবসায়িক süre jatari বজায় রাখতে, আমরা আপনার প্রতিটি শার্ডের রেপ্লিকা-সেট মেম্বারের জন্য ভিন্ন হোস্ট বা সার্ভার ব্যবহার করি, যাতে একটি ডাউন হলে অন্যগুলো অপারেশনাল থাকে।
রেপ্লিকেশন (ডেটা রিডান্ডেন্সি)
MongoDB রেপ্লিকেশন হলো অ্যাপ্লিকেশন লেভেলে একাধিক সার্ভারের জুড়ে ডেটা সিঙ্ক্রোনাইজ করার প্রক্রিয়া। রেপ্লিকেশন রিডান্ডেন্সি প্রদান করে এবং একাধিক ডাটাবেস সার্ভারে ডেটার একাধিক কপি থাকায় ডেটা অভেলেবিলিটি বাড়ায়। রেপ্লিকেশন একটি ডাটাবেসকে একক সার্ভার হার থেকে রক্ষা করে এবং আপনাকে হার্ডওয়্যার ব্যর্থতা এবং সার্ভিস বাধা থেকে রিকভার করতে দেয়। ডেটার অতিরিক্ত কপি থাকায়, আপনি এক বা একাধিক ডিজাস্টার রিকভারি, রিপোর্টিং, বা ব্যাকআপের জন্য ডেডিকেট করতে পারেন।
ডিজাস্টার রিকভারি (ঐচ্ছিক)
ডিজাস্টার রিকভারি (DR) হলো একটি প্ল্যানিং এরিয়া যা একটি সংগঠনকে বড় নেতিবাচক ইভেন্টের প্রভাব থেকে রক্ষা করে যেমন প্রাকৃতিক কোপ, পাওয়ার ফেইলার যা ডেটা সেন্টার-লেভেল আউটেজ করতে পারে। DR-এর লক্ষ্য হলো ব্যবসা যতটা সম্ভব নরমালitudne চলতে থাকা।
DR ছাড়া ইউজ কেস
একটি পরিস্থিতি অনুমান করুন যেখানে আপনার সারavanja বছর উচ্চ বিক্রয় হয়, বিশেষ করে সাইবার 먼ডে এবং ছুটির সিজন জুড়ে।
আর্কিটেকচারটি কেমন দেখাবে?
যেহেতু আপনি একটি যুক্তরাষ্ট্র-ভিত্তিক কোম্পানি, আপনি আপনার ডেটা যুক্তরাষ্ট্রের ভিতরে সংরক্ষণ করতে চান, তাই আসুন আমাদের DFW ডেটা সেন্টার ব্যবহার করি আপনার ডেটা সংরক্ষণ করতে এবং IAD ডেটা সেন্টার ব্যবহার করি একটি ব্যাকআপ রাখতে।
আমরা HA অর্জন করি আপনার ডেটা দুটি নোডে মিরর করে যা সেকেন্ডারি নোড হিসেবে কাজ করে। যদি প্রাইমারি যেকোনো কারণে ফেল করে, একটি সেকেন্ডারি নতুন প্রাইমারি নোড হয়ে ওঠে কিন্তু এখনও একটি অন্য ব্যাকআপ থাকে। এই সময়, আমাদের সাপোর্ট টিম ব্যর্থ নোডটি রিকভার করে এবং নতুন প্রাইমারি-এর সাথে সিঙ্ক করে।
MongoDB হার্টবিট কমিউনিকেশন ব্যবহার করে আপ (অথবা ডাউন) স্টেট এবং অপলগের মাধ্যমে সেকেন্ডারি-তে রেপ্লিকেশন দিয়ে একক বড় রেপ্লিকা সেট দ্বারা একটি প্রাইমারি এবং দুটি সেকেন্ডারি নোড দিয়ে হরিজন্টালি স্কেল আউট করতে পারে।
আমরা ফল্ট টলারেন্স অর্জন করি প্রতিটি হোস্টকে একই ডেটা সেন্টারের ভিন্ন হার্ডওয়্যারে রাখে। যেভাবে, যদি কোনো হার্ডওয়্যার ফেল করে, আপনার MongoDB অপারেশনাল থাকে।
সাধারণত, একটি শার্ড একটি সিঙ্গল MongoDB ইনস্ট্যান্স হতে পারে। যাইহোক, পূর্বে উল্লিখিতরূপে, ObjectRocket-এ রেপ্লিকা সেটগুলো তিনটি MongoDB ইনস্ট্যান্স অন্তর্ভুক্ত করে, নিচের ছবির মত:
Shard:
- DFWNODE1: PRIMARY
- DFWNODE2: SECONDARY
- DFWNODE3: SECONDARY
ObjectRocket-এ HA, ডেটা রিডান্ডেন্সি, এবং ফল্ট টলারেন্স কীভাবে কাজ করে
মেইনটেন্যান্স, ডাউনটাইম, বা ব্যর্থতার ক্ষেত্রে, সিস্টেম প্রাইমারি-কে যেকোনো সেকেন্ডারি নোডের সাথে সইচ করতে পারে এবং কোনো সমস্যা ছাড়া চালিয়ে যেতে পারে, এভাবেই HA প্রদান করে।
ডেটা অপলগের মাধ্যমে PRIMARY নোড থেকে SECONDARY নোডগুলোর মধ্যে রেপ্লিকেট হয়, এভাবেই ডেটা রিডান্ডেন্সি অর্জন করা হয়।
ফল্ট টলারেন্সের জন্য, আসুন কল্পনা করি অসম্ভাব্য পরিস্থিতি যে রেপ্লিকা সেট মেম্বার হোস্টকারী সার্ভারটি ব্রেকডাউন করেছে। যেহেতু প্রাইমারি বা সেকেন্ডারি নোড ফেল করুক, আপনার MongoDB ইনস্ট্যান্স একটি দু-নোড রেপ্লিকা সেটে চলতে থাকে যতক্ষণ না সাপোর্ট টিম সমস্যা সমাধান করতে পারে।
DR সহ ইউজ কেস
আমাদের স্কিম আপনার বর্তমান ইনস্ট্যান্সকে (আপনার ইনস্ট্যান্সে কতগুলো শার্ড যোগ করা হয়েছে তার থেকে স্বাধীন) আপনার ইনস্ট্যান্সের সবচেয়ে কাছাকাছি ডেটা সেন্টারের একটি-এ মিরর করে। আমারাও আপনার জন্য IAD-এ একটি DR প্ল্যান সেট আপ করে থাকি। WE IAD রেপ্লিকা-সেট মেম্বারগুলোক DFW3-এ প্রাইমারি নোডের সাথে কানেক্ট করতে পারি, আপনার ডেটা রিজনের জুড়ে সিনক্রোনাসলি রেপ্লিকেট হয়। এটি নিশ্চিত করে যে আপনার ডেটা আপ-টু-ডেট, নিচের উদাহরণের মত:
Shard:
- DFWNODE1: PRIMARY
- DFWNODE2: SECONDARY
- DFWNODE3: SECONDARY
- IADNODE1: SECONDARY
- IADNODE2: SECONDARY
- IADNODE3: SECONDARY
উপসংহার
HA, রেপ্লিকেশন, এবং ফল্ট টলারেন্স ObjectRocket প্ল্যাটফর্মে ডিজাস্টার রিকভারির সাথে কম্বাইন করে। প্লাস, আমরা এই সবকে স্মার্ট মানুষের সাথে ব্যাক আপ করি—আপনার পিক টাইমে আপনাকে সুরক্ষিত এবং স্থিতিশীল রাখি।
Managed MongoDB সম্পর্কে আরও জানুন।
ফিডব্যাক ট্যাব ব্যবহার করে যেকোনো মন্তব্য করুন বা প্রশ্ন জিজ্ঞাসা করুন। আপনি আমাদের সাথে কথোপকথনও শুরু করতে পারেন।