เดเดฏเตผเดคเตเดคเดฟเดฏ เดตเดฒเดฟเดฏ เดกเดพเดฑเตเดฑ เดธเตเดเตเดฐเตเดฎเตเดเตพ เดฑเตเดเตเดเตเตผเดกเต เดเตเดฏเตเดฏเตเดจเตเดจ เดตเดฟเดทเดฏเด เดคเตเดเดฐเตเดจเตเดจเต
เดจเดฎเตเดฎเตพ เดธเดเดธเดพเดฐเดฟเดเตเดเตเด TOAST เดเตเดฐเดฎเตเดเดฐเดฃเดเตเดเดณเตเด เดกเดพเดฑเตเดฑ เดตเดฟเดจเตเดฏเดพเดธเดตเตเด. "เดถเดฐเดพเดถเดฐเดฟ," เด เดฐเตเดคเดฟเดเตพ เดตเดณเดฐเตเดฏเดงเดฟเดเด เดตเดฟเดญเดตเดเตเดเตพ เดธเดเดฐเดเตเดทเดฟเดเตเดเดฟเดฒเตเดฒ, เดชเดเตเดทเต เดเดชเตเดฒเดฟเดเตเดเตเดทเตป เดเตเดกเต เดชเดฐเดฟเดทเตเดเดฐเดฟเดเตเดเดพเดคเต เดคเดจเตเดจเต.
เดเดจเตเดจเดฟเดฐเตเดจเตเดจเดพเดฒเตเด, เดเดเตเดเดณเตเดเต เด
เดจเตเดญเดตเด เดเดเตเดเดพเดฐเตเดฏเดคเตเดคเดฟเตฝ เดตเดณเดฐเต เดเตฝเดชเตเดชเดพเดฆเดจเดเตเดทเดฎเดฎเดพเดฏเดฟ เดฎเดพเดฑเดฟ, เดเดพเดฐเดฃเด เด
เดคเดฟเตปเตเดฑเต เดธเตเดตเดญเดพเดตเดฎเดจเตเดธเดฐเดฟเดเตเดเต เดเดคเตเดฐเต เดจเดฟเดฐเตเดเตเดทเดฃเดคเตเดคเดฟเตปเตเดฑเตเดฏเตเด เดธเดเดญเดฐเดฃเด เดเตเดเตเดคเดฒเตเด เด
เดจเตเดฌเดจเตเดงเดฎเดพเดฏเดฟ เดฎเดพเดคเตเดฐเด เดฐเตเดเดชเตเดชเตเดเตเดคเตเดคเดฟเดฏ เดกเดพเดฑเตเดฑเดฏเตเดเต เดเดพเดฐเตเดฏเดคเตเดคเดฟเตฝ. เดชเดเดฐเด เดกเดฟเดธเตเดเดฟเดฒเตเดเตเดเต เดเดดเตเดคเดพเตป เดกเดพเดฑเตเดฑเดพเดฌเตเดธเดฟเดจเต เดเดเตเดเดจเต เดชเด เดฟเดชเตเดชเดฟเดเตเดเดพเด เดเดจเตเดจเต เดจเดฟเดเตเดเตพ เดเดฟเดจเตเดคเดฟเดเตเดเตเดเดฏเดพเดฃเตเดเตเดเดฟเตฝ 200MB / เดธเตเดเตเดเดจเตเดฑเต เดชเดเตเดคเดฟ - เดฆเดฏเดตเดพเดฏเดฟ เดชเตเดเตเดเดฏเตเดเตเดเต เดเตเดดเดฟเตฝ.
เดตเดฒเดฟเดฏ เดกเดพเดฑเตเดฑเดฏเตเดเต เดเตเดฑเดฟเดฏ เดฐเดนเดธเตเดฏเดเตเดเตพ
เดเตเดฒเดฟ เดชเตเดฐเตเดซเตเตฝ เดชเตเดฐเดเดพเดฐเด
เดเตเดเดพเดคเต
โเดฑเตโ เดกเดพเดฑเตเดฑ เดเดดเตเดคเตเดจเตเดจ เดชเดเตเดเดฟเดเดเดณเดฟเดฒเตเดจเตเดจเดฟเตปเตเดฑเต เดเดเดจ เดจเตเดเตเดเดพเด - เด เดคเดพเดฏเดคเต, เดฒเตเดเต เดเตปเดเตเดฐเดฟเดฏเดฟเตฝ เดจเดฟเดจเตเดจเตเดณเตเดณ เดฏเดฅเดพเตผเดคเตเดฅ เดตเดพเดเดเด เดเดคเดพ:
CREATE TABLE rawdata_orig(
pack -- PK
uuid NOT NULL
, recno -- PK
smallint NOT NULL
, dt -- ะบะปัั ัะตะบัะธะธ
date
, data -- ัะฐะผะพะต ะณะปะฐะฒะฝะพะต
text
, PRIMARY KEY(pack, recno)
);
เดเดฐเต เดธเดพเดงเดพเดฐเดฃ เดเดฟเดนเตเดจเด (เดเดคเดฟเดจเดเด เดคเดจเตเดจเต เดตเดฟเดญเดพเดเตเดเดฐเดฟเดเตเดเดฟเดฐเดฟเดเตเดเตเดจเตเดจเต, เด เดคเดฟเดจเดพเตฝ เดเดคเต เดเดฐเต เดธเตเดเตเดทเตป เดเตเดเดชเตเดฒเตเดฑเตเดฑเต เดเดฃเต), เดเดตเดฟเดเต เดเดฑเตเดฑเดตเตเด เดชเตเดฐเดงเดพเดจเดชเตเดชเตเดเตเด เดเดพเดฐเตเดฏเด เดตเดพเดเดเดฎเดพเดฃเต. เดเดฟเดฒเดชเตเดชเตเตพ เดตเดณเดฐเต เดตเดฒเตเดคเดพเดฃเต.
เดเดฐเต เดชเดฟเดเดฟเดฏเดฟเดฒเต เดเดฐเต เดฑเตเดเตเดเตเตผเดกเดฟเตปเตเดฑเต โเดซเดฟเดธเดฟเดเตเดเตฝโ เดตเดฒเตเดชเตเดชเดคเตเดคเดฟเดจเต เดเดจเตเดจเดฟเดฒเดงเดฟเดเด เดชเตเดเต เดกเดพเดฑเตเดฑ เดเตพเดเตเดเตเดณเตเดณเดพเตป เดเดดเดฟเดฏเดฟเดฒเตเดฒ, เดเดจเตเดจเดพเตฝ โเดฒเตเดเดฟเดเตเดเตฝโ เดตเดฒเตเดชเตเดชเด เดคเดฟเดเดเตเดเตเด เดตเตเดฏเดคเตเดฏเดธเตเดคเดฎเดพเดฏ เดเดพเดฐเตเดฏเดฎเดพเดฃเต. เดเดฐเต เดซเตเตฝเดกเดฟเดฒเตเดเตเดเต เดเดฐเต เดตเตเดณเตเดฏเตเดฎเตเดเตเดฐเดฟเดเต เดฎเตเดฒเตเดฏเด (varchar/text/bytea) เดเดดเตเดคเดพเตป, เดเดชเดฏเตเดเดฟเดเตเดเตเด
PostgreSQL เดเดฐเต เดจเดฟเดถเตเดเดฟเดค เดชเตเดเต เดตเดฒเตเดชเตเดชเด เดเดชเดฏเตเดเดฟเดเตเดเตเดจเตเดจเต (เดธเดพเดงเดพเดฐเดฃเดฏเดพเดฏเดฟ 8 KB), เดเตเดเดพเดคเต เดเดจเตเดจเดฟเดฒเดงเดฟเดเด เดชเตเดเตเดเตพ เดตเตเดฏเดพเดชเดฟเดชเตเดชเดฟเดเตเดเดพเตป tuples-เดจเต เด เดจเตเดตเดฆเดฟเดเตเดเตเดจเตเดจเดฟเดฒเตเดฒ. เด เดคเดฟเดจเดพเตฝ, เดตเดณเดฐเต เดตเดฒเดฟเดฏ เดซเตเตฝเดกเต เดฎเตเดฒเตเดฏเดเตเดเตพ เดจเตเดฐเดฟเดเตเดเต เดธเดเดญเดฐเดฟเดเตเดเตเดจเตเดจเดคเต เด เดธเดพเดงเตเดฏเดฎเดพเดฃเต. เด เดชเดฐเดฟเดฎเดฟเดคเดฟ เดฎเดฑเดฟเดเดเดเตเดเดพเตป, เดตเดฒเดฟเดฏ เดซเตเตฝเดกเต เดฎเตเดฒเตเดฏเดเตเดเตพ เดเดเดชเตเดฐเดธเต เดเตเดฏเตเดฏเตเดเดฏเตเด เดเตเดเดพเดคเต/เด เดฒเตเดฒเตเดเตเดเดฟเตฝ เดเดจเตเดจเดฟเดฒเดงเดฟเดเด เดซเดฟเดธเดฟเดเตเดเตฝ เดฒเตเดจเตเดเดณเดฟเตฝ เดตเดฟเดญเดเดฟเดเตเดเตเดเดฏเตเด เดเตเดฏเตเดฏเตเดจเตเดจเต. เดเดคเต เดเดชเดฏเตเดเตเดคเดพเดตเดฟเตปเตเดฑเต เดถเตเดฐเดฆเตเดงเดฏเดฟเตฝเดชเตเดชเตเดเดพเดคเต เดธเดเดญเดตเดฟเดเตเดเตเดเดฏเตเด เดฎเดฟเดเตเด เดธเตเตผเดตเตผ เดเตเดกเตเดเดณเดฟเดฒเตเด เดเตเดฑเดฟเดฏ เดธเตเดตเดพเดงเตเดจเด เดเตเดฒเตเดคเตเดคเตเดเดฏเตเด เดเตเดฏเตเดฏเตเดจเตเดจเต. เด เดฐเตเดคเดฟ TOAST เดเดจเตเดจเดพเดฃเต เด เดฑเดฟเดฏเดชเตเดชเตเดเตเดจเตเดจเดคเต...
เดตเดพเดธเตเดคเดตเดคเตเดคเดฟเตฝ, "เดธเดพเดงเตเดฏเดคเดฏเตเดณเตเดณ" เดซเตเตฝเดกเตเดเดณเตเดณเตเดณ เดเดฒเตเดฒเดพ เดเตเดฌเดฟเดณเดฟเดจเตเด เดธเตเดตเดฏเดฎเตเดต
TOAST(
chunk_id
integer
, chunk_seq
integer
, chunk_data
bytea
, PRIMARY KEY(chunk_id, chunk_seq)
);
เด
เดคเดพเดฏเดคเต, "เดตเดฒเดฟเดฏ" เดฎเตเดฒเตเดฏเดฎเตเดณเตเดณ เดเดฐเต เดธเตเดเตเดฐเดฟเดเดเต เดเดดเตเดคเดฃเดฎเตเดเตเดเดฟเตฝ data
, เด
เดชเตเดชเตเตพ เดฏเดฅเดพเตผเดคเตเดฅ เดฑเตเดเตเดเตเตผเดกเดฟเดเดเต เดธเดเดญเดตเดฟเดเตเดเตเด เดชเตเดฐเดงเดพเดจ เดเตเดฌเดฟเดณเดฟเดฒเตเดเตเดเตเด เด
เดคเดฟเตปเตเดฑเต เดชเดฟเดเตเดฏเดฟเดฒเตเดเตเดเตเด เดฎเดพเดคเตเดฐเดฎเดฒเตเดฒ, เดเตเดธเตโเดฑเตเดฑเดฟเดฒเตเดเตเดเตเด เด
เดคเดฟเตปเตเดฑเต เดชเดฟเดเตเดฏเดฟเดฒเตเดเตเดเตเด.
TOAST เดธเตเดตเดพเดงเตเดจเด เดเตเดฑเดฏเตเดเตเดเตเดจเตเดจเต
เดเดจเตเดจเดพเตฝ เดเดเตเดเดณเตเดเต เดฎเดฟเดเตเด เดฑเตเดเตเดเตเตผเดกเตเดเดณเตเด เดเดชเตเดชเตเดดเตเด เด เดคเตเดฐ เดตเดฒเตเดคเดฒเตเดฒ, 8KB-เดฏเดฟเดฒเตเดเตเดเต เดฏเตเดเดฟเดชเตเดชเดฟเดเตเดเดฃเด - เดเดคเดฟเตฝ เดเดจเดฟเดเตเดเต เดเดเตเดเดจเต เดชเดฃเด เดฒเดพเดญเดฟเดเตเดเดพเด?..
เดเดตเดฟเดเตเดฏเดพเดฃเต เดเดเตเดฐเดฟเดฌเตเดฏเตเดเตเดเต เดจเดฎเตเดฎเตเดเต เดธเดนเดพเดฏเดคเตเดคเดฟเดจเต เดตเดฐเตเดจเตเดจเดคเต STORAGE
- เดตเดฟเดชเตเดฒเตเดเดฐเดฟเดเตเดเต เดเดเดชเตเดฐเดทเดจเตเด เดชเตเดฐเดคเตเดฏเตเด เดธเดเดญเดฐเดฃเดตเตเด เด เดจเตเดตเดฆเดฟเดเตเดเตเดจเตเดจเต. เด เดธเตเดฑเตเดฑเดพเตปเดกเตเตผเดกเต เดเดชเตเดทเตป เดฎเดฟเดเตเด เดเตเดธเตเดฑเตเดฑเต เดเดเดชเตเดฒเดฏเดฟเตปเตเดฑเต เดกเดพเดฑเตเดฑเดพ เดคเดฐเดเตเดเตพเดเตเดเตเด. เดเดคเต เดเดฆเตเดฏเด เดเดเดชเตเดฐเดทเตป เดจเดเดคเตเดคเดพเตป เดถเตเดฐเดฎเดฟเดเตเดเตเดจเตเดจเต, เดคเตเดเตผเดจเตเดจเต เดตเดฐเดฟ เดเดชเตเดชเตเดดเตเด เดตเดณเดฐเต เดตเดฒเตเดคเดพเดฃเตเดเตเดเดฟเตฝ เด เดคเต เดชเดเตเดเดฟเดเดฏเตเดเตเดเต เดชเตเดฑเดคเตเดคเต เดธเตเดเตเดทเดฟเดเตเดเตเดจเตเดจเต.
- เดเต เดเดเดชเตเดฐเดทเตป เด เดจเตเดตเดฆเดฟเดเตเดเตเดจเตเดจเต เดเดจเตเดจเดพเตฝ เดชเตเดฐเดคเตเดฏเตเด เดธเดเดญเดฐเดฃเดฎเดฒเตเดฒ. (เดตเดพเดธเตเดคเดตเดคเตเดคเดฟเตฝ, เด เดคเตเดคเดฐเด เดจเดฟเดฐเดเตพเดเตเดเดพเดฏเดฟ เดชเตเดฐเดคเตเดฏเตเด เดธเดเดญเดฐเดฃเด เดคเตเดเตผเดจเตเดจเตเด เดจเดเดชเตเดชเดฟเดฒเดพเดเตเดเตเด, เดชเดเตเดทเต เดฎเดพเดคเตเดฐเด เด เดตเดธเดพเดจ เดเดถเตเดฐเดฏเดฎเดพเดฏเดฟ, เดธเตเดเตเดฐเดฟเดเดเต เดเตเดฐเตเดเตเดเดพเตป เดฎเดฑเตเดฑเตเดฐเต เดฎเดพเตผเดเดตเตเดฎเดฟเดฒเตเดฒเดพเดคเตเดคเดชเตเดชเตเตพ เด เดคเต เดชเตเดเดฟเตฝ เดฏเตเดเดฟเดเตเดเตเด.)
เดตเดพเดธเตเดคเดตเดคเตเดคเดฟเตฝ, เดเตเดเตเดธเตเดฑเตเดฑเดฟเดจเดพเดฏเดฟ เดจเดฎเตเดเตเดเต เดตเตเดฃเตเดเดคเต เดเดคเดพเดฃเต - เดเดคเต เดเดดเดฟเดฏเตเดจเตเดจเดคเตเดฐ เดเดเดชเตเดฐเดธเต เดเตเดฏเตเดฏเตเด, เด เดคเต เดเดเตเดเตเด เดฏเตเดเดฟเดเตเดเตเดจเตเดจเดฟเดฒเตเดฒเตเดเตเดเดฟเตฝ, เด เดคเต เดเตเดธเตเดฑเตเดฑเดฟเตฝ เดเดเตเด. เดเดฐเต เดเดฎเดพเตปเดกเต เดเดชเดฏเตเดเดฟเดเตเดเต เดเดคเต เดซเตเดฒเตเดฏเดฟเตฝ เดจเตเดฐเดฟเดเตเดเต เดเตเดฏเตเดฏเดพเด:
ALTER TABLE rawdata_orig ALTER COLUMN data SET STORAGE MAIN;
เดชเตเดฐเดญเดพเดตเด เดเดเตเดเดจเต เดตเดฟเดฒเดฏเดฟเดฐเตเดคเตเดคเดพเด
เดกเดพเดฑเตเดฑเดพ เดซเตเดฒเต เดเดฐเต เดฆเดฟเดตเดธเดตเตเด เดฎเดพเดฑเตเดจเตเดจเดคเดฟเดจเดพเตฝ, เดจเดฎเตเดเตเดเต เดเตเดตเดฒ เดธเดเดเตเดฏเดเดณเต เดคเดพเดฐเดคเดฎเตเดฏเด เดเตเดฏเตเดฏเดพเตป เดเดดเดฟเดฏเดฟเดฒเตเดฒ, เดชเดเตเดทเต เดเดชเตเดเตเดทเดฟเดเดฎเดพเดฏเดฟ เดเตเดฑเดฟเดฏ เดชเดเตเดเต เดเดเตเดเตพ เด เดคเต เดเตเดธเตเดฑเตเดฑเดฟเตฝ เดเดดเตเดคเดฟ - เด เดคเตเดฐเดฏเตเด เดจเดฒเตเดฒเดคเต. เดเดจเตเดจเดพเตฝ เดเดตเดฟเดเต เดเดฐเต เด เดชเดเดเดฎเตเดฃเตเดเต - เดเดฐเต เดตเตเดฏเดเตเดคเดฟเดเดค เดฑเตเดเตเดเตเตผเดกเดฟเตปเตเดฑเตเดฏเตเด "เดซเดฟเดธเดฟเดเตเดเตฝ" เดตเตเดณเดฟเดฏเด เดตเดฒเตเดคเดพเดเตเดฎเตเดชเตเตพ, เดธเตเดเดฟเด "เดตเดฟเดถเดพเดฒเดฎเดพเดฏเดฟ" เดฎเดพเดฑเตเดจเตเดจเต, เดเดพเดฐเดฃเด เดเดเตเดเตพเดเตเดเต เดเตเดเตเดคเตฝ เดกเดพเดฑเตเดฑ เดชเตเดเตเดเตพ เดจเตฝเดเตเดฃเตเดเดคเตเดฃเตเดเต.
เดตเดฟเดญเดพเดเด เดฎเดพเดฑเตเดฑเดเตเดเตพเดเตเดเต เดฎเตเดฎเตเดชเต:
heap = 37GB (39%)
TOAST = 54GB (57%)
PK = 4GB ( 4%)
เดตเดฟเดญเดพเดเด เดฎเดพเดฑเตเดฑเดเตเดเตพเดเตเดเต เดถเตเดทเด:
heap = 37GB (67%)
TOAST = 16GB (29%)
PK = 2GB ( 4%)
เดตเดพเดธเตเดคเดตเดคเตเดคเดฟเตฝ, เดเดเตเดเตพ TOAST เดฒเตเดเตเดเต 2 เดฎเดเดเตเดเต เดเตเดฑเดเตเดเต เดคเดตเดฃ เดเดดเตเดคเดพเตป เดคเตเดเดเตเดเดฟ, เดเดคเต เดกเดฟเดธเตเดเต เดฎเดพเดคเตเดฐเดฎเดฒเตเดฒ, เดธเดฟเดชเดฟเดฏเตเดตเตเด เด เตบเดฒเตเดกเต เดเตเดฏเตเดคเต:
"เดเดดเตเดคเตเดคเต" เดฎเดพเดคเตเดฐเดฎเดฒเตเดฒ, เดกเดฟเดธเตเดเต "เดตเดพเดฏเดจ" เดเตเดฏเตเดฏเตเดจเตเดจเดคเดฟเดฒเตเด เดเดเตเดเตพ เดเตเดฑเตเดคเดพเดฏเดฟเดฐเดฟเดเตเดเตเดจเตเดจเตเดตเตเดจเตเดจเต เดเดพเตป เดถเตเดฐเดฆเตเดงเดฟเดเตเดเตเด - เดเดฐเต เดชเดเตเดเดฟเดเดฏเดฟเตฝ เดเดฐเต เดฑเตเดเตเดเตเตผเดกเต เดเตเตผเดเตเดเตเดฎเตเดชเตเตพ, เดเดฐเต เดธเตเดเดฟเดเดฏเตเดเตเดฏเตเด เดตเตเดเตเดทเดคเตเดคเดฟเตปเตเดฑเต เดเดฐเต เดญเดพเดเด เดจเดฟเตผเดฃเตเดฃเดฏเดฟเดเตเดเดพเตป เดเดเตเดเตพ "เดตเดพเดฏเดฟเดเตเดเตเดฃเตเดเดคเตเดฃเตเดเต" เด
เดตเดฏเดฟเตฝ เดญเดพเดตเดฟ เดธเตเดฅเดพเดจเด.
PostgreSQL 11-เตฝ เดเตผเดเตเดเตเดเตเดเต เดจเดจเตเดจเดพเดฏเดฟ เดเตเดตเดฟเดเตเดเดพเดจเดพเดเตเด
PG11-เดฒเตเดเตเดเต เด
เดชเตโเดกเตเดฑเตเดฑเต เดเตเดฏเตโเดค เดถเตเดทเด, TOAST โเดเตเดฏเตเดฃเดฟเดเดเตโ เดคเตเดเดฐเดพเตป เดเดเตเดเตพ เดคเตเดฐเตเดฎเดพเดจเดฟเดเตเดเต, เด เดชเดคเดฟเดชเตเดชเดฟเตฝ เดจเดฟเดจเตเดจเต เดชเดพเดฐเดพเดฎเตเดฑเตเดฑเตผ เดเดฐเดเดญเดฟเดเตเดเตเดจเตเดจเดคเต เดถเตเดฐเดฆเตเดงเดฟเดเตเดเต toast_tuple_target
เดชเดเตเดเดฟเดเดฏเดฟเตฝ เดธเดเดญเดฐเดฟเดเตเดเตเดฃเตเด เดตเดฐเดฟ เดฎเตเดฒเตเดฏเด TOAST_TUPLE_THRESHOLD เดฌเตเดฑเตเดฑเตเดเดณเตเดเตเดเดพเตพ (เดธเดพเดงเดพเดฐเดฃเดฏเดพเดฏเดฟ 2 KB) เดตเดฒเตเดคเดพเดฏเดฟเดฐเดฟเดเตเดเตเดฎเตเดชเตเตพ เดฎเดพเดคเตเดฐเดฎเต TOAST เดชเตเดฐเตเดธเดธเตเดธเดฟเดเดเต เดเตเดกเต เดชเตเดฐเดตเตผเดคเตเดคเดฟเดเตเดเต. เดตเดฐเดฟเดฏเตเดเต เดฎเตเดฒเตเดฏเด TOAST_TUPLE_TARGET เดฌเตเดฑเตเดฑเตเดเดณเตเดเตเดเดพเตพ (เดตเตเดฐเดฟเดฏเดฌเดฟเตพ เดฎเตเดฒเตเดฏเด, เดธเดพเดงเดพเดฐเดฃเดฏเดพเดฏเดฟ 2 KB) เดเตเดฑเดฏเตเดจเตเดจเดคเต เดตเดฐเต เด เดฒเตเดฒเตเดเตเดเดฟเตฝ เดตเดฒเตเดชเตเดชเด เดเตเดฑเดฏเตเดเตเดเดพเตป เดเดดเดฟเดฏเดพเดคเตเดคเดคเต เดตเดฐเต TOAST เดเตเดกเต เดซเตเตฝเดกเต เดฎเตเดฒเตเดฏเดเตเดเตพ เดเดเดชเตเดฐเดธเตเดธเตเดเตเดฏเตเดฏเตเดเดฏเตเด เดเตเดเดพเดคเต/เด เดฒเตเดฒเตเดเตเดเดฟเตฝ เดชเดเตเดเดฟเดเดฏเดฟเตฝ เดจเดฟเดจเตเดจเต เดจเตเดเตเดเตเดเดฏเตเด เดเตเดฏเตเดฏเตเด.
เดธเดพเดงเดพเดฐเดฃเดฏเดพเดฏเดฟ เดเดเตเดเดณเตเดเต เดชเดเตเดเดฒเตเดณเตเดณ เดกเดพเดฑเตเดฑ เดเดจเตเดจเตเดเดฟเตฝ "เดตเดณเดฐเต เดเตเดฑเตเดคเต" เด เดฒเตเดฒเตเดเตเดเดฟเตฝ "เดตเดณเดฐเต เดจเตเดฃเตเดเดคเต" เดเดฃเตเดจเตเดจเต เดเดเตเดเตพ เดคเตเดฐเตเดฎเดพเดจเดฟเดเตเดเต, เด เดคเดฟเดจเดพเตฝ เดธเดพเดงเตเดฏเดฎเดพเดฏ เดเดฑเตเดฑเดตเตเด เดเตเดฑเดเตเด เดฎเตเดฒเตเดฏเดคเตเดคเดฟเดฒเตเดเตเดเต เดธเตเดตเดฏเด เดชเดฐเดฟเดฎเดฟเดคเดชเตเดชเตเดเตเดคเตเดคเดพเตป เดเดเตเดเตพ เดคเตเดฐเตเดฎเดพเดจเดฟเดเตเดเต:
ALTER TABLE rawplan_orig SET (toast_tuple_target = 128);
เดตเตเดฃเตเดเตเด เดเตเตบเดซเดฟเดเดฑเตเดทเดจเตเดถเตเดทเด เดชเตเดคเดฟเดฏ เดเตเดฐเดฎเตเดเดฐเดฃเดเตเดเตพ เดกเดฟเดธเตเดเต เดฒเตเดกเดฟเดเดเดฟเดจเต เดเดเตเดเดจเต เดฌเดพเดงเดฟเดเตเดเตเดตเตเดจเตเดจเต เดจเตเดเตเดเดพเด:
เดฎเตเดพเดถเดฎเดฒเตเดฒ! เดถเดฐเดพเดถเดฐเดฟ เดกเดฟเดธเตเดเดฟเดฒเตเดเตเดเตเดณเตเดณ เดเตเดฏเต เดเตเดฑเดเตเดเต เดเดเดฆเตเดถเด 1.5 เดคเดตเดฃ, เดกเดฟเดธเตเดเต "เดคเดฟเดฐเดเตเดเดฟเดฒเดพเดฃเต" 20 เดถเดคเดฎเดพเดจเด! เดเดจเตเดจเดพเตฝ เดเดคเต เดเดเตเดเดจเตเดฏเตเดเตเดเดฟเดฒเตเด เดธเดฟเดชเดฟเดฏเตเดตเดฟเดจเต เดฌเดพเดงเดฟเดเตเดเดฟเดฐเดฟเดเตเดเตเดฎเต?
เดเตเดฑเดเตเดเดคเต เดฎเตเดถเดฎเดพเดฏเดฟเดฒเตเดฒ. เดเดจเตเดจเดฟเดฐเตเดจเตเดจเดพเดฒเตเด, เด
เดคเตเดคเดฐเด เดตเตเดณเตเดฏเดเตเดเตพเดเตเดเต เดชเตเดฒเตเด เดถเดฐเดพเดถเดฐเดฟ เดธเดฟเดชเดฟเดฏเต เดฒเตเดกเต เดเดฏเตผเดคเตเดคเดพเตป เดเดดเดฟเดฏเตเดจเตเดจเดฟเดฒเตเดฒเตเดเตเดเดฟเตฝ เดตเดฟเดฒเดฏเดฟเดฐเตเดคเตเดคเดพเตป เดชเตเดฐเดฏเดพเดธเดฎเดพเดฃเต 5%.
เดจเดฟเดฌเดจเตเดงเดจเดเดณเตเดเต เดธเตเดฅเดฒเดเตเดเตพ เดฎเดพเดฑเตเดฑเตเดจเตเดจเดคเดฟเดฒเตเดเต, เดคเตเด... เดฎเดพเดฑเตเดจเตเดจเต!
เดจเดฟเดเตเดเตพเดเตเดเดฑเดฟเดฏเดพเดตเตเดจเตเดจเดคเตเดชเตเดฒเต, เดเดฐเต เดเดฟเดฒเตเดฒเดฟเดเตเดเดพเดถเตเด เดเดฐเต เดฑเตเดฌเดฟเตพ เดฒเดพเดญเดฟเดเตเดเตเดจเตเดจเต, เดเดเตเดเดณเตเดเต เดธเดเดญเดฐเดฃ โโเดตเตเดณเตเดฏเดเตเดเตพเดเตเดเตเดชเตเดชเด เด เดคเต เดเดเดฆเตเดถเด 10TB/เดฎเดพเดธเด เดเดฐเต เดเตเดฑเดฟเดฏ เดเดชเตเดฑเตเดฑเดฟเดฎเตเดธเตเดทเตป เดชเตเดฒเตเด เดจเดฒเตเดฒ เดฒเดพเดญเด เดจเตฝเดเตเด. เด เดคเดฟเดจเดพเตฝ, เดเดเตเดเดณเตเดเต เดกเดพเดฑเตเดฑเดฏเตเดเต เดญเตเดคเดฟเด เดเดเดจ เดเดเตเดเตพ เดถเตเดฐเดฆเตเดงเดฟเดเตเดเต - เดเดคเตเดฐ เดเตเดคเตเดฏเดฎเดพเดฏเดฟ เดฑเตเดเตเดเตเตผเดกเดฟเดจเตเดณเตเดณเดฟเตฝ "เดธเดเตเดเดฟเดค" เดซเตเตฝเดกเตเดเตพ เดเดฐเต เดฎเตเดถเดเดณเตเด.
เดเดพเดฐเดฃเด
เดชเดฒ เดเตผเดเตเดเดฟเดเตเดเตเดเดฑเตเดเดณเตเด เดฎเตเดทเตเตป เดตเตเดกเต เดฌเตเดฃเตเดเดฑเดฟเดเดณเดฟเตฝ เดกเดพเดฑเตเดฑ เดตเดฟเดจเตเดฏเดพเดธเด เดจเตฝเดเตเดจเตเดจเต. เดเดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, เดเดฐเต 32-เดฌเดฟเดฑเตเดฑเต x86 เดธเดฟเดธเตเดฑเตเดฑเดคเตเดคเดฟเตฝ, เดชเตเตผเดฃเตเดฃเดธเดเดเตเดฏเดเตพ (เดชเตเตผเดฃเตเดฃเดธเดเดเตเดฏ เดคเดฐเด, 4 เดฌเตเดฑเตเดฑเตเดเตพ) เดเดฐเต 4-เดฌเตเดฑเตเดฑเต เดตเตเดกเต เดฌเตเดฃเตเดเดฑเดฟเดฏเดฟเตฝ เดตเดฟเดจเตเดฏเดธเดฟเดเตเดเตเด, เด เดคเตเดชเตเดฒเต เดเดฐเดเตเด เดชเตเดฐเดฟเดธเดฟเดทเตป เดซเตเดฒเตเดเตเดเดฟเดเดเต เดชเตเดฏเดฟเตปเตเดฑเต เดจเดฎเตเดชเดฑเตเดเตพ (เดกเดฌเดฟเตพ เดชเตเดฐเดฟเดธเดฟเดทเตป เดซเตเดฒเตเดเตเดเดฟเดเดเต เดชเตเดฏเดฟเตปเตเดฑเต, 8 เดฌเตเดฑเตเดฑเตเดเตพ). เดเดฐเต 64-เดฌเดฟเดฑเตเดฑเต เดธเดฟเดธเตเดฑเตเดฑเดคเตเดคเดฟเตฝ, เดเดฐเดเตเด เดฎเตเดฒเตเดฏเดเตเดเตพ 8-เดฌเตเดฑเตเดฑเต เดตเตเดกเต เดฌเตเดฃเตเดเดฑเดฟเดเดณเดฟเดฒเตเดเตเดเต เดตเดฟเดจเตเดฏเดธเดฟเดเตเดเตเด. เดเดคเต เดชเตเดฐเตเดคเตเดคเดเตเดเตเดเดฟเตปเตเดฑเต เดฎเดฑเตเดฑเตเดฐเต เดเดพเดฐเดฃเดฎเดพเดฃเต.
เดตเดฟเดจเตเดฏเดพเดธเด เดเดพเดฐเดฃเด, เดเดฐเต เดชเดเตเดเดฟเด เดตเดฐเดฟเดฏเตเดเต เดตเดฒเตเดชเตเดชเด เดซเตเตฝเดกเตเดเดณเตเดเต เดเตเดฐเดฎเดคเตเดคเต เดเดถเตเดฐเดฏเดฟเดเตเดเดฟเดฐเดฟเดเตเดเตเดจเตเดจเต. เดธเดพเดงเดพเดฐเดฃเดฏเดพเดฏเดฟ เด เดชเตเดฐเดญเดพเดตเด เดตเดณเดฐเต เดถเตเดฐเดฆเตเดงเตเดฏเดฎเดฒเตเดฒ, เดเดจเตเดจเดพเตฝ เดเดฟเดฒ เดธเดจเตเดฆเตผเดญเดเตเดเดณเดฟเตฝ เดเดคเต เดตเดฒเตเดชเตเดชเดคเตเดคเดฟเตฝ เดเดฃเตเดฏเดฎเดพเดฏ เดตเตผเดฆเตเดงเดจเดตเดฟเดจเต เดเดพเดฐเดฃเดฎเดพเดเตเด. เดเดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, เดจเดฟเดเตเดเตพ char(1) เดเด เดชเตเตผเดฃเตเดฃเดธเดเดเตเดฏ เดซเตเตฝเดกเตเดเดณเตเด เดฎเดฟเดเตเดธเต เดเตเดฏเตเดฏเตเดเดฏเดพเดฃเตเดเตเดเดฟเตฝ, เด เดตเดฏเตเดเตเดเดฟเดเดฏเดฟเตฝ เดธเดพเดงเดพเดฐเดฃเดฏเดพเดฏเดฟ 3 เดฌเตเดฑเตเดฑเตเดเตพ เดชเดพเดดเดพเดฏเดฟเดชเตเดชเตเดเตเด.
เดธเดฟเดจเตเดคเดฑเตเดฑเดฟเดเต เดฎเตเดกเดฒเตเดเดณเดฟเตฝ เดจเดฟเดจเตเดจเต เดจเดฎเตเดเตเดเต เดเดฐเดเดญเดฟเดเตเดเดพเด:
SELECT pg_column_size(ROW(
'0000-0000-0000-0000-0000-0000-0000-0000'::uuid
, 0::smallint
, '2019-01-01'::date
));
-- 48 ะฑะฐะนั
SELECT pg_column_size(ROW(
'2019-01-01'::date
, '0000-0000-0000-0000-0000-0000-0000-0000'::uuid
, 0::smallint
));
-- 46 ะฑะฐะนั
เดเดฆเตเดฏ เดเตเดธเดฟเตฝ เดฐเดฃเตเดเต เด เดงเดฟเด เดฌเตเดฑเตเดฑเตเดเตพ เดเดตเดฟเดเต เดจเดฟเดจเตเดจเต เดตเดจเตเดจเต? เดเดคเต เดฒเดณเดฟเดคเดฎเดพเดฃเต - 2-เดฌเตเดฑเตเดฑเต เดธเตเดฎเตเตพเดฒเดฟเตปเตเดฑเต 4-เดฌเตเดฑเตเดฑเต เด เดคเดฟเตผเดคเตเดคเดฟเดฏเดฟเตฝ เดตเดฟเดจเตเดฏเดธเดฟเดเตเดเต เด เดเตเดคเตเดค เดซเตเตฝเดกเดฟเดจเต เดฎเตเดฎเตเดชเดพเดฏเดฟ, เด เดคเต เด เดตเดธเดพเดจเดคเตเดคเตเดคเดพเดฏเดฟเดฐเดฟเดเตเดเตเดฎเตเดชเตเตพ, เดเดจเตเดจเตเดฎเดฟเดฒเตเดฒ, เดตเดฟเดจเตเดฏเดธเดฟเดเตเดเตเดฃเตเดเดคเดฟเดฒเตเดฒ.
เดธเดฟเดฆเตเดงเดพเดจเตเดคเดคเตเดคเดฟเตฝ, เดเดฒเตเดฒเดพเด เดถเดฐเดฟเดฏเดพเดฃเต, เดจเดฟเดเตเดเตพเดเตเดเต เดเดทเตเดเดฎเตเดณเตเดณ เดซเตเตฝเดกเตเดเตพ เดชเตเดจเดเดเตเดฐเดฎเตเดเดฐเดฟเดเตเดเดพเตป เดเดดเดฟเดฏเตเด. เดชเดเตเดเดฟเดเดเดณเดฟเดฒเตเดจเตเดจเดฟเตปเตเดฑเต เดเดฆเดพเดนเดฐเดฃเด เดเดชเดฏเตเดเดฟเดเตเดเต เดฏเดฅเดพเตผเดคเตเดฅ เดกเดพเดฑเตเดฑเดฏเดฟเตฝ เดเดคเต เดชเดฐเดฟเดถเตเดงเดฟเดเตเดเดพเด, เด เดคเดฟเตปเตเดฑเต เดชเตเดฐเดคเดฟเดฆเดฟเดจ เดตเดฟเดญเดพเดเด 10-15GB เดเตพเดเตเดเตเดณเตเดณเตเดจเตเดจเต.
เดชเตเดฐเดพเดฐเดเดญ เดเดเดจ:
CREATE TABLE public.plan_20190220
(
-- ะฃะฝะฐัะปะตะดะพะฒะฐะฝะฐ from table plan: pack uuid NOT NULL,
-- ะฃะฝะฐัะปะตะดะพะฒะฐะฝะฐ from table plan: recno smallint NOT NULL,
-- ะฃะฝะฐัะปะตะดะพะฒะฐะฝะฐ from table plan: host uuid,
-- ะฃะฝะฐัะปะตะดะพะฒะฐะฝะฐ from table plan: ts timestamp with time zone,
-- ะฃะฝะฐัะปะตะดะพะฒะฐะฝะฐ from table plan: exectime numeric(32,3),
-- ะฃะฝะฐัะปะตะดะพะฒะฐะฝะฐ from table plan: duration numeric(32,3),
-- ะฃะฝะฐัะปะตะดะพะฒะฐะฝะฐ from table plan: bufint bigint,
-- ะฃะฝะฐัะปะตะดะพะฒะฐะฝะฐ from table plan: bufmem bigint,
-- ะฃะฝะฐัะปะตะดะพะฒะฐะฝะฐ from table plan: bufdsk bigint,
-- ะฃะฝะฐัะปะตะดะพะฒะฐะฝะฐ from table plan: apn uuid,
-- ะฃะฝะฐัะปะตะดะพะฒะฐะฝะฐ from table plan: ptr uuid,
-- ะฃะฝะฐัะปะตะดะพะฒะฐะฝะฐ from table plan: dt date,
CONSTRAINT plan_20190220_pkey PRIMARY KEY (pack, recno),
CONSTRAINT chck_ptr CHECK (ptr IS NOT NULL),
CONSTRAINT plan_20190220_dt_check CHECK (dt = '2019-02-20'::date)
)
INHERITS (public.plan)
เดจเดฟเดฐ เดเตเดฐเดฎเด เดฎเดพเดฑเตเดฑเดฟเดฏเดคเดฟเดจเต เดถเตเดทเดฎเตเดณเตเดณ เดตเดฟเดญเดพเดเด - เดเตเดคเตเดฏเดฎเดพเดฏเดฟ เดเดฐเต เดซเตเตฝเดกเตเดเตพ, เดตเตเดฏเดคเตเดฏเดธเตเดค เดเตเดฐเดฎเด:
CREATE TABLE public.plan_20190221
(
-- ะฃะฝะฐัะปะตะดะพะฒะฐะฝะฐ from table plan: dt date NOT NULL,
-- ะฃะฝะฐัะปะตะดะพะฒะฐะฝะฐ from table plan: ts timestamp with time zone,
-- ะฃะฝะฐัะปะตะดะพะฒะฐะฝะฐ from table plan: pack uuid NOT NULL,
-- ะฃะฝะฐัะปะตะดะพะฒะฐะฝะฐ from table plan: recno smallint NOT NULL,
-- ะฃะฝะฐัะปะตะดะพะฒะฐะฝะฐ from table plan: host uuid,
-- ะฃะฝะฐัะปะตะดะพะฒะฐะฝะฐ from table plan: apn uuid,
-- ะฃะฝะฐัะปะตะดะพะฒะฐะฝะฐ from table plan: ptr uuid,
-- ะฃะฝะฐัะปะตะดะพะฒะฐะฝะฐ from table plan: bufint bigint,
-- ะฃะฝะฐัะปะตะดะพะฒะฐะฝะฐ from table plan: bufmem bigint,
-- ะฃะฝะฐัะปะตะดะพะฒะฐะฝะฐ from table plan: bufdsk bigint,
-- ะฃะฝะฐัะปะตะดะพะฒะฐะฝะฐ from table plan: exectime numeric(32,3),
-- ะฃะฝะฐัะปะตะดะพะฒะฐะฝะฐ from table plan: duration numeric(32,3),
CONSTRAINT plan_20190221_pkey PRIMARY KEY (pack, recno),
CONSTRAINT chck_ptr CHECK (ptr IS NOT NULL),
CONSTRAINT plan_20190221_dt_check CHECK (dt = '2019-02-21'::date)
)
INHERITS (public.plan)
เดตเดฟเดญเดพเดเดคเตเดคเดฟเตปเตเดฑเต เดเดเต เด
เดณเดตเต เดจเดฟเตผเดฃเตเดฃเดฏเดฟเดเตเดเตเดจเตเดจเดคเต "เดตเดธเตเดคเตเดคเดเดณเตเดเต" เดเดฃเตเดฃเด เด
เดจเตเดธเดฐเดฟเดเตเดเดพเดฃเต, เด
เดคเต เดฌเดพเดนเตเดฏ เดชเตเดฐเดเตเดฐเดฟเดฏเดเดณเต เดฎเดพเดคเตเดฐเด เดเดถเตเดฐเดฏเดฟเดเตเดเดฟเดฐเดฟเดเตเดเตเดจเตเดจเต, เด
เดคเดฟเดจเดพเตฝ เดจเดฎเตเดเตเดเต เดเตเดฎเตเดชเดพเดฐเดคเตเดคเดฟเตปเตเดฑเต เดตเดฒเตเดชเตเดชเด เดตเดฟเดญเดเดฟเดเตเดเดพเด (pg_relation_size
) เด
เดคเดฟเดฒเต เดฑเตเดเตเดเตเตผเดกเตเดเดณเตเดเต เดเดฃเตเดฃเด เด
เดจเตเดธเดฐเดฟเดเตเดเต - เด
เดคเดพเดฏเดคเต, เดจเดฎเตเดเตเดเต เดฒเดญเดฟเดเตเดเตเด เดฏเดฅเดพเตผเดคเตเดฅ เดธเดเดญเดฐเดฟเดเตเด เดฑเตเดเตเดเตเตผเดกเดฟเตปเตเดฑเต เดถเดฐเดพเดถเดฐเดฟ เดตเดฒเดฟเดชเตเดชเด:
เดฎเตเดจเดธเต 6% เดตเตเดณเดฟเดฏเด, เดเตเดณเตเดณเดพเด!
เดเดจเตเดจเดพเตฝ เดเดฒเตเดฒเดพเด, เดคเตเตผเดเตเดเดฏเดพเดฏเตเด, เด
เดคเตเดฐ เดฑเตเดธเดฟ เด
เดฒเตเดฒ - เดเดฒเตเดฒเดพเดคเตเดคเดฟเดจเตเดฎเตเดชเดฐเดฟ, เดธเตเดเดฟเดเดเดณเดฟเตฝ เดจเดฎเตเดเตเดเต เดซเตเตฝเดกเตเดเดณเตเดเต เดเตเดฐเดฎเด เดฎเดพเดฑเตเดฑเดพเตป เดเดดเดฟเดฏเดฟเดฒเตเดฒ, เด
เดคเดฟเดจเดพเตฝ "เดชเตเดคเตเดตเดพเดฏเดฟ" (pg_total_relation_size
)โฆ
...เดเดชเตเดชเตเดดเตเด เดเดตเดฟเดเตเดฏเตเดฃเตเดเต 1.5% เดฒเดพเดญเดฟเดเตเดเตเดเตเดกเดฟเตปเตเดฑเต เดเดฐเต เดตเดฐเดฟ เดชเตเดฒเตเด เดฎเดพเดฑเตเดฑเดพเดคเต. เด
เดคเต เด
เดคเต!
เดซเตเตฝเดกเตเดเตพ เดเตเดฐเดฎเตเดเดฐเดฟเดเตเดเตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดฎเตเดเดณเดฟเดฒเตเดณเตเดณ เดเดชเตเดทเตป เด
เดคเต เดเดฑเตเดฑเดตเตเด เดเดชเตเดฑเตเดฑเดฟเดฎเตฝ เดเดฃเตเดจเตเดจ เดตเดธเตเดคเตเดคเดฏเดฒเตเดฒเตเดจเตเดจเต เดเดพเตป เดถเตเดฐเดฆเตเดงเดฟเดเตเดเตเดจเตเดจเต. เดธเตเดจเตเดฆเดฐเตเดฏเดชเดฐเดฎเดพเดฏ เดเดพเดฐเดฃเดเตเดเดณเดพเตฝ เดเดฟเดฒ เดซเตเตฝเดกเตเดเตพ "เดเตเดฑเดพเตป" เดจเดฟเดเตเดเตพ เดเดเตเดฐเดนเดฟเดเตเดเตเดจเตเดจเดฟเดฒเตเดฒ - เดเดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, เดเดฐเต เดฆเดฎเตเดชเดคเดฟเดเตพ (pack, recno)
, เด เดเตเดฌเดฟเดณเดฟเตปเตเดฑเต เดชเดฟ.เดเต.
เดชเตเดคเตเดตเต, เดซเตเตฝเดกเตเดเดณเตเดเต "เดฎเดฟเดจเดฟเดฎเด" เดเตเดฐเดฎเตเดเดฐเดฃเด เดจเดฟเตผเดฃเตเดฃเดฏเดฟเดเตเดเตเดจเตเดจเดคเต เดตเดณเดฐเต เดฒเดณเดฟเดคเดฎเดพเดฏ เดเดฐเต "เดฌเตเดฐเตเดเตเดเต เดซเตเดดเตเดธเต" เดเดฃเต. เด
เดคเดฟเดจเดพเตฝ, เดเดเตเดเดณเตเดเตเดคเดฟเดจเตเดเตเดเดพเตพ เดฎเดฟเดเดเตเด เดซเดฒเดเตเดเตพ เดจเดฟเดเตเดเดณเตเดเต เดกเดพเดฑเตเดฑเดฏเดฟเตฝ เดจเดฟเดจเตเดจเต เดจเดฟเดเตเดเตพเดเตเดเต เดฒเดญเดฟเดเตเดเตเด - เดเดคเต เดชเดฐเตเดเตเดทเดฟเดเตเดเตเด!
เด
เดตเดฒเดเดฌเด: www.habr.com