মাস্টার-মাস্টার বনাম মাস্টার-স্লেভ ডাটাবেস আর্কিটেকচার?


117

আমি প্রায় দুই ধরনের ডাটাবেস আর্কিটেকচার শুনেছি।

  • মাস্টার-মাস্টার

  • মনিব গোলাম

গিটারের মতো আজকের ওয়েব কারনে মাস্টার-মাস্টার কি আরও উপযুক্ত নয়, প্রতিটি ইউনিটে ডেটার পুরো সেট থাকে এবং যদি কোনওটি নীচে যায় তবে তা মোটেই গুরুত্বপূর্ণ নয়।

মাস্টার-স্লেভ আমাকে এসভিএন (যা আমি পছন্দ করি না) এর কথা মনে করিয়ে দেয় যেখানে আপনার কাছে একটি কেন্দ্রীয় ইউনিট রয়েছে যা জিনিস পরিচালনা করে।

প্রশ্নাবলী:

  1. প্রতিটি আগপাছ কি হয়?

  2. আপনি যদি আইফোনের মতো আপনার মোবাইল ফোনে একটি স্থানীয় ডাটাবেস রাখতে চান তবে কোনটি উপযুক্ত?

  3. এইগুলির মধ্যে একটির পছন্দটি কি পুরোপুরি বিবেচনা করা গুরুত্বপূর্ণ?


1
সিএপি উপপাদ্য -> ধারাবাহিকতা উপলভ্যতা পার্টিশন সহনশীলতা আপনাকে তিনটি একসাথে থাকতে পারে না বলে জানিয়েছে। অ্যাপ্লিকেশন উপর নির্ভর করে আপনি যে কোন একটি চয়ন করতে পারেন।
প্রীতম ব্যানার্জি

উত্তর:


87

আমরা প্রাপ্যতা, ধারাবাহিকতা এবং জটিলতা বাণিজ্য করছি। প্রথমে শেষ প্রশ্নটি সম্বোধন করার জন্য: এটি কি ব্যাপার? হ্যাঁ খুব! আপনার ডেটা কীভাবে পরিচালনা করা যায় সে সম্পর্কিত পছন্দগুলি একেবারে মৌলিক এবং সিদ্ধান্তগুলিকে ডড করার কোনও "সেরা অনুশীলন" নেই। আপনার আপনার বিশেষ প্রয়োজনীয়তা বুঝতে হবে।

একটি মৌলিক উত্তেজনা রয়েছে:

একটি অনুলিপি: ধারাবাহিকতা সহজ, তবে যদি এটি নীচে নেমে আসে তবে সকলেই পানির বাইরে রয়েছেন, এবং লোকেরা যদি দূর থেকে থাকে তবে ভয়াবহ যোগাযোগের জন্য মূল্য দিতে পারে। ছবিতে পোর্টেবল ডিভাইসগুলি আনুন, যা সংযোগ বিচ্ছিন্ন করতে পারে, এবং একটি অনুলিপি এটি কাটবে না।

মাস্টার স্লেভ: ধারাবাহিকতা খুব বেশি কঠিন নয় কারণ তথ্য প্রতিটি টুকরোতে ঠিক একজনের মালিক থাকে। তবে তারপরে যদি আপনি সেই মাস্টারকে দেখতে না পান তবে আপনি কি করবেন, এক ধরণের স্থগিত কাজ প্রয়োজন।

মাস্টার-মাস্টার: ভাল আপনি যদি এটি কাজ করতে পারেন তবে মনে হয় সবকিছু সরবরাহ করা হচ্ছে, ব্যর্থতার কোনও বিন্দু নেই, প্রত্যেকে সারাক্ষণ কাজ করতে পারে। এটির সাথে সমস্যাটি হ'ল পরম ধারাবাহিকতা রক্ষা করা খুব কঠিন। আরও জন্য উইকিপিডিয়া নিবন্ধ দেখুন।

উইকিপিডিয়ায় সুবিধাগুলি এবং অসুবিধার একটি দুর্দান্ত সারসংক্ষেপ রয়েছে বলে মনে হয়

সুবিধাদি

  • যদি কোনও মাস্টার ব্যর্থ হয় তবে অন্যান্য মাস্টাররা ডাটাবেস আপডেট করতে চালিয়ে যাবেন।

  • মাস্টারগুলি বেশ কয়েকটি শারীরিক সাইটে অর্থাৎ নেটওয়ার্ক জুড়ে বিতরণ করা যায়।

অসুবিধেও

  • বেশিরভাগ মাল্টি-মাস্টার প্রতিলিপি সিস্টেমগুলি কেবল আলগাভাবে সামঞ্জস্যপূর্ণ, যেমন অলস এবং অ্যাসিনক্রোনাস, এসিডি বৈশিষ্ট্য লঙ্ঘন করে।

  • আগ্রহী প্রতিলিপি সিস্টেমগুলি জটিল এবং কিছু যোগাযোগের বিলম্বের প্রবর্তন করে।

  • জড়িত নোডগুলির সংখ্যা বৃদ্ধি এবং প্রয়োজনীয় প্রচ্ছন্নতা হ্রাস হওয়ায় দ্বন্দ্বের সমাধানের মতো সমস্যাগুলি অক্ষম হয়ে উঠতে পারে।


কাউচডিবি এমভিসিসি ব্যবহার করে। এই ধরণের সামঞ্জস্যতা কি একাধিক মাস্টারগুলির মুখোমুখি হয়েছে যখন আমি আবার অনলাইনে নিয়ে এসেছি, ভার্সন সিস্টেমটি ধারাবাহিকতা পরিচালনা করে এবং এই মাস্টার সঠিক আপডেট হওয়া ডেটা পাবেন।
কখনই_হাদ_আ_নাম

8
কিন্তু যখন দু'জন ব্যবহারকারী পরস্পরবিরোধী কিছু করেন - যেমন দুটি ব্যবহারকারী শেষ আইটেমটি কেনার চেষ্টা করে? এমন একটি দৃশ্যের কল্পনা করুন যেখানে আমাদের দু'জন মাস্টার রয়েছে এবং প্রতিটি ব্যবহারকারী আলাদা আলাদা মাস্টারকে আঘাত করছে, তারপরে আমরা কিছু প্রকারের সঙ্কট পেয়েছি - শেষ পর্যন্ত হয় নিখরচায়তা হবে, বা হ্রাসযোগ্যতা পাওয়া যাবে - একজন ব্যবহারকারীর বলা হয়েছে "দুঃখিত সাথী, আমি অন্য মাস্টার "এর সাথে কথা না হওয়া পর্যন্ত আসলেই কী হচ্ছে তা আমি জানি না", বা কমস পুনরুদ্ধার করার পরে আমাদের একটি বাজে সংঘর্ষ হয় - এবং সেগুলি সত্যই জটিল হয়ে উঠতে পারে।
djna

2
আর্থিক বাণিজ্য বা শেয়ারবাজারগুলি কী ব্যবহার করে? তারা কি এই সমস্যাটিকে সারাক্ষণ আঘাত করবে?
সিএমসিডিগ্রাগনকাই

3
যেখানে আপনার একক প্রয়োজন, আপডেট করা হচ্ছে, "সত্য" (যেমন আর্থিক ব্যবস্থায়) আপনার প্রয়োজন মাস্টার / স্লেভ বা সত্যই কেবল মাস্টার। যেখানে আপনি পরে সত্যটি প্যাচ করতে পারেন (গিটের মতো একটি রিভিশন কন্ট্রোল সিস্টেমে একত্রিত হওয়া সংঘাতগুলি ভাবেন) তারপরে আপনি মাস্টার / মাস্টার ব্যবহার করতে পারেন।
djna

Djna একটি খুব স্পষ্ট পর্যবেক্ষণ করে। ডাটাবেসটিতে এখন কিছু ধরণের "টাইব্রেকার" যুক্তি থাকতে হবে। সবচেয়ে গুরুত্বপূর্ণ কি? সর্বাধিক "সাম্প্রতিক" ডেটা? আপনি যদি কোনও ক্ষেত্রটি পুনরায় লিখতে থাকেন তবে এটি বোধগম্য হয় তবে আপনি কোনও "কাউন্টার" করছেন কিনা তা বোঝা যায় না এবং ফলাফল ফেরার আগে আপনার বাড়াতে সমস্ত প্রক্রিয়া প্রয়োজন (বা হ্রাস)। বিশেষত তাই আপনি স্টক আইটেম বিক্রি করবেন না। আপনার যদি নেটওয়ার্ক পার্টিশন থাকে তবে এটি আবার একসাথে আসলে কী ঘটে? এই সমস্ত হ'ল সিএপি থিয়োরাম স্টাফ। এটিই যেখানে আপনি বিভিন্ন মেশিনের মধ্যে sensক্যমত্য বিকাশের জন্য প্যাক্সোসের মতো অ্যালগোরিদম রাখতে পারেন।
পিটার কারলেস

95

পাশাপাশি বিভিন্ন ডাটাবেস আর্কিটেকচার গবেষণা করার সময়। আমি একটি ভাল বিট সংকলন করেছি যা ভবিষ্যতে অন্য কারও গবেষণার জন্য প্রাসঙ্গিক হতে পারে। আমি জুড়ে এসেছিল

  1. মাস্টার-স্লেভ প্রতিলিপি
  2. মাস্টার-মাস্টার প্রতিলিপি
  3. মাইএসকিউএল ক্লাস্টার

আমি আমার ব্যবহারের ক্ষেত্রে মাইএসকিউএল ক্লাস্টার ব্যবহার স্থির করার সিদ্ধান্ত নিয়েছি। তবে দয়া করে নীচে দেখুন বিভিন্ন সংক্ষিপ্ত বিবরণ যা আমি সংকলন করেছি

1. মাস্টার-স্লেভ প্রতিলিপি

পেশাদাররা

  • বিশ্লেষণমূলক অ্যাপ্লিকেশনগুলি মাস্টকে প্রভাবিত না করেই দাস (গুলি) থেকে পড়তে পারে
  • পুরো ডাটাবেসের ব্যাকআপগুলি মাস্টারের উপর তুলনামূলকভাবে কোনও প্রভাব ফেলবে
  • দাসকে অফলাইনে নেওয়া যায় এবং কোনও ডাউনটাইম ছাড়াই মাস্টারের সাথে আবার সিঙ্ক করা যায়

কনস

  • ব্যর্থতার উদাহরণে, কোনও দাসকে তার জায়গাটি গ্রহণের জন্য মাস্টার হিসাবে পদোন্নতি দিতে হবে। কোনও স্বয়ংক্রিয় ফেলওভার নেই
  • ডাউনটাইম এবং সম্ভবত কোনও মাস্টার ব্যর্থ হলে ডেটা হ্রাস
  • সমস্ত লেখাকে মাস্টার-স্লেভ ডিজাইনে মাস্টারকেও করতে হবে
  • বাইনারি লগ পড়তে হয় এবং প্রতিটি দাসের ডেটা অনুলিপি করতে হয় তাই প্রতিটি অতিরিক্ত ক্রীতদাস মাস্টারের সাথে কিছু বোঝা যুক্ত করে
  • অ্যাপ্লিকেশনটি আবার চালু করতে হতে পারে

2. মাস্টার-মাস্টার প্রতিলিপি

পেশাদাররা

  • অ্যাপ্লিকেশন উভয় মাস্টার থেকে পড়তে পারেন
  • উভয় মাস্টার নোড জুড়ে লেখার বোঝা বিতরণ করে
  • সহজ, স্বয়ংক্রিয় এবং দ্রুত ব্যর্থভার

কনস

  • আলগাভাবে সামঞ্জস্যপূর্ণ
  • কনফিগার এবং মোতায়েনের জন্য মাস্টার-স্লেভের মতো সহজ নয়

৩. মাইএসকিউএল ক্লাস্টার

মাইএসকিউএল ক্লাস্টার ডিজাইনের ভিত্তিতে শহরের নতুন বাচ্চা। মাইএসকিউএল ক্লাস্টারটি উচ্চ প্রাপ্যতা এবং স্কেলাবিলিটিটি মাথায় রেখে তৈরি করা হয়েছিল এবং এটি এমন পরিবেশের জন্য ব্যবহার করার জন্য আদর্শ সমাধান যা কোনও ডাউনটাইম, উচ্চ অব্যবহারযোগ্যতা এবং অনুভূমিক স্কেলিবিলিটি প্রয়োজন না।

দেখুন মাইএসকিউএল ক্লাস্টার 101 অধিক বিবরণের জন্য

পেশাদাররা

  • (উচ্চ অবলম্বন) ব্যর্থতার কোনও একক পয়েন্ট নয়
  • খুব হাই থ্রুপুট
  • 99.99% আপটাইম
  • স্বয়ং-Sharding
  • রিয়েল-টাইম প্রতিক্রিয়া
  • অন-লাইন অপারেশনস (স্কিমা পরিবর্তন ইত্যাদি)
  • বিতরণ লিখেছেন

কনস

আর্কিটেকচার ডায়াগ্রামগুলি সহ 3 টি উল্লিখিত আর্কিটেকচার সম্পর্কে আরও বিশদে যাওয়ার জন্য আপনি আমার ব্লগের সম্পূর্ণ ব্রেকডাউনটি দেখতে যেতে পারেন ।


2
আপনি কি গ্যালেরা সম্পর্কে কিছু লিখতে পারেন? পারকোনা এক্সট্রাডিবি ক্লাস্টার?
ইভানভ

কনস এর অংশ হিসাবে "অ্যাপ্লিকেশন পুনরায় চালু করতে হতে পারে"। এর মানে কী?
লিলি

1
আপনার যদি ডিবি সার্ভারের আইপি পরিবর্তন করতে হয় তবে নতুন নির্বাচিত মাস্টারের কাছ থেকে পড়তে অ্যাপ্লিকেশনটিতে এটি কনফিগার করতে হবে। ফলস্বরূপ আপনাকে নতুন কনফিগারেশন সেটিংস বাছাই করতে আপনার অ্যাপ পুনরায় চালু করতে হবে। এটি সব আপনার বর্তমান সেটআপের উপর নির্ভর করে। এটিকে বাইপাস করতে আপনি একটি ভাসমান আইপিও ব্যবহার করতে পারেন। আপনাকে কেবল একটি সাধারণ ধারণা দেওয়ার জন্য
স্কিলাচি
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.