MAXDOP = 1, সমান্তরালতার জন্য কোয়েরি ইঙ্গিত এবং খরচ থ্রেশহোল্ড


11

যদি কোনও উদাহরণ MAXDOP1-এ সেট করা থাকে এবং নির্দিষ্ট প্রশ্নের সমান্তরালে যাওয়ার জন্য কোয়েরি ইঙ্গিতগুলি ব্যবহার করা হয় তবে এসকিউএল দ্বারা প্যারালালিজম মানটির জন্য ব্যয় প্রান্তিক মূল্য এখনও কী সমান্তরালে যেতে পারে তা স্থির করতে এসকিউএল দ্বারা ব্যবহৃত হয়?

আমি এই সুনির্দিষ্ট তথ্যটি খনন করতে সক্ষম হইনি যদিও এই লিঙ্কটি পরামর্শ দেয় যে সিটিএফপি যদি MAXDOP1 হয় তবে তা অগ্রাহ্য করা হবে 1 তবে এটি ব্যয় নির্বিশেষে কোনও অনুরোধ হিসাবে কোয়েরি ইঙ্গিত ছাড়াই সমান্তরালে যাবে যখন MAXDOP1 হবে।

এই দু'টি অনুরোধের প্রত্যাশিত আচরণ কী হবে তা আমাকে কেউ জানতে দিতে পারেন?

উদাহরণ 1:

Instance Maxdop: 1 
CTFP: 50 
Query hint: Maxdop=2 
Query cost: 30

উদাহরণ 2:

Instance Maxdop: 1
CTFP: 50
Query hint: Maxdop=2
Query cost: 70

উত্তর:


20

যদি কোনও উদাহরণ MAXDOP1-এ সেট করা থাকে এবং নির্দিষ্ট প্রশ্নের সমান্তরালে যাওয়ার জন্য কোয়েরি ইঙ্গিতগুলি ব্যবহার করা হয় তবে এসকিউএল দ্বারা প্যারালালিজম মানটির জন্য ব্যয় প্রান্তিক মূল্য এখনও কী সমান্তরালে যেতে পারে তা স্থির করতে এসকিউএল দ্বারা ব্যবহৃত হয়?

সহজ উত্তর: হ্যাঁ

বিস্তারিত

এখানে দুটি পৃথক জিনিস চলছে, যা আলাদা করা জরুরী:

  1. কি কার্যকর উপমা সর্বোচ্চ ডিগ্রী প্রাপ্তিসাধ্য একটি ক্যোয়ারী কিভাবে?

    এতে অবদানকারীরা হলেন (বিস্তৃতভাবে গুরুত্বের ক্রমে):

    • রিসোর্স গভর্নর MAX_DOPসেটিং
    • ইঙ্গিত MAXDOPসেটিং জিজ্ঞাসা
    • max degree of parallelismউদাহরণ হিসেবে বলা যায় কনফিগারেশন অপশন

    বিস্তারিত ব্যাখ্যা করা হয়েছে সার্ভারের "উপমা ম্যাক্স ডিগ্রী" সেটিং রিসোর্স গভর্নরের MAX_DOP ও যেই ক্যোয়ারীর ইঙ্গিতটি MAXDOP-যা এক উচিত SQL সার্ভার ব্যবহার করবেন? জ্যাক লি, মাইক্রোসফ্ট এসকিউএল সার্ভার গ্রাহক পরিষেবা এবং সহায়তার সিনিয়র এসকেলেশন ইঞ্জিনিয়ার দ্বারা। নীচের টেবিলটি সেই লিঙ্কটি থেকে পুনরুত্পাদন করা হয়েছে:

    সমান্তরাল টেবিল

  2. কোনও প্রশ্নের পরিকল্পনা কি সমান্তরালতা ব্যবহার করবে?

    এসকিউএল সার্ভার ক্যোয়ারী অপ্টিমাইজার সর্বদা প্রথমে একটি সিরিয়াল পরিকল্পনা খুঁজে পায়

    তারপরে, যদি:

    • আরও অপ্টিমাইজেশন ন্যায়সঙ্গত; এবং
    • সেরা সিরিয়াল পরিকল্পনার ব্যয়টি cost threshold for parallelismকনফিগারেশনের মান ছাড়িয়েছে


    ... অপ্টিমাইজার একটি সমান্তরাল পরিকল্পনা সন্ধান করার চেষ্টা করবে ।

    তারপরে, যদি:

    • একটি সমান্তরাল পরিকল্পনা পাওয়া যায় (যেমন সম্ভব); এবং
    • সমান্তরাল পরিকল্পনার ব্যয়টি সেরা সিরিয়াল পরিকল্পনার চেয়ে কম


    ... একটি সমান্তরাল পরিকল্পনা তৈরি করা হবে।

দ্রষ্টব্য:cost threshold for parallelism শুধুমাত্র প্রভাবিত কিনা একটি সমান্তরাল পরিকল্পনার জন্য অপটিমাইজার সৌন্দর্য। একবার সমান্তরাল পরিকল্পনাটি ক্যাশে হয়ে গেলে, এটি সিটিএফপি সেটিং নির্বিশেষে পুনরায় ব্যবহার করা হলে (যতক্ষণ থ্রেড উপলব্ধ থাকে) সমান্তরাল ব্যবহার করে কার্যকর করা হবে।


উদাহরণ

উভয় উদাহরণের জন্য, উদাহরণস্বরূপ ম্যাক্সডোপ 1 এবং ক্যোরির ইঙ্গিত ম্যাক্সডোপ 2 সহ কার্যকর উপলব্ধ ডিওপি হ'ল 2 যদি একটি সমান্তরাল পরিকল্পনা চয়ন করা হয় তবে এটি ডিওপি 2 ব্যবহার করবে।

উদাহরণ 1

50 এর সিটিএফপি এবং 30 টির মধ্যে সস্তার একটি সিরিয়াল পরিকল্পনা পাওয়া গেছে , এসকিউএল সার্ভার একটি সমান্তরাল পরিকল্পনা সন্ধান করার চেষ্টা করবে না । একটি সিরিয়াল পরিকল্পনা নির্মিত হবে।

উদাহরণ 2

50 এর সিটিএফপি এবং 70 টির মধ্যে সস্তার একটি সিরিয়াল পরিকল্পনা পাওয়া গেছে , এসকিউএল সার্ভার একটি সমান্তরাল পরিকল্পনা সন্ধান করার চেষ্টা করবে । যদি এই পরিকল্পনার (যদি পাওয়া যায়) ব্যয় হয় 70 টিরও কম (ক্রমিক পরিকল্পনা ব্যয়) তবে একটি সমান্তরাল পরিকল্পনা তৈরি করা হবে।


ক্যোয়ারী অপ্টিমাইজেশনের শেষ ফলাফল সর্বদা একক ক্যাশেড পরিকল্পনা: ক্রমিক বা সমান্তরাল। অপ্টিমাইজার অনুসন্ধান 0 (টিপি) এবং অনুসন্ধান 1 (কিউপি) পর্যায়ে কেবল একটি সিরিয়াল পরিকল্পনা খুঁজে পায় ।

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

আমি মিথের মধ্যে এটি সম্পর্কে কিছু লিখেছি : এসকিউএল সার্ভার প্রতিটি সমান্তরাল পরিকল্পনা সহ একটি সিরিয়াল পরিকল্পনা ক্যাচ করে


2

উদাহরণ 1 ইনস্ট্যান্স ম্যাক্সডপ: 1 সিটিএফপি: 50 অনুসন্ধানের ইঙ্গিত: ম্যাক্সডপ = 2 ক্যোয়ারী ব্যয়: 30

MAXDOP ক্যোয়ারী ইঙ্গিতটি সমান্তরালতা সেটিংয়ের সর্বাধিক ডিগ্রিকে প্রশস্ত করে দেয় তবে সিটিপিএফ 50 এবং ক্যোয়ারী ব্যয় 30 হওয়ায় এটি সিরিয়াল পরিকল্পনার জন্য যেতে পারে।

উদাহরণ 2 ইনস্ট্যান্স ম্যাক্সডপ: 1 সিটিএফপি: 50 অনুসন্ধানের ইঙ্গিত: ম্যাক্সডপ = 2 ক্যোয়ারী ব্যয়: 70

এখানে আবার সমান্তরালতার সর্বোচ্চ ডিগ্রি 2 হিসাবে নেওয়া হবে যেহেতু MAXDOP ইঙ্গিত রয়েছে তবে সিটিএফপি 50 হিসাবে নেওয়া হবে এবং ক্যোয়ারী হবে, যদি সম্ভব হয় পলের মতো উল্লেখ করা যেতে পারে সমান্তরালে চলতে পারে।

যদি কোনও উদাহরণে ম্যাক্সডোপ 1 এ সেট করা থাকে এবং নির্দিষ্ট প্রশ্নের সমান্তরালে যাওয়ার জন্য কোয়েরি ইঙ্গিতগুলি ব্যবহার করা হয় তবে এসকিউএল দ্বারা প্যারালালিজম মানটির জন্য কস্ট থ্রেশহোল্ডটি কি আসলেই সমান্তরালে যেতে হবে কিনা তা নির্ধারণ করার জন্য এসকিউএল দ্বারা ব্যবহৃত হয়?

MAXDOP ইঙ্গিতটি প্যারালালিজমের সর্বাধিক ডিগ্রির ইনস্ট্যান্স প্রশস্ত সেটিংকে ওভাররাইড করবে।

MAXDOP ইঙ্গিত ডক্স.মাইক্রোসফ্ট থেকে উদ্ধৃত করা হচ্ছে

ম্যাক্সডপ নম্বর প্রযোজ্য: এসকিউএল সার্ভার ২০০৮ এর মাধ্যমে এসকিউএল সার্ভার ২০০৮।

এই বিকল্পটি উল্লেখ করে প্রশ্নের জন্য sp_configure এবং রিসোর্স গভর্নর এর সমান্তরালতা কনফিগারেশন বিকল্পের সর্বাধিক ডিগ্রিকে ওভাররাইড করে। MAXDOP ক্যোয়ারী ইঙ্গিতটি sp_configure দিয়ে কনফিগার করা মানকে ছাড়িয়ে যেতে পারে। যদি MAXDOP রিসোর্স গভর্নরের সাথে কনফিগার করা মানটি অতিক্রম করে, ডেটাবেস ইঞ্জিন রিসোর্স গভর্নর MAXDOP মান ব্যবহার করে,

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