আমাদের কাছে প্রতিটি ওয়াল বিভাগকে সংকুচিত করতে এবং এটি এস-তে প্রেরণের জন্য অবিচ্ছিন্ন সংরক্ষণাগার সহ একটি অপেক্ষাকৃত কম-ভলিউম পোস্টগ্রিস ডাটাবেস রয়েছে। কারণ এটি একটি নিম্ন-ভলিউম সিস্টেম, এটি archive_timeoutপ্রতি 10 মিনিট বা তার বেশি সময় ধরে এবং বেশিরভাগ-অব্যবহৃত ওয়াল বিভাগটি সংরক্ষণাগারভুক্ত করে, যা বেশিরভাগই কেবল শূন্য ছিল বলে সংকোচনের জন্য ব্যবহৃত হত ।
যাইহোক, পোস্টগ্রিস প্রতিটি ওয়াল সুইচে নতুন ফাইল বরাদ্দের ব্যয় এড়াতে তার ওয়াল বিভাগগুলি পুনর্ব্যবহার করে, এটি একটি উচ্চ-লোড পরিস্থিতিতে কার্যকর তবে এর অর্থ হ'ল স্বাভাবিকের চেয়ে ভারী কার্যকলাপের পরে আমাদের ওয়াল বিভাগের ফাইলগুলি এখন পূর্ণ পূর্ববর্তী বিভাগগুলি থেকে আবর্জনা এবং এগুলি খুব ভালভাবে সংকোচনের নয়। আমরা এই সমস্ত আবর্জনার অনেকগুলি অনুলিপি সঞ্চয় করছি।
আমাদের ওয়াল সংরক্ষণাগারটি সংরক্ষণের জন্য আমরা যে জায়গার ব্যবহার করছি তা হ্রাস করার কোনও উপায় আছে? কিছু suboptimal সম্ভাবনা:
ওয়াল বিভাগগুলি কোনওভাবে পুনর্ব্যবহার করা থেকে পোস্টগ্রিসকে আটকাও, তাই এটি প্রতিবার শূন্য ফাইলের সাথে শুরু হয়। দস্তাবেজগুলি নির্দেশ করে না যে এটি করার জন্য একটি বিকল্প রয়েছে তবে আমি এটি মিস করেছি।
ওয়াল সেগমেন্ট ফাইলটি ব্যবহার শুরু করা / শেষ করার পরে শূন্যপদ পোস্ট করুন। আবারও, ডক্সগুলি মনে হয় না যে এটি সম্ভব।
বাহ্যিকভাবে শূন্য বা কিছু ওয়াল সেগমেন্ট ফাইলগুলি ব্যবহার না করা অবস্থায় সরান। এটি কোন ফাইলগুলি নির্ধারণ করার কোনও নিরাপদ উপায় আছে?
pg_xlogdumpজঞ্জালটি শুরু হয় সেখান থেকে আউটপুটটি ব্যবহার করে সংরক্ষণাগারের আগে বিভাগটির অব্যবহৃত অংশটি জিরো । সম্ভব, যদিও আমি এটি পছন্দ করি না। কমপক্ষে সংরক্ষণাগার কমান্ডে এটি করে আপনি নিশ্চিত হয়ে উঠতে পারেন যে পোস্টগ্র্রেস ফাইলটি পুনরায় ব্যবহার করবে না।কেবলমাত্র সেগমেন্ট ফাইলের ব্যবহৃত অংশটি সংরক্ষণাগারভুক্ত করুন, আবার
pg_xlogdumpকোনওরকম আউটপুট ব্যাখ্যা করে এবং পুনরুদ্ধারের সময় শূন্য দিয়ে প্যাড করুন। এটি সম্ভবত শোনায় যদিও আমি সত্যিই এটি পছন্দ করি না।