মানে কি n_live_tupএবং n_dead_tupএ pg_stat_user_tablesবা pgstattuple?
মানে কি n_live_tupএবং n_dead_tupএ pg_stat_user_tablesবা pgstattuple?
উত্তর:
এই দুটি কলাম ফলাফল
SELECT pg_stat_get_live_tuples(c.oid) AS n_live_tup
, pg_stat_get_dead_tuples(c.oid) AS n_dead_tup
FROM pg_class c;
সারণীতে লাইভ এবং মৃত সারিগুলির সংখ্যা (টিপলস) উপস্থাপন করা। ম্যানুয়ালটিতে
সেই ফাংশনগুলি সন্ধান করুন ।
মৃত সারিগুলি সারিগুলি মুছে ফেলা হয় যা পরে INSERTs বা UPDATEs থেকে নতুন সারিগুলির জন্য পুনরায় ব্যবহার করা হবে (স্থান, ডেটা নয়)। কিছু মৃত সারি (বা সংরক্ষিত মুক্ত স্থান) বিশেষত HOT আপডেটগুলির জন্য কার্যকর হতে পারে (হ্যাপ-কেবলমাত্র টুপলস) যা একই ডেটা পৃষ্ঠায় দক্ষতার সাথে স্থান পুনরায় ব্যবহার করতে পারে। HOT এ আরও:
অথবা মৃত সারিগুলি টেবিলের VACUUM FULL(বা VACUUMভাগ্যবান হয়ে থাকলে প্লেইন ) বা টেবিলের অনুরূপ ক্রিয়াকলাপগুলি দ্বারা মুছে ফেলা হতে পারে , যার ফলে সেই অনুযায়ী শারীরিক টেবিল সঙ্কুচিত হবে।
যখনই কোনও সারি মুছে ফেলা বা আপডেট করা হয়, লেনদেনের প্রতিশ্রুতিবদ্ধ হওয়ার পরে শুরু হওয়া অন্য সমস্ত লেনদেনের জন্য পুরানো সারি সংস্করণটি অদৃশ্য হয়ে যায়। পুরানো লেনদেন আর নেই বলে এই সারিটি পুরোপুরি মারা গেছে। এটি পোস্টগ্র্রেএসকিউএল এর এমভিসিসি মডেলটির সাথে চুক্তিটি পরিচালনা করতে প্রয়োজনীয় ।
সেগুলি কেবল পরিসংখ্যান । আপনি postgresql.confযদি পরিসংখ্যান সংগ্রহগুলি স্বয়ংক্রিয়ভাবে আপডেট হতে চান তবে আপনাকে এটিকে সক্ষম করতে হবে। track_countsযদিও ডিফল্ট হিসাবে থাকা উচিত। মনে রাখবেন যে পরিসংখ্যানগুলি তাত্ক্ষণিকভাবে আপডেট হয় না। ম্যানুয়ালটিতে সে সম্পর্কে আরও পড়ুন ।
SELECT n_live_tup FROM pg_stat_user_tables WHEN relname = 'mytable';কেন এটি শূন্য দেখাচ্ছে?mytable6 টি সারি রয়েছে।