বর্ধিত র‌্যাম, খারাপ কাজ


9

সেটআপ:

  • উইন্ডোজ সার্ভার 2008 আর 2
  • এসকিউএল সার্ভার 2008 আর 2 এসপি 1
  • 240 জিবি র‌্যাম
  • টেম্পডিবি 8x16 গিগাবাইট ডেটা ফাইল ডাব্লু / আউট অটো-গ্রোড (মোট 128 জিবি)
  • শারীরিক / একা একা সার্ভার

এই সার্ভারটি ইটিএল প্রসেসিংয়ের জন্য ব্যবহৃত হয়। আমরা মোট 240 জিবি র‌্যামের জন্য এই সার্ভারে আরও বেশি র‌্যাম ইনস্টল করেছি। এসকিউএল সার্ভার পরিষেবাদিগুলিই কেবল আসল জিনিসগুলি চলমান।

BIOS, ওপেনম্যানেজ এবং উইন্ডোজে মেমরিটি দুর্দান্ত দেখায়।

যদি আমি এসকিউএল সার্ভারটি একটি ন্যূনতম / সর্বোচ্চ সর্বোচ্চ 70/100 গিগাবাইট মেমরি ব্যবহার করতে কনফিগার করি তবে আমাদের কোনও সমস্যা নেই। যাইহোক, একবার আমি এটি 120/150 গিগাবাইটে বাড়িয়ে দিলে আমি যখন আমাদের একটি ইটিএল প্রক্রিয়া চালাই তখন আমি নিম্নলিখিত ত্রুটিটি পাই:

ডাটাবেস 'টেম্পিডবি'তে' <অস্থায়ী সিস্টেম অবজেক্ট: 422234507706368> 'অবজেক্টের জন্য স্থান বরাদ্দ করা যায়নি কারণ' প্রাথমিক 'ফাইলগোষ্ঠী পূর্ণ। অযৌক্তিকৃত ফাইলগুলি মুছে ফেলা, ফাইলগ্রুপে বস্তুগুলি ফেলে, ফাইলগোষ্ঠীতে অতিরিক্ত ফাইল যুক্ত করে বা ফাইলগোষ্ঠীতে বিদ্যমান ফাইলগুলির জন্য অটোগ্রোথ সেট করে ডিস্কের স্থান তৈরি করুন। (এমএসজি 1105, রাজ্য 2, পদ্ধতি অজানা, লাইন 1)

মেমরি কনফিগারেশন পরিবর্তন করার আগে আমরা কখনও এই সমস্যাটিতে প্রবেশ করি নি। আসল 100০ / ১০০ জিবি পুনরায় কনফিগার করার পরে আমরা এই ত্রুটিটি পাই না।

যে জিনিসগুলি আমি চেষ্টা করেছি:

  1. টেম্পডিবি ডেটা ফাইলগুলি স্বয়ংক্রিয়ভাবে বৃদ্ধিতে সেট করুন। এটি কেবল ডিস্ক-সক্ষমতা না পৌঁছানো এবং তারপরে ব্যর্থ হওয়া অবধি ফাইলগুলি স্বয়ংক্রিয়ভাবে বৃদ্ধি লাভ করে।
  2. আরও টেম্পডিবি ডেটা ফাইল যুক্ত করুন। প্রদর্শিত হিসাবে একই ত্রুটি।
  3. টেম্পডিবি আকার 8x32 জিবি (256 জিবি মোট) বাড়ান

এই সমস্যার কারণ কী হতে পারে তা নিয়ে আমি ক্ষতিতে আছি।


2
আপনার স্মৃতি কি NUMA নোড জুড়ে সুষম? আপনার প্রসেসর সম্পর্কে কি? এসকিউএল সার্ভার লগটি কি দেখায় যে প্রারম্ভকালে কতগুলি সিপিইউ ব্যবহৃত হয়?
অ্যারন বারট্র্যান্ড

1
আপনি ইটিএল প্রক্রিয়াগুলির জন্য কী ব্যবহার করছেন? এসএসআইএস বা এই জাতীয় কিছু সরঞ্জাম? যদি এটি এসকিউএল সার্ভারের বাইরে কোনও সরঞ্জাম থাকে তবে আপনি কি এটি আপনার এসকিউএল সার্ভারের উদাহরণ হিসাবে একই সার্ভারে চালাচ্ছেন?
মাইক ফাল

1
এটি মাইক্রোসফট একটি ভাল পয়েন্ট, যদি ইটিএল প্রক্রিয়াটি তার কাজটি করার জন্য পর্যাপ্ত মেমরিটি ধরতে অক্ষম হয়, কারণ এসকিউএল সার্ভার খুব বেশি ব্যবহার করে, তবে এটি কাজকে টেম্পডবিতে চাপতে হতে পারে।
অ্যারন বার্ট্র্যান্ড

1
এখানে tempdb ব্যবহার নিরীক্ষণ করার জন্য একটি ভাল স্টার্টার আছে: msdn.microsoft.com/en-us/library/ms176029(v=SQL.105).aspx । এটি আপনাকে যা ঘটছে তার একটি ধারণা দেওয়া উচিত।
থমাস স্ট্রিংগার

2
আপনি যখন টেম্পডিবি আসলে প্রসারিত হচ্ছেন তখন কী চলছে তা নিয়ে কোনও বিশ্লেষণ করেছেন? একটি সাধারণ sp_Wo2 / sp_Woisactive? আমার কাছে মনে হচ্ছে আপনি দীর্ঘ কিছু চলমান লেনদেন পেয়েছেন যা আরও ভালভাবে পরিচালনা করা যায়, তবে বলা মুশকিল। ব্যক্তিগতভাবে, আমি মেমরির পরিবর্তনের সাথে যুক্ত হতে চাই না তবে কোডটি প্রথমে দেখুন এবং দেখুন যে এটি ঠিকমতো চলছে কিনা।
মাইক ফ্যাল

উত্তর:


3

আপনার সাহায্যের জন্য সবাইকে ধন্যবাদ।

কিছু কার্যকরকরণ পরিকল্পনার মধ্য দিয়ে ingেলে দেওয়ার পরে দেখা যায় যে এখানে একটি জিন রয়েছে যা উপলব্ধ র‌্যামের পরিমাণের ভিত্তিতে আলাদাভাবে প্রক্রিয়াজাত করা হচ্ছে। কম র‌্যামের সাহায্যে এটি একটি হ্যাশ দিয়ে মূল্যায়ন করে; আরও র‌্যামের সাথে এটি মার্জ যোগদানের একটি সিরিজ ব্যবহার করে।

সুতরাং মূলত এটি খারাপভাবে লেখা টি-এসকিউএলে নেমে এসেছিল, যা আমি বর্তমানে রিফ্যাক্টর করছি।


4
এটি বেশ স্বজ্ঞাত কারণ কারণ একটি হ্যাশ যোগদানের জন্য মেমরি অনুদানের প্রয়োজন হয় যেখানে মার্জটি হয় না। সংযুক্ত যোগদানকে সমর্থন করার জন্য কি কোনও অতিরিক্ত সাজানোর অপারেশন রয়েছে?
মার্টিন স্মিথ

1

এটি প্রশ্নের উত্তর নয়, কিছু কোড আমি একটি মন্তব্যে পোস্ট করতে চাইনি। NUMA নোড জুড়ে আপনার সময়সূচী এবং মেমরির ভারসাম্যটি দেখতে (এবং কোনও নোড অনলাইনে দৃশ্যমান নয় কিনা তাও দেখতে):

SELECT 
  parent_node_id, 
  [status],
  AVG(current_tasks_count) AS avg_tasks_count, 
  AVG(load_factor) AS avg_load_factor,
  scheduler_count = COUNT(*)
FROM sys.dm_os_schedulers
GROUP BY parent_node_id, [status];

SELECT 
  memory_node_id, 
  name, 
  SUM(single_pages_kb + multi_pages_kb) AS memory_kb
FROM sys.dm_os_memory_clerks
GROUP BY memory_node_id, name;

(এসকিউএল সার্ভার ২০১২-এ, শেষটি SUMহওয়া উচিত কারণ SUM(pages_kb)যেহেতু আলাদা আলাদা একক- এবং বহু-পৃষ্ঠার বরাদ্দ নেই are)

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