লগিং মাইএসকিউএল সম্পাদনাকে আঘাত করে - তবে, কেন?


9

আমি বেশ অবাক হয়েছি যে আমি ইতিমধ্যে সাইটে কোথাও এর উত্তর দেখতে পাচ্ছি না, বা মাইএসকিউএল ডকুমেন্টেশনেও ( বিভাগ 5.2 মনে হচ্ছে লগিং অন্যথায় ভালভাবে আবৃত হয়েছে!)

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

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

আমি অবশ্যই ধীর অনুসন্ধানগুলি লগ করি, এবং যদি আমি এটি অক্ষম করি তবে সাধারণ ব্যবহারে নগণ্য উন্নতি হবে।

(এই সবগুলি উবুন্টু 10.04 এলটিএস, মাইএসকিউএলডি 5.1.49 এ রয়েছে তবে গবেষণাটি দেখায় যে এটি মোটামুটি সর্বজনীন সমস্যা)

উত্তর:


9

সাধারণ ক্যোয়ারী লগগুলি বাইনারি লগগুলির চেয়ে অনেক বেশি আইও হয়। বেশিরভাগ এসকিউএল সার্ভারগুলি 90% থেকে 10% পর্যন্ত লেখার ব্যপারে, বাইনারি লগগুলি কম ডিস্কের স্থান ব্যবহার করে এমন সরল পাঠ্যের পরিবর্তে বাইনারি বিন্যাসে সংরক্ষণ করা হয়। (কত কম জায়গা? আমি নিশ্চিত নই। দুঃখিত।)

অ্যাপাচি এবং এক্সিম কেন উল্লেখযোগ্য পারফরম্যান্স প্রভাব ছাড়াই প্রতিটি অনুরোধ রেকর্ড করতে পারে তার দুটি দিক রয়েছে। প্রথমটি হ'ল তারা এই অনুরোধটি রেকর্ড করেছে যে কোনও অনুরোধ হয়েছে তবে তারা লগে যা রেখেছিল তা প্রকৃত অনুরোধের তুলনায় সাধারণত ছোট। এইচটিটিপি অনুরোধটি লগতে যে রেখায় থাকে তার দ্বিগুণ দ্বিগুণ এবং এমনকি একটি সংক্ষিপ্ত, সরল পাঠ্য ইমেলটি লগ লাইনটির সাথে 10 বা 20 গুণ বেশি বড় থাকে। 10 এমবি সংযুক্তি সহ একটি ইমেলটিতে এখনও লগটিতে কয়েকটি লাইন লেখা থাকে।

এর দ্বিতীয় অংশটি হ'ল একটি সাধারণ ওয়েব অ্যাপ্লিকেশনটিতে সাধারণত একক এইচটিটিপি পৃষ্ঠার সাথে কয়েক ডজন এসকিউএল কোয়েরি যুক্ত থাকে। ইমেলগুলি HTTP অনুরোধের চেয়ে আরও কম সংখ্যায় আসে in আপনার মাইএসকিউএল সার্ভার সম্ভবত অ্যাপাচি বা এক্সিমের চেয়ে অনেক বেশি লগ ইন করার চেষ্টা করছে।

দিনের শেষে আপনার মাইএসকিউএল বাইনারি এবং সাধারণ লগ এবং আপনার অ্যাপাচি এবং এক্সিম লগগুলির আকার (সঙ্কুচিত) দেখুন। আমি বাজি ধরব যে আপনি মাইএসকিউএল সাধারণ লগ কমপক্ষে 5 এর একটি ফ্যাক্টর দ্বারা বৃহত্তম এক খুঁজে পাবেন।


1
কিছু ভাল পয়েন্ট - বিশেষত, হ্যাঁ, আমাদের অ্যাপ্লিকেশনটির একক জিইটি 100 টি এসইএলপিএর কারণ হতে পারে, যদিও আমরা একক ক্যোয়ারিতে যতটা সম্ভব চেষ্টা করার চেষ্টা করি মাঝে মাঝে আমরা এর জন্য পারফরম্যান্স / ক্লিন-নেস বন্ধ করে দেই আরও মার্জিত কাঠামো, আরও পঠনযোগ্য কোড এবং একটি ক্লিনার ডিবি। (একদিকে যেমন, এই পুরো জিনিসটি POSTs এর লগ ইন করার সামগ্রী এবং জিইটি থেকে ইউআরএল সম্পর্কে কথা বলা শুরু হয়েছিল, যেহেতু আমরা সিজিআই.এম. প্যারামগুলি একটি ক্ষেত্রে দেখেছি এবং অন্যটি নয়, এবং সেখান থেকে লগিং / পারফরম্যান্সে সাধারণ). যাইহোক, কয়েক ঘন্টা হয়েছে, সুতরাং, উত্তর গৃহীত হয়েছে। ধন্যবাদ!
জেমস সবুজ

4

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

এটি একই প্রকৃত ডিস্কে পৃথক বিভাজন থাকলেও এটি সত্য।

যদি লগিং কোনও ভিন্ন ডিভাইসে চলে যায়, তবে এটি পারফরম্যান্সের কিছু সমস্যা উপশম করতে পারে ।


1
আমার পরিস্থিতির সাথে প্রাসঙ্গিক নয় - এটি একটি হোস্ট করা ভিএম, এবং ডিবিগুলি একই স্টোরেজ অ্যারে থেকে পরিবর্তে প্রদত্ত / ভারে পৃথক লজিক্যাল ভলিউমে থাকে। আমি মনে করি তাত্ত্বিকভাবে তারা একই স্পিন্ডলে থাকতে পারে তবে এটি একটি হেলুভা কাকতালীয় মনে হবে :-) বলেছে, এটি +1 একদিকে, কারণ এটি কোনও ডিফল্ট ডেবিয়ান / উবুন্টু সেটআপ (ডিবিগুলিতে) এর সাথে একেবারেই প্রাসঙ্গিক হবে / var / mysql, লগ ইন / var / লগ)!
জেমস সবুজ

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