เดฒเดพเดฑเตเดฑเดฟเดจเดฟเตฝ เดจเดฟเดจเตเดจเต เดตเดฟเดตเตผเดคเตเดคเดจเด เดเตเดฏเตเดค เดเดเตเดเดฟเดจเตเดฏเตผ เดเดจเตเดจเดพเตฝ เดชเตเดฐเดเตเดฆเดจเด เดเตพเดเตเดเตเดฃเตเดเดคเต เดเดจเตเดจเดพเดฃเต.
เดเดฐเต เดเดเตเดเดฟเดจเตเดฏเตผเดเตเดเต เดเดจเตเดคเตเด เดเตเดฏเตเดฏเดพเตป เดเดดเดฟเดฏเตเด. (เดธเดฟ) เดเตผ. เดกเตเดธเตฝ.
เดเดชเตเดชเดฟเดเตเดฐเดพเดซเตเดเตพ.

เด
เดฒเตเดฒเตเดเตเดเดฟเตฝ เดเดฐเต เดกเดพเดฑเตเดฑเดพเดฌเตเดธเต เด
เดกเตเดฎเดฟเดจเดฟเดธเตเดเตเดฐเตเดฑเตเดฑเตผ เดเดฐเต เดชเตเดฐเตเดเตเดฐเดพเดฎเตผ เดเดจเตเดจ เดจเดฟเดฒเดฏเดฟเตฝ เดคเดจเตเดฑเต เดญเตเดคเดเดพเดฒเด เดเตผเดฎเตเดฎเดฟเดเตเดเตเดฃเตเดเดคเดฟเดจเตเดฑเต เดเดตเดถเตเดฏเดเดคเดฏเตเดเตเดเตเดฑเดฟเดเตเดเตเดณเตเดณ เดเดฐเต เดเดฅ.
เดฎเตเตปเดตเดพเดเดเด
เดเดฒเตเดฒเดพ เดชเตเดฐเตเดเดณเตเด เดฎเดพเดฑเตเดฑเดฟเดฏเดฟเดฐเดฟเดเตเดเตเดจเตเดจเต. เดฏเดพเดฆเตเดถเตเดเดฟเดเดคเดเตพ เดฏเดพเดฆเตเดถเตเดเดฟเดเดฎเดพเดฃเต. เด เดฎเตเดฑเตเดฑเตเดฐเดฟเดฏเตฝ เดฐเดเดฏเดฟเดคเดพเดตเดฟเดจเตเดฑเต เดตเตเดฏเดเตเดคเดฟเดชเดฐเดฎเดพเดฏ เด เดญเดฟเดชเตเดฐเดพเดฏเด เดฎเดพเดคเตเดฐเดฎเดพเดฃเต เดชเตเดฐเดคเดฟเดจเดฟเดงเตเดเดฐเดฟเดเตเดเตเดจเตเดจเดคเต.
เดตเดพเดฑเดฃเตเดเดฟเดเดณเตเดเต เดจเดฟเดฐเดพเดเดฐเดฃเด: เดเดธเตเดคเตเดฐเดฃเด เดเตเดฏเตเดค เดฒเตเดเดจ เดชเดฐเดฎเตเดชเดฐเดฏเดฟเตฝ เดเดชเดฏเตเดเดฟเดเตเดเตเดจเตเดจ เดชเดเตเดเดฟเดเดเดณเตเดเตเดฏเตเด เดธเตเดเตเดฐเดฟเดชเตเดฑเตเดฑเตเดเดณเตเดเตเดฏเตเด เดตเดฟเดถเดฆเดตเตเด เดเตเดคเตเดฏเดตเตเดฎเดพเดฏ เดตเดฟเดตเดฐเดฃเด เดเตพเดชเตเดชเตเดเตเดคเตเดคเดฟเดฒเตเดฒ. เดฎเตเดฑเตเดฑเตเดฐเดฟเดฏเดฒเตเดเตพ "เดเดณเตเดณเดคเตเดชเตเดฒเต" เดเดเดจเดเดฟ เดเดชเดฏเตเดเดฟเดเตเดเดพเตป เดเดดเดฟเดฏเดฟเดฒเตเดฒ.
เดเดจเตเดจเดพเดฎเดคเดพเดฏเดฟ, เดตเดฒเดฟเดฏ เด เดณเดตเดฟเดฒเตเดณเตเดณ เดฎเตเดฑเตเดฑเตเดฐเดฟเดฏเตฝ เดเดพเดฐเดฃเด,
เดฐเดฃเตเดเดพเดฎเดคเดพเดฏเดฟ, เดเดฐเต เดฏเดฅเดพเตผเดคเตเดฅ เดเดชเดญเตเดเตเดคเดพเดตเดฟเดจเตเดฑเต เดเตฝเดชเตเดชเดพเดฆเดจ เด เดเดฟเดคเตเดคเดฑเดฏเดฟเดฒเตเดณเตเดณ เดถเตเดฐเดฆเตเดง เดเดพเดฐเดฃเด.
เด เดคเดฟเดจเดพเตฝ, เดฒเตเดเดจเดเตเดเดณเดฟเตฝ เดเดฑเตเดฑเดตเตเด เดชเตเดคเตเดตเดพเดฏ เดฐเตเดชเดคเตเดคเดฟเดฒเตเดณเตเดณ เดเดถเดฏเดเตเดเดณเตเด เดตเดฟเดตเดฐเดฃเดเตเดเดณเตเด เดฎเดพเดคเตเดฐเดฎเต เดเดฃเตเดเดพเดเต.
เดเดฐเตเดชเดเตเดทเต เดญเดพเดตเดฟเดฏเดฟเตฝ เด เดธเดฟเดธเตเดฑเตเดฑเด GitHub-เตฝ เดชเตเดฐเดธเดฟเดฆเตเดงเตเดเดฐเดฟเดเตเดเตเดจเตเดจ เดคเดฒเดคเตเดคเดฟเดฒเตเดเตเดเต เดตเดณเดฐเตเด, เด เดฒเตเดฒเตเดเตเดเดฟเตฝ เดเดฐเตเดชเดเตเดทเต เดเดฒเตเดฒเดพเดฏเดฟเดฐเดฟเดเตเดเดพเด. เดเดพเดฒเด เดชเดฑเดฏเตเด.
เดเดฅเดฏเตเดเต เดคเตเดเดเตเดเด - "".
เด
เดคเดฟเดจเตเดฑเต เดซเดฒเดฎเดพเดฏเดฟ เดธเดเดญเดตเดฟเดเตเดเดคเต, เดเดฑเตเดฑเดตเตเด เดชเตเดคเตเดตเดพเดฏ เดฐเตเดคเดฟเดฏเดฟเตฝ เดชเดฑเดเตเดเดพเตฝ:ยป
เดเดจเดฟเดเตเดเต เดเดคเตเดฒเตเดฒเดพเด เดเดจเตเดคเดฟเดจเต เดเดตเดถเตเดฏเดฎเดพเดฃเต?
เดถเดฐเดฟ, เดเดจเตเดจเดพเดฎเดคเดพเดฏเดฟ, เดตเดฟเดฐเดฎเดฟเดเตเดเดฒเดฟเดฒเต เดฎเดนเดคเตเดคเดพเดฏ เดฆเดฟเดจเดเตเดเตพ เดเตผเดฎเตเดฎเดฟเดเตเดเตเดเตเดฃเตเดเต, เดเดพเตป เด
เดคเต เดธเตเดตเดฏเด เดฎเดฑเดเตเดเดพเดคเดฟเดฐเดฟเดเตเดเดพเตป.
เดฐเดฃเตเดเดพเดฎเดคเดพเดฏเดฟ, เดเดพเตป เดเดดเตเดคเดฟเดฏเดคเต เดเดฟเดเตเดเดชเตเดชเตเดเตเดคเตเดคเตเด. เดเดพเดฐเดฃเด เดเดฟเดฒเดชเตเดชเตเตพ เดเดพเตป เดเดถเดฏเดเตเดเตเดดเดชเตเดชเดคเตเดคเดฟเดฒเดพเดเตเดเดฏเตเด เดเดฟเดฒ เดญเดพเดเดเตเดเตพ เดฎเดฑเดเตเดเตเดเดฏเตเด เดเตเดฏเตเดฏเตเด.
เดเดฑเตเดฑเดตเตเด เดชเตเดฐเดงเดพเดจเดฎเดพเดฏเดฟ, เดเดคเต เดเตผเดเตเดเตเดเตเดเดฟเดฒเตเด เดเดชเดฏเตเดเดชเตเดฐเดฆเดฎเดพเดเตเด, เดเดเตเดฐเด เดชเตเดจเตผเดจเดฟเตผเดฎเตเดฎเดฟเดเตเดเดพเดคเดฟเดฐเดฟเดเตเดเดพเดจเตเด เด เดคเต เดคเตเดฑเตเดฑเตเดเตพ เดเดตเตผเดคเตเดคเดฟเดเตเดเดพเดคเดฟเดฐเดฟเดเตเดเดพเดจเตเด เด เดตเดฐเต เดธเดนเดพเดฏเดฟเดเตเดเตเด. เดฎเดฑเตเดฑเตเดฐเต เดตเดฟเดงเดคเตเดคเดฟเตฝ เดชเดฑเดเตเดเดพเตฝ, เด เดตเดฐเตเดเต เดเตผเดฎเตเดฎเด (เดนเดฌเตเดฐเดฟเดจเตเดฑเตเดฏเดฒเตเดฒ) เดฎเตเดเตเดเดชเตเดชเตเดเตเดคเตเดคเตเด. เดเดพเดฐเดฃเด เด เดฒเตเดเดคเตเดคเดฟเดฒเต เดเดฑเตเดฑเดตเตเด เดตเดฟเดฒเดชเตเดชเตเดเตเด เดเดพเดฐเตเดฏเด เดเดถเดฏเดเตเดเดณเดพเดฃเต. เดชเตเดฐเดงเดพเดจ เดเดพเดฐเตเดฏเด เดเดฐเต เดเดถเดฏเด เดเดฃเตเดเตเดคเตเดคเตเด เดเดจเตเดจเดคเดพเดฃเต. เด เดคเต เดฏเดพเดฅเดพเตผเดคเตเดฅเตเดฏเดฎเดพเดเตเดเตเดจเตเดจเดคเต เดชเตเตผเดฃเตเดฃเดฎเดพเดฏเตเด เดธเดพเดเตเดเตเดคเดฟเดเดฎเดพเดฏ เดเดพเดฐเตเดฏเดฎเดพเดฃเต.
เด เดชเตเดชเตเตพ, เดจเดฎเตเดเตเดเต เดคเตเดเดเตเดเดพเด, เดชเดคเตเดเตเดเต เดชเดคเตเดเตเดเต...
เดชเตเดฐเดถเตเดจเดคเตเดคเดฟเดจเตเดฑเต เดชเตเดฐเดธเตเดคเดพเดตเดจ.
เดฒเดญเตเดฏเดฎเดพเดฃเต:
AWS เดเตเดฒเตเดกเดฟเตฝ เดธเตเดฅเดฟเดคเดฟ เดเตเดฏเตเดฏเตเดจเตเดจ PostgreSQL (10.5) เดกเดพเดฑเตเดฑเดพเดฌเตเดธเต, เดฎเดฟเดเตเดธเดกเต เดตเตผเดเตเดเตโเดฒเตเดกเต (OLTP+DSS), เดฎเตเดกเดฟเดฏเด-เดฒเต เดฒเตเดกเต.
เดกเดพเดฑเตเดฑเดพเดฌเตเดธเต เดจเดฟเดฐเตเดเตเดทเดฃเด เดเดฒเตเดฒ; เด
เดเดฟเดธเตเดฅเดพเดจ เดธเตเดเดฐเตเดฏ เดจเดฟเดฐเตเดเตเดทเดฃเด เดเดฑเตเดฑเดตเตเด เดเตเดฑเดเตเด เดเตเตบเดซเดฟเดเดฑเตเดทเดจเดฟเตฝ เดธเตเดฑเตเดฑเดพเตปเดกเตเตผเดกเต AWS เดเดชเดเดฐเดฃเดเตเดเดณเตเดเต เดฐเตเดชเดคเตเดคเดฟเดฒเดพเดฃเต เดจเตฝเดเดฟเดฏเดฟเดฐเดฟเดเตเดเตเดจเตเดจเดคเต.
เดเดตเดถเตเดฏเดฎเดพเดฃเต:
เดกเดพเดฑเตเดฑเดพเดฌเตเดธเต เดชเตเดฐเดเดเดจเดตเตเด เดเดฐเตเดเตเดฏเดตเตเด เดจเดฟเดฐเตเดเตเดทเดฟเดเตเดเตเด, เดนเตเดตเดฟ เดกเดพเดฑเตเดฑเดพเดฌเตเดธเต เด
เดจเตเดตเตเดทเดฃเดเตเดเตพ เดเดชเตเดฑเตเดฑเดฟเดฎเตเดธเต เดเตเดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดชเตเดฐเดพเดฐเดเดญ เดตเดฟเดตเดฐเดเตเดเตพ เดเดฃเตเดเตเดคเตเดคเดฟ เดธเตเดเตเดทเดฟเดเตเดเตเด.
เดชเดฐเดฟเดนเดพเดฐ เดเดชเตเดทเดจเตเดเดณเตเดเต เดเดฐเต เดนเตเดฐเดธเตเดต เดเดฎเตเดเด เด เดฒเตเดฒเตเดเตเดเดฟเตฝ เดตเดฟเดถเดเดฒเดจเด
เดเดฐเดเดญเดฟเดเตเดเตเดจเตเดจเดคเดฟเดจเต, เดเดเตเดเดฟเดจเตเดฏเตผเดเตเดเตเดณเตเดณ เดเตเดฃเดเตเดเดณเตเด เดฆเตเดทเดเตเดเดณเตเด เดคเดพเดฐเดคเดฎเตเดฏ เดตเดฟเดถเดเดฒเดจเดคเตเดคเดฟเดจเตเดฑเต เดตเตเดเตเดทเดฃเดเตเดฃเดฟเตฝ เดจเดฟเดจเตเดจเต เดชเตเดฐเดถเตเดจเดคเตเดคเดฟเดจเตเดณเตเดณ เดธเดพเดงเตเดฏเดฎเดพเดฏ เดชเดฐเดฟเดนเดพเดฐเดเตเดเตพ เดตเดฟเดถเดเดฒเดจเด เดเตเดฏเตเดฏเดพเตป เดถเตเดฐเดฎเดฟเดเตเดเดพเด, เด เดคเตเดธเดฎเดฏเด เดฎเดพเดจเตเดเตเดฎเตเดจเตเดฑเต เดเตเดฎเดฟเดฒเตเดเตเดเต เดจเดฟเดฏเตเดเดฟเดเตเดเดชเตเดชเตเดเตเดเดตเตผ เดเตเดฃเดเตเดเดณเตเด เดฆเตเดทเดเตเดเดณเตเด เดเตเดเดพเดฐเตเดฏเด เดเตเดฏเตเดฏเตเด.
เดเดชเตเดทเตป 1 - โเดเดตเดถเตเดฏเดพเดจเตเดธเดฐเดฃเด เดชเตเดฐเดตเตผเดคเตเดคเดฟเดเตเดเตเดจเตเดจเตโ
เดเดฒเตเดฒเดพเด เด
เดคเตเดชเดเดฟ เดตเดฟเดเดพเด. เดกเดพเดฑเตเดฑเดพเดฌเตเดธเดฟเดจเตเดฑเตเดฏเต เดเดชเตเดฒเดฟเดเตเดเตเดทเดจเตเดฑเต เดชเตเดฐเดเดเดจเดคเตเดคเดฟเดจเตเดฑเตเดฏเต เดเดคเตเดเตเดเดฟเดฒเตเด เดตเดถเดคเตเดคเดฟเตฝ เดเดชเดญเตเดเตเดคเดพเดตเต เดคเตเดชเตเดคเดจเดฒเตเดฒเตเดเตเดเดฟเตฝ, เด
เดตเตผ เดเดฎเตเดฏเดฟเตฝ เดตเดดเดฟเดฏเต เดเดฟเดเตเดเดฑเตเดฑเต เดธเดฟเดธเตเดฑเตเดฑเดคเตเดคเดฟเตฝ เดเดฐเต เดธเดเดญเดตเด เดธเตเดทเตเดเดฟเดเตเดเต DBA เดเดเตเดเดฟเดจเตเดฏเตผเดฎเดพเดฐเต เด
เดฑเดฟเดฏเดฟเดเตเดเตเด.
เด
เดฑเดฟเดฏเดฟเดชเตเดชเต เดฒเดญเดฟเดเตเดเตเดเดดเดฟเดเตเดเดพเตฝ, เดเดเตเดเดฟเดจเตเดฏเตผ เดชเตเดฐเดถเตเดจเด เดชเดฐเดฟเดถเตเดงเดฟเดเตเดเตเดเดฏเต, เดเดฐเต เดชเดฐเดฟเดนเดพเดฐเด เดตเดพเดเตเดฆเดพเดจเด เดเตเดฏเตเดฏเตเดเดฏเต, เด
เดฒเตเดฒเตเดเตเดเดฟเตฝ เดเดฒเตเดฒเดพเด เดธเตเดตเดฏเด เดชเดฐเดฟเดนเดฐเดฟเดเตเดเดชเตเดชเตเดเตเดฎเตเดจเตเดจเต เดชเตเดฐเดคเตเดเตเดทเดฟเดเตเดเต เดชเตเดฐเดถเตเดจเด เดชเดฟเดจเตเดจเตเดเตเดเต เดตเดฏเตเดเตเดเตเดเดฏเต เดเตเดฏเตเดฏเตเด, เดเดจเตเดคเดพเดฏเดพเดฒเตเด เดเดฒเตเดฒเดพเด เดชเตเดเตเดเตเดจเตเดจเต เดฎเดฑเดจเตเดจเตเดชเตเดเตเด.
เดเดฟเดเตเดเตผเดฌเตเดฐเตเดกเตเด เดกเตเดจเดเตเดเตเด, เดเดคเดตเตเดเดณเตเด เดฎเตเดดเดเดณเตเดเดเดฟเดเตเดเตผเดฌเตเดฐเตเดกเตเด เดกเตเดจเดเตเดเตเด:
1. เด
เดงเดฟเดเดฎเดพเดฏเดฟ เดเดจเตเดจเตเด เดเตเดฏเตเดฏเตเดฃเตเด เดเดตเดถเตเดฏเดฎเดฟเดฒเตเดฒ.
2. เดเดดเดฟเดเดดเดฟเดตเตเดเตพ เดชเดฑเดฏเดพเดจเตเด เดเดดเดฟเดตเดพเดเตเดเดพเดจเตเด เดเดชเตเดชเตเดดเตเด เด
เดตเดธเดฐเดฎเตเดฃเตเดเต.
3. เดจเดฟเดเตเดเดณเตเดเต เดเดทเตเดเด เดชเตเดฒเต เดเตเดฒเดตเดดเดฟเดเตเดเดพเตป เดงเดพเดฐเดพเดณเด เดธเดฎเดฏเด.
เดเดคเดตเตเดเดณเตเด เดฎเตเดดเดเดณเตเด:
1. เดคเดพเดฎเดธเดฟเดฏเดพเดคเต เด
เดฒเตเดฒเตเดเตเดเดฟเตฝ เดชเดฟเดจเตเดจเตเดเต, เดเตเดฒเดฏเดจเตเดฑเต เด เดฒเตเดเดคเตเดคเดฟเดฒเต เดจเดฟเดฒเดจเดฟเตฝเดชเตเดชเดฟเดจเตเดฑเตเดฏเตเด เดธเดพเตผเดตเดคเตเดฐเดฟเด เดจเตเดคเดฟเดฏเตเดเตเดฏเตเด เดธเดคเตเดคเดฏเตเดเตเดเตเดฑเดฟเดเตเดเต เดเดฟเดจเตเดคเดฟเดเตเดเตเดเดฏเตเด เดตเตเดฃเตเดเตเด เดธเตเดตเดฏเด เดเตเดฆเดฟเดเตเดเตเดเดฏเตเด เดเตเดฏเตเดฏเตเด: เดเดพเตป เด
เดตเตผเดเตเดเต เดเดจเตเดคเดฟเดจเดพเดฃเต เดชเดฃเด เดจเตฝเดเตเดจเตเดจเดคเต? เดชเดฐเดฟเดฃเดคเดซเดฒเดเตเดเตพ เดเดชเตเดชเตเดดเตเด เดเดจเตเดจเตเดคเดจเตเดจเตเดฏเดพเดฃเต: เดเตเดฒเดฏเดจเตเดฑเต เดตเดฟเดฐเดธเดจเดพเดฏเดฟ เดเดชเตเดเตเดทเดฟเดเตเดเตเดจเตเดจเดคเต เดธเดฎเดฏเดคเตเดคเดฟเดจเตเดฑเต เดเดพเดฐเตเดฏเด เดฎเดพเดคเตเดฐเดฎเดพเดฃเต. เดคเตเดเตเดเดฟ เดเดพเดฒเดฟเดฏเดพเดเตเดจเตเดจเต. เด
เดคเต เดธเดเตเดเดเดเดฐเดฎเดพเดฃเต.
2. เดเดเตเดเดฟเดจเตเดฏเตผ เดตเดฟเดเดธเดจเด เดชเตเดเตเดฏเดฎเดพเดฃเต.
3. เดเตเดฒเดฟ เดเดธเตเดคเตเดฐเดฃเด เดเตเดฏเตเดฏเตเดจเตเดจเดคเดฟเดฒเตเด เดฒเตเดกเดฟเดเดเต เดจเดเดคเตเดคเตเดจเตเดจเดคเดฟเดฒเตเด เดฌเตเดฆเตเดงเดฟเดฎเตเดเตเดเตเดเตพ
เดเดชเตเดทเตป 2 - "เดคเดเดฌเตเดฐเตเดตเตเดฎเดพเดฏเดฟ เดจเตเดคเตเดคเด เดเตเดฏเตเดฏเตเด, เดตเดฟเตฝเดเตเดเตเดเดฏเตเด เดทเต เดงเดฐเดฟเดเตเดเตเดเดฏเตเด เดเตเดฏเตเดฏเตเด"
เดชเตเดฏเดฟเดจเตเดฑเต 1เดจเดฎเตเดเตเดเต เดเดจเตเดคเดฟเดจเดพเดฃเต เดเดฐเต เดฎเตเดฃเดฟเดฑเตเดฑเดฑเดฟเดเดเต เดธเดฟเดธเตเดฑเตเดฑเด เดตเตเดฃเตเดเดคเต? เดจเดฎเตเดเตเดเต เดเดฒเตเดฒเดพเด เด
เดจเตเดตเตเดทเดฃเดเตเดเดณเดฟเดฒเตเดเต เดฒเดญเดฟเดเตเดเตเด. เดกเดพเดฑเตเดฑเดพ เดจเดฟเดเดฃเตเดเตเดตเดฟเดจเตเด เดกเตเดจเดพเดฎเดฟเดเต เดตเตเดฏเตเดเตพเดเตเดเตเดฎเตเดคเดฟเดฐเต เดเดพเตป เดเดฐเต เดเตเดเตเดเด เด
เดจเตเดตเตเดทเดฃเดเตเดเตพ เดจเดเดคเตเดคเตเดจเตเดจเต, เดเดฒเตเดฒเดพเดคเตเดคเดฐเด เดเตเดฃเตเดเดฑเตเดเดณเตเด เดชเตเดฐเดพเดชเตเดคเดฎเดพเดเตเดเตเดจเตเดจเต, เดชเดเตเดเดฟเดเดเดณเดฟเดฒเต เดเดฒเตเดฒเดพเด เดธเดเดเตเดฐเดนเดฟเดเตเดเตเดจเตเดจเต, เดเดเดฏเตเดเตเดเดฟเดเต เดฒเดฟเดธเตเดฑเตเดฑเตเดเดณเตเด เดชเดเตเดเดฟเดเดเดณเตเด เดตเดฟเดถเดเดฒเดจเด เดเตเดฏเตเดฏเตเดจเตเดจเต. เดซเดฒเด เดฎเดจเตเดนเดฐเดฎเต เด
เดฒเตเดฒเดพเดคเตเดคเดคเต เดเดฏ เดเตเดฐเดพเดซเตเดเตพ, เดชเดเตเดเดฟเดเดเตพ, เดฑเดฟเดชเตเดชเตเตผเดเตเดเตเดเตพ เดเดจเตเดจเดฟเดตเดฏเดพเดฃเต. เดชเตเดฐเดงเดพเดจ เดเดพเดฐเตเดฏเด เดเดดเดฟเดฏเตเดจเตเดจเดคเตเดฐ เดเดฃเตเดฃเด เดเดฃเตเดเดพเดฏเดฟเดฐเดฟเดเตเดเตเด เดเดจเตเดจเดคเดพเดฃเต.
เดชเตเดฏเดฟเดจเตเดฑเต 2-เดเดเตเดเตพ เดชเตเดฐเดตเตผเดคเตเดคเดจเด เดธเตเดทเตเดเดฟเดเตเดเตเดจเตเดจเต - เดเดคเดฟเดจเตเดฑเตเดฏเตเดฒเตเดฒเดพเด เดเดฐเต เดตเดฟเดถเดเดฒเดจเด เดเดเตเดเตพ เดเดฐเดเดญเดฟเดเตเดเตเดจเตเดจเต.
เดชเตเดฏเดฟเดจเตเดฑเต 3- เดเดเตเดเตพ เดเดฐเต เดชเตเดฐเดคเตเดฏเตเด เดชเตเดฐเดฎเดพเดฃเด เดคเดฏเตเดฏเดพเดฑเดพเดเตเดเตเดเดฏเดพเดฃเต, เด เดชเตเดฐเดฎเดพเดฃเดคเตเดคเต เดเดเตเดเตพ เดฒเดณเดฟเดคเดฎเดพเดฏเดฟ เดตเดฟเดณเดฟเดเตเดเตเดจเตเดจเต - "เดเดฐเต เดกเดพเดฑเตเดฑเดพเดฌเตเดธเต เดเดเตเดเดจเต เดธเดเดเดเดฟเดชเตเดชเดฟเดเตเดเดพเด".
เดชเตเดฏเดฟเดจเตเดฑเต 4เด เดฎเดจเตเดนเดฐเดฎเดพเดฏ เดเตเดฐเดพเดซเตเดเดณเตเด เดเดฃเดเตเดเตเดเดณเตเด เดเดพเดฃเตเดจเตเดจ เดเตเดฒเดฏเดจเตเดฑเต เดฌเดพเดฒเดฟเดถเดตเตเด เดจเดฟเดทเตเดเดณเดเตเดเดตเตเดฎเดพเดฏ เดเดคเตเดฎเดตเดฟเดถเตเดตเดพเดธเดคเตเดคเดพเตฝ เดจเดฟเดฑเดเตเดเดฟเดฐเดฟเดเตเดเตเดจเตเดจเต: เดเดชเตเดชเตเตพ เดเดฒเตเดฒเดพเด เดเดเตป เดคเดจเตเดจเต เดชเตเดฐเดตเตผเดคเตเดคเดฟเดเตเดเตเด. เด
เดคเดฟเดจเดพเตฝ, เด
เดตเตผ เด
เดตเดฐเตเดเต เดธเดพเดฎเตเดชเดคเตเดคเดฟเด เดตเดฟเดญเดตเดเตเดเตพ เดเดณเตเดชเตเดชเดคเตเดคเดฟเดฒเตเด เดตเตเดฆเดจเดฏเดฟเดฒเตเดฒเดพเดคเตเดฏเตเด เดชเดเตเดเตเดตเตเดเตเดเตเดจเตเดจเต. เดฎเดพเดจเตเดเตเดฎเตเดจเตเดฑเดฟเดจเตเด เดเดคเตเดฎเดตเดฟเดถเตเดตเดพเดธเดฎเตเดฃเตเดเต: เดเดเตเดเดณเตเดเต เดเดเตเดเดฟเดจเตเดฏเตผเดฎเดพเตผ เดฎเดฟเดเดเตเด เดเตเดฒเดฟ เดเตเดฏเตเดฏเตเดจเตเดจเต. เดเตเดฒเดฟเดญเดพเดฐเด เด
เดคเดฟเดจเตเดฑเต เดชเดฐเดฎเดพเดตเดงเดฟเดฏเดฟเดฒเดพเดฃเต.
เดชเตเดฏเดฟเดจเตเดฑเต 5- เดชเตเดฏเดฟเดจเตเดฑเต 1 เดชเดคเดฟเดตเดพเดฏเดฟ เดเดตเตผเดคเตเดคเดฟเดเตเดเตเด.
เดเดฟเดเตเดเตผเดฌเตเดฐเตเดกเตเด เดกเตเดจเดเตเดเตเด, เดเดคเดตเตเดเดณเตเด เดฎเตเดดเดเดณเตเดเดเดฟเดเตเดเตผเดฌเตเดฐเตเดกเตเด เดกเตเดจเดเตเดเตเด:
1. เดฎเดพเดจเตเดเตผเดฎเดพเดฐเตเดเตเดฏเตเด เดเดเตเดเดฟเดจเตเดฏเตผเดฎเดพเดฐเตเดเตเดฏเตเด เดเตเดตเดฟเดคเด เดฒเดณเดฟเดคเดตเตเด, เดชเตเดฐเดตเดเดจเดพเดคเตเดคเดตเตเด, เดชเตเดฐเดตเตผเดคเตเดคเดจเดเตเดเดณเดพเตฝ เดจเดฟเดฑเดเตเดเดคเตเดฎเดพเดฃเต. เดเดฒเตเดฒเดพเด เดคเดฟเดฐเดเตเดเดฟเดฒเดพเดฃเต, เดเดฒเตเดฒเดพเดตเดฐเตเด เดคเดฟเดฐเดเตเดเดฟเดฒเดพเดฃเต.
2. เดเตเดฒเดฏเดจเตเดฑเดฟเดจเตเดฑเต เดเตเดตเดฟเดคเดตเตเด เดฎเตเดถเดฎเดฒเตเดฒ - เดเตเดฑเดเตเดเต เดจเตเดฐเด เดเตเดทเดฎเดฏเตเดเต เดเดพเดคเตเดคเดฟเดฐเดฟเดเตเดเดฃเดฎเตเดจเตเดจเต เด
เดฏเดพเตพเดเตเดเต เดเดชเตเดชเตเดดเตเด เดเดฑเดชเตเดชเตเดฃเตเดเต, เด
เดชเตเดชเตเตพ เดเดฒเตเดฒเดพเด เดถเดฐเดฟเดฏเดพเดเตเด. เด
เดเตเดเดจเต เดธเดเดญเดตเดฟเดเตเดเดฟเดฒเตเดฒเตเดเตเดเดฟเตฝ, เดฒเตเดเด เด
เดจเตเดฏเดพเดฏเดฎเดพเดฏเดฟเดฐเดฟเดเตเดเตเด; เด
เดเตเดคเตเดค เดเดจเตเดฎเดคเตเดคเดฟเตฝ เด
เดฏเดพเตพ เดญเดพเดเตเดฏเดตเดพเดจเดพเดฏเดฟเดฐเดฟเดเตเดเตเด.
เดเดคเดตเตเดเดณเตเด เดฎเตเดดเดเดณเตเด:
1. เดคเดพเดฎเดธเดฟเดฏเดพเดคเต เด
เดฒเตเดฒเตเดเตเดเดฟเตฝ เดชเดฟเดจเตเดจเตเดเต, เดธเดฎเดพเดจเดฎเดพเดฏ เดธเตเดตเดจเดคเตเดคเดฟเดจเตเดฑเต เดเตเดเตเดคเตฝ เดเดพเดฐเตเดฏเดเตเดทเดฎเดฎเดพเดฏ เดเดฐเต เดฆเดพเดคเดพเดตเต เดชเตเดฐเดคเตเดฏเดเตเดทเดชเตเดชเตเดเตเด, เด
เตฝเดชเตเดชเด เดเตเดฑเดเตเด เดตเดฟเดฒเดฏเตเดเตเดเต เด
เดคเต เดธเตเดตเดจเด เดตเดพเดเตเดฆเดพเดจเด เดเตเดฏเตเดฏเตเดจเตเดจเต. เดซเดฒเด เดเดจเตเดจเตเดคเดจเตเดจเตเดฏเดพเดฃเตเดเตเดเดฟเตฝ, เดเดจเตเดคเดฟเดจเดพเดฃเต เดเตเดเตเดคเตฝ เดชเดฃเด เดจเตฝเดเตเดจเตเดจเดคเต? เดเดคเต เดตเตเดฃเตเดเตเด เดเตเดฐเตเดตเดฟ เดเตเดฐเตเดฏเดฟเตป เด
เดชเตเดฐเดคเตเดฏเดเตเดทเดฎเดพเดเตเดจเตเดจเดคเดฟเดฒเตเดเตเดเต เดจเดฏเดฟเดเตเดเตเด.
2. เด
เตผเดคเตเดฅเดถเตเดจเตเดฏเดฎเดพเดฏ เดเดคเตเดฐเต เดชเตเดฐเดตเตเดคเตเดคเดฟเดฏเตเด เดชเตเดฒเต เดคเดจเตเดจเต เดตเดฟเดฐเดธเดฎเดพเดฃเต.
3. เดฎเตเดฎเตเดชเดคเตเดคเต เดเดชเตเดทเดจเตเดชเตเดชเตเดฒเต, เดชเตเดฐเตเดเดคเดฟเดฏเดฟเดฒเตเดฒ. เดเดจเตเดจเดพเตฝ เดเดฐเต เดเดเตเดเดฟเดจเตเดฏเตผเดเตเดเต, เดชเตเดฐเดพเดฏเตเดฎ เดเดจเตเดคเตเดจเตเดจเดพเตฝ, เดเดฆเตเดฏ เดเดชเตเดทเดจเดฟเตฝ เดจเดฟเดจเตเดจเต เดตเตเดฏเดคเตเดฏเดธเตเดคเดฎเดพเดฏเดฟ, เดจเดฟเดเตเดเตพ เดจเดฟเดฐเดจเตเดคเดฐเด IDB เดธเตเดทเตเดเดฟเดเตเดเตเดฃเตเดเดคเตเดฃเตเดเต เดเดจเตเดจเดคเดพเดฃเต. เด
เดคเดฟเดจเต เดธเดฎเดฏเดฎเตเดเตเดเตเดเตเด, เด
เดคเต เดฒเดพเดญเดเดฐเดฎเดพเดฏเดฟ เดเตเดฒเดตเดดเดฟเดเตเดเดพเตป เดเดดเดฟเดฏเตเด. เดเดพเดฐเดฃเด เดจเดฟเดเตเดเตพ เดธเตเดตเดฏเด เดชเดฐเดฟเดชเดพเดฒเดฟเดเตเดเตเดจเตเดจเดฟเดฒเตเดฒเตเดเตเดเดฟเตฝ, เดเดฐเตเด เดจเดฟเดเตเดเดณเต เดถเตเดฐเดฆเตเดงเดฟเดเตเดเดฟเดฒเตเดฒ.
เดเดชเตเดทเตป 3: เดจเดฟเดเตเดเตพ เดเดเตเดฐเด เดชเตเดจเตผเดจเดฟเตผเดฎเตเดฎเดฟเดเตเดเตเดฃเตเดเดคเดฟเดฒเตเดฒ, เดจเดฟเดเตเดเตพ เด เดคเต เดตเดพเดเตเดเดฟ เดเดเดฟเดเตเดเดพเตฝ เดฎเดคเดฟ.
เดฎเดฑเตเดฑเต เดเดฎเตเดชเดจเดฟเดเดณเดฟเดฒเต เดเดเตเดเดฟเดจเตเดฏเตผเดฎเดพเตผ เดชเดฟเดธเตเดธ เดเดดเดฟเดเตเดเตเดจเตเดจเดคเดฟเดจเตเด เดฌเดฟเดฏเตผ เดเดชเดฏเตเดเดฟเดเตเดเต เดเตเดเดฟเดเตเดเตเดจเตเดจเดคเดฟเดจเตเด เดเดฐเต เดเดพเดฐเดฃเดฎเตเดฃเตเดเต (เดเดนเดพ, 90 เดเดณเดฟเดฒเต เดธเตเดจเตเดฑเต เดชเตเดฑเตเดฑเตเดดเตโเดธเตเดฌเตผเดเดฟเดจเตเดฑเต เดฎเดนเดคเตเดคเดพเดฏ เดฆเดฟเดจเดเตเดเตพ). เดจเดฟเตผเดฎเตเดฎเดฟเดเตเดเดคเตเด, เดกเตเดฌเดเต เดเตเดฏเตเดคเดคเตเด, เดชเตเดฐเดตเตผเดคเตเดคเดจเดเตเดทเดฎเดตเตเดฎเดพเดฏเดคเตเด, เดชเตเดคเตเดตเต เดเดชเดฏเตเดเดชเตเดฐเดฆเดตเตเดฎเดพเดฏ (เดเตเดฑเดเตเดเดคเต เด
เดตเดฏเตเดเต เดธเตเดฐเดทเตเดเดพเดเตเดเตพเดเตเดเตเดเตเดเดฟเดฒเตเด) เดฎเตเดฃเดฟเดฑเตเดฑเดฑเดฟเดเดเต เดธเดฟเดธเตเดฑเตเดฑเดเตเดเตพ เดจเดฎเตเดเตเดเต เดเดชเดฏเตเดเดฟเดเตเดเดพเด.
เดเดฟเดเตเดเตผเดฌเตเดฐเตเดกเตเด เดกเตเดจเดเตเดเตเด, เดเดคเดตเตเดเดณเตเด เดฎเตเดดเดเดณเตเดเดเดฟเดเตเดเตผเดฌเตเดฐเตเดกเตเด เดกเตเดจเดเตเดเตเด:
1. เดเดฃเตเดเตเดชเดฟเดเดฟเดเตเด เดเดจเตเดคเตเดเตเดเดฟเดฒเตเด เดตเตเดฃเตเดเตเด เดเดฃเตเดเตเดชเดฟเดเดฟเดเตเดเดพเตป เดธเดฎเดฏเด เดเดณเดฏเดฐเตเดคเต. เด
เดคเต เดเดเตเดคเตเดคเต เดเดชเดฏเตเดเดฟเดเตเดเตเด.
2. เดฎเตเดฃเดฟเดฑเตเดฑเดฑเดฟเดเดเต เดธเดเดตเดฟเดงเดพเดจเดเตเดเตพ เดตเดฟเดกเตเดขเดฟเดเตพ เดเดดเตเดคเดฟเดฏเดคเดฒเตเดฒ, เด
เดต เดคเตเตผเดเตเดเดฏเดพเดฏเตเด เดเดชเดฏเตเดเดชเตเดฐเดฆเดฎเดพเดฃเต.
3. เดชเตเดฐเดตเตผเดคเตเดคเดฟเดเตเดเตเดจเตเดจ เดจเดฟเดฐเตเดเตเดทเดฃ เดธเดเดตเดฟเดงเดพเดจเดเตเดเตพ เดธเดพเดงเดพเดฐเดฃเดฏเดพเดฏเดฟ เดเดชเดฏเตเดเดชเตเดฐเดฆเดฎเดพเดฏ เดซเดฟเตฝเดเตเดเตผ เดเตเดฏเตเดค เดตเดฟเดตเดฐเดเตเดเตพ เดจเตฝเดเตเดจเตเดจเต.
เดเดคเดตเตเดเดณเตเด เดฎเตเดดเดเดณเตเด:
1. เด เดเตเดธเดฟเดฒเต เดเดเตเดเดฟเดจเตเดฏเตผ เดเดฐเต เดเดเตเดเดฟเดจเตเดฏเตผ เด
เดฒเตเดฒ, เดฎเดฑเดฟเดเตเดเต เดฎเดฑเตเดฑเตเดฐเดพเดณเตเดเต เดเตฝเดชเตเดชเดจเตเดจเดคเตเดคเดฟเดจเตเดฑเต เดเดชเดฏเตเดเตเดคเดพเดตเต เดฎเดพเดคเตเดฐเดฎเดพเดฃเต. เด
เดฒเตเดฒเตเดเตเดเดฟเตฝ เดเดฐเต เดเดชเดฏเตเดเตเดคเดพเดตเต.
2. เดเตเดฒเดฏเดจเตเดฑเดฟเดจเต เดฎเดจเดธเตเดธเดฟเดฒเดพเดเดพเตป เดเดเตเดฐเดนเดฟเดเตเดเดพเดคเตเดคเดคเตเด, เดฎเดจเดธเตเดธเดฟเดฒเดพเดเตเดเดพเตป เดชเดพเดเดฟเดฒเตเดฒเดพเดคเตเดคเดคเตเดฎเดพเดฏ เดเดจเตเดคเตเดเตเดเดฟเดฒเตเด เดตเดพเดเตเดเตเดฃเตเดเดคเดฟเดจเตเดฑเต เดเดตเดถเตเดฏเดเดค เดฌเตเดงเตเดฏเดชเตเดชเตเดเตเดคเตเดคเตเดฃเตเดเดคเตเดฃเตเดเต, เดตเดพเตผเดทเดฟเด เดฌเดเดฑเตเดฑเต เดจเดฟเดถเตเดเดฏเดฟเดเตเดเดฟเดเตเดเตเดฃเตเดเต, เด
เดคเต เดฎเดพเดฑเดฟเดฒเตเดฒ. เดคเตเดเตผเดจเตเดจเต, เดเดฐเต เดชเตเดฐเดคเตเดฏเตเด เดธเดฟเดธเตเดฑเตเดฑเดคเตเดคเดฟเดจเดพเดฏเดฟ เดเดฐเต เดธเดฎเตผเดชเตเดชเดฟเดค เดตเดฟเดญเดตเด เด
เดจเตเดตเดฆเดฟเดเตเดเตเดเดฏเตเด เดเดทเตเดเดพเดจเตเดธเตเดคเดฎเดพเดเตเดเตเดเดฏเตเด เดเตเดฏเตเดฏเตเดฃเตเดเดคเตเดฃเตเดเต. เด
เดคเดฟเดจเดพเตฝ, เดเดฆเตเดฏเด เดจเดฟเดเตเดเตพ เดชเดฃเด เดจเตฝเดเดฃเด, เดชเดฃเด เดจเตฝเดเดฃเด, เดตเตเดฃเตเดเตเด เดชเดฃเด เดจเตฝเดเดฃเด. เดเตเดฒเดฏเดจเตเดฑเต เดชเดฟเดถเตเดเตเดเดจเดพเดฃเต. เด
เดคเดพเดฃเต เดชเดคเดฟเดตเต.
เดจเดฎเตเดฎเตพ เดเดจเตเดคเตเดเตเดฏเตเดฏเดฃเด, เดเตเตผเดฃเดฟเดทเตเดตเตเดธเตเดเดฟ? เดจเดฟเดเตเดเดณเตเดเต เดเตเดฆเตเดฏเด เดตเดณเดฐเต เดเดเดฟเดคเดฎเดพเดฃเต. (เดธเดฟ)
เด เดชเตเดฐเดคเตเดฏเตเด เดธเดพเดนเดเดฐเตเดฏเดคเตเดคเดฟเดฒเตเด เดจเดฟเดฒเดตเดฟเดฒเต เดธเดพเดนเดเดฐเตเดฏเดคเตเดคเดฟเดฒเตเด, เดจเดฟเดเตเดเตพเดเตเดเต เด
เตฝเดชเตเดชเด เดตเตเดฏเดคเตเดฏเดธเตเดคเดฎเดพเดฏเดฟ เดชเตเดฐเดตเตผเดคเตเดคเดฟเดเตเดเดพเตป เดเดดเดฟเดฏเตเด - เดจเดฎเตเดเตเดเต เดธเตเดตเดจเตเดคเดฎเดพเดฏเดฟ เดเดฐเต เดฎเตเดฃเดฟเดฑเตเดฑเดฑเดฟเดเดเต เดธเดฟเดธเตเดฑเตเดฑเด เดเดฃเตเดเดพเดเตเดเดพเด.

เดถเดฐเดฟ, เดตเดพเดเตเดเดฟเดจเตเดฑเต เดชเตเตผเดฃเตเดฃ เด
เตผเดคเตเดฅเดคเตเดคเดฟเตฝ เดเดฐเต เดธเดฟเดธเตเดฑเตเดฑเด เด
เดฒเตเดฒ, เดคเตเตผเดเตเดเดฏเดพเดฏเตเด - เด
เดคเต เดตเดณเดฐเต เดถเดเตเดคเดฎเดพเดฏ เดเดฐเต เดตเดพเดเตเดเดพเดฃเต, เด
เดนเดเตเดเดพเดฐเดตเตเดฎเดพเดฃเต - เดชเดเตเดทเต เดเตเดฑเดเตเดเดคเต เดจเดฟเดเตเดเดณเตเดเต เดเตเดฒเดฟ เดเตเดฑเดเตเดเตเดเตเดเดฟ เดเดณเตเดชเตเดชเดฎเดพเดเตเดเตเดเดฏเตเด เดชเตเดฐเดเดเดจ เดชเตเดฐเดถเตเดจเดเตเดเตพ เดชเดฐเดฟเดนเดฐเดฟเดเตเดเตเดจเตเดจเดคเดฟเดจเต เดเตเดเตเดคเตฝ เดตเดฟเดตเดฐเดเตเดเตพ เดถเตเดเดฐเดฟเดเตเดเตเดเดฏเตเด เดเตเดฏเตเดฏเตเด. เด
เดคเดฟเดจเดพเตฝ เดจเดฟเดเตเดเตพ "เดเดตเดฟเดเตเดฏเตเดเตเดเดฟเดฒเตเด เดชเตเดเดฃเด, เดเดจเตเดคเตเดเตเดเดฟเดฒเตเด เดเดฃเตเดเตเดคเตเดคเดฃเด, เดเดจเดฟเดเตเดเดฑเดฟเดฏเดฟเดฒเตเดฒ" เดเดจเตเดจ เดธเดพเดนเดเดฐเตเดฏเดคเตเดคเดฟเตฝ เดจเดฟเดเตเดเตพ เด
เดตเดธเดพเดจเดฟเดเตเดเตเดจเตเดจเดฟเดฒเตเดฒ.
เด เดเดชเตเดทเดจเตเดฑเต เดเตเดฃเดเตเดเดณเตเด เดฆเตเดทเดเตเดเดณเตเด เดเดจเตเดคเตเดเตเดเตเดฏเดพเดฃเต:
เดชเตเดฐเตเดธเต:
1. เดเดคเต เดฐเดธเดเดฐเดฎเดพเดฃเต. เดถเดฐเดฟ, เดธเตเดฅเดฟเดฐเดฎเดพเดฏ "shrink datafile, alter tablespace, etc" เดเดจเตเดจเดคเดฟเดจเตเดเตเดเดพเตพ เดเตเดเตเดคเตฝ เดฐเดธเดเดฐเดฎเดพเดฃเต.
2. เดเดต เดชเตเดคเดฟเดฏ เดเดดเดฟเดตเตเดเดณเตเด เดชเตเดคเดฟเดฏ เดตเดฟเดเดธเดจเดตเตเดฎเดพเดฃเต. เดเดคเตเดฐเดฏเตเด เดตเตเดเด เด
เดฒเตเดฒเตเดเตเดเดฟเตฝ เดชเดฟเดจเตเดจเตเดเต, เด
เตผเดนเดฎเดพเดฏ เดชเตเดฐเดคเดฟเดซเดฒเดเตเดเตพ เดเตเดฃเตเดเตเดตเดฐเตเดจเตเดจเดต.
เดชเดฐเดฟเดเดฃเดจ:
1. เดจเดฟเดเตเดเตพ เดเตเดฒเดฟ เดเตเดฏเตเดฏเตเดฃเตเดเดฟเดตเดฐเตเด. เดงเดพเดฐเดพเดณเด เดเตเดฒเดฟ เดเตเดฏเตเดฏเตเด.
2. เดเดฒเตเดฒเดพ เดชเตเดฐเดตเตผเดคเตเดคเดจเดเตเดเดณเตเดเตเดฏเตเด เด
เตผเดคเตเดฅเดตเตเด เดธเดพเดงเตเดฏเดคเดเดณเตเด เดจเดฟเดเตเดเตพ เดชเดคเดฟเดตเดพเดฏเดฟ เดตเดฟเดถเดฆเตเดเดฐเดฟเดเตเดเตเดฃเตเดเดคเตเดฃเตเดเต.
3. เดเดจเตเดคเตเดเตเดเดฟเดฒเตเด เดคเตเดฏเดพเดเด เดเตเดฏเตเดฏเตเดฃเตเดเดฟเดตเดฐเตเด, เดเดพเดฐเดฃเด เดเดฐเต เดเดเตเดเดฟเดจเตเดฏเตผเดเตเดเต เดฒเดญเตเดฏเดฎเดพเดฏ เดเดฐเตเดฏเตเดฐเต เดตเดฟเดญเดตเด - เดธเดฎเดฏเด - เดชเตเดฐเดชเดเตเดเดคเตเดคเดพเตฝ เดชเดฐเดฟเดฎเดฟเดคเดชเตเดชเตเดเตเดคเตเดคเดฟเดฏเดฟเดฐเดฟเดเตเดเตเดจเตเดจเต.
4. เดเดฑเตเดฑเดตเตเด เดญเดฏเดเตเดเดฐเดตเตเด เด
เดฐเตเดเดเดตเตเด โ เดซเดฒเดฎเดพเดฏเดฟ, เดจเดฟเดเตเดเตพเดเตเดเต "เดเดฒเดฟเดฏเดฒเตเดฒ, เดคเดตเดณเดฏเดฒเตเดฒ, เดฎเดฑเดฟเดเตเดเต เดเดฐเต เด
เดเตเดเดพเดค เดฎเตเดเด" เดชเตเดฒเตเดณเตเดณ เดเดจเตเดคเตเดเตเดเดฟเดฒเตเด เดฒเดญเดฟเดเตเดเตเดเตเดเดพเด.
เดฑเดฟเดธเตเดเต เดเดเตเดเตเดเดพเดคเตเดคเดตเตป เดทเดพเดเดชเตเดฏเตเตป เดเตเดเดฟเดเตเดเดฟเดฒเตเดฒ.
เด
เดเตเดเดจเต, เดเดฑเตเดฑเดตเตเด เดฐเดธเดเดฐเดฎเดพเดฏ เดญเดพเดเด เดเดฐเดเดญเดฟเดเตเดเตเดจเตเดจเต.
เดชเตเดคเตเดตเดพเดฏ เดเดถเดฏเด เดธเตเดเตเดฎเดพเดฑเตเดฑเดฟเดเต เดเดฃเต

(เดเดฟเดคเตเดฐเตเดเดฐเดฃเด เดฒเตเดเดจเดคเตเดคเดฟเตฝ เดจเดฟเดจเตเดจเต เดเดเตเดคเตเดคเดคเดพเดฃเต. ยซยป)
เดตเดฟเดถเดฆเตเดเดฐเดฃเด:
- เดเดพเตผเดเตเดฑเตเดฑเต เดกเดพเดฑเตเดฑเดพเดฌเตเดธเดฟเตฝ เดธเตเดฑเตเดฑเดพเตปเดกเตเตผเดกเต เดชเตเดธเตเดฑเตเดฑเตเดเตเดฐเตเดเดธเตเดเตเดฏเตเดเตฝ เดเดเตเดธเตเดฑเตเดฑเตปเดทเตป โpg_stat_statementsโ เดเตปเดธเตเดฑเตเดฑเดพเตพ เดเตเดฏเตเดคเดฟเดเตเดเตเดฃเตเดเต.
- เดฎเตเดฃเดฟเดฑเตเดฑเดฑเดฟเดเดเต เดกเดพเดฑเตเดฑเดพเดฌเตเดธเดฟเตฝ, เดชเตเดฐเดพเดฐเดเดญ เดเดเตเดเดคเตเดคเดฟเตฝ pg_stat_statements เดเดฐเดฟเดคเตเดฐเด เดธเดเดญเดฐเดฟเดเตเดเตเดจเตเดจเดคเดฟเดจเตเด เดญเดพเดตเดฟเดฏเดฟเตฝ เดฎเตเดเตเดฐเดฟเดเตเดธเตเดเดณเตเด เดฎเตเดฃเดฟเดฑเตเดฑเดฑเดฟเดเดเตเด เดเตเดฐเดฎเตเดเดฐเดฟเดเตเดเตเดจเตเดจเดคเดฟเดจเตเดฎเดพเดฏเดฟ เดเดเตเดเตพ เดเดฐเต เดเตเดเตเดเด เดธเตผเดตเตเดธเต เดเตเดฌเดฟเดณเตเดเตพ เดธเตเดทเตเดเดฟเดเตเดเตเดจเตเดจเต.
- เดฎเตเดฃเดฟเดฑเตเดฑเดฑเดฟเดเดเต เดนเตเดธเตเดฑเตเดฑเดฟเตฝ, เดเดฟเดเตเดเดฑเตเดฑเต เดธเดฟเดธเตเดฑเตเดฑเดคเตเดคเดฟเตฝ เดธเดเดญเดตเดเตเดเตพ เดธเตเดทเตเดเดฟเดเตเดเตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดเดฐเต เดเตเดเตเดเด เดฌเดพเดทเต เดธเตเดเตเดฐเดฟเดชเตเดฑเตเดฑเตเดเตพ เดเดเตเดเตพ เดธเตเดทเตเดเดฟเดเตเดเตเดจเตเดจเต.
เดธเตผเดตเตเดธเต เดเตเดฌเดฟเดณเตเดเตพ
เดเดฆเตเดฏเด, เดจเดฎเตเดเตเดเต เดเดจเตเดคเดพเดฃเต เดฒเดญเดฟเดเตเดเดคเตเดจเตเดจเต เดเดพเดฃเดฟเดเตเดเตเดจเตเดจ ERD เดฏเตเดเต เดฒเดณเดฟเดคเดฎเดพเดฏ เดเดฐเต เดธเตเดเตเดฎเดพเดฑเตเดฑเดฟเดเต เดเดคเดพ:

เดชเดเตเดเดฟเดเดเดณเตเดเต เดธเดเดเตเดทเดฟเดชเตเดค เดตเดฟเดตเดฐเดฃเดเด
เดตเดธเดพเดจ เดชเตเดฏเดฟเดจเตเดฑเต โ เดนเตเดธเตเดฑเตเดฑเต, เดเดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดฒเตเดเตเดเตเดณเตเดณ เดเดฃเดเตเดทเตป เดชเตเดฏเดฟเดจเตเดฑเต
เดกเดพเดฑเตเดฑเดพเดฌเตเดธเต โ เดกเดพเดฑเตเดฑเดพเดฌเตเดธเต เดชเดพเดฐเดพเดฎเตเดฑเตเดฑเดฑเตเดเตพ
pg_stat_history โ เดฒเดเตเดทเตเดฏ เดกเดพเดฑเตเดฑเดพเดฌเตเดธเดฟเดจเตเดฑเต pg_stat_statements เดเดพเดดเตเดเดฏเตเดเต เดคเดพเตฝเดเตเดเดพเดฒเดฟเด เดธเตเดจเดพเดชเตเดชเตเดทเตเดเตเดเตเดเตพ เดธเดเดญเดฐเดฟเดเตเดเตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดเดฐเต เดเดฐเดฟเดคเตเดฐ เดชเดเตเดเดฟเด.
เดฎเตเดเตเดฐเดฟเดเต_เดเตเดฒเตเดธเดฑเดฟ โ เดชเตเดฐเดเดเดจ เด
เดณเดตเตเดเดณเตเดเต เดจเดฟเดเดฃเตเดเต
เดฎเตเดเตเดฐเดฟเดเต_เดเตเตบเดซเดฟเดเต โ เดตเตเดฏเดเตเดคเดฟเดเดค เดฎเตเดเตเดฐเดฟเดเตเดเตเดเดณเตเดเต เดเตเตบเดซเดฟเดเดฑเตเดทเตป
เดฎเตเดเตเดฐเดฟเดเต โ เดจเดฟเดฐเตเดเตเดทเดฟเดเตเดเดชเตเดชเตเดเตเดจเตเดจ เด
เดญเตเดฏเตผเดคเตเดฅเดจเดฏเตเดเตเดเตเดณเตเดณ เดเดฐเต เดชเตเดฐเดคเตเดฏเตเด เดฎเตเดเตเดฐเดฟเดเต
เดฎเตเดเตเดฐเดฟเดเต_เด
เดฒเตเตผเดเตเดเต_เดเดฐเดฟเดคเตเดฐเด โ เดชเตเดฐเดเดเดจ เดฎเตเดจเตเดจเดฑเดฟเดฏเดฟเดชเตเดชเตเดเดณเตเดเต เดเดฐเดฟเดคเตเดฐเด
เดฒเตเดเต_เดเตเดตเดฑเดฟ โ AWS-เตฝ เดจเดฟเดจเตเดจเต เดกเตเตบเดฒเตเดกเต เดเตเดฏเตโเดค เดเดฐเต PostgreSQL เดฒเตเดเต เดซเดฏเดฒเดฟเตฝ เดจเดฟเดจเตเดจเต เดชเดพเดดเตโเดธเต เดเตเดฏเตโเดค เดฑเตเดเตเดเตเตผเดกเตเดเตพ เดธเดเดญเดฐเดฟเดเตเดเตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดเดฐเต เดฏเตเดเตเดเดฟเดฒเดฟเดฑเตเดฑเดฟ เดเตเดฌเดฟเตพ
เด
เดเดฟเดธเตเดฅเดพเดจเด โ เด
เดเดฟเดธเตเดฅเดพเดจเดฎเดพเดฏเดฟ เดเดชเดฏเตเดเดฟเดเตเดเตเดจเตเดจ เดเดพเดฒเดฏเดณเดตเดฟเดจเตเดฑเต เดชเดพเดฐเดพเดฎเตเดฑเตเดฑเดฑเตเดเตพ
เดเตเดเตเดเตเดชเตเดฏเดฟเดจเตเดฑเต โ เดกเดพเดฑเตเดฑเดพเดฌเตเดธเต เดเดฐเตเดเตเดฏ เดชเดฐเดฟเดถเตเดงเดจเดพ เดฎเตเดเตเดฐเดฟเดเตเดธเตเดเดณเตเดเต เดเตเตบเดซเดฟเดเดฑเตเดทเตป
เดเตเดเตเดเตโเดชเตเดฏเดฟเดจเตเดฑเต_เด
เดฒเตเตผเดเตเดเต_เดเดฐเดฟเดคเตเดฐเด โ เดกเดพเดฑเตเดฑเดพเดฌเตเดธเต เดเดฐเตเดเตเดฏ เดชเดฐเดฟเดถเตเดงเดจ เดฎเตเดเตเดฐเดฟเดเตเดธเต เดฎเตเดจเตเดจเดฑเดฟเดฏเดฟเดชเตเดชเตเดเดณเตเดเต เดเดฐเดฟเดคเตเดฐเด
pg_stat_db_queries โ เดธเดเตเดต เด
เดจเตเดตเตเดทเดฃเดเตเดเดณเตเดเต เดธเตเดตเดจ เดชเดเตเดเดฟเด
เดเดเตเดฑเตเดฑเดฟเดตเดฟเดฑเตเดฑเดฟ_เดฒเตเดเต โ เดชเตเดฐเดตเตผเดคเตเดคเดจ เดฒเตเดเดฟเดจเตเดฑเต เดธเตเดตเดจ เดชเดเตเดเดฟเด
เดเตเดฐเดพเดชเตเดชเต_เดเดฏเตเดกเต โ เดเตเดฐเดพเดชเตเดชเต เดเตเตบเดซเดฟเดเดฑเตเดทเตป เดธเตผเดตเตเดธเต เดเตเดฌเดฟเตพ
เดเดเตเดเด 1: เดชเตเดฐเดเดเดจ เดธเตเดฅเดฟเดคเดฟเดตเดฟเดตเดฐเดเตเดเดฃเดเตเดเตเดเตพ เดถเตเดเดฐเดฟเดเตเดเต เดฑเดฟเดชเตเดชเตเตผเดเตเดเตเดเตพ เดธเตเดทเตเดเดฟเดเตเดเตเด
เดธเตเดฅเดฟเดคเดฟเดตเดฟเดตเดฐเดเตเดเดฃเดเตเดเตเดเตพ เดธเตเดเตเดทเดฟเดเตเดเดพเตป เดเดฐเต เดชเดเตเดเดฟเด เดเดชเดฏเตเดเดฟเดเตเดเตเดจเตเดจเต. pg_stat_history
pg_stat_history เดชเดเตเดเดฟเดเดฏเตเดเต เดเดเดจ
เดชเดเตเดเดฟเด "public.pg_stat_history" เดเตเดณเด | เดคเดฐเด | เดฎเตเดกเดฟเดซเดฏเดฑเตเดเตพ -- temp_blks_read | bigint | temp_blks_written | bigint | blk_read_time | double precision | blk_write_time | double precision | blk_write_time | double precision | blainsline_id | integer | เดธเตเดเดฟเดเดเตพ: "pg_stat_history_pkey" PRIMARY KEY, btree (id) "database_idx" btree (database_id) "queryid_idx" btree (queryid) "snapshot_timestamp_idx" btree (snapshot_timestamp) เดซเตเดฑเดฟเตป-เดเต เดเตบเดธเตเดเตเดฐเตเดจเตเดฑเตโเดธเต: "database_id_fk" FOREIGN KEY (database_id) เดฑเดซเดฑเตปเดธเตเดเตพ เดกเดพเดฑเตเดฑเดพเดฌเตเดธเต(id) เดเดฒเตเดฒเดพเดคเดพเดเตเดเตเด เดเดพเดธเตโเดเตเดกเดฟเตฝ
เดจเดฟเดเตเดเตพเดเตเดเต เดเดพเดฃเดพเดจเดพเดเตเดจเตเดจเดคเตเดชเตเดฒเต, เดชเดเตเดเดฟเด เดกเดพเดฑเตเดฑเดฏเตเดเต เดเดฐเต เดธเดเตเดเดฟเดค เดเดพเดดเตเด เดฎเดพเดคเตเดฐเดฎเดพเดฃเต. pg_stat_statements เดฒเดเตเดทเตเดฏ เดกเดพเดฑเตเดฑเดพเดฌเตเดธเดฟเตฝ.
เด เดชเดเตเดเดฟเด เดเดชเดฏเตเดเดฟเดเตเดเตเดจเตเดจเดคเต เดตเดณเดฐเต เดฒเดณเดฟเดคเดฎเดพเดฃเต.
pg_stat_history เดเดฐเต เดฎเดฃเดฟเดเตเดเตเดฑเดฟเดฒเตเดฎเตเดณเตเดณ เด
เดจเตเดตเตเดทเดฃ เดจเดฟเตผเดตเตเดตเดนเดฃเดคเตเดคเดฟเดจเตเดฑเต เดถเตเดเดฐเดฟเดเตเด เดธเตเดฅเดฟเดคเดฟเดตเดฟเดตเดฐเดเตเดเดฃเดเตเดเตเดเดณเต เดชเตเดฐเดคเดฟเดจเดฟเดงเตเดเดฐเดฟเดเตเดเตเด. เดเดฐเต เดฎเดฃเดฟเดเตเดเตเดฑเดฟเดจเตเดฑเตเดฏเตเด เดคเตเดเดเตเดเดคเตเดคเดฟเตฝ, เดชเดเตเดเดฟเด เดชเตเดฐเดฟเดชเตเดชเดฟเดเตเด เดถเตเดทเด, เดธเตเดฅเดฟเดคเดฟเดตเดฟเดตเดฐเดเตเดเดฃเดเตเดเตเดเตพ pg_stat_statements เดเดชเดฏเตเดเดฟเดเตเดเต เดชเตเดจเดเดธเดเตเดเดฎเดพเดเตเดเตเด pg_stat_statements_reset() () เดเดจเตเดจเต เดเตเดชเตเดชเต เดเตเดฏเตเดฏเตเด..
เดเตเดฑเดฟเดชเตเดชเต: เดเดฐเต เดธเตเดเตเดเตปเดกเดฟเตฝ เดเตเดเตเดคเตฝ เดเดเตเดเตเดเตเดจเตเดจ เด
เดจเตเดตเตเดทเดฃเดเตเดเตพเดเตเดเดพเดฏเดฟ เดธเตเดฅเดฟเดคเดฟเดตเดฟเดตเดฐเดเตเดเดฃเดเตเดเตเดเตพ เดถเตเดเดฐเดฟเดเตเดเตเดจเตเดจเต.
pg_stat_history เดชเดเตเดเดฟเด เดชเตเดฐเดฟเดชเตเดชเดฟเดเตเดเตเดจเตเดจเต
--pg_stat_history.sql
CREATE OR REPLACE FUNCTION pg_stat_history( ) RETURNS boolean AS $$
DECLARE
endpoint_rec record ;
database_rec record ;
pg_stat_snapshot record ;
current_snapshot_timestamp timestamp without time zone;
BEGIN
current_snapshot_timestamp = date_trunc('minute',now());
FOR endpoint_rec IN SELECT * FROM endpoint
LOOP
FOR database_rec IN SELECT * FROM database WHERE endpoint_id = endpoint_rec.id
LOOP
RAISE NOTICE 'NEW SHAPSHOT IS CREATING';
--Connect to the target DB
EXECUTE 'SELECT dblink_connect(''LINK1'',''host='||endpoint_rec.host||' dbname='||database_rec.name||' user=USER password=PASSWORD '')';
RAISE NOTICE 'host % and dbname % ',endpoint_rec.host,database_rec.name;
RAISE NOTICE 'Creating snapshot of pg_stat_statements for database %',database_rec.name;
SELECT
*
INTO
pg_stat_snapshot
FROM dblink('LINK1',
'SELECT
dbid , SUM(calls),SUM(total_time),SUM(rows) ,SUM(shared_blks_hit) ,SUM(shared_blks_read) ,SUM(shared_blks_dirtied) ,SUM(shared_blks_written) ,
SUM(local_blks_hit) , SUM(local_blks_read) , SUM(local_blks_dirtied) , SUM(local_blks_written) , SUM(temp_blks_read) , SUM(temp_blks_written) , SUM(blk_read_time) , SUM(blk_write_time)
FROM pg_stat_statements WHERE dbid=(SELECT oid from pg_database where datname=current_database() )
GROUP BY dbid
'
)
AS t
( dbid oid , calls bigint ,
total_time double precision ,
rows bigint , shared_blks_hit bigint , shared_blks_read bigint ,shared_blks_dirtied bigint ,shared_blks_written bigint ,
local_blks_hit bigint ,local_blks_read bigint , local_blks_dirtied bigint ,local_blks_written bigint ,
temp_blks_read bigint ,temp_blks_written bigint ,
blk_read_time double precision , blk_write_time double precision
);
INSERT INTO pg_stat_history
(
snapshot_timestamp ,database_id ,
dbid , calls ,total_time ,
rows ,shared_blks_hit ,shared_blks_read ,shared_blks_dirtied ,shared_blks_written ,local_blks_hit ,
local_blks_read,local_blks_dirtied,local_blks_written,temp_blks_read,temp_blks_written,
blk_read_time, blk_write_time
)
VALUES
(
current_snapshot_timestamp ,
database_rec.id ,
pg_stat_snapshot.dbid ,pg_stat_snapshot.calls,
pg_stat_snapshot.total_time,
pg_stat_snapshot.rows ,pg_stat_snapshot.shared_blks_hit ,pg_stat_snapshot.shared_blks_read ,pg_stat_snapshot.shared_blks_dirtied ,pg_stat_snapshot.shared_blks_written ,
pg_stat_snapshot.local_blks_hit , pg_stat_snapshot.local_blks_read , pg_stat_snapshot.local_blks_dirtied , pg_stat_snapshot.local_blks_written ,
pg_stat_snapshot.temp_blks_read , pg_stat_snapshot.temp_blks_written , pg_stat_snapshot.blk_read_time , pg_stat_snapshot.blk_write_time
);
RAISE NOTICE 'Creating snapshot of pg_stat_statements for queries with min_time more than 1000ms';
FOR pg_stat_snapshot IN
--All queries with max_time greater than 1000 ms
SELECT
*
FROM dblink('LINK1',
'SELECT
dbid , userid ,queryid,query,calls,total_time,min_time ,max_time,mean_time, stddev_time ,rows ,shared_blks_hit ,
shared_blks_read ,shared_blks_dirtied ,shared_blks_written ,
local_blks_hit , local_blks_read , local_blks_dirtied ,
local_blks_written , temp_blks_read , temp_blks_written , blk_read_time ,
blk_write_time
FROM pg_stat_statements
WHERE dbid=(SELECT oid from pg_database where datname=current_database() AND min_time >= 1000 )
'
)
AS t
( dbid oid , userid oid , queryid bigint ,query text , calls bigint ,
total_time double precision ,min_time double precision ,max_time double precision , mean_time double precision , stddev_time double precision ,
rows bigint , shared_blks_hit bigint , shared_blks_read bigint ,shared_blks_dirtied bigint ,shared_blks_written bigint ,
local_blks_hit bigint ,local_blks_read bigint , local_blks_dirtied bigint ,local_blks_written bigint ,
temp_blks_read bigint ,temp_blks_written bigint ,
blk_read_time double precision , blk_write_time double precision
)
LOOP
INSERT INTO pg_stat_history
(
snapshot_timestamp ,database_id ,
dbid ,userid , queryid , query , calls ,total_time ,min_time ,max_time ,mean_time ,stddev_time ,
rows ,shared_blks_hit ,shared_blks_read ,shared_blks_dirtied ,shared_blks_written ,local_blks_hit ,
local_blks_read,local_blks_dirtied,local_blks_written,temp_blks_read,temp_blks_written,
blk_read_time, blk_write_time
)
VALUES
(
current_snapshot_timestamp ,
database_rec.id ,
pg_stat_snapshot.dbid ,pg_stat_snapshot.userid ,pg_stat_snapshot.queryid,pg_stat_snapshot.query,pg_stat_snapshot.calls,
pg_stat_snapshot.total_time,pg_stat_snapshot.min_time ,pg_stat_snapshot.max_time,pg_stat_snapshot.mean_time, pg_stat_snapshot.stddev_time ,
pg_stat_snapshot.rows ,pg_stat_snapshot.shared_blks_hit ,pg_stat_snapshot.shared_blks_read ,pg_stat_snapshot.shared_blks_dirtied ,pg_stat_snapshot.shared_blks_written ,
pg_stat_snapshot.local_blks_hit , pg_stat_snapshot.local_blks_read , pg_stat_snapshot.local_blks_dirtied , pg_stat_snapshot.local_blks_written ,
pg_stat_snapshot.temp_blks_read , pg_stat_snapshot.temp_blks_written , pg_stat_snapshot.blk_read_time , pg_stat_snapshot.blk_write_time
);
END LOOP;
PERFORM dblink_disconnect('LINK1');
END LOOP ;--FOR database_rec IN SELECT * FROM database WHERE endpoint_id = endpoint_rec.id
END LOOP;
RETURN TRUE;
END
$$ LANGUAGE plpgsql;เดคเตฝเดซเดฒเดฎเดพเดฏเดฟ, เดชเดเตเดเดฟเดเดฏเดฟเตฝ เดเตเดฑเดเตเดเต เดธเดฎเดฏเดคเตเดคเดฟเดจเต เดถเตเดทเด pg_stat_history เดชเดเตเดเดฟเดเดฏเดฟเดฒเต เดเดณเตเดณเดเดเตเดเดเตเดเดณเตเดเต เดเดฐเต เดเตเดเตเดเด เดธเตเดจเดพเดชเตเดชเตเดทเตเดเตเดเตเดเตพ เดจเดฎเตเดเตเดเต เดฒเดญเดฟเดเตเดเตเด. pg_stat_statements เดฒเดเตเดทเตเดฏ เดกเดพเดฑเตเดฑเดพเดฌเตเดธเต.
เดฏเดฅเดพเตผเดคเตเดฅ เดฑเดฟเดชเตเดชเตเตผเดเตเดเดฟเดเดเต
เดฒเดณเดฟเดคเดฎเดพเดฏ เดเตเดฆเตเดฏเดเตเดเตพ เดเดชเดฏเตเดเดฟเดเตเดเต, เดจเดฟเดเตเดเตพเดเตเดเต เดตเดณเดฐเต เดเดชเดฏเตเดเดชเตเดฐเดฆเดตเตเด เดฐเดธเดเดฐเดตเตเดฎเดพเดฏ เดฑเดฟเดชเตเดชเตเตผเดเตเดเตเดเตพ เดฒเดญเดฟเดเตเดเตเด.
เดเดฐเต เดจเดฟเดถเตเดเดฟเดค เดเดพเดฒเดฏเดณเดตเดฟเดฒเต เดธเดฎเดพเดนเดฐเดฟเดเตเด เดกเดพเดฑเตเดฑ
เด เดญเตเดฏเตผเดคเตเดฅเดฟเดเตเดเตเด
SELECT
database_id ,
SUM(calls) AS calls ,SUM(total_time) AS total_time ,
SUM(rows) AS rows , SUM(shared_blks_hit) AS shared_blks_hit,
SUM(shared_blks_read) AS shared_blks_read ,
SUM(shared_blks_dirtied) AS shared_blks_dirtied,
SUM(shared_blks_written) AS shared_blks_written ,
SUM(local_blks_hit) AS local_blks_hit ,
SUM(local_blks_read) AS local_blks_read ,
SUM(local_blks_dirtied) AS local_blks_dirtied ,
SUM(local_blks_written) AS local_blks_written,
SUM(temp_blks_read) AS temp_blks_read,
SUM(temp_blks_written) temp_blks_written ,
SUM(blk_read_time) AS blk_read_time ,
SUM(blk_write_time) AS blk_write_time
FROM
pg_stat_history
WHERE
queryid IS NULL AND
database_id = DATABASE_ID AND
snapshot_timestamp BETWEEN BEGIN_TIMEPOINT AND END_TIMEPOINT
GROUP BY database_id ;เดกเดฟเดฌเดฟ เดธเดฎเดฏเด
to_char(เดเดเดตเตเดณ '1 เดฎเดฟเดฒเตเดฒเดฟเดธเตเดเตเดเตปเดกเต' * pg_total_stat_history_rec.total_time, 'HH24:MI:SS.MS')
I/O เดธเดฎเดฏเด
to_char(เดเดเดตเตเดณ '1 เดฎเดฟเดฒเตเดฒเดฟเดธเตเดเตเดเตปเดกเต' * ( pg_total_stat_history_rec.blk_read_time + pg_total_stat_history_rec.blk_write_time ), 'HH24:MI:SS.MS')
total_time เดชเตเดฐเดเดพเดฐเด TOP10 SQL
เด เดญเตเดฏเตผเดคเตเดฅเดฟเดเตเดเตเด
SELECT
queryid ,
SUM(calls) AS calls ,
SUM(total_time) AS total_time
FROM
pg_stat_history
WHERE
queryid IS NOT NULL AND
database_id = DATABASE_ID AND
snapshot_timestamp BETWEEN BEGIN_TIMEPOINT AND END_TIMEPOINT
GROUP BY queryid
ORDER BY 3 DESC
LIMIT 10---------------------------------------------------------------------------------------- | เดเดเต เดจเดฟเตผเดตเตเดตเดนเดฃ เดธเดฎเดฏเด เด เดจเตเดธเดฐเดฟเดเตเดเต เดเตเดชเตเดชเต 10 SQL | #| เด เดจเตเดตเตเดทเดฃ เดเดกเดฟ| เดเตเดณเตเดเตพ| เดเตเดณเตเดเตพ %| เดเดเต_เดธเดฎเดฏเด (เดฎเดฟ.เดธเต.) | dbtime % +----+- .00001|00:02:09.129( 129129.057 เดฎเดฟเดธเตเดธเต.)| 3.44 | 4| 655729273| 1| .00000|00:02:01.869( 121869.981 เดฎเดฟเดธเตเดธเต.)| 3.25 | 5| 2460318461| 1| .00000|00:01:33.113( 93113.835 เดฎเดฟเดธเตเดธเต.)| 2.48 | 6| 2194493487| 4| .00001|00:00:17.377( 17377.868 เดฎเดฟเดธเตเดธเต.)| .46 | 7| 1053044345| 1| .00000|00:00:06.156( 6156.352 เดเดเดเดธเต.)| .16 | 8| 3644780286| 1| .00000|00:00:01.063( 1063.830 เดเดเดเดธเต.)| .03
เดเดเต I/O เดธเดฎเดฏเด เด เดจเตเดธเดฐเดฟเดเตเดเต เดเตเดชเตเดชเต 10 SQL
เด เดญเตเดฏเตผเดคเตเดฅเดฟเดเตเดเตเด
SELECT
queryid ,
SUM(calls) AS calls ,
SUM(blk_read_time + blk_write_time) AS io_time
FROM
pg_stat_history
WHERE
queryid IS NOT NULL AND
database_id = DATABASE_ID AND
snapshot_timestamp BETWEEN BEGIN_TIMEPOINT AND END_TIMEPOINT
GROUP BY queryid
ORDER BY 3 DESC
LIMIT 10---------------------------------------------------------------------------------------- | เดเดเต I/O เดธเดฎเดฏเด เด เดจเตเดธเดฐเดฟเดเตเดเต TOP10 SQL | #| เด เดจเตเดตเตเดทเดฃ เดเดกเดฟ| เดเตเดณเตเดเตพ| เดเตเดณเตเดเตพ %| I/O เดธเดฎเดฏเด (ms)|db I/O เดธเดฎเดฏเด % +----+- .00000|00:05:02.209( 302209.137 เดฎเดฟเดธเตเดธเต.)| 18.35 | 4| 2460318461| 1| .00000|00:04:05.981( 245981.117 เดฎเดฟเดธเตเดธเต.)| 14.93 | 5| 1484454471| 4| .00001|00:00:39.144( 39144.221 เดฎเดฟเดธเตเดธเต.)| 2.38 | 6| 2194493487| 4| .00001|00:00:18.182( 18182.816 เดฎเดฟเดธเตเดธเต.)| 1.10 | 7| 1053044345| 1| .00000|00:00:16.611( 16611.722 เดเดเดเดธเต.)| 1.01 | 8| 3644780286| 1| .00000|00:00:00.436( 436.205 เดเดเดเดธเต.)| .03
เดชเดฐเดฎเดพเดตเดงเดฟ เดเดเตเดธเดฟเดเตเดฏเตเดทเตป เดธเดฎเดฏเด เด เดจเตเดธเดฐเดฟเดเตเดเต TOP10 SQL
เด เดญเตเดฏเตผเดคเตเดฅเดฟเดเตเดเตเด
SELECT
id AS snapshotid ,
queryid ,
snapshot_timestamp ,
max_time
FROM
pg_stat_history
WHERE
queryid IS NOT NULL AND
database_id = DATABASE_ID AND
snapshot_timestamp BETWEEN BEGIN_TIMEPOINT AND END_TIMEPOINT
ORDER BY 4 DESC
LIMIT 10--------------------------------------------------------------------------------------- | เดชเดฐเดฎเดพเดตเดงเดฟ เดเดเตเดธเดฟเดเตเดฏเตเดทเตป เดธเดฎเดฏเดคเตเดคเดฟเดจเตเดณเตเดณเดฟเตฝ เดเตเดชเตเดชเต10 SQL | #| เดธเตเดจเดพเดชเตเดชเตเดทเตเดเตเดเต| เดธเตเดจเดพเดชเตเดชเตเดทเตเดเตเดเต เดเดกเดฟ| เด เดจเตเดตเตเดทเดฃ เดเดกเดฟ| เดชเดฐเดฎเดพเดตเดงเดฟ_เดธเดฎเดฏเด (เดฎเดฟ.เดธเต) +----+- 00:01:41.570( 101570.841 เดฎเดฟ.เดธเต.) | 4| 04/04/2019 16:00| 4144| 4152624390| 00:01:36.964(96964.607 เดฎเดฟ.เดธเต.) | 5| 04/04/2019 17:00| 4151| 4152624390| 00:01:36.964(96964.607 เดฎเดฟ.เดธเต.) | 6| 04/05/2019 10:00| 4188| 1484454471| 00:01:33.452( 93452.150 เดฎเดฟ.เดธเต.) | 7| 04/04/2019 17:00| 4150| 2460318461| 00:01:33.113(93113.835 เดฎเดฟ.เดธเต.) | 8| 04/04/2019 15:00| 4140| 1484454471| 00:00:11.892(11892.302 เดฎเดฟ.เดธเต.) | 9| 04/04/2019 16:00| 4145| 1484454471| 00:00:11.892(11892.302 เดฎเดฟ.เดธเต.) | 10| 04/04/2019 17:00| 4152| 1484454471| 00:00:11.892( 11892.302 เดฎเดฟ.เดธเต.)
SHARED เดฌเดซเตผ เดฑเตเดกเต/เดฑเตเดฑเตเดฑเต เดตเดดเดฟ TOP10 SQL
เด เดญเตเดฏเตผเดคเตเดฅเดฟเดเตเดเตเด
SELECT
id AS snapshotid ,
queryid ,
snapshot_timestamp ,
shared_blks_read ,
shared_blks_written
FROM
pg_stat_history
WHERE
queryid IS NOT NULL AND
database_id = DATABASE_ID AND
snapshot_timestamp BETWEEN BEGIN_TIMEPOINT AND END_TIMEPOINT AND
( shared_blks_read > 0 OR shared_blks_written > 0 )
ORDER BY 4 DESC , 5 DESC
LIMIT 10---------------------------------------------------------------------------------------------- | เดชเดเตเดเดฟเดเตเด เดฌเดซเตผ เดเดชเดฏเตเดเดฟเดเตเดเต เดเตเดชเตเดชเต 10 SQL เดตเดพเดฏเดฟเดเตเดเตเด/เดเดดเตเดคเตเด | #| เดธเตเดจเดพเดชเตเดชเตเดทเตเดเตเดเต| เดธเตเดจเดพเดชเตเดชเตเดทเตเดเตเดเต เดเดกเดฟ| เด เดจเตเดตเตเดทเดฃ เดเดกเดฟ| เดชเดเตเดเดฟเดเตเด เดฌเตเดฒเตเดเตเดเตเดเตพ เดตเดพเดฏเดฟเดเตเดเตเด| เดชเดเตเดเดฟเดเตเด เดฌเตเดฒเตเดเตเดเตเดเตพ เดเดดเตเดคเตเด +----+- 4144| 4152624390| 756514| 0 | 5| 04.04.2019 17:00| 4151| 4152624390| 756514| 0 | 6| 04.04.2019 17:00| 4150| 2460318461| 734117| 0 | 7| 04.04.2019 17:00| 4155| 3644780286| 52973| 0 | 8| 05.04.2019 01:03| 4168| 1053044345| 52818| 0 | 9| 04.04.2019 15:00 | 4141| 2194493487| 52813| 0 | 10| 04.04.2019 16:00| 4147| 2194493487| 52813| 0 --
เดชเดฐเดฎเดพเดตเดงเดฟ เดจเดฟเตผเดตเตเดตเดนเดฃ เดธเดฎเดฏเด เด เดจเตเดธเดฐเดฟเดเตเดเตเดณเตเดณ เด เดจเตเดตเตเดทเดฃ เดตเดฟเดคเดฐเดฃเดคเตเดคเดฟเดจเตเดฑเต เดนเดฟเดธเตเดฑเตเดฑเตเดเตเดฐเดพเด
เด เดญเตเดฏเตผเดคเตเดฅเดจเดเตพ
SELECT
MIN(max_time) AS hist_min ,
MAX(max_time) AS hist_max ,
(( MAX(max_time) - MIN(min_time) ) / hist_columns ) as hist_width
FROM
pg_stat_history
WHERE
queryid IS NOT NULL AND
database_id = DATABASE_ID AND
snapshot_timestamp BETWEEN BEGIN_TIMEPOINT AND END_TIMEPOINT ;
SELECT
SUM(calls) AS calls
FROM
pg_stat_history
WHERE
queryid IS NOT NULL AND
database_id =DATABASE_ID AND
snapshot_timestamp BETWEEN BEGIN_TIMEPOINT AND END_TIMEPOINT AND
( max_time >= hist_current_min AND max_time < hist_current_max ) ;
|------------------------------------------------------------------------------------------- | เดชเดฐเดฎเดพเดตเดงเดฟ_เดธเดฎเดฏ เดนเดฟเดธเตเดฑเตเดฑเตเดเตเดฐเดพเด | เดเดเต เดเตเดณเตเดเตพ: 33851920 | เดฎเดฟเดจเดฟเดฑเตเดฑเต เดธเดฎเดฏเด: 00:00:01.063 | เดชเดฐเดฎเดพเดตเดงเดฟ เดธเดฎเดฏเด : 00:02:01.869 -- 00:00:25.225( 25225.060 เดฎเดฟ.เดธเต.) | 00:00:37.305( 37305.675 เดฎเดฟ.เดธเต.) | 0 | 00:00:37.305( 37305.675 เดฎเดฟ.เดธเต.) | 00:00:49.386( 49386.290 เดฎเดฟ.เดธเต.) | 0 | 00:00:49.386( 49386.290 เดฎเดฟ.เดธเต.) | 00:01:01.466( 61466.906 เดฎเดฟ.เดธเต.) | 0 | 00:01:01.466( 61466.906 เดฎเดฟ.เดธเต.) | 00:01:13.547( 73547.521 เดฎเดฟ.เดธเต.) | 0 | 00:01:13.547( 73547.521 เดฎเดฟ.เดธเต.) | 00:01:25.628( 85628.136 เดฎเดฟ.เดธเต.) | 0 | 00:01:25.628( 85628.136 เดฎเดฟ.เดธเต.) | 00:01:37.708( 97708.751 เดฎเดฟ.เดธเต.) | 4 | 00:01:37.708( 97708.751 เดฎเดฟ.เดธเต.) | 00:01:49.789( 109789.366 เดฎเดฟ.เดธเต.) | 2 | 00:01:49.789( 109789.366 เดฎเดฟ.เดธเต.) | 00:02:01.869( 121869.981 เดเด.เดเดธเต.) | 0
เดธเตเดเตเดเตปเดกเดฟเตฝ เด เดจเตเดตเตเดทเดฃเด เด เดจเตเดธเดฐเดฟเดเตเดเตเดณเตเดณ TOP10 เดธเตเดจเดพเดชเตเดชเตเดทเตเดเตเดเตเดเตพ
เด เดญเตเดฏเตผเดคเตเดฅเดจเดเตพ
--pg_qps.sql
--Calculate Query Per Second
CREATE OR REPLACE FUNCTION pg_qps( pg_stat_history_id integer ) RETURNS double precision AS $$
DECLARE
pg_stat_history_rec record ;
prev_pg_stat_history_id integer ;
prev_pg_stat_history_rec record;
total_seconds double precision ;
result double precision;
BEGIN
result = 0 ;
SELECT *
INTO pg_stat_history_rec
FROM
pg_stat_history
WHERE id = pg_stat_history_id ;
IF pg_stat_history_rec.snapshot_timestamp IS NULL
THEN
RAISE EXCEPTION 'ERROR - Not found pg_stat_history for id = %',pg_stat_history_id;
END IF ;
--RAISE NOTICE 'pg_stat_history_id = % , snapshot_timestamp = %', pg_stat_history_id ,
pg_stat_history_rec.snapshot_timestamp ;
SELECT
MAX(id)
INTO
prev_pg_stat_history_id
FROM
pg_stat_history
WHERE
database_id = pg_stat_history_rec.database_id AND
queryid IS NULL AND
id < pg_stat_history_rec.id ;
IF prev_pg_stat_history_id IS NULL
THEN
RAISE NOTICE 'Not found previous pg_stat_history shapshot for id = %',pg_stat_history_id;
RETURN NULL ;
END IF;
SELECT *
INTO prev_pg_stat_history_rec
FROM
pg_stat_history
WHERE id = prev_pg_stat_history_id ;
--RAISE NOTICE 'prev_pg_stat_history_id = % , prev_snapshot_timestamp = %', prev_pg_stat_history_id , prev_pg_stat_history_rec.snapshot_timestamp ;
total_seconds = extract(epoch from ( pg_stat_history_rec.snapshot_timestamp - prev_pg_stat_history_rec.snapshot_timestamp ));
--RAISE NOTICE 'total_seconds = % ', total_seconds ;
--RAISE NOTICE 'calls = % ', pg_stat_history_rec.calls ;
IF total_seconds > 0
THEN
result = pg_stat_history_rec.calls / total_seconds ;
ELSE
result = 0 ;
END IF;
RETURN result ;
END
$$ LANGUAGE plpgsql;
SELECT
id ,
snapshot_timestamp ,
calls ,
total_time ,
( select pg_qps( id )) AS QPS ,
blk_read_time ,
blk_write_time
FROM
pg_stat_history
WHERE
queryid IS NULL AND
database_id = DATABASE_ID AND
snapshot_timestamp BETWEEN BEGIN_TIMEPOINT AND END_TIMEPOINT AND
( select pg_qps( id )) IS NOT NULL
ORDER BY 5 DESC
LIMIT 10
|- 3529197| 00:11:48.830( 708830.618 เดฎเดฟเดธเต.)| 980.332| 00:12:47.834( 767834.052 เดฎเดฟเดธเต.)| 108.324 | 3| 04/04/2019 16:00| 4143| 3525360| 00:10:13.492( 613492.351 เดฎเดฟเดธเต.)| 979.267| 00:08:41.396(521396.555 เดฎเดฟเดธเต.)| 84.988 | 4| 04/04/2019 21:03| 4163| 2781536| 00:03:06.470( 186470.979 เดฎเดฟ.เดธเต.)| 785.745| 00:00:00.249(249.865 เดฎเดฟ.เดธเต.)| .134 | 5| 04.04.2019 19:03| 4159| 2890362| 00:03:16.784( 196784.755 เดฎเดฟ.เดธเต.)| 776.979| 00:00:01.441( 1441.386 เดฎเดฟ.เดธเต.)| .732 | 6| 04/04/2019 14:00| 4137| 2397326| 00:04:43.033( 283033.854 เดฎเดฟ.เดธเต.)| 665.924| 00:00:00.024(24.505 เดฎเดฟ.เดธเต.)| .009 | 7| 04/04/2019 15:00| 4139| 2394416| 00:04:51.435( 291435.010 เดฎเดฟ.เดธเต.)| 665.116| 00:00:12.025( 12025.895 เดฎเดฟ.เดธเต.)| 4.126 | 8| 04.04.2019 13:00| 4135| 2373043| 00:04:26.791( 266791.988 เดฎเดฟ.เดธเต.)| 659.179| 00:00:00.064( 64.261 เดฎเดฟ.เดธเต.)| .024 | 9| 04/05/2019 01:03| 4167| 4387191| 00:06:51.380( 411380.293 เดฎเดฟ.เดธเต.)| 609.332| 00:05:18.847( 318847.407 เดฎเดฟ.เดธเต.)| 77.507 | 10| 04/04/2019 18:01| 4157| 1145596| 00:01:19.217( 79217.372 เดฎเดฟ.เดธเต.)| 313.004| 00:00:01.319( 1319.676 เดฎเดฟ.เดธเต.)| 1.666
QueryPerSeconds เดเด I/O เดธเดฎเดฏเดตเตเด เดเดณเตเดณ เดฎเดฃเดฟเดเตเดเตเตผ เดคเตเดฑเตเด เดจเดเดชเตเดชเดฟเดฒเดพเดเตเดเตฝ เดเดฐเดฟเดคเตเดฐเด
เด เดญเตเดฏเตผเดคเตเดฅเดฟเดเตเดเตเด
SELECT
id ,
snapshot_timestamp ,
calls ,
total_time ,
( select pg_qps( id )) AS QPS ,
blk_read_time ,
blk_write_time
FROM
pg_stat_history
WHERE
queryid IS NULL AND
database_id = DATABASE_ID AND
snapshot_timestamp BETWEEN BEGIN_TIMEPOINT AND END_TIMEPOINT
ORDER BY 2
|----------------------------------------------------------------------------------------------- | HOURLY EXECUTION HISTORY WITH QueryPerSeconds and I/O Time ----------------------------------------------------------------------------------------------------------------------------------------------- | QUERY PER SECOND HISTORY | #| snapshot| snapshotID| calls| total dbtime| QPS| I/O time| I/O time % +-----+------------------+-----------+-----------+----------------------------------+-----------+----------------------------------+----------- | 1| 04.04.2019 11:00| 4131| 3747| 00:00:00.835( 835.374 ms.)| 1.041| 00:00:00.000( .000 ms.)| .000 | 2| 04.04.2019 12:00| 4133| 1002722| 00:01:52.419( 112419.376 ms.)| 278.534| 00:00:00.149( 149.105 ms.)| .133 | 3| 04.04.2019 13:00| 4135| 2373043| 00:04:26.791( 266791.988 ms.)| 659.179| 00:00:00.064( 64.261 ms.)| .024 | 4| 04.04.2019 14:00| 4137| 2397326| 00:04:43.033( 283033.854 ms.)| 665.924| 00:00:00.024( 24.505 ms.)| .009 | 5| 04.04.2019 15:00| 4139| 2394416| 00:04:51.435( 291435.010 ms.)| 665.116| 00:00:12.025( 12025.895 ms.)| 4.126 | 6| 04.04.2019 16:00| 4143| 3525360| 00:10:13.492( 613492.351 ms.)| 979.267| 00:08:41.396( 521396.555 ms.)| 84.988 | 7| 04.04.2019 17:00| 4149| 3529197| 00:11:48.830( 708830.618 ms.)| 980.332| 00:12:47.834( 767834.052 ms.)| 108.324 | 8| 04.04.2019 18:01| 4157| 1145596| 00:01:19.217( 79217.372 ms.)| 313.004| 00:00:01.319( 1319.676 ms.)| 1.666 | 9| 04.04.2019 19:03| 4159| 2890362| 00:03:16.784( 196784.755 ms.)| 776.979| 00:00:01.441( 1441.386 ms.)| .732 | 10| 04.04.2019 20:04| 4161| 5758631| 00:06:30.513( 390513.926 ms.)| 1573.396| 00:00:01.470( 1470.110 ms.)| .376 | 11| 04.04.2019 21:03| 4163| 2781536| 00:03:06.470( 186470.979 ms.)| 785.745| 00:00:00.249( 249.865 ms.)| .134 | 12| 04.04.2019 23:03| 4165| 1443155| 00:01:34.467( 94467.539 ms.)| 200.438| 00:00:00.015( 15.287 ms.)| .016 | 13| 05.04.2019 01:03| 4167| 4387191| 00:06:51.380( 411380.293 ms.)| 609.332| 00:05:18.847( 318847.407 ms.)| 77.507 | 14| 05.04.2019 02:03| 4171| 189852| 00:00:10.989( 10989.899 ms.)| 52.737| 00:00:00.539( 539.110 ms.)| 4.906 | 15| 05.04.2019 03:01| 4173| 3627| 00:00:00.103( 103.000 ms.)| 1.042| 00:00:00.004( 4.131 ms.)| 4.010 | 16| 05.04.2019 04:00| 4175| 3627| 00:00:00.085( 85.235 ms.)| 1.025| 00:00:00.003( 3.811 ms.)| 4.471 | 17| 05.04.2019 05:00| 4177| 3747| 00:00:00.849( 849.454 ms.)| 1.041| 00:00:00.006( 6.124 ms.)| .721 | 18| 05.04.2019 06:00| 4179| 3747| 00:00:00.849( 849.561 ms.)| 1.041| 00:00:00.000( .051 ms.)| .006 | 19| 05.04.2019 07:00| 4181| 3747| 00:00:00.839( 839.416 ms.)| 1.041| 00:00:00.000( .062 ms.)| .007 | 20| 05.04.2019 08:00| 4183| 3747| 00:00:00.846( 846.382 ms.)| 1.041| 00:00:00.000( .007 ms.)| .001 | 21| 05.04.2019 09:00| 4185| 3747| 00:00:00.855( 855.426 ms.)| 1.041| 00:00:00.000( .065 ms.)| .008 | 22| 05.04.2019 10:00| 4187| 3797| 00:01:40.150( 100150.165 ms.)| 1.055| 00:00:21.845( 21845.217 ms.)| 21.812
เดเดฒเตเดฒเดพ SQL เดคเดฟเดฐเดเตเดเตเดเตเดเตเดเดฒเตเดเดณเตเดเตเดฏเตเด เดตเดพเดเดเด
เด เดญเตเดฏเตผเดคเตเดฅเดฟเดเตเดเตเด
SELECT
queryid ,
query
FROM
pg_stat_history
WHERE
queryid IS NOT NULL AND
database_id = DATABASE_ID AND
snapshot_timestamp BETWEEN BEGIN_TIMEPOINT AND END_TIMEPOINT
GROUP BY queryid , query
เดซเดฒเด
เดจเดฟเดเตเดเตพเดเตเดเต เดเดพเดฃเดพเดจเดพเดเตเดจเตเดจเดคเตเดชเตเดฒเต, เดตเดณเดฐเต เดฒเดณเดฟเดคเดฎเดพเดฏ เดเดชเดเดฐเดฃเดเตเดเตพ เดเดชเดฏเตเดเดฟเดเตเดเต, เดกเดพเดฑเตเดฑเดพเดฌเตเดธเดฟเดจเตเดฑเต เดเตเดฒเดฟเดญเดพเดฐเดคเตเดคเตเดฏเตเด เด เดตเดธเตเดฅเดฏเตเดฏเตเด เดเตเดฑเดฟเดเตเดเต เดจเดฟเดเตเดเตพเดเตเดเต เดงเดพเดฐเดพเดณเด เดเดชเดฏเตเดเดชเตเดฐเดฆเดฎเดพเดฏ เดตเดฟเดตเดฐเดเตเดเตพ เดฒเดญเดฟเดเตเดเตเด.
เดเตเดฑเดฟเดชเตเดชเต:เดจเดฟเดเตเดเตพ เด เดญเตเดฏเตผเดคเตเดฅเดจเดเดณเดฟเตฝ เดเตเดตเดฑเดฟ เดเดกเดฟ เดฐเตเดเดชเตเดชเตเดเตเดคเตเดคเตเดเดฏเดพเดฃเตเดเตเดเดฟเตฝ, เดเดฐเต เดชเตเดฐเดคเตเดฏเตเด เด เดญเตเดฏเตผเดคเตเดฅเดจเดฏเตเดเตเดเตเดณเตเดณ เดเดฐเดฟเดคเตเดฐเด เดจเดฟเดเตเดเตพเดเตเดเต เดฒเดญเดฟเดเตเดเตเด (เดธเตเดฅเดฒเด เดฒเดพเดญเดฟเดเตเดเดพเตป, เดเดฐเต เดชเตเดฐเดคเตเดฏเตเด เด เดญเตเดฏเตผเดคเตเดฅเดจเดฏเตเดเตเดเตเดณเตเดณ เดฑเดฟเดชเตเดชเตเตผเดเตเดเตเดเตพ เดเดดเดฟเดตเดพเดเตเดเดฟเดฏเดฟเดฐเดฟเดเตเดเตเดจเตเดจเต).
เด
เดคเดฟเดจเดพเตฝ, เด
เดจเตเดตเตเดทเดฃ เดชเตเดฐเดเดเดจเดคเตเดคเตเดเตเดเตเดฑเดฟเดเตเดเตเดณเตเดณ เดธเตเดฅเดฟเดคเดฟเดตเดฟเดตเดฐเดเตเดเดฃเดเตเดเตเดเตพ เดฒเดญเตเดฏเดฎเดพเดฃเต, เด
เดต เดถเตเดเดฐเดฟเดเตเดเตเดเตเดฃเตเดเดฟเดฐเดฟเดเตเดเตเดเดฏเดพเดฃเต.
เดเดฆเตเดฏ เดเดเตเดเด "เดธเตเดฑเตเดฑเดพเดฑเตเดฑเดฟเดธเตเดฑเตเดฑเดฟเดเตเดเตฝ เดกเดพเดฑเตเดฑ เดถเตเดเดฐเดฃเด" เดชเตเตผเดคเตเดคเดฟเดฏเดพเดฏเดฟ.
เดจเดฟเดเตเดเตพเดเตเดเต เดฐเดฃเตเดเดพเด เดเดเตเดเดคเตเดคเดฟเดฒเตเดเตเดเต เดชเตเดเดพเด - "เดชเตเดฐเดเดเดจ เด
เดณเดตเตเดเตพ เดธเดเตเดเตเดเดฐเดฟเดเตเดเตฝ".

เดเดจเตเดจเดพเตฝ เดเดคเตเดฐเต เดเดฅเดฏเดพเดฃเต.
เดคเตเดเดฐเตเดฃเตเดเดคเต ...
เด
เดตเดฒเดเดฌเด: www.habr.com
