Thông thường bạn không phải lo lắng về điều đó.
Tuy nhiên, nếu đã có một lần cập nhật hoặc xóa hàng loạt hoặc tốc độ thay đổi liên tục cao đến mức autovacuum không thể theo kịp, bạn có thể kết thúc với một chỉ mục quá tải.
Công cụ để xác định id đó là pgstattuple
phần mở rộng:
CREATE EXTENSION pgstattuple;
Sau đó, bạn có thể kiểm tra chỉ mục phình to như thế này:
SELECT * FROM pgstatindex('spatial_ref_sys_pkey');
-[ RECORD 1 ]------+-------
version | 2
tree_level | 1
index_size | 196608
root_block_no | 3
internal_pages | 1
leaf_pages | 22
empty_pages | 0
deleted_pages | 0
avg_leaf_density | 64.48
leaf_fragmentation | 13.64
Chỉ số này ở dạng tuyệt vời (chưa bao giờ được sử dụng):Chỉ có 14% độ phồng.
Lưu ý rằng các chỉ mục được tạo theo mặc định bằng fillfactor
90, nghĩa là, các khối chỉ mục không được lấp đầy hơn 90% bởi INSERT
.
Thật khó để nói khi nào một chỉ mục bị cồng kềnh, nhưng nếu leaf_fragmentation
vượt quá 50-60, nó không quá đẹp.
Để tổ chức lại một chỉ mục, hãy sử dụng REINDEX
.