ফিল্টার "এর চেয়ে বড়" বা "এর চেয়ে কম" হলে সারিগুলির অনুমানের সূত্রটি কিছুটা বোকা হয়ে যায়, তবে এটি আপনি পৌঁছাতে পারেন এমন একটি সংখ্যা।
সংখ্যা
পদক্ষেপ 193 ব্যবহার করে, এখানে সম্পর্কিত নম্বরগুলি দেওয়া হয়েছে:
RANGE_ROWS = 6624
EQ_ROWS = 16
AVG_RANGE_ROWS = 16.1956
পূর্ববর্তী পদক্ষেপ = 1999-10-13 10: 47: 38.550 থেকে RANGE_HI_KEY
বর্তমান পদক্ষেপ = 1999-10-13 10: 51: 19.317 থেকে RANGE_HI_KEY
WHERE ধারা থেকে মান = 1999-10-13 10: 48: 38.550
সূত্রটি
1) দুটি পরিসরের হাই কীগুলির মধ্যে এমএস খুঁজুন
SELECT DATEDIFF (ms, '1999-10-13 10:47:38.550', '1999-10-13 10:51:19.317')
ফলাফলটি 220767 এমএস।
2) সারি সংখ্যা সামঞ্জস্য করুন
আমাদের প্রতি মিলিসেকেন্ডে সারিগুলি সন্ধান করতে হবে, তবে আমাদের করার আগে, আমাদেরকে RANGE_ROWS থেকে AVG_RANGE_ROWS বিয়োগ করতে হবে:
6624 - 16.1956 = 6607.8044 সারি
3) সারিগুলির সামঞ্জস্য সংখ্যার সাথে প্রতি এমএসে সারি গণনা করুন:
6607.8044 সারি / 220767 এমএস = .0299311 প্রতি এমএসে সারি
4) WHERE ধারা এবং বর্তমান পদক্ষেপ RANGE_HI_KEY থেকে মানের মধ্যে এমএস গণনা করুন
SELECT DATEDIFF (ms, '1999-10-13 10:48:38.550', '1999-10-13 10:51:19.317')
এটি আমাদের 160767 এমএস দেয়।
5) প্রতি সেকেন্ডের সারিগুলির ভিত্তিতে এই ধাপে সারিগুলি গণনা করুন:
.0299311 সারি / এমএস * 160767 এমএস = 4811.9332 সারি
)) মনে রাখবেন কীভাবে আমরা আগে AVG_RANGE_ROWS বিয়োগ করেছি? তাদের আবার যুক্ত করার সময়। এখন আমরা প্রতি সেকেন্ডে সারি সম্পর্কিত সংখ্যা গণনা শেষ করেছি, আমরা নিরাপদে EQ_ROWS যুক্ত করতে পারি:
4811.9332 + 16.1956 + 16 = 4844.1288
গোল হয়েছে, এটি আমাদের 4844.13 অনুমান।
সূত্রটি পরীক্ষা করা হচ্ছে
প্রতি এমএসে সারিগুলি গণনা করার আগে কেন AVG_RANGE_ROWS বিয়োগ করা হবে সে সম্পর্কে আমি কোনও নিবন্ধ বা ব্লগ পোস্ট খুঁজে পাইনি। আমি ছিল আক্ষরিক - নিশ্চিত করতে তারা অনুমান, কিন্তু শুধুমাত্র গত মিলিসেকেন্ডে এ জন্য দায়ী করা হয় সক্ষম।
ওয়াইড ওয়ার্ল্ডআইম্পোর্টস ডাটাবেস ব্যবহার করে , আমি কিছু বৃদ্ধিমূলক পরীক্ষা করেছি এবং সারি অনুমানের হ্রাসটি ধাপের সমাপ্তি অবধি লিনিয়ার বলে মনে করেছি , যেখানে হঠাৎ করে 1x এভিজি_আরং_আরডব্লিউএস হিসাবে গণনা করা হয়।
এখানে আমার নমুনা ক্যোয়ারী:
SELECT PickingCompletedWhen
FROM Sales.Orders
WHERE PickingCompletedWhen >= '2016-05-24 11:00:01.000000'
আমি পিকিং কমপ্লিটডের জন্য পরিসংখ্যান আপডেট করেছি, তারপরে হিস্টোগ্রাম পেয়েছি:
DBCC SHOW_STATISTICS([sales.orders], '_WA_Sys_0000000E_44CA3770')
আমরা RANGE_HI_KEY এর কাছে যাওয়ার সাথে সাথে অনুমান করা সারিগুলি কীভাবে হ্রাস পাবে তা দেখার জন্য, আমি পুরো পদক্ষেপে নমুনা সংগ্রহ করেছি। হ্রাস হ্রাস রৈখিক, তবে এমন আচরণ করে যেমন AVG_RANGE_ROWS মানের সমান কয়েকটি সারি কেবল প্রবণতার অংশ না ... যতক্ষণ না আপনি RANGE_HI_KEY টিপুন এবং হঠাৎ হ'ল তারা প্রকাশিত debtণের মতো বাদ পড়েছে। আপনি এটি নমুনার ডেটাতে, বিশেষত গ্রাফে দেখতে পাচ্ছেন।
আমরা RANGE_HI_KEY এবং তারপরে BOOM- এ আঘাত না করা পর্যন্ত সারিগুলিতে অবিচলিত হ্রাস লক্ষ্য করুন এবং হ'ল হঠাৎ বিয়োগ করা হয়েছে। এটি কোনও গ্রাফেও সহজে দেখা যায়।
সংক্ষেপে বলা যায়, AVG_RANGE_ROWS এর অদ্ভুত চিকিত্সা সারি অনুমান গণনা করা আরও জটিল করে তোলে তবে সিই কী করছে তা আপনি সর্বদা মিলন করতে পারেন।
এক্সফোনেনশিয়াল ব্যাক অফ সম্পর্কে কী?
এক্সপেনশনাল ব্যাকঅফ হ'ল পদ্ধতিটি নতুন (এসকিউএল সার্ভার ২০১৪ হিসাবে) একাধিক একক-কলামের পরিসংখ্যান ব্যবহার করার সময় আরও ভাল অনুমানের জন্য কার্ডিনালিটি এসটিমেটর ব্যবহার করে। যেহেতু এই প্রশ্নটি একটি একক-কলামের স্ট্যাটাস সম্পর্কিত, এটি ইস সূত্রে জড়িত নয়।