লেনদেনের ডাটাবেস
RAID-5 লিখতে তুলনামূলকভাবে ধীর কারণ কন্ট্রোলারের একটি লেখার মধ্যে সমতা পুনঃসংযোগ করতে পর্যাপ্ত ডেটা লোড করা প্রয়োজন। লেখার ক্রিয়াকলাপে কমপক্ষে চারটি ডিস্ক ক্রিয়াকলাপ হবে:
সমতা ব্লক পড়া
প্যারিটি ব্লকের সাথে মানটি XOR করতে পুরানো ব্লক (ধরে নেওয়া এটি ইতিমধ্যে ক্যাশে নেই বলে ধরে নেওয়া) ing
নতুন প্যারিটি ব্লকটি রচনা করা হচ্ছে (পুরাতন সমতা ব্লক এক্সওআর পুরাতন ডেটা ব্লক এক্সওআর নতুন ডেটা ব্লক)
নতুন তথ্য ব্লক রচনা।
যদি সিস্টেমটি রাইট-ব্যাক ক্যাচিং ব্যবহার না করে তবে এর অর্থ এই যে সমস্ত অপশন I / O সমাপ্তির জন্য সমালোচনামূলক পথে রয়েছে। প্রায়শই এটি ডাটাবেস লেখার ক্ষেত্রে হয় - আসলে, মাইক্রোসফ্টের (উদাহরণস্বরূপ) এসকিউএল সার্ভারের সাথে ব্যবহারের জন্য সান সরঞ্জামগুলির জন্য একটি শংসাপত্রের প্রোগ্রাম থাকে যা বিক্রেতাদের এই আচরণের নিশ্চয়তা দেওয়ার প্রয়োজন হয়। কখনও কখনও পুরানো RAID-5 সরঞ্জামগুলি এই অপটিমাইজেশনটি ব্যবহার করে না এবং পুরো স্ট্রাইপ থেকে প্যারিটিটি পুনরায় গণনা করতে হয়েছিল।
RAID-10 এর প্রতিটি একক ড্রাইভের জন্য একটি আয়না থাকে এবং সমতা গণনা করতে অতিরিক্ত ডেটা পড়ার প্রয়োজন হয় না। এর অর্থ এই যে লেখকদের জন্য অনেক কম শারীরিক আই / ও দরকার হয়।
RAID-50 মাঝখানে কোথাও বসে, ভলিউমটিকে একাধিক RAID-5 খণ্ডে বিভক্ত করা হয়, যা ঘুরিয়ে ফেলা হয়। একটি রেড -50 এ 3 + 1 স্কিমযুক্ত গোষ্ঠী থেকে তৈরি একটি লিখন সর্বাধিক তিনটি অতিরিক্ত ডিস্ক আই / ও অনুরোধের মাধ্যমে উত্পন্ন করে। যদি আপনি এতটা প্রবণতা বোধ করেন তবে আপনি RAID-5 এবং RAID-10 কে RAID-50 এর বিশেষ ক্ষেত্রে হিসাবে দেখতে পারেন। RAID-50 মূলত অনেকগুলি দৈহিক ডিস্ক জুড়ে বড় পরিমাণে সরবরাহ করতে ব্যবহৃত হয়
অন্যান্য প্যারিটি স্কিম যেমন RAID-6 (দুটি সেট রিডানডেন্ট ডিস্ক সহ একটি প্যারিটি স্কিম) এছাড়াও বিদ্যমান, আধুনিক ডিস্কগুলি যথেষ্ট বড় যে অ্যারেটিকে প্রত্যাখ্যান করতে বেশ দীর্ঘ সময় নিতে পারে - এটি যথেষ্ট দীর্ঘ যে দ্বিতীয় ডিস্ক ব্যর্থ হওয়ার ঝুঁকিটি পুনর্নির্মাণ বেশ তাৎপর্যপূর্ণ। RAID-6 একটি দ্বিতীয় প্যারিটি ডিস্ক থাকার মাধ্যমে এই ঝুঁকি হ্রাস করে, এতে ডেটা ক্ষতিগ্রস্থ হওয়ার জন্য তিনটি ডিস্ক ব্যর্থতা প্রয়োজন। RAID-50 স্কিমগুলির অনুরূপ কৌশল RAID-60 অ্যারে তৈরি করতে ব্যবহৃত হতে পারে।
অবশেষে, একটি একক মিররযুক্ত জুটি (RAID-1 হিসাবে পরিচিত) কিছু কাজের জন্য অতিরিক্ত কাজ এবং অতিরিক্ত কর্মক্ষমতা সরবরাহ করতে পারে। বিশেষত আপনি সম্ভবত দেখতে পাবেন যে RAID-1 আপনাকে যথেষ্ট পরিমাণে ডাটাবেস লগ ট্র্যাফিকের জন্য পর্যাপ্ত থ্রুপুট সরবরাহ করে। এই নীচে আরও।
আপনার যদি লিখিত-ভারী কাজের চাপ থাকে তবে আপনি সম্ভবত একটি RAID-10 ভলিউম থেকে পারফরম্যান্স লাভ পাবেন। এটি সম্ভবত একটি বিজয় হতে পারে কারণ আপনি সম্ভবত সংখ্যক শারীরিক ডিস্ক থেকে আপনার প্রয়োজনীয় থ্রুপুট পেতে পারেন, ডিস্কগুলিতে পর্যাপ্ত জায়গা অনুমান করে)। ডেটাবেস সার্ভারে লগ বা অস্থায়ী অঞ্চলগুলির মতো কিছু আইটেম RAID-1 বা RAID-10 ভলিউমে থাকা উচিত কারণ এগুলি প্রচুর লেখার ট্র্যাফিক পায়।
লগ
লগ ভলিউমগুলি বেশিরভাগ সিক্যুয়াল ডেটা অ্যাক্সেস প্যাটার্ন দ্বারা চিহ্নিত করা হয় এবং মূলত 'এই ব্লকে এই ডেটাটি লিখুন' এর আওতায় কমান্ডগুলি সমন্বিত একটি রিং বাফার হয় যা মূল ডিবিএমএস ইঞ্জিন দ্বারা প্রযোজক হিসাবে লেখা হয় এবং একটি কনুইমার হিসাবে প্রক্রিয়াজাত করা হয় লগ রিডার ফাংশন দ্বারা। একটি একক মিররযুক্ত জুটি আসলে লগের প্রচুর ট্র্যাফিক পরিচালনা করবে।
পঠন-ভারী সিস্টেম এবং ফাইল সার্ভার
ডেটা গুদামের মতো একটি পঠন-ভারী সিস্টেমে আপনি এক বা একাধিক RAID-5 ভলিউম ব্যবহার করতে পারেন। একটি ফাইল সার্ভারে, ডিস্ক অ্যাক্সেসগুলি পুরোপুরি পুরো ফাইলের ভিত্তিতে করা হবে, সুতরাং লেখকরা সম্ভবত বেশিরভাগ ব্লকগুলি লিখে ফেলবেন যা প্যারিটি ব্লককে যাইহোক তৈরি করে। এই ক্ষেত্রে RAID-5 এর জন্য পারফরম্যান্স পেনিয়াল্ট হালকা হবে।
অতীতে ডিস্কে ব্যয় সাশ্রয় তাত্পর্যপূর্ণ হতে পারে তবে এটি এখন ইস্যু হওয়ার সম্ভাবনা কম।
লিখন-ব্যাক ক্যাচিং এবং RAID-5
কোনও SAN বা ব্যাটারি-ব্যাকযুক্ত ক্যাশের অভ্যন্তরীণ RAID নিয়ামকটিতে আপনি 'রাইট-ব্যাক' ক্যাচিং সক্ষম করতে সক্ষম হতে পারেন। এই ক্যাশে অ্যাপ্লিকেশনটিতে নিয়ন্ত্রণ লিখে দেয় এবং ফেরত দেয়। আই / ও সম্পূর্ণরূপে নিয়ামক দ্বারা প্রতিবেদন করা হয়। তবে এটি তাত্ক্ষণিকভাবে ডিস্কে ডেটা লিখতে হবে না। এই সুবিধাটি RAID-5 প্যারিটি পঠন / লেখার ক্রিয়াকলাপগুলিকে যথেষ্ট অনুকূলিতকরণ করতে দেয় এবং RAID-5x ভলিউমের রাইটিং পারফরম্যান্স পেনাল্টিকে নরম করতে পারে।
তবে এটি এখনও ডেটা অখণ্ডতার সমস্যাগুলির একটি ছোট ঝুঁকি বহন করে। হোস্ট সিস্টেমকে বলা হয়েছে যে এই লেখার কাজটি সম্পন্ন হয়েছে যখন এটি বাস্তবে ঘটনাটি নয়। কোনও হার্ডওয়ার ব্যর্থতার জন্য একটি ডাটাবেস সার্ভারে লগ (ডেটা) লগ এবং ডেটা ভলিউমের মধ্যে ডেটা অসঙ্গতি তৈরি করা সম্ভব হয়। এই কারণে, ট্রানজেকশনাল সিস্টেমগুলির জন্য লিখন-ব্যাক ক্যাচিংয়ের প্রস্তাব দেওয়া হয় না, যদিও এটি কোনও ইটিএল প্রক্রিয়ার মতো কোনও পারফরম্যান্স জয় হতে পারে।
সারসংক্ষেপ
ডিস্ক স্পেস আজকাল এত সস্তা যে লেনদেনের সিস্টেমে সম্ভবত লগ ভলিউমের জন্য RAID-1 বা RAID-10 এবং ডেটা ভলিউমের জন্য RAID-10 ব্যবহার করা উচিত। শারীরিক ডিস্কের আকারটি ডাটাবেসের তুলনায় অনেক বড় হতে পারে এবং RAID-10 একই সংখ্যক ডিস্কের জন্য আরও লিখিত থ্রুপুট সরবরাহ করতে সক্ষম করে, সিস্টেমকে সমর্থন করার জন্য প্রয়োজনীয় ডিস্ক ভলিউমের সংখ্যা হ্রাস করে।
ডেটা গুদামের মতো কোনও কিছুর উপরে আপনি এখনও বড়, ভারী সূচিযুক্ত ফ্যাক্ট টেবিলের সাহায্যে স্থান চিবিয়ে দিতে পারেন যাতে আপনি RAID-5 বা RAID-50 ডেটা ভলিউমের সাথে সামান্য দামের জয় পেতে পারেন। তবে লগগুলি এবং টেম্পডিবি এখনও একটি RAID-10 ভলিউমে রাখা উচিত কারণ তারা সম্ভবত ইটিএল প্রসেসিংয়ের সময় প্রচুর কাজ পাবে। তবে ডিস্কে ব্যয় সাশ্রয় করা মোটামুটি ছোট হওয়ার সম্ভাবনা রয়েছে।