ননক্লাস্টারড ইনডেক্সগুলি আলাদা ফাইলগ্রুপগুলিতে কখন সংরক্ষণ করা উচিত?


16

আমি শুনেছি যে কোনও ভিন্ন ফাইলগ্রুপ এবং ড্রাইভে সূচকগুলি সংরক্ষণ করা একটি ডাটাবেসে কর্মক্ষমতা বাড়ায় কারণ ড্রাইভটি সূচক এবং ডেটা যে সূচককে বোঝায় তার মাঝে পিছনে যেতে হয় না। আমিও শুনেছি যে এটি একটি কল্পকাহিনী।

আলাদা ফাইলগ্রুপ এবং ড্রাইভে নন-ক্ল্লাস্টার্ড সূচকগুলি সংরক্ষণ করার পরামর্শ দেওয়া হয় কখন? কোন পারফিউম / প্রোফাইলারের প্রমাণ আমাকে সেই সিদ্ধান্তে পৌঁছাতে পরিচালিত করবে? হার্ডওয়্যার সিদ্ধান্তে ভূমিকা রাখে (একটি ড্রাইভের মধ্যে একটি RAID / SAN ব্যবহৃত হয় কিনা)?

উত্তর:


10

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

আপনি যদি আপনার সিস্টেমগুলি থেকে আরও ভাল পারফরম্যান্স অর্জন করতে চান তবে আপনি যেমন একটি দৃশ্যের ব্যবহার করবেন provided আপনার perfmon কাউন্টারে আপনি ব্যবহার করতে পারে জন্য Physical Disk – Avg. Disk sec/Read, Physical Disk – Avg. Disk sec/Write, Physical Disk – Disk Reads/sec, Physical Disk – Disk Writes/secআগে ও আপনার পরিবর্তনগুলি তুলনা পর আছে।


1
যদি আমি পৃথক দুটি পৃথক ডিস্ক ড্রাইভ যেমন সূচক এবং ডেটা যেমন ডি: \ এবং ই: manage একই হার্ড ডিস্কে উপস্থিত করি তবে দুটি পৃথক শারীরিক ডিস্কের পরিবর্তে যদি আমি পড়ার সাথে সম্পর্কিত বিষয়টিকে বিবেচনা করি তবে এটি আমাকে কিছুটা পারফরম্যান্স বাড়িয়ে তুলবে হার্ড ডিস্ক স্টোরেজ?
আরবিটি

5

এটি অবশ্যই সত্য যে বিভিন্ন ড্রাইভের মধ্যে আপনার এক সাথে I / O ছড়িয়ে দেওয়া কর্মক্ষমতা বাড়িয়ে তোলে - এটি কোনও মিথ নয় th এটি একটি পৌরাণিক কাহিনী যে এটি দুবার করা আবার কর্মক্ষমতা উন্নত করবে।

যদি আপনিও সমান হন , তবে আপনার অ্যারেটিকে দুটি পার্টিশনে বিভক্ত করা এবং একটিতে সূচি এবং অন্যটিতে টেবিল লাগানো সময়ের অপচয়।


আমি সম্মতি জানাই, তবে আমি এই বিষয়টি জিজ্ঞাসা করছিলাম না le
এনটিডিএলএস

প্রশ্নটি জিজ্ঞাসা করা হয়েছিল: "হার্ডওয়্যার সিদ্ধান্তে ভূমিকা রাখে (একটি ড্রাইভের মধ্যে একটি RAID / SAN ব্যবহৃত হয় কিনা)"। আমার উত্তরটি মূলত: আপনি যদি রেড হন, তবে বিভাজন সূচক এবং টেবিলগুলিকে বিরক্ত করবেন না। রেড না থাকলেও আপনার অবশ্যই হওয়া উচিত যা বলা যায় না ...
জ্যাক বলেছেন টপান্সওয়ার্স.অ্যাক্সিজ

5

পৃথক ফাইলগ্রুপ = কর্মক্ষমতা উন্নতির উপর তথ্য থেকে সূচকগুলি পৃথক করা অত্যন্ত বিতর্কিত। পারফরম্যান্সের উন্নতি "সংঘটিত হতে পারে" যদি আপনার সমর্থন করার অন্তর্নিহিত হার্ডওয়্যার থাকে তবে কেবল এ কারণে যে এগুলি আলাদা ফাইলগ্রুপগুলিতে আলাদা করা আপনাকে পারফরম্যান্স দেয় না। এবং এই কারণে পারফ বুস্ট পরিমাপ করাও সহজ নয়।

উল্লেখ: http://weblogs.sqlteam.com/dang/archive/2008/08/01/Are-you-a-DBA-Monkey.aspx

আপনার প্রথমে প্রশ্ন করা উচিত। আপনার এটি করা দরকার কেন?

  1. আপনি কি ইনডেক্সগুলি অন্তর্ভুক্ত না করে ব্যাকআপগুলির কার্যকারিতা উন্নত করতে দেখছেন?
  2. আপনি কি এই সূচকগুলিতে পাঠ্য ও লেখার কর্মক্ষমতা উন্নত করতে চান?
  3. অন্তর্নিহিত অবজেক্টগুলির স্থাপনের আরও ভাল পরিচালনার জন্য আপনি এটি করছেন?
  4. আপনার কাছে কি এমন বিশাল পরিমাণের ডেটা রয়েছে যা পারফরম্যান্সের জন্য বিভিন্ন প্রয়োজন?
  5. পারফরম্যান্স ইত্যাদির উন্নতি করতে আপনি কী ক্লাস্টারবিহীন সূচকের জন্য এসএসডি ব্যবহার করছেন ...

আমি উপরের তালিকার # 5 এর প্রয়োজনীয়তা সমর্থন করার জন্য এই কার্যটির দিকে চেয়েছিলাম এবং এটি এখনও আমার পক্ষে ভাল প্রস্তাব বলে মনে হচ্ছে যদিও আমরা এখনও এটিতে অভিনয় করি নি।

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


আমি ড্যানের নিবন্ধটি পছন্দ করি :-)। আমি অনুমান করি আমাদের পুরানো কর্পোরেট স্ট্যান্ডার্ডগুলি আমদানি করা এবং এটির কার্যকারিতা সম্পর্কে প্রশ্ন করার জন্য কোনও এক সময় এটি ঘটেছিল।
মারিয়ান

1

আমি আপনাকে এই আইটেমটি সম্পর্কে আমার ব্যক্তিগত অভিজ্ঞতা বলব। যখন বর্তমান ডিস্ক ড্রাইভ প্রয়োজনীয় স্থানের জন্য যথেষ্ট পরিমাণে বড় না হয়: নন ক্লাস্টারযুক্ত সূচকগুলি আলাদা ফাইলগ্রুপে সংরক্ষণ করা উচিত :-)। আপনি এটি সম্পর্কে হাসতে পারেন .. কিন্তু এটি ঘটে।

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

পারফরম্যান্স সম্পর্কে আমরা পদক্ষেপের পরে সাধারণের বাইরে কিছু দেখতে পাইনি। তবে এটি একটি বড় সান স্টোরেজ বাক্স যেখানে সবকিছু একসাথে রাখা হয়েছে :-)।


1

সাধারণভাবে; পৃথকভাবে একইভাবে সম্পাদনকারী ডিস্কগুলিতে বিভাজন ডেটা এবং সূচিগুলি সেই টেবিলটিতে উল্লেখযোগ্য লেখার ক্রিয়াকলাপ বা সেই সূচকটি ব্যবহার করে যে বড় রিড অপারেশনগুলির জন্য কর্মক্ষমতা বাড়িয়ে তুলতে পারে। কয়েকটি অন্যান্য I / O ক্রিয়াকলাপের অনুরূপ পদ্ধতি, যেমন একাধিক শারীরিক ডিস্কে বিভাজিত টেবিল।

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

অস্থায়ী ডেটা সহ উচ্চ-পিক সময় চলাকালীন অনুরূপ হার্ডওয়্যার সহ একটি পরীক্ষামূলক সার্ভারে বা (কোনও মাধ্যমিক সার্ভারের বিকল্প না হলে কেবল) কিছু বেঞ্চ চিহ্নিত করুন। উপরের শঙ্করের ডিবিএ-বানর লিঙ্কটি চিন্তার জন্য ভাল খাবার।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.