Trong bài đăng này, tôi đang chia sẻ một tập lệnh để tìm số liệu thống kê về kích thước và cách sử dụng của Greenplum Indexes. Có kiến thức đầy đủ về các chỉ mục cơ sở dữ liệu của chúng tôi là bắt buộc. Chúng ta nên kiểm tra kích thước và việc sử dụng các chỉ mục.
Gần đây, tôi đã bắt đầu công việc của mình với Greenplum dựa trên PostgreSQL 8.2, vì vậy tôi đang chia sẻ một tập lệnh để kiểm tra việc sử dụng chỉ mục trong Greenplum.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | SELECT t.schemaname AS schema_name ,t.tablename AS table_name ,indexname AS index_name ,c.reltuples AS num_rows ,pg_size_pretty(pg_relation_size(quote_ident(t.tablename)::text)) AS table_size ,pg_size_pretty(pg_relation_size(quote_ident(indexrelname)::text)) AS index_size ,CASE WHEN indisunique THEN 'Y' ELSE 'N' END AS UNIQUE ,idx_scan AS number_of_scans ,idx_tup_read AS tuples_read ,idx_tup_fetch AS tuples_fetched FROM pg_tables t LEFT OUTER JOIN pg_class c ON t.tablename=c.relname LEFT OUTER JOIN ( SELECT c.relname AS ctablename, ipg.relname AS indexname, x.indnatts AS number_of_columns, idx_scan, idx_tup_read, idx_tup_fetch, indexrelname, indisunique FROM pg_index x JOIN pg_class c ON c.oid = x.indrelid JOIN pg_class ipg ON ipg.oid = x.indexrelid JOIN pg_stat_all_indexes psai ON x.indexrelid = psai.indexrelid ) AS t1 ON t.tablename = t1.ctablename; |