টেম্পডিবি বিতর্ক


14

এসকিউএল সার্ভার 2014 এসপি 1 এ আমাদের একটি সক্রিয় ওলটিপি 40 জিবি ডাটাবেস রয়েছে। আইও_কম্পশন অপেক্ষার সাথে সাথে ডিস্কের ক্যু দৈর্ঘ্য 900 এ উন্নীত হয় এবং এসকিউএল সার্ভার সাড়া দেওয়া বন্ধ করে দিয়ে অনুসন্ধানগুলি ধীর হয়ে গেছে। আমরা যা চেষ্টা করেছি:

  1. উদাহরণ পুনরায় আরম্ভ করুন এবং এক মিনিটের মধ্যে এটি একইরকম আচরণ শুরু করে।

  2. দ্বিতীয় পুনঃসূচনা করার পরে, আমরা প্রতিটি টেম্পডিবি ডাটাফিলের প্রাথমিক আকার পরিবর্তন করেছি (সেখানে 16 টি ডেটা ফাইল তৈরি করা হয়েছে) এবং এটি সঠিকভাবে কাজ শুরু করে।

দ্রষ্টব্য: আমরা মধ্যবর্তী ফলাফল সেটগুলির জন্য সারণী ভেরিয়েবলগুলি ব্যবহার করছি। এই ফলাফল সেট খুব ছোট।

একমাসে দু'বার হয়েছে। প্রতিবার আমি ডেটা ফাইলগুলিতে ম্যানুয়ালি কিছুটা জায়গা যোগ করি, তবে এটি স্বাভাবিকভাবে কাজ শুরু করে। আরও আকর্ষণীয় বিষয় হ'ল এসকিউএল সার্ভার ২০০৮ আর 2 এ আমাদের একই সেটআপ (একই হার্ডওয়্যার, একই ফোল্ডার এবং ফাইলস সেটআপ, একই ওয়ার্কলোড) এবং এসকিউএল সার্ভার 2012 ভাল কাজ করছে।

দয়া করে স্থায়ী সমাধান খুঁজতে আমাদের সহায়তা করুন।

সমস্ত ডেটা ফাইলের প্রাথমিক আকার একই 1000MB, বর্তমান প্রতিটি 1500MB। সবই অভিন্ন। অটোগ্রোথ প্রতিটি জন্য 100MB is এর আগে আমরা পিএফএস এবং জিএএম পৃষ্ঠাগুলির লড়াইয়ের মুখোমুখি হয়েছিলাম এবং আমরা 16 এ বেড়েছি এবং সমস্যার সমাধান হয়েছে। দুটি ট্রেস পতাকা 1117 এবং 1118 সক্ষম করা হয়েছে। ২ টি NUMA নোডে 24 টি কোর। সমস্ত ডেটাফাইল একই ভলিউমে on সিম্পল ডিস্ক, সান নেই।

তাত্ক্ষণিক কোনও শারীরিক মেশিনে রয়েছে। সারণী ভেরিয়েবলগুলির সাথে অনুসন্ধান এবং হ্যাশ যোগদানের সাথে অনুসন্ধানগুলি আইও_কম্পলশন অপেক্ষা করে most


ডাব্লুবিওর বিশদ উত্তর আমাদের আরও বিশদে আরও অনুসন্ধান করতে বাধ্য করেছে। আমরা কীভাবে এর আগে মিস করেছি:

ডাটাবেস 'টেম্পলডিবি'তে ফাইল' টেম্পলগ 'এর অটোগ্রো ব্যবহারকারী দ্বারা বাতিল করা হয়েছিল বা 7070০৪ মিলিসেকেন্ড পরে সময়সীমা বেঁধে দেওয়া হয়েছিল। এই ফাইলটির জন্য একটি ছোট FILEGROWTH মান সেট করতে বা স্পষ্টভাবে একটি নতুন ফাইলের আকার সেট করতে ALTER DATABASE ব্যবহার করুন।

আমরা যখন লগতে পাই তখনও যখন এই ধরণের সমস্যা দেখা দেয়। আমরা টেম্পডিবিতে দ্রুত ড্রাইভ পৃথক করতে চলেছি।

উত্তর:


6

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

প্রশ্ন / আরও তথ্যের প্রয়োজন

  • দয়া করে প্রসেসরের নাম এবং টাইপটি নিশ্চিত করুন (আমি মূলত এটি টিটি সহ 2 এক্স হেক্স-কোর থাকলে প্রতিষ্ঠার চেষ্টা করছি)। সিস্টেমের তথ্য ব্যবহার করুন (যেমন উইন্ডোজ সার্ভার ২০১২ আর 2 তে নিয়ন্ত্রণ প্যানেল> সিস্টেম ও সুরক্ষা> সিস্টেম) এবং / অথবা সিসিনটার্নাল সরঞ্জাম CoreInfo নিশ্চিত করতে।
  • দয়া করে সার্ভার ম্যাক্সডপ (যেমন EXEC sp_configure 'max degree of parallelism') নিশ্চিত করুন । যদি সিপিইউগুলি হেক্স-কোর হয় তবে সার্ভার ম্যাক্সডোপটি সর্বাধিক 6 ( এখানে যেমন অনুযায়ী ) হওয়া উচিত, বা একটি ওলটিপি সিস্টেমে তর্কযোগ্যভাবে কম হওয়া উচিত । আমি সাধারণত আমার টেম্পডিবি ফাইলগুলিকে আমার সার্ভার ডিওপি-র সাথে সর্বোচ্চ 8 পর্যন্ত রাখি তবে আমরা এটিতে আসব।
  • বক্স এবং এসকিউএল সার্ভার মেমরি ক্যাপ (উদাঃ EXEC sp_configure 'max server memory (MB)') এ সার্ভারের মোট মেমরি নিশ্চিত করুন ।
  • বাক্সে অন্য কোনও পরিষেবা চলছে কিনা তা দয়া করে নিশ্চিত করুন (যেমন এসএসআইএস, এসএসএএস, এসএসআরএস, অ্যাপ্লিকেশন, আইটিউনস ইত্যাদি)
  • এসকিউএল সার্ভার পরিষেবা অ্যাকাউন্টের জন্য ইনস্ট্যান্ট ফাইল ইনিশিয়ালাইজেশন সক্ষম হয়েছে তা দয়া করে নিশ্চিত করুন। (এটি এখানে পরীক্ষা করার উপায় )।
  • ওয়ান ডিস্কের (হোম পিসি) ভারসাসের সিপিইউ (বিফাই 2 নোড NUMA সেটআপ) এর মধ্যে কেন এত বড় তাত্পর্য রয়েছে? টেম্পডিবির জন্য ডিস্ক, স্ট্রাইপিং, এসএসডি যুক্ত করার বিষয়ে বিবেচনা করুন (যদিও অতিরিক্ত প্রতিক্রিয়া এড়ানো :)।
  • সমস্যার সমাধানগুলির মধ্যে একটির জন্য প্রকৃত বাস্তবায়ন পরিকল্পনা যুক্ত করুন। আপনি যদি চান তবে এসকিউএল সেন্ট্রি প্ল্যান এক্সপ্লোরারের সাথে নাম প্রকাশ করুন ।
  • হ্যাশ একটি ওলটিপি সিস্টেমে টেবিল ভেরিয়েবলের সাথে যোগ দেয়? এটি টেবিলের ভেরিয়েবল, প্রধান টেবিল বা উভয়কেই সূচকের অভাবের পরামর্শ দেয়। আপনি কি আপনার টেবিলের ভেরিয়েবলগুলি এভাবে ঘোষণা করছেন (কোনও সূচি ছাড়াই)?

    DECLARE @t TABLE ( x INT )
  • এটি ছোট ফলসেটগুলি ধারণ করলেও টেবিলের পরিবর্তনশীল সংজ্ঞাটি এড়িয়ে চলবেন না। যতক্ষণ সম্ভব অপ্টিমাইজারকে যথাসম্ভব তথ্য দেওয়া সর্বোত্তম, তাই সূচকটি ক্লাস্টারড / অ-ক্লাস্টারযুক্ত কিনা, উদ্যানযোগ্যতা, স্বতন্ত্রতার সাথে স্পষ্ট হওয়া উচিত eg

    DECLARE @t TABLE ( x INT PRIMARY KEY )
    DECLARE @u TABLE ( x INT PRIMARY KEY NONCLUSTERED, u INT NOT NULL UNIQUE CLUSTERED, z INT NOT NULL UNIQUE, a CHAR(1) NULL ) -- not sure why you would do this but you can
    DECLARE @v TABLE ( x INT NOT NULL, y INT NOT NULL, PRIMARY KEY ( x, y ) )   -- multi-column primary key
  • কার্যকরকরণ পরিকল্পনা পোস্ট করা এটি সনাক্তকরণে সহায়তা করবে।

  • কোড অনুযায়ী টেবিল পরিবর্তনশীল ক্যাশে প্রতিরোধ চেক করুন এখানে , এখানে । আমি মনে করি ডাইনামিক এসকিউএল এবং রিকম্পিলের সাথে এক্সিকিউট করা কেবলমাত্র টেবিল ভেরিয়েবলগুলিকে প্রভাবিত করে।

    DECLARE @u TABLE ( x INT )
    
    INSERT @u
    EXEC('DECLARE @t TABLE ( x INT ); INSERT INTO @t VALUES ( 1 ); SELECT x FROM @t;' )
    
    SELECT *
    FROM @u
  • বার্তাগুলির জন্য এসকিউএল সার্ভার লগ (অবজেক্ট এক্সপ্লোরার> পরিচালনা> এসকিউএল সার্ভার লগ) পরীক্ষা করুন, যেমন আইও সতর্কতা।

  • উইন্ডোজ ইভেন্ট ভিউয়ারটি পরীক্ষা করুন
  • এসপি 1 এর পরে বেশ কয়েকটি বিল্ড প্রকাশিত হয়েছে। এসপি 1 সাল থেকে অন্তর্ভুক্ত সিইউ সংশোধনগুলি পর্যালোচনা করুন । পরবর্তী সিউগুলিতে এসপি 1-তে বাগগুলি নির্দিষ্ট করা সম্ভব যেমন, ফিক্স: সারণি অপারেটর এসকিউএল সার্ভার ২০১২ বা এসকিউএল সার্ভার ২০১৪-তে টেম্পডবি করতে ছড়িয়ে পড়ে যখন আনুমানিক সংখ্যক সারি এবং সারির আকার সঠিক হয় https://support.microsoft.com/en- মার্কিন / kB / 3088480
  • যে কোনও হটফিক্স প্রয়োগ করার আগে এটিই আপনার কারণটি প্রতিষ্ঠিত করুন, যদিও নতুন বৈশিষ্ট্যগুলির সংখ্যার কারণে (ইন-মেমরি ওএলটিপি, ক্লাস্টারযুক্ত কলাম স্টোর) এসকিউএল সার্ভারের সাথে সিইউতে আপ-টু-ডেট রাখা আরও গুরুত্বপূর্ণ।
  • অবশেষে, প্রতি কোর প্রতি একটি টেম্পডিবি ফাইলের প্রয়োজনীয়তা একটি মিথ এবং আপনার ডিস্ক সেটআপটি দেখে আমার অনুমান টেম্পডিবি অত্যধিক খণ্ডিত। আমার একটি উত্তেজনাপূর্ণ অনুভূতি আছে আপনার একটি ডিস্ক-হেড আছে, টেম্পডিবির একটি ফাইলগ্রুপ রয়েছে, অনেকগুলি ফাইল রয়েছে।

তবে আমরা যা জানি তা ভুলে যাও; একটি পরীক্ষার ছদ্মবেশ তৈরি করুন যা আপনার সমস্যার পুনরুত্পাদন করে এবং টেম্প ফাইলগুলির সংখ্যা হ্রাস করার জন্য পরীক্ষা করুন ... 1, 2, 4, 6 থেকে শুরু করুন ইত্যাদি তথ্য সংগ্রহ করুন, প্রমাণ-ভিত্তিক সিদ্ধান্ত নিতে। আপনার সমস্যাটি মাঝেমধ্যে মনে হচ্ছে এবং এটি আপনার টেম্পডিবি সেটআপের সাথে জগাখিচু করতে পারবেন না, তবে আমি এটির কাছে এইভাবে যাব Now

শুভকামনা। আমাদের আপনি পেতে কিভাবে জানি।


2
অনেক ধন্যবাদ, আপনার বিস্তারিত উত্তর আমাদের আরও বিশদ অনুসন্ধানে ঠেলে দিয়েছে। "ডাটাবেসে 'টেম্পলবি' ফাইলের অটোগ্রো 'টেম্পলবি' ব্যবহারকারীর দ্বারা বাতিল করা বা 7070০৪ মিলি সেকেন্ডের পরে সময়সীমা নির্ধারণের আগে আমরা কীভাবে এটি মিস করেছি file এই ফাইলটির জন্য একটি ছোট ফাইলেগ্রোথ মান নির্ধারণ করতে বা স্পষ্টভাবে একটি নতুন ফাইলের আকার সেট করতে ALTER DATABASE ব্যবহার করুন। " আমরা যখন লগতে পাই তখনও যখন এই ধরণের সমস্যা দেখা দেয়। আমরা টেম্পডিবিতে দ্রুত ড্রাইভ পৃথক করতে চলেছি।
আসিম.আবদুল্লাহ

2
সম্প্রতি আমরা পেয়েছি যে, টেম্পডিবি এখনও চাপে রয়েছে এবং এটি ঘটছে কারণ আমরা "কন্টেন্টস টেবিল" ব্যবহার করছি এবং এসকিউএল সার্ভার প্রতিটি মৃত্যুদন্ড কার্যকর করতে একটি হ্যাশ জয়েন তৈরি করছে। মূলত এসকিউএল সার্ভারে এটির বাগ 2014 in সমর্থন.
microsoft.com/en-us/kb/2999809
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.