আমি একটি পুরানো সার্ভার (উইন্ডোজ ২০০ / / এসকিউএল সার্ভার ২০০৮ / ১ GB গিগাবাইট র্যাম / ২ এক্স 2.5 গিগাহার্টজ কোয়াড কোর / এসএএস ডিস্ক) থেকে একটি বৃহত ওয়েবসাইট এবং ডেটাবেস স্থানান্তরিত করেছি আরও উন্নততর সার্ভারে (উইন্ডোজ ২০০ R আর ২ / এসকিউএল সার্ভার ২০১২ এসপি 1 / 64 জিবি র্যাম / 2 এক্স 2.1 গিগাহার্টজ 16 কোর প্রসেসর / এসএসডি ডিস্ক)।
আমি পুরানো সার্ভারে ডাটাবেস ফাইলগুলি বিচ্ছিন্ন করেছিলাম, সেগুলি অনুলিপি করে নতুন সার্ভারে সংযুক্ত করেছি। সবকিছু খুব ভাল গিয়েছিল।
এর পরে, আমি সামঞ্জস্যতা স্তরে পরিবর্তিত হয়ে ১১০, আপডেট পরিসংখ্যান, সূচি পুনর্নির্মাণ করেছি।
আমার বিশাল হতাশার জন্য, আমি লক্ষ্য করেছি যে পুরানো এসকিউএল ২০০২ সার্ভারের চেয়ে নতুন এসকিউএল ২০১২ সার্ভারে বেশিরভাগ এসকিএল কোয়েরিগুলি অনেক ধীর (২-৩-৪ গুণ ধীর)।
উদাহরণস্বরূপ, প্রায় 700k রেকর্ড সহ একটি টেবিলে, পুরানো সার্ভারে সূচীতে একটি প্রশ্নের প্রায় 100 মিমি নিয়েছে। নতুন সার্ভারে, একই কোয়েরিটি প্রায় 350 মিশ্র লাগে।
সমস্ত প্রশ্নের জন্য একই ঘটে।
আমি এখানে কিছু সাহায্যের প্রশংসা করব। আমাকে যাচাই / যাচাই করতে হবে তা জানতে দিন। একটি নতুন এসকিউএল সার্ভারের সাথে আরও ভাল সার্ভারে বিশ্বাস করা আমার পক্ষে খুব কঠিন বলে মনে হয়, কার্য সম্পাদন আরও খারাপ।
আরো বিস্তারিত:
মেমরি সর্বাধিক সেট করা হয়েছে।
আমার এই টেবিল এবং সূচক আছে:
CREATE TABLE [dbo].[Answer_Details_23](
[ID] [int] IDENTITY(1,1) NOT NULL,
[UserID] [int] NOT NULL,
[SurveyID] [int] NOT NULL,
[CustomerID] [int] NOT NULL default 0,
[SummaryID] [int] NOT NULL,
[QuestionID] [int] NOT NULL,
[RowID] [int] NOT NULL default 0,
[OptionID] [int] NOT NULL default 0,
[EnteredText] [ntext] NULL,
CONSTRAINT [Answer_Details_23_PK] PRIMARY KEY NONCLUSTERED
(
[ID] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
CREATE NONCLUSTERED INDEX [IDX_Answer_Details_23_SummaryID_QuestionID] ON [dbo].[Answer_Details_23]
(
[SummaryID] ASC,
[QuestionID] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
আমি এই কোয়েরি কার্যকর করেছি:
set statistics time on;
select summaryid, count(summaryid) from Answer_Details_23 group by summaryid order by count(summaryid) desc;
set statistics time off;
ওল্ড সার্ভার - এসকিউএল সার্ভার এক্সিকিউশন টাইমস: সিপিইউ সময় = 419 এমএস, অতিবাহিত সময় = 695 এমএস।
নতুন সার্ভার - এসকিউএল সার্ভার এক্সিকিউশন টাইমস: সিপিইউ সময় = 1340 এমএস, অতিবাহিত সময় = 1636 এমএস।
এক্সিকিউশন পরিকল্পনাগুলি এখানে আপলোড করা হয়েছে: http://we.tl/ARbPuvf9t8
পরে আপডেট:
- এএমডি ২.১ গিগাহার্জ ওপ্টরন ১ core টি কোর প্রসেসর ইন্টেল 2.5GHz কোয়াড কোর প্রসেসরের চেয়ে অনেক খারাপ দেখায়
- দুর্দান্ত উন্নতি ব্যালেন্সড থেকে উচ্চ শক্তিতে উইন্ডোজ পাওয়ার বিকল্পগুলি পরিবর্তন করে
- আরও উন্নতি সমান্তরালতার সর্বাধিক ডিগ্রি 8 এবং মূল্য থ্রেশহোল্ডকে 4 এ পরিবর্তন করছে
এখন, এসকিউএল সার্ভার এক্সিকিউশন টাইমস: সিপিইউ সময় = 550 এমএস, অতিবাহিত সময় = 828 এমএস।
এটি এখনও পুরানো সার্ভারের চেয়ে খারাপ, তবে এটি খারাপ নয়। আপনার কাছে যদি অন্য কোনও পরামর্শ থাকে (স্থানীয় ক্যোয়ারী অপ্টিমাইজেশন ব্যতীত) দয়া করে বিনা দ্বিধায় মন্তব্য করুন।