PostgreSQL เช•เซเชตเซ‡เชฐเซ€เชเชจเซเช‚ เชฌเชฒเซเช• เช‘เชชเซเชŸเชฟเชฎเชพเช‡เชเซ‡เชถเชจ. เช•เชฟเชฐเซ€เชฒ เชฌเซ‹เชฐเซ‹เชตเชฟเช•เซ‹เชต (เชŸเซ‡เชจเซเชธเชฐ)

เช…เชนเซ‡เชตเชพเชฒ เช•เซ‡เชŸเชฒเชพเช• เช…เชญเชฟเช—เชฎเซ‹ เชฐเชœเซ‚ เช•เชฐเซ‡ เช›เซ‡ เชœเซ‡ เชฎเช‚เชœเซ‚เชฐเซ€ เช†เชชเซ‡ เช›เซ‡ เชเชธเช•เซเชฏเซเชเชฒ เช•เซเชตเซ‡เชฐเซ€เชเชจเชพ เชชเซเชฐเชฆเชฐเซเชถเชจเชจเซเช‚ เชจเชฟเชฐเซ€เช•เซเชทเชฃ เช•เชฐเซ‹ เชœเซเชฏเชพเชฐเซ‡ เชคเซ‡ เชฆเชฐเชฐเซ‹เชœ เชฒเชพเช–เซ‹ เชนเซ‹เชฏ, เช…เชจเซ‡ เชคเซเชฏเชพเช‚ เชธเซ‡เช‚เช•เชกเซ‹ เชฎเซ‹เชจเชฟเชŸเชฐ เช•เชฐเซ‡เชฒ PostgreSQL เชธเชฐเซเชตเชฐเซเชธ เช›เซ‡.

เช•เชฏเชพ เชคเช•เชจเซ€เช•เซ€ เช‰เช•เซ‡เชฒเซ‹ เช…เชฎเชจเซ‡ เชฎเชพเชนเชฟเชคเซ€เชจเชพ เช†เชตเชพ เชœเชฅเซเชฅเชพเชจเซ‡ เช…เชธเชฐเช•เชพเชฐเช• เชฐเซ€เชคเซ‡ เชชเซเชฐเช•เซเชฐเชฟเชฏเชพ เช•เชฐเชตเชพเชจเซ€ เชฎเช‚เชœเซ‚เชฐเซ€ เช†เชชเซ‡ เช›เซ‡, เช…เชจเซ‡ เช† เชธเชพเชฎเชพเชจเซเชฏ เชตเชฟเช•เชพเชธเช•เชฐเซเชคเชพเชจเชพ เชœเซ€เชตเชจเชจเซ‡ เช•เซ‡เชตเซ€ เชฐเซ€เชคเซ‡ เชธเชฐเชณ เชฌเชจเชพเชตเซ‡ เช›เซ‡?


เช•เซ‹เชจเซ‡ เชฐเชธ เช›เซ‡? เชšเซ‹เช•เซเช•เชธ เชธเชฎเชธเซเชฏเชพเช“ เช…เชจเซ‡ เชตเชฟเชตเชฟเชง เช‘เชชเซเชŸเชฟเชฎเชพเช‡เชเซ‡เชถเชจ เชคเช•เชจเซ€เช•เซ‹เชจเซเช‚ เชตเชฟเชถเซเชฒเซ‡เชทเชฃ SQL เชชเซเชฐเชถเซเชจเซ‹ เช…เชจเซ‡ PostgreSQL เชฎเชพเช‚ เชฒเชพเช•เซเชทเชฃเชฟเช• DBA เชธเชฎเชธเซเชฏเชพเช“ เช‰เช•เซ‡เชฒเชตเชพ - เชคเชฎเซ‡ เชชเชฃ เช•เชฐเซ€ เชถเช•เซ‹ เช›เซ‹ เชฒเซ‡เช–เซ‹เชจเซ€ เชถเซเชฐเซ‡เชฃเซ€ เชตเชพเช‚เชšเซ‹ เช† เชตเชฟเชทเชฏ เชชเชฐ.

PostgreSQL เช•เซเชตเซ‡เชฐเซ€เชเชจเซเช‚ เชฌเชฒเซเช• เช‘เชชเซเชŸเชฟเชฎเชพเช‡เชเซ‡เชถเชจ. เช•เชฟเชฐเซ€เชฒ เชฌเซ‹เชฐเซ‹เชตเชฟเช•เซ‹เชต (เชŸเซ‡เชจเซเชธเชฐ)
เชฎเชพเชฐเซเช‚ เชจเชพเชฎ เช•เชฟเชฐเซ€เชฒ เชฌเซ‹เชฐเซ‹เชตเชฟเช•เซ‹เชต เช›เซ‡, เชนเซเช‚ เชชเซเชฐเชคเชฟเชจเชฟเชงเชฟเชคเซเชต เช•เชฐเซเช‚ เช›เซเช‚ เชŸเซ‡เชจเซเชธเชฐ เช•เช‚เชชเชจเซ€. เช–เชพเชธ เช•เชฐเซ€เชจเซ‡, เชนเซเช‚ เช…เชฎเชพเชฐเซ€ เช•เช‚เชชเชจเซ€เชฎเชพเช‚ เชกเซ‡เชŸเชพเชฌเซ‡เช เชธเชพเชฅเซ‡ เช•เชพเชฎ เช•เชฐเชตเชพเชฎเชพเช‚ เชจเชฟเชทเซเชฃเชพเชค เช›เซเช‚.

เช†เชœเซ‡ เชนเซเช‚ เชคเชฎเชจเซ‡ เช•เชนเซ€เชถ เช•เซ‡ เช…เชฎเซ‡ เช•เซเชตเซ‡เชฐเซ€เชเชจเซ‡ เช•เซ‡เชตเซ€ เชฐเซ€เชคเซ‡ เช‘เชชเซเชŸเชฟเชฎเชพเช‡เช เช•เชฐเซ€เช เช›เซ€เช, เชœเซเชฏเชพเชฐเซ‡ เชคเชฎเชพเชฐเซ‡ เชเช• เชœ เช•เซเชตเซ‡เชฐเซ€เชจเซเช‚ เชชเซเชฐเชฆเชฐเซเชถเชจ "เชชเชฟเช• เช…เชฒเช—" เช•เชฐเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เชจเชฅเซ€, เชชเชฐเช‚เชคเซ เชธเชฎเชธเซเชฏเชพเชจเซ‡ เชเช•เชธเชพเชฅเซ‡ เชนเชฒ เช•เชฐเซ‹. เชœเซเชฏเชพเชฐเซ‡ เชฒเชพเช–เซ‹ เชตเชฟเชจเช‚เชคเซ€เช“ เชนเซ‹เชฏ, เช…เชจเซ‡ เชคเชฎเชพเชฐเซ‡ เช•เซ‡เชŸเชฒเซ€เช• เชถเซ‹เชงเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เชนเซ‹เชฏ เช‰เช•เซ‡เชฒ เชฎเชพเชŸเซ‡ เช…เชญเชฟเช—เชฎ เช† เชฎเซ‹เชŸเซ€ เชธเชฎเชธเซเชฏเชพ.

เชธเชพเชฎเชพเชจเซเชฏ เชฐเซ€เชคเซ‡, เช…เชฎเชพเชฐเชพ เชเช• เชฎเชฟเชฒเชฟเชฏเชจ เช•เซเชฒเชพเชฏเช‚เชŸ เชฎเชพเชŸเซ‡ เชŸเซ‡เชจเซเชธเชฐ เช›เซ‡ VLSI เช เช…เชฎเชพเชฐเซ€ เชเชชเซเชฒเชฟเช•เซ‡เชถเชจ เช›เซ‡: เช•เซ‹เชฐเซเชชเซ‹เชฐเซ‡เชŸ เชธเซ‹เชถเชฟเชฏเชฒ เชจเซ‡เชŸเชตเชฐเซเช•, เชตเชฟเชกเชฟเชฏเซ‹ เช•เชฎเซเชฏเซเชจเชฟเช•เซ‡เชถเชจ เชฎเชพเชŸเซ‡ เช‰เช•เซ‡เชฒเซ‹, เช†เช‚เชคเชฐเชฟเช• เช…เชจเซ‡ เชฌเชพเชนเซเชฏ เชฆเชธเซเชคเชพเชตเซ‡เชœ เชชเซเชฐเชตเชพเชน เชฎเชพเชŸเซ‡, เชเช•เชพเช‰เชจเซเชŸเชฟเช‚เช— เช…เชจเซ‡ เชตเซ‡เชฐเชนเชพเช‰เชธเซ€เชธ เชฎเชพเชŸเซ‡ เชเช•เชพเช‰เชจเซเชŸเชฟเช‚เช— เชธเชฟเชธเซเชŸเชฎเซเชธ,... เชเชŸเชฒเซ‡ เช•เซ‡, เชเช•เซ€เช•เซƒเชค เชฌเชฟเชเชจเซ‡เชธ เชฎเซ‡เชจเซ‡เชœเชฎเซ‡เชจเซเชŸ เชฎเชพเชŸเซ‡ เช†เชตเชพ "เชฎเซ‡เช—เชพ-เช•เชฎเซเชฌเชพเชˆเชจ", เชœเซ‡เชฎเชพเช‚ 100 เชฅเซ€ เชตเชงเซ เชตเชฟเชตเชฟเชง เช›เซ‡. เช†เช‚เชคเชฐเชฟเช• เชชเซเชฐเซ‹เชœเซ‡เช•เซเชŸเซเชธ.

เชคเซ‡ เชฌเชงเชพ เช•เชพเชฎ เช•เชฐเซ‡ เช›เซ‡ เช…เชจเซ‡ เชธเชพเชฎเชพเชจเซเชฏ เชฐเซ€เชคเซ‡ เชตเชฟเช•เชพเชธ เช•เชฐเซ‡ เช›เซ‡ เชคเซ‡เชจเซ€ เช–เชพเชคเชฐเซ€ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡, เช…เชฎเชพเชฐเซ€ เชชเชพเชธเซ‡ เชธเชฎเช—เซเชฐ เชฆเซ‡เชถเชฎเชพเช‚ 10 เชตเชฟเช•เชพเชธ เช•เซ‡เชจเซเชฆเซเชฐเซ‹ เช›เซ‡, เชœเซ‡เชฎเชพเช‚ เชตเชงเซ เช›เซ‡ 1000 เชตเชฟเช•เชพเชธเช•เชฐเซเชคเชพเช“.

เช…เชฎเซ‡ 2008 เชฅเซ€ PostgreSQL เชธเชพเชฅเซ‡ เช•เชพเชฎ เช•เชฐเซ€ เชฐเชนเซเชฏเชพ เช›เซ€เช เช…เชจเซ‡ เช…เชฎเซ‡ เชœเซ‡ เชชเซเชฐเช•เซเชฐเชฟเชฏเชพ เช•เชฐเซ€เช เช›เซ€เช เชคเซ‡เชจเซ‹ เชฎเซ‹เชŸเซ‹ เชœเชฅเซเชฅเซ‹ เชเช•เช เชพ เช•เชฐเซเชฏเซ‹ เช›เซ‡ - เช•เซเชฒเชพเชฏเชจเซเชŸ เชกเซ‡เชŸเชพ, เช†เช‚เช•เชกเชพเช•เซ€เชฏ, เชตเชฟเชถเซเชฒเซ‡เชทเชฃเชพเชคเซเชฎเช•, เชฌเชพเชนเซเชฏ เชฎเชพเชนเชฟเชคเซ€ เชธเชฟเชธเซเชŸเชฎเซ‹เชฎเชพเช‚เชฅเซ€ เชกเซ‡เชŸเชพ - 400TB เชฅเซ€ เชตเชงเซ. เชเช•เชฒเชพ เช‰เชคเซเชชเชพเชฆเชจเชฎเชพเช‚ เชฒเช—เชญเช— 250 เชธเชฐเซเชตเชฐเซเชธ เช›เซ‡, เช…เชจเซ‡ เช•เซเชฒ เชฎเชณเซ€เชจเซ‡ เชฒเช—เชญเช— 1000 เชกเซ‡เชŸเชพเชฌเซ‡เช เชธเชฐเซเชตเชฐเซเชธ เช›เซ‡ เชœเซ‡เชจเซเช‚ เช…เชฎเซ‡ เชจเชฟเชฐเซ€เช•เซเชทเชฃ เช•เชฐเซ€เช เช›เซ€เช.

PostgreSQL เช•เซเชตเซ‡เชฐเซ€เชเชจเซเช‚ เชฌเชฒเซเช• เช‘เชชเซเชŸเชฟเชฎเชพเช‡เชเซ‡เชถเชจ. เช•เชฟเชฐเซ€เชฒ เชฌเซ‹เชฐเซ‹เชตเชฟเช•เซ‹เชต (เชŸเซ‡เชจเซเชธเชฐ)

SQL เช เช˜เซ‹เชทเชฃเชพเชคเซเชฎเช• เชญเชพเชทเชพ เช›เซ‡. เชคเชฎเซ‡ "เช•เซ‡เชตเซ€ เชฐเซ€เชคเซ‡" เช•เช‚เชˆเช• เช•เชพเชฎ เช•เชฐเชตเซเช‚ เชœเซ‹เชˆเช เชคเซ‡เชจเซเช‚ เชตเชฐเซเชฃเชจ เชจเชฅเซ€, เชชเชฐเช‚เชคเซ "เชถเซเช‚" เชคเชฎเซ‡ เชชเซเชฐเชพเชชเซเชค เช•เชฐเชตเชพ เชฎเชพเช‚เช—เซ‹ เช›เซ‹. DBMS เชตเชงเซ เชธเชพเชฐเซ€ เชฐเซ€เชคเซ‡ เชœเชพเชฃเซ‡ เช›เซ‡ เช•เซ‡ เช•เซ‡เชตเซ€ เชฐเซ€เชคเซ‡ เชœเซ‹เช‡เชจ เช•เชฐเชตเซเช‚ - เชคเชฎเชพเชฐเชพ เช•เซ‹เชทเซเชŸเช•เซ‹เชจเซ‡ เช•เซ‡เชตเซ€ เชฐเซ€เชคเซ‡ เชœเซ‹เชกเชตเชพ, เช•เชˆ เชถเชฐเชคเซ‹ เชฒเชพเชฆเชตเซ€, เชถเซเช‚ เช…เชจเซเช•เซเชฐเชฎเชฃเชฟเช•เชพเชฎเชพเช‚เชฅเซ€ เชชเชธเชพเชฐ เชฅเชถเซ‡, เชถเซเช‚ เชจเชนเซ€เช‚...

เช•เซ‡เชŸเชฒเชพเช• DBMS เชธเช‚เช•เซ‡เชคเซ‹ เชธเซเชตเซ€เช•เชพเชฐเซ‡ เช›เซ‡: "เชจเชพ, เช† เชฌเซ‡ เช•เซ‹เชทเซเชŸเช•เซ‹เชจเซ‡ เช†เชตเซ€ เช…เชจเซ‡ เช†เชตเซ€ เช•เชคเชพเชฐเชฎเชพเช‚ เชœเซ‹เชกเซ‹," เชชเชฐเช‚เชคเซ PostgreSQL เช† เช•เชฐเซ€ เชถเช•เชคเซเช‚ เชจเชฅเซ€. เช† เช…เช—เซเชฐเชฃเซ€ เชตเชฟเช•เชพเชธเช•เชฐเซเชคเชพเช“เชจเซ€ เชธเชญเชพเชจ เชธเซเชฅเชฟเชคเชฟ เช›เซ‡: "เช…เชฎเซ‡ เชตเชฟเช•เชพเชธเช•เชฐเซเชคเชพเช“เชจเซ‡ เช…เชฎเซเช• เชชเซเชฐเช•เชพเชฐเชจเชพ เชธเช‚เช•เซ‡เชคเซ‹เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเชตเชพเชจเซ€ เชฎเช‚เชœเซ‚เชฐเซ€ เช†เชชเชตเชพเชจเซ‡ เชฌเชฆเชฒเซ‡ เช•เซเชตเซ‡เชฐเซ€ เช‘เชชเซเชŸเชฟเชฎเชพเช‡เชเชฐเชจเซ‡ เชธเชฎเชพเชชเซเชค เช•เชฐเซ€เชถเซเช‚."

เชชเชฐเช‚เชคเซ, เชชเซ‹เชธเซเชŸเช—เซเชฐเซ‡เชเชธเช•เซเชฏเซเชเชฒ "เชฌเชนเชพเชฐ" เชจเซ‡ เชชเซ‹เชคเชพเชจเซ‡ เชจเชฟเชฏเช‚เชคเซเชฐเชฟเชค เช•เชฐเชตเชพเชจเซ€ เชฎเช‚เชœเซ‚เชฐเซ€ เช†เชชเชคเซเช‚ เชจเชฅเซ€ เชคเซ‡ เชนเช•เซ€เช•เชค เชนเซ‹เชตเชพ เช›เชคเชพเช‚, เชคเซ‡ เชธเช‚เชชเซ‚เชฐเซเชฃ เชฐเซ€เชคเซ‡ เชชเชฐเชตเชพเชจเช—เซ€ เช†เชชเซ‡ เช›เซ‡ เชคเซ‡เชจเซ€ เช…เช‚เชฆเชฐ เชถเซเช‚ เชšเชพเชฒเซ€ เชฐเชนเซเชฏเซเช‚ เช›เซ‡ เชคเซ‡ เชœเซเช“เชœเซเชฏเชพเชฐเซ‡ เชคเชฎเซ‡ เชคเชฎเชพเชฐเซ€ เช•เซเชตเซ‡เชฐเซ€ เชšเชฒเชพเชตเซ‹ เช›เซ‹ เช…เชจเซ‡ เชคเซ‡เชจเซ‡ เช•เซเชฏเชพเช‚ เชธเชฎเชธเซเชฏเชพ เช†เชตเซ€ เชฐเชนเซ€ เช›เซ‡.

PostgreSQL เช•เซเชตเซ‡เชฐเซ€เชเชจเซเช‚ เชฌเชฒเซเช• เช‘เชชเซเชŸเชฟเชฎเชพเช‡เชเซ‡เชถเชจ. เช•เชฟเชฐเซ€เชฒ เชฌเซ‹เชฐเซ‹เชตเชฟเช•เซ‹เชต (เชŸเซ‡เชจเซเชธเชฐ)

เชธเชพเชฎเชพเชจเซเชฏ เชฐเซ€เชคเซ‡, เชตเชฟเช•เชพเชธเช•เชฐเซเชคเชพ [DBA เชฎเชพเชŸเซ‡] เชธเชพเชฎเชพเชจเซเชฏ เชฐเซ€เชคเซ‡ เช•เชˆ เช•เซเชฒเชพเชธเชฟเช• เชธเชฎเชธเซเชฏเชพเช“ เชธเชพเชฅเซ‡ เช†เชตเซ‡ เช›เซ‡? โ€œเช…เชนเซ€เช‚ เช…เชฎเซ‡ เชตเชฟเชจเช‚เชคเซ€ เชชเซ‚เชฐเซ€ เช•เชฐเซ€, เช…เชจเซ‡ เช…เชฎเชพเชฐเซ€ เชธเชพเชฅเซ‡ เชฌเชงเซเช‚ เชงเซ€เชฎเซเช‚ เช›เซ‡, เชฌเชงเซเช‚ เช…เชŸเช•เซ€ เชฐเชนเซเชฏเซเช‚ เช›เซ‡, เช•เช‚เชˆเช• เชฅเชˆ เชฐเชนเซเชฏเซเช‚ เช›เซ‡... เช•เซ‹เชˆ เชชเซเชฐเช•เชพเชฐเชจเซ€ เชฎเซเชถเซเช•เซ‡เชฒเซ€!"

เช•เชพเชฐเชฃเซ‹ เชฒเช—เชญเช— เชนเช‚เชฎเซ‡เชถเชพ เชธเชฎเชพเชจ เชนเซ‹เชฏ เช›เซ‡:

  • เชฌเชฟเชจเช•เชพเชฐเซเชฏเช•เซเชทเชฎ เช•เซเชตเซ‡เชฐเซ€ เช…เชฒเซเช—เซ‹เชฐเชฟเชงเชฎ
    เชตเชฟเช•เชพเชธเช•เชฐเซเชคเชพ: "เชนเชตเซ‡ เชนเซเช‚ เชคเซ‡เชจเซ‡ เชœเซ‹เชกเชพเช“ เชฆเซเชตเชพเชฐเชพ เชเชธเช•เซเชฏเซเชเชฒเชฎเชพเช‚ 10 เช•เซ‹เชทเซเชŸเช•เซ‹ เช†เชชเซเช‚ เช›เซเช‚..." - เช…เชจเซ‡ เช…เชชเซ‡เช•เซเชทเชพ เชฐเชพเช–เซ‡ เช›เซ‡ เช•เซ‡ เชคเซ‡เชจเซ€ เชธเซเชฅเชฟเชคเชฟ เชšเชฎเชคเซเช•เชพเชฐเชฟเช• เชฐเซ€เชคเซ‡ เช…เชธเชฐเช•เชพเชฐเช• เชฐเซ€เชคเซ‡ "เช–เซเชฒเซเชฒเซ€" เชฅเชˆ เชœเชถเซ‡ เช…เชจเซ‡ เชคเซ‡เชจเซ‡ เชเชกเชชเชฅเซ€ เชฌเชงเซเช‚ เชฎเชณเซ€ เชœเชถเซ‡. เชชเชฐเช‚เชคเซ เชšเชฎเชคเซเช•เชพเชฐเซ‹ เชฅเชคเชพ เชจเชฅเซ€, เช…เชจเซ‡ เช†เชตเซ€ เชชเชฐเชฟเชตเชฐเซเชคเชจเชถเซ€เชฒเชคเชพ เชงเชฐเชพเชตเชคเซ€ เช•เซ‹เชˆเชชเชฃ เชธเชฟเชธเซเชŸเชฎ (เชเช•เชฎเชพเช‚เชฅเซ€ 10 เช•เซ‹เชทเซเชŸเช•เซ‹) เชนเช‚เชฎเซ‡เชถเชพ เช…เชฎเซเช• เชชเซเชฐเช•เชพเชฐเชจเซ€ เชญเซ‚เชฒ เช†เชชเซ‡ เช›เซ‡. [เชฒเซ‡เช–]
  • เชœเซ‚เชจเชพ เช†เช‚เช•เชกเชพ
    เช† เชฌเชฟเช‚เชฆเซ เช–เชพเชธ เช•เชฐเซ€เชจเซ‡ PostgreSQL เชฎเชพเชŸเซ‡ เช–เซ‚เชฌ เชœ เชธเซเชธเช‚เช—เชค เช›เซ‡, เชœเซเชฏเชพเชฐเซ‡ เชคเชฎเซ‡ เชธเชฐเซเชตเชฐ เชชเชฐ เชเช• เชฎเซ‹เชŸเซ‹ เชกเซ‡เชŸเชพเชธเซ‡เชŸ "เชฐเซ‡เชกเซเชฏเซ‹", เชตเชฟเชจเช‚เชคเซ€ เช•เชฐเซ‹ เช…เชจเซ‡ เชคเซ‡ เชคเชฎเชพเชฐเชพ เชŸเซ‡เชฌเซเชฒเซ‡เชŸเชจเซ‡ "เชธเซ‡เช•เซเชธเช•เซ‡เชจเชฟเชŸ" เช•เชฐเซ‡ เช›เซ‡. เช•เชพเชฐเชฃ เช•เซ‡ เช—เชˆเช•เชพเชฒเซ‡ เชคเซ‡เชฎเชพเช‚ 10 เชฐเซ‡เช•เซ‹เชฐเซเชก เชนเชคเชพ, เช…เชจเซ‡ เช†เชœเซ‡ 10 เชฎเชฟเชฒเชฟเชฏเชจ เช›เซ‡, เชชเชฐเช‚เชคเซ PostgreSQL เชนเชœเซ เชธเซเชงเซ€ เช† เชตเชฟเชถเซ‡ เชœเชพเชฃเชคเซเช‚ เชจเชฅเซ€, เช…เชจเซ‡ เช†เชชเชฃเซ‡ เชคเซ‡เชจเซ‡ เชคเซ‡เชจเชพ เชตเชฟเชถเซ‡ เชœเชฃเชพเชตเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡. [เชฒเซ‡เช–]
  • เชธเช‚เชธเชพเชงเชจเซ‹ เชชเชฐ "เชชเซเชฒเช—".
    เชคเชฎเซ‡ เชจเชฌเชณเชพ เชธเชฐเซเชตเชฐ เชชเชฐ เชเช• เชฎเซ‹เชŸเซ‹ เช…เชจเซ‡ เชญเชพเชฐเซ‡ เชฒเซ‹เชก เชฅเชฏเซ‡เชฒ เชกเซ‡เชŸเชพเชฌเซ‡เช เช‡เชจเซเชธเซเชŸเซ‹เชฒ เช•เชฐเซเชฏเซ‹ เช›เซ‡ เช•เซ‡ เชœเซ‡เชจเซ€ เชชเชพเชธเซ‡ เชชเซ‚เชฐเชคเซ€ เชกเชฟเชธเซเช•, เชฎเซ‡เชฎเชฐเซ€ เช…เชฅเชตเชพ เชชเซเชฐเซ‹เชธเซ‡เชธเชฐ เช•เชพเชฎเช—เซ€เชฐเซ€ เชจเชฅเซ€. เช…เชจเซ‡ เชคเซ‡ เชฌเชงเซ เชœ เช›เซ‡... เช•เซเชฏเชพเช‚เช• เชชเชฐเชซเซ‹เชฐเซเชฎเชจเซเชธ เชธเซ€เชฒเชฟเช‚เช— เช›เซ‡ เชœเซ‡เชจเซ€ เช‰เชชเชฐ เชคเชฎเซ‡ เชนเชตเซ‡ เช•เซ‚เชฆเซ€ เชจเชนเซ€เช‚ เชถเช•เซ‹.
  • เช…เชตเชฐเซ‹เชงเชฟเชค
    เช† เชเช• เชฎเซเชถเซเช•เซ‡เชฒ เชฎเซเชฆเซเชฆเซ‹ เช›เซ‡, เชชเชฐเช‚เชคเซ เชคเซ‡ เชตเชฟเชตเชฟเชง เชธเช‚เชถเซ‹เชงเชฟเชค เชชเซเชฐเชถเซเชจเซ‹ (INSERT, UPDATE, DELETE) เชฎเชพเชŸเซ‡ เชธเซŒเชฅเซ€ เชตเชงเซ เชธเซเชธเช‚เช—เชค เช›เซ‡ - เช† เชเช• เช…เชฒเช— เชฎเซ‹เชŸเซ‹ เชตเชฟเชทเชฏ เช›เซ‡.

เชฏเซ‹เชœเชจเชพ เชฎเซ‡เชณเชตเซ€ เชฐเชนเซ€ เช›เซ‡

...เช…เชจเซ‡ เชฌเซ€เชœเซเช‚ เชฌเชงเซเช‚ เชฎเชพเชŸเซ‡ เช†เชชเชฃเซ‡ เชฏเซ‹เชœเชจเชพเชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡! เช†เชชเชฃเซ‡ เช เชœเซ‹เชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡ เช•เซ‡ เชธเชฐเซเชตเชฐเชจเซ€ เช…เช‚เชฆเชฐ เชถเซเช‚ เชฅเชˆ เชฐเชนเซเชฏเซเช‚ เช›เซ‡.

PostgreSQL เช•เซเชตเซ‡เชฐเซ€เชเชจเซเช‚ เชฌเชฒเซเช• เช‘เชชเซเชŸเชฟเชฎเชพเช‡เชเซ‡เชถเชจ. เช•เชฟเชฐเซ€เชฒ เชฌเซ‹เชฐเซ‹เชตเชฟเช•เซ‹เชต (เชŸเซ‡เชจเซเชธเชฐ)

PostgreSQL เชฎเชพเชŸเซ‡ เช•เซเชตเซ‡เชฐเซ€ เชเช•เซเชเซ‡เช•เซเชฏเซเชถเชจ เชชเซเชฒเชพเชจ เช เชŸเซ‡เช•เซเชธเซเชŸ เชฐเชฟเชชเซเชฐเซ‡เชเชจเซเชŸเซ‡เชถเชจเชฎเชพเช‚ เช•เซเชตเซ‡เชฐเซ€ เชเช•เซเชเซ‡เช•เซเชฏเซเชถเชจ เช…เชฒเซเช—เซ‹เชฐเชฟเชงเชฎเชจเซ‹ เชเช• เชตเซƒเช•เซเชท เช›เซ‡. เชคเซ‡ เชšเซ‹เช•เซเช•เชธ เช…เชฒเซเช—เซ‹เชฐเชฟเชงเชฎ เช›เซ‡ เชœเซ‡, เช†เชฏเซ‹เชœเช• เชฆเซเชตเชพเชฐเชพ เชตเชฟเชถเซเชฒเซ‡เชทเชฃเชจเชพ เชชเชฐเชฟเชฃเชพเชฎเซ‡, เชธเซŒเชฅเซ€ เช…เชธเชฐเช•เชพเชฐเช• เชนเซ‹เชตเชพเชจเซเช‚ เชœเชฃเชพเชฏเซเช‚ เชนเชคเซเช‚.

เชฆเชฐเซ‡เช• เชŸเซเชฐเซ€ เชจเซ‹เชก เชเช• เช‘เชชเชฐเซ‡เชถเชจ เช›เซ‡: เช•เซ‹เชทเซเชŸเช• เช…เชฅเชตเชพ เช…เชจเซเช•เซเชฐเชฎเชฃเชฟเช•เชพเชฎเชพเช‚เชฅเซ€ เชกเซ‡เชŸเชพ เชชเซเชจเชƒเชชเซเชฐเชพเชชเซเชค เช•เชฐเชตเซ‹, เชฌเซ€เชŸเชฎเซ‡เชช เชฌเชจเชพเชตเชตเซ‹, เชฌเซ‡ เช•เซ‹เชทเซเชŸเช•เซ‹เชจเซ‡ เชœเซ‹เชกเชตเชพ, เชœเซ‹เชกเชพเชตเซเช‚, เช›เซ‡เชฆเชตเซเช‚ เช…เชฅเชตเชพ เชชเชธเช‚เชฆเช—เซ€เช“เชจเซ‡ เชฌเชพเช•เชพเชค เชฐเชพเช–เชตเซเช‚. เช•เซเชตเซ‡เชฐเซ€ เชšเชฒเชพเชตเชตเชพเชฎเชพเช‚ เช† เชตเซƒเช•เซเชทเชจเซ€ เช—เชพเช‚เช เซ‹เชฎเชพเช‚เชฅเซ€ เชชเชธเชพเชฐ เชฅเชตเซเช‚ เชธเชพเชฎเซ‡เชฒ เช›เซ‡.

เช•เซเชตเซ‡เชฐเซ€ เชชเซเชฒเชพเชจ เชฎเซ‡เชณเชตเชตเชพ เชฎเชพเชŸเซ‡, เชธเซเชŸเซ‡เชŸเชฎเซ‡เชจเซเชŸเชจเซ‹ เช…เชฎเชฒ เช•เชฐเชตเชพเชจเซ‹ เชธเซŒเชฅเซ€ เชธเชนเซ‡เชฒเซ‹ เชฐเชธเซเชคเซ‹ เช›เซ‡ EXPLAIN. เชคเชฎเชพเชฎ เชตเชพเชธเซเชคเชตเชฟเช• เชตเชฟเชถเซ‡เชทเชคเชพเช“ เชธเชพเชฅเซ‡ เชฎเซ‡เชณเชตเชตเชพ เชฎเชพเชŸเซ‡, เชเชŸเชฒเซ‡ เช•เซ‡, เช–เชฐเซ‡เช–เชฐ เช†เชงเชพเชฐ เชชเชฐ เช•เซเชตเซ‡เชฐเซ€ เชšเชฒเชพเชตเชตเชพ เชฎเชพเชŸเซ‡ - EXPLAIN (ANALYZE, BUFFERS) SELECT ....

เช–เชฐเชพเชฌ เชญเชพเช—: เชœเซเชฏเชพเชฐเซ‡ เชคเชฎเซ‡ เชคเซ‡เชจเซ‡ เชšเชฒเชพเชตเซ‹ เช›เซ‹, เชคเซเชฏเชพเชฐเซ‡ เชคเซ‡ "เช…เชนเซ€เช‚ เช…เชจเซ‡ เชนเชฎเชฃเชพเช‚" เชฅเชพเชฏ เช›เซ‡, เชคเซ‡เชฅเซ€ เชคเซ‡ เชซเช•เซเชค เชธเซเชฅเชพเชจเชฟเช• เชกเชฟเชฌเช—เซ€เช‚เช— เชฎเชพเชŸเซ‡ เชฏเซ‹เช—เซเชฏ เช›เซ‡. เชœเซ‹ เชคเชฎเซ‡ เช…เชคเซเชฏเช‚เชค เชฒเซ‹เชก เชฅเชฏเซ‡เชฒ เชธเชฐเซเชตเชฐ เชฒเซ‹ เช•เซ‡ เชœเซ‡ เชกเซ‡เชŸเชพ เชชเชฐเชฟเชตเชฐเซเชคเชจเชจเชพ เชฎเชœเชฌเซ‚เชค เชชเซเชฐเชตเชพเชน เชนเซ‡เช เชณ เช›เซ‡, เช…เชจเซ‡ เชคเชฎเซ‡ เชœเซ‹เชถเซ‹: โ€œเช“เชน! เช…เชนเซ€เช‚ เช…เชฎเชพเชฐเซ€ เชชเชพเชธเซ‡ เชงเซ€เชฎเชพ เช…เชฎเชฒ เช›เซ‡เชธเซเชฏเชพ เชตเชฟเชจเช‚เชคเซ€." เช…เชกเชงเซ‹ เช•เชฒเชพเช•, เชเช• เช•เชฒเชพเช• เชชเชนเซ‡เชฒเชพ - เชœเซเชฏเชพเชฐเซ‡ เชคเชฎเซ‡ เชฆเซ‹เชกเซ€ เชฐเชนเซเชฏเชพ เชนเชคเชพ เช…เชจเซ‡ เชฒเซ‹เช—เชฎเชพเช‚เชฅเซ€ เช† เชตเชฟเชจเช‚เชคเซ€ เชฎเซ‡เชณเชตเซ€ เชฐเชนเซเชฏเชพ เชนเชคเชพ, เชคเซ‡เชจเซ‡ เชธเชฐเซเชตเชฐ เชชเชฐ เชชเชพเช›เชพ เชฒเชพเชตเซ€ เชฐเชนเซเชฏเชพ เชนเชคเชพ, เชคเซเชฏเชพเชฐเซ‡ เชคเชฎเชพเชฐเซ‹ เชธเชฎเช—เซเชฐ เชกเซ‡เชŸเชพเชธเซ‡เชŸ เช…เชจเซ‡ เช†เช‚เช•เชกเชพ เชฌเชฆเชฒเชพเชˆ เช—เชฏเชพ เชนเชคเชพ. เชคเชฎเซ‡ เชคเซ‡เชจเซ‡ เชกเซ€เชฌเช— เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เชšเชฒเชพเชตเซ‹ เช›เซ‹ - เช…เชจเซ‡ เชคเซ‡ เชเชกเชชเชฅเซ€ เชšเชพเชฒเซ‡ เช›เซ‡! เช…เชจเซ‡ เชคเชฎเซ‡ เชถเชพ เชฎเชพเชŸเซ‡, เชถเชพ เชฎเชพเชŸเซ‡ เชธเชฎเชœเซ€ เชถเช•เชคเชพ เชจเชฅเซ€ เชนเชคเซ€ เชงเซ€เชฎเซ‡ เชงเซ€เชฎเซ‡.

PostgreSQL เช•เซเชตเซ‡เชฐเซ€เชเชจเซเช‚ เชฌเชฒเซเช• เช‘เชชเซเชŸเชฟเชฎเชพเช‡เชเซ‡เชถเชจ. เช•เชฟเชฐเซ€เชฒ เชฌเซ‹เชฐเซ‹เชตเชฟเช•เซ‹เชต (เชŸเซ‡เชจเซเชธเชฐ)

เชœเซเชฏเชพเชฐเซ‡ เชธเชฐเซเชตเชฐ เชชเชฐ เชตเชฟเชจเช‚เชคเซ€ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ€ เชคเซเชฏเชพเชฐเซ‡ เชฌเชฐเชพเชฌเชฐ เชถเซเช‚ เชฅเชฏเซเช‚ เชคเซ‡ เชธเชฎเชœเชตเชพ เชฎเชพเชŸเซ‡, เชธเซเชฎเชพเชฐเซเชŸ เชฒเซ‹เช•เซ‹เช เชฒเช–เซเชฏเซเช‚ auto_explain เชฎเซ‹เชกเซเชฏเซเชฒ. เชคเซ‡ เชฒเช—เชญเช— เชคเชฎเชพเชฎ เชธเซŒเชฅเซ€ เชธเชพเชฎเชพเชจเซเชฏ PostgreSQL เชตเชฟเชคเชฐเชฃเซ‹เชฎเชพเช‚ เชนเชพเชœเชฐ เช›เซ‡, เช…เชจเซ‡ เชคเซ‡เชจเซ‡ เชซเช•เซเชค เชฐเซ‚เชชเชฐเซ‡เช–เชพ เชซเชพเช‡เชฒเชฎเชพเช‚ เชธเช•เซเชฐเชฟเชฏ เช•เชฐเซ€ เชถเช•เชพเชฏ เช›เซ‡.

เชœเซ‹ เชคเซ‡เชจเซ‡ เช–เชฌเชฐ เชชเชกเซ‡ เช•เซ‡ เช•เซ‡เชŸเชฒเซ€เช• เชตเชฟเชจเช‚เชคเซ€ เชคเชฎเซ‡ เชคเซ‡เชจเซ‡ เชœเซ‡ เชฎเชฐเซเชฏเชพเชฆเชพ เชฎเชพเชŸเซ‡ เช•เชนเซ€ เชนเชคเซ€ เชคเซ‡เชจเชพเชฅเซ€ เชตเชงเซ เชฒเชพเช‚เชฌเซ€ เชšเชพเชฒเซ€ เชฐเชนเซ€ เช›เซ‡, เชคเซ‹ เชคเซ‡ เช•เชฐเซ‡ เช›เซ‡ เช† เชตเชฟเชจเช‚เชคเซ€เชจเซ€ เชฏเซ‹เชœเชจเชพเชจเซ‹ "เชธเซเชจเซ‡เชชเชถเซ‹เชŸ" เช…เชจเซ‡ เชคเซ‡เชฎเชจเซ‡ เชฒเซ‹เช—เชฎเชพเช‚ เชเช•เชธเชพเชฅเซ‡ เชฒเช–เซ‡ เช›เซ‡.

PostgreSQL เช•เซเชตเซ‡เชฐเซ€เชเชจเซเช‚ เชฌเชฒเซเช• เช‘เชชเซเชŸเชฟเชฎเชพเช‡เชเซ‡เชถเชจ. เช•เชฟเชฐเซ€เชฒ เชฌเซ‹เชฐเซ‹เชตเชฟเช•เซ‹เชต (เชŸเซ‡เชจเซเชธเชฐ)

เชนเชตเซ‡ เชฌเชงเซเช‚ เชธเชพเชฐเซเช‚ เชฒเชพเช—เซ‡ เช›เซ‡, เช…เชฎเซ‡ เชฒเซ‹เช— เชชเชฐ เชœเชˆเช เช›เซ€เช เช…เชจเซ‡ เชคเซเชฏเชพเช‚ เชœเซ‹เชˆเช เช›เซ€เช... [เชŸเซ‡เช•เซเชธเซเชŸ เชซเซ‚เชŸเช•เซเชฒเซ‹เชฅ]. เชชเชฐเช‚เชคเซ เช…เชฎเซ‡ เชคเซ‡เชจเชพ เชตเชฟเชถเซ‡ เช•เช‚เชˆเชชเชฃ เช•เชนเซ€ เชถเช•เชคเชพ เชจเชฅเซ€, เชคเซ‡ เชนเช•เซ€เช•เชค เชธเชฟเชตเชพเชฏ เช•เซ‡ เชคเซ‡ เชเช• เช‰เชคเซเชคเชฎ เชฏเซ‹เชœเชจเชพ เช›เซ‡ เช•เชพเชฐเชฃ เช•เซ‡ เชคเซ‡เชจเซ‡ เช…เชฎเชฒเชฎเชพเช‚ เชฎเซ‚เช•เชตเชพเชฎเชพเช‚ 11msเชจเซ‹ เชธเชฎเชฏ เชฒเชพเช—เซเชฏเซ‹ เชนเชคเซ‹.

เชฌเชงเซเช‚ เชธเชพเชฐเซเช‚ เชฒเชพเช—เซ‡ เช›เซ‡ - เชชเชฐเช‚เชคเซ เช–เชฐเซ‡เช–เชฐ เชถเซเช‚ เชฅเชฏเซเช‚ เชคเซ‡ เช•เช‚เชˆ เชธเซเชชเชทเซเชŸ เชจเชฅเซ€. เชธเชพเชฎเชพเชจเซเชฏ เชธเชฎเชฏ เชธเชฟเชตเชพเชฏ, เช†เชชเชฃเซ‡ เช–เชฐเซ‡เช–เชฐ เช•เช‚เชˆเชชเชฃ เชœเซ‹เชคเชพ เชจเชฅเซ€. เช•เชพเชฐเชฃ เช•เซ‡ เชธเชพเชฆเชพ เชฒเช–เชพเชฃเชจเชพ เช†เชตเชพ "เชฒเซ‡เชฎเซเชฌ" เชจเซ‡ เชœเซ‹เชตเซเช‚ เชธเชพเชฎเชพเชจเซเชฏ เชฐเซ€เชคเซ‡ เชฆเซเชฐเชถเซเชฏ เชจเชฅเซ€.

เชชเชฐเช‚เชคเซ เชœเซ‹ เชคเซ‡ เชธเซเชชเชทเซเชŸ เชจ เชนเซ‹เชฏ เชคเซ‹ เชชเชฃ, เชญเชฒเซ‡ เชคเซ‡ เช…เชธเซเชตเชฟเชงเชพเชœเชจเช• เชนเซ‹เชฏ, เชคเซเชฏเชพเช‚ เชตเชงเซ เชฎเซ‚เชณเชญเซ‚เชค เชธเชฎเชธเซเชฏเชพเช“ เช›เซ‡:

  • เชจเซ‹เชก เชธเซ‚เชšเชตเซ‡ เช›เซ‡ เชธเชฎเช—เซเชฐ เชธเชฌเชŸเซเชฐเซ€เชจเชพ เชธเช‚เชธเชพเชงเชจเซ‹เชจเซ‹ เชธเชฐเชตเชพเชณเซ‹ เชคเซ‡เชจเชพ เชนเซ‡เช เชณ. เชเชŸเชฒเซ‡ เช•เซ‡, เชคเชฎเซ‡ เช† เชšเซ‹เช•เซเช•เชธ เช‡เชจเซเชกเซ‡เช•เซเชธ เชธเซเช•เซ‡เชจ เชชเชฐ เช•เซ‡เชŸเชฒเซ‹ เชธเชฎเชฏ เชตเชฟเชคเชพเชตเซเชฏเซ‹ เชนเชคเซ‹ เชคเซ‡ เชถเซ‹เชงเซ€ เชถเช•เชคเชพ เชจเชฅเซ€ เชœเซ‹ เชคเซ‡เชจเซ€ เชนเซ‡เช เชณ เช•เซ‡เชŸเชฒเซ€เช• เชจเซ‡เชธเซเชŸเซ‡เชก เชธเซเชฅเชฟเชคเชฟ เชนเซ‹เชฏ. เช…เช‚เชฆเชฐ "เชฌเชพเชณเช•เซ‹" เช…เชจเซ‡ เชถเชฐเชคเซ€ เชšเชฒเซ‹, CTE เช›เซ‡ เช•เซ‡ เช•เซ‡เชฎ เชคเซ‡ เชœเซ‹เชตเชพ เชฎเชพเชŸเซ‡ เช†เชชเชฃเซ‡ เช—เชคเชฟเชถเซ€เชฒ เชฐเซ€เชคเซ‡ เชœเซ‹เชตเซเช‚ เชœเซ‹เชˆเช - เช…เชจเซ‡ เช† เชฌเชงเซเช‚ "เช†เชชเชฃเชพ เชฎเช—เชœเชฎเชพเช‚" เชฌเชพเชฆ เช•เชฐเชตเซเช‚ เชœเซ‹เชˆเช.
  • เชฌเซ€เชœเซ‹ เชฎเซเชฆเซเชฆเซ‹: เชจเซ‹เชก เชชเชฐ เชฆเชฐเซเชถเชพเชตเซ‡เชฒ เชธเชฎเชฏ เช›เซ‡ เชธเชฟเช‚เช—เชฒ เชจเซ‹เชก เชเช•เซเชเซ‡เช•เซเชฏเซเชถเชจ เชธเชฎเชฏ. เชœเซ‹ เช† เชจเซ‹เชกเชจเซ‡ เชชเชฐเชฟเชฃเชพเชฎเซ‡ เชเช•เซเชเชฟเช•เซเชฏเซเชŸ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเซเช‚ เชนเซ‹เชฏ, เช‰เชฆเชพเชนเชฐเชฃ เชคเชฐเซ€เช•เซ‡, เชŸเซ‡เชฌเชฒ เชฐเซ‡เช•เซ‹เชฐเซเชกเซเชธ เชฆเซเชตเชพเชฐเชพ เช˜เชฃเซ€ เชตเช–เชค เชฒเซ‚เชช เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡, เชคเซ‹ เชชเช›เซ€ เชฒเซ‚เชชเซเชธเชจเซ€ เชธเช‚เช–เซเชฏเชพโ€”เช† เชจเซ‹เชกเชจเชพ เชšเช•เซเชฐ โ€” เชชเซเชฒเชพเชจเชฎเชพเช‚ เชตเชงเชพเชฐเซ‹ เชฅเชพเชฏ เช›เซ‡. เชชเชฐเช‚เชคเซ เช…เชฃเซ เช…เชฎเชฒเชจเซ‹ เชธเชฎเชฏ เชชเซ‹เชคเซ‡ เชœ เชฏเซ‹เชœเชจเชพเชจเซ€ เชฆเซเชฐเชทเซเชŸเชฟเช เชธเชฎเชพเชจ เชฐเชนเซ‡ เช›เซ‡. เชเชŸเชฒเซ‡ เช•เซ‡, เช† เชจเซ‹เชก เช•เซเชฒ เช•เซ‡เชŸเชฒเชพ เชธเชฎเชฏ เชธเซเชงเซ€ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเซเช‚ เชนเชคเซเช‚ เชคเซ‡ เชธเชฎเชœเชตเชพ เชฎเชพเชŸเซ‡, เชคเชฎเชพเชฐเซ‡ เชเช• เชตเชธเซเชคเซเชจเซ‡ เชฌเซ€เชœเซ€ เชฆเซเชตเชพเชฐเชพ เช—เซเชฃเชพเช•เชพเชฐ เช•เชฐเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡ - เชซเชฐเซ€เชฅเซ€, "เชคเชฎเชพเชฐเชพ เชฎเชพเชฅเชพเชฎเชพเช‚."

เช†เชตเซ€ เชชเชฐเชฟเชธเซเชฅเชฟเชคเชฟเช“เชฎเชพเช‚, เชธเชฎเชœเซ‹ "เชธเซŒเชฅเซ€ เชจเชฌเชณเซ€ เช•เชกเซ€ เช•เซ‹เชฃ เช›เซ‡?" เชฒเช—เชญเช— เช…เชถเช•เซเชฏ. เชคเซ‡เชฅเซ€, เชตเชฟเช•เชพเชธเช•เชฐเซเชคเชพเช“ เชชเชฃ เชชเซ‹เชคเชพเชจเซ‡ "เชฎเซ‡เชจเซเชฏเซเช…เชฒ" เชฎเชพเช‚ เชฒเช–เซ‡ เช›เซ‡ "เชฏเซ‹เชœเชจเชพเชจเซ‡ เชธเชฎเชœเชตเซ€ เช เชเช• เช•เชณเชพ เช›เซ‡ เชœเซ‡ เชถเซ€เช–เชตเซ€ เชœเซ‹เชˆเช, เช…เชจเซเชญเชตเซ‹...".

เชชเชฐเช‚เชคเซ เช…เชฎเชพเชฐเซ€ เชชเชพเชธเซ‡ 1000 เชตเชฟเช•เชพเชธเช•เชฐเซเชคเชพเช“ เช›เซ‡, เช…เชจเซ‡ เชคเชฎเซ‡ เชคเซ‡ เชฆเชฐเซ‡เช•เชจเซ‡ เช† เช…เชจเซเชญเชต เชชเชนเซ‹เช‚เชšเชพเชกเซ€ เชถเช•เชคเชพ เชจเชฅเซ€. เชนเซเช‚, เชคเชฎเซ‡, เชคเซ‡ เชœเชพเชฃเซ€เช เช›เซ€เช, เชชเชฐเช‚เชคเซ เชคเซเชฏเชพเช‚เชจเซ€ เช•เซ‹เชˆ เชตเซเชฏเช•เซเชคเชฟ เชนเชตเซ‡ เชœเชพเชฃเชคเซ€ เชจเชฅเซ€. เช•เชฆเชพเชš เชคเซ‡ เชถเซ€เช–เชถเซ‡, เช…เชฅเชตเชพ เช•เชฆเชพเชš เชจเชนเซ€เช‚, เชชเชฐเช‚เชคเซ เชคเซ‡เชจเซ‡ เชนเชตเซ‡ เช•เชพเชฎ เช•เชฐเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡ - เช…เชจเซ‡ เชคเซ‡เชจเซ‡ เช† เช…เชจเซเชญเชต เช•เซเชฏเชพเช‚เชฅเซ€ เชฎเชณเชถเซ‡?

เชฏเซ‹เชœเชจเชพ เชตเชฟเชเซเชฏเซเชฒเชพเช‡เชเซ‡เชถเชจ

เชคเซ‡เชฅเซ€, เช…เชฎเชจเซ‡ เชธเชฎเชœเชพเชฏเซเช‚ เช•เซ‡ เช† เชธเชฎเชธเซเชฏเชพเช“เชจเซ‹ เชธเชพเชฎเชจเซ‹ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡, เช…เชฎเชจเซ‡ เชœเชฐเซ‚เชฐ เช›เซ‡ เชฏเซ‹เชœเชจเชพเชจเซเช‚ เชธเชพเชฐเซเช‚ เชตเชฟเชเซเชฏเซเชฒเชพเช‡เชเซ‡เชถเชจ. [เชฒเซ‡เช–]

PostgreSQL เช•เซเชตเซ‡เชฐเซ€เชเชจเซเช‚ เชฌเชฒเซเช• เช‘เชชเซเชŸเชฟเชฎเชพเช‡เชเซ‡เชถเชจ. เช•เชฟเชฐเซ€เชฒ เชฌเซ‹เชฐเซ‹เชตเชฟเช•เซ‹เชต (เชŸเซ‡เชจเซเชธเชฐ)

เช…เชฎเซ‡ เชชเชนเซ‡เชฒเชพ "เชฌเชœเชพเชฐ เชฆเซเชตเชพเชฐเชพ" เช—เชฏเชพ - เชšเชพเชฒเซ‹ เช‡เชจเซเชŸเชฐเชจเซ‡เชŸ เชชเชฐ เชœเซ‹เชˆเช เช•เซ‡ เชถเซเช‚ เช…เชธเซเชคเชฟเชคเซเชตเชฎเชพเช‚ เช›เซ‡.

เชชเชฐเช‚เชคเซ เชคเซ‡ เชฌเชนเชพเชฐ เช†เชตเซเชฏเซเช‚ เช›เซ‡ เช•เซ‡ เชคเซเชฏเชพเช‚ เช–เซ‚เชฌ เช“เช›เชพ เชชเซเชฐเชฎเชพเชฃเชฎเชพเช‚ "เชœเซ€เชตเช‚เชค" เช‰เช•เซ‡เชฒเซ‹ เช›เซ‡ เชœเซ‡ เชตเชงเซ เช•เซ‡ เช“เช›เชพ เชตเชฟเช•เชพเชธเชถเซ€เชฒ เช›เซ‡ - เชถเชพเชฌเซเชฆเชฟเช• เชฐเซ€เชคเซ‡, เชซเช•เซเชค เชเช• เชœ: explain.depesz.com เชนเซเชฌเชฐเซเชŸ เชฒเซเชฌเซ‡เช•เชเซ‡เชตเชธเซเช•เซ€ เชฆเซเชตเชพเชฐเชพ. เชœเซเชฏเชพเชฐเซ‡ เชคเชฎเซ‡ "เชซเซ€เชก" เชซเซ€เชฒเซเชก เชฆเชพเช–เชฒ เช•เชฐเซ‹ เช›เซ‹ เชคเซเชฏเชพเชฐเซ‡ เชชเซเชฒเชพเชจเชจเซเช‚ เชŸเซ‡เช•เซเชธเซเชŸ เชฐเชœเซ‚ เช•เชฐเซ‡ เช›เซ‡, เชคเซ‡ เชคเชฎเชจเซ‡ เชตเชฟเชถเซเชฒเซ‡เชทเชฟเชค เชกเซ‡เชŸเชพ เชธเชพเชฅเซ‡เชจเซเช‚ เชŸเซ‡เชฌเชฒ เชฌเชคเชพเชตเซ‡ เช›เซ‡:

  • เชจเซ‹เชกเชจเซ‹ เชชเซ‹เชคเชพเชจเซ‹ เชชเซเชฐเซ‹เชธเซ‡เชธเชฟเช‚เช— เชธเชฎเชฏ
  • เชธเชฎเช—เซเชฐ เชธเชฌเชŸเซเชฐเซ€ เชฎเชพเชŸเซ‡ เช•เซเชฒ เชธเชฎเชฏ
  • เชชเซเชจเชƒเชชเซเชฐเชพเชชเซเชค เชฅเชฏเซ‡เชฒเชพ เชฐเซ‡เช•เซ‹เชฐเซเชกเซเชธเชจเซ€ เชธเช‚เช–เซเชฏเชพ เชœเซ‡ เช†เช‚เช•เชกเชพเช•เซ€เชฏ เชฐเซ€เชคเซ‡ เช…เชชเซ‡เช•เซเชทเชฟเชค เชนเชคเซ€
  • เชจเซ‹เชก เชฌเซ‹เชกเซ€ เชชเซ‹เชคเซ‡

เช† เชธเซ‡เชตเชพเชฎเชพเช‚ เชฒเชฟเช‚เช•เซเชธเชจเชพ เช†เชฐเซเช•เชพเช‡เชตเชจเซ‡ เชถเซ‡เชฐ เช•เชฐเชตเชพเชจเซ€ เช•เซเชทเชฎเชคเชพ เชชเชฃ เช›เซ‡. เชคเชฎเซ‡ เชคเชฎเชพเชฐเซ€ เชฏเซ‹เชœเชจเชพ เชคเซเชฏเชพเช‚ เชซเซ‡เช‚เช•เซ€ เชฆเซ€เชงเซ€ เช…เชจเซ‡ เช•เชนเซเชฏเซเช‚: "เช…เชฐเซ‡, เชตเชพเชธเซเชฏเชพ, เช…เชนเซ€เช‚ เชเช• เชฒเชฟเช‚เช• เช›เซ‡, เชคเซเชฏเชพเช‚ เช•เช‚เชˆเช• เช–เซ‹เชŸเซเช‚ เช›เซ‡."

PostgreSQL เช•เซเชตเซ‡เชฐเซ€เชเชจเซเช‚ เชฌเชฒเซเช• เช‘เชชเซเชŸเชฟเชฎเชพเช‡เชเซ‡เชถเชจ. เช•เชฟเชฐเซ€เชฒ เชฌเซ‹เชฐเซ‹เชตเชฟเช•เซ‹เชต (เชŸเซ‡เชจเซเชธเชฐ)

เชชเชฐเช‚เชคเซ เชจเชพเชจเซ€ เชธเชฎเชธเซเชฏเชพเช“ เชชเชฃ เช›เซ‡.

เชชเซเชฐเชฅเชฎ, "เช•เซ‹เชชเซ€-เชชเซ‡เชธเซเชŸ" เชจเซ‹ เชตเชฟเชถเชพเชณ เชœเชฅเซเชฅเซ‹. เชคเชฎเซ‡ เชฒเซ‹เช—เชจเซ‹ เชŸเซเช•เชกเซ‹ เชฒเซ‹, เชคเซ‡เชจเซ‡ เชคเซเชฏเชพเช‚ เชตเชณเช—เซ€ เชฐเชนเซ‹, เช…เชจเซ‡ เชซเชฐเซ€เชฅเซ€, เช…เชจเซ‡ เชซเชฐเซ€เชฅเซ€.

เชฌเซ€เชœเซเช‚, เชตเชพเช‚เชšเซ‡เชฒเชพ เชกเซ‡เชŸเชพเชจเซ€ เชฎเชพเชคเซเชฐเชพเชจเซเช‚ เช•เซ‹เชˆ เชตเชฟเชถเซเชฒเซ‡เชทเชฃ เชจเชฅเซ€ - เชคเซ‡ เชœ เชฌเชซเชฐ เชœเซ‡ เช†เช‰เชŸเชชเซเชŸ เช•เชฐเซ‡ เช›เซ‡ EXPLAIN (ANALYZE, BUFFERS), เช…เชฎเซ‡ เชคเซ‡เชจเซ‡ เช…เชนเซ€เช‚ เชœเซ‹เชคเชพ เชจเชฅเซ€. เชคเซ‡ เชซเช•เซเชค เชคเซ‡เชฎเชจเซ‡ เช•เซ‡เชตเซ€ เชฐเซ€เชคเซ‡ เชกเชฟเชธเชเชธเซ‡เชฎเซเชฌเชฒ เช•เชฐเชตเซเช‚, เชคเซ‡เชฎเชจเซ‡ เชธเชฎเชœเชตเซเช‚ เช…เชจเซ‡ เชคเซ‡เชฎเชจเซ€ เชธเชพเชฅเซ‡ เช•เชพเชฎ เช•เชฐเชตเซเช‚ เชคเซ‡ เชœเชพเชฃเชคเซ‹ เชจเชฅเซ€. เชœเซเชฏเชพเชฐเซ‡ เชคเชฎเซ‡ เช˜เชฃเซ‹ เชกเซ‡เชŸเชพ เชตเชพเช‚เชšเซ€ เชฐเชนเซเชฏเชพเช‚ เชนเซ‹เชต เช…เชจเซ‡ เชธเชฎเชœเซ‹ เช•เซ‡ เชคเชฎเซ‡ เชกเชฟเชธเซเช• เช…เชจเซ‡ เชฎเซ‡เชฎเชฐเซ€ เช•เซ‡เชถเชจเซ‡ เช–เซ‹เชŸเซ€ เชฐเซ€เชคเซ‡ เชซเชพเชณเชตเซ€ เชฐเชนเซเชฏเชพเช‚ เช›เซ‹, เชคเซเชฏเชพเชฐเซ‡ เช† เชฎเชพเชนเชฟเชคเซ€ เช–เซ‚เชฌ เชœ เชฎเชนเชคเซเชตเชชเซ‚เชฐเซเชฃ เช›เซ‡.

เชคเซเชฐเซ€เชœเซ‹ เชจเช•เชพเชฐเชพเชคเซเชฎเช• เชฎเซเชฆเซเชฆเซ‹ เช† เชชเซเชฐเซ‹เชœเซ‡เช•เซเชŸเชจเซ‹ เช–เซ‚เชฌ เชœ เชจเชฌเชณเซ‹ เชตเชฟเช•เชพเชธ เช›เซ‡. เช•เชฎเชฟเชŸเซเชธ เช–เซ‚เชฌ เชœ เชจเชพเชจเชพ เช›เซ‡, เชœเซ‹ เชฆเชฐ เช› เชฎเชนเชฟเชจเชพเชฎเชพเช‚ เชเช•เชตเชพเชฐ, เช…เชจเซ‡ เช•เซ‹เชก เชชเชฐเซเชฒเชฎเชพเช‚ เชนเซ‹เชฏ เชคเซ‹ เชคเซ‡ เชธเชพเชฐเซเช‚ เช›เซ‡.

PostgreSQL เช•เซเชตเซ‡เชฐเซ€เชเชจเซเช‚ เชฌเชฒเซเช• เช‘เชชเซเชŸเชฟเชฎเชพเช‡เชเซ‡เชถเชจ. เช•เชฟเชฐเซ€เชฒ เชฌเซ‹เชฐเซ‹เชตเชฟเช•เซ‹เชต (เชŸเซ‡เชจเซเชธเชฐ)

เชชเชฐเช‚เชคเซ เช† เชฌเชงเชพ "เช—เซ€เชคเซ‹" เช›เซ‡, เช…เชฎเซ‡ เช•เซ‹เชˆเช• เชฐเซ€เชคเซ‡ เช† เชธเชพเชฅเซ‡ เชœเซ€เชตเซ€ เชถเช•เซ€เช เช›เซ€เช, เชชเชฐเช‚เชคเซ เชเช• เชเชตเซ€ เชตเชธเซเชคเซ เช›เซ‡ เชœเซ‡เชฃเซ‡ เช…เชฎเชจเซ‡ เช† เชธเซ‡เชตเชพเชฅเซ€ เชฎเซ‹เชŸเชพ เชชเซเชฐเชฎเชพเชฃเชฎเชพเช‚ เชฆเซ‚เชฐ เช•เชฐเซ€ เชฆเซ€เชงเชพ. เช† เช•เซ‹เชฎเชจ เชŸเซ‡เชฌเชฒ เชเช•เซเชธเชชเซเชฐเซ‡เชถเชจ (CTE) เช…เชจเซ‡ InitPlan/SubPlan เชœเซ‡เชตเชพ เชตเชฟเชตเชฟเชง เชกเชพเชฏเชจเซ‡เชฎเชฟเช• เชจเซ‹เชกเซเชธเชจเชพ เชตเชฟเชถเซเชฒเซ‡เชทเชฃเชฎเชพเช‚ เชญเซ‚เชฒเซ‹ เช›เซ‡.

เชœเซ‹ เชคเชฎเซ‡ เช† เชšเชฟเชคเซเชฐ เชชเชฐ เชตเชฟเชถเซเชตเชพเชธ เช•เชฐเซ‹ เช›เซ‹, เชคเซ‹ เชฆเชฐเซ‡เช• เชตเซเชฏเช•เซเชคเชฟเช—เชค เชจเซ‹เชกเชจเซ‹ เช•เซเชฒ เช…เชฎเชฒ เชธเชฎเชฏ เชธเชฎเช—เซเชฐ เชตเชฟเชจเช‚เชคเซ€เชจเชพ เช•เซเชฒ เช…เชฎเชฒ เชธเชฎเชฏ เช•เชฐเชคเชพ เชตเชงเชพเชฐเซ‡ เช›เซ‡. เชคเซ‡ เชธเชฐเชณ เช›เซ‡ - เช† CTE เชจเซ‹ เชœเชจเชฐเซ‡เชถเชจ เชŸเชพเช‡เชฎ CTE เชธเซเช•เซ‡เชจ เชจเซ‹เชกเชฎเชพเช‚เชฅเซ€ เชฌเชพเชฆ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเซ‹ เชจเชฅเซ€. เชคเซ‡เชฅเซ€, CTE เชธเซเช•เซ‡เชจเชฎเชพเช‚ เช•เซ‡เชŸเชฒเซ‹ เชธเชฎเชฏ เชฒเชพเช—เซเชฏเซ‹ เชคเซ‡เชจเซ‹ เชธเชพเชšเซ‹ เชœเชตเชพเชฌ เชนเชตเซ‡ เช…เชฎเชจเซ‡ เช–เชฌเชฐ เชจเชฅเซ€.

PostgreSQL เช•เซเชตเซ‡เชฐเซ€เชเชจเซเช‚ เชฌเชฒเซเช• เช‘เชชเซเชŸเชฟเชฎเชพเช‡เชเซ‡เชถเชจ. เช•เชฟเชฐเซ€เชฒ เชฌเซ‹เชฐเซ‹เชตเชฟเช•เซ‹เชต (เชŸเซ‡เชจเซเชธเชฐ)

เชชเช›เซ€ เช…เชฎเชจเซ‡ เชธเชฎเชœเชพเชฏเซเช‚ เช•เซ‡ เชนเชตเซ‡ เช†เชชเชฃเซเช‚ เชชเซ‹เชคเชพเชจเซเช‚ เชฒเช–เชตเชพเชจเซ‹ เชธเชฎเชฏ เช›เซ‡ - เชนเซเชฐเซ‡! เชฆเชฐเซ‡เช• เชกเซ‡เชตเชฒเชชเชฐ เช•เชนเซ‡ เช›เซ‡: "เชนเชตเซ‡ เช…เชฎเซ‡ เช†เชชเชฃเซเช‚ เชชเซ‹เชคเชพเชจเซเช‚ เชฒเช–เซ€เชถเซเช‚, เชคเซ‡ เช–เซ‚เชฌ เชœ เชธเชฐเชณ เชนเชถเซ‡!"

เช…เชฎเซ‡ เชตเซ‡เชฌ เชธเซ‡เชตเชพเช“ เชฎเชพเชŸเซ‡ เชฒเชพเช•เซเชทเชฃเชฟเช• เชธเซเชŸเซ‡เช• เชฒเซ€เชงเซ‹: Node.js + Express เชชเชฐ เช†เชงเชพเชฐเชฟเชค เช•เซ‹เชฐ, เชธเซเช‚เชฆเชฐ เช†เช•เซƒเชคเชฟเช“ เชฎเชพเชŸเซ‡ เชฌเซเชŸเชธเซเชŸเซเชฐเซ‡เชช เช…เชจเซ‡ D3.js เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซเชฏเซ‹. เช…เชจเซ‡ เช…เชฎเชพเชฐเซ€ เช…เชชเซ‡เช•เซเชทเชพเช“ เชธเช‚เชชเซ‚เชฐเซเชฃเชชเชฃเซ‡ เชจเซเชฏเชพเชฏเซ€ เชนเชคเซ€ - เช…เชฎเชจเซ‡ 2 เช…เช เชตเชพเชกเชฟเชฏเชพเชฎเชพเช‚ เชชเซเชฐเชฅเชฎ เชชเซเชฐเซ‹เชŸเซ‹เชŸเชพเช‡เชช เชฎเชณเซเชฏเซ‹:

  • เช•เชธเซเชŸเชฎ เชชเซเชฒเชพเชจ เชชเชพเชฐเซเชธเชฐ
    เชเชŸเชฒเซ‡ เช•เซ‡, เชนเชตเซ‡ เช…เชฎเซ‡ PostgreSQL เชฆเซเชตเชพเชฐเชพ เชœเชจเชฐเซ‡เชŸ เช•เชฐเชพเชฏเซ‡เชฒ เช•เซ‹เชˆเชชเชฃ เชชเซเชฒเชพเชจเชจเซ‡ เชชเชพเชฐเซเชธ เช•เชฐเซ€ เชถเช•เซ€เช เช›เซ€เช.
  • เชกเชพเชฏเชจเซ‡เชฎเชฟเช• เชจเซ‹เชกเซเชธเชจเซเช‚ เชฏเซ‹เช—เซเชฏ เชตเชฟเชถเซเชฒเซ‡เชทเชฃ - CTE เชธเซเช•เซ‡เชจ, InitPlan, SubPlan
  • เชฌเชซเชฐ เชตเชฟเชคเชฐเชฃเชจเซเช‚ เชตเชฟเชถเซเชฒเซ‡เชทเชฃ - เชœเซเชฏเชพเช‚ เชกเซ‡เชŸเชพ เชชเซƒเชทเซเช เซ‹ เชฎเซ‡เชฎเชฐเซ€เชฎเชพเช‚เชฅเซ€ เชตเชพเช‚เชšเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡, เช•เซเชฏเชพเช‚ เชธเซเชฅเชพเชจเชฟเช• เช•เซ‡เชถเชฎเชพเช‚เชฅเซ€, เช•เซเชฏเชพเช‚ เชกเชฟเชธเซเช•เชฎเชพเช‚เชฅเซ€
  • เชธเซเชชเชทเซเชŸเชคเชพ เชฎเชณเซ€
    เชœเซ‡เชฅเซ€ เชฒเซ‹เช—เชฎเชพเช‚ เช† เชฌเชงเซเช‚ "เช–เซ‹เชฆเชตเซเช‚" เชจเชนเซ€เช‚, เชชเชฐเช‚เชคเซ เชšเชฟเชคเซเชฐเชฎเชพเช‚ เชคเชฐเชค เชœ "เชจเชฌเชณเซ€ เช•เชกเซ€" เชœเซ‹เชตเชพ เชฎเชพเชŸเซ‡.

PostgreSQL เช•เซเชตเซ‡เชฐเซ€เชเชจเซเช‚ เชฌเชฒเซเช• เช‘เชชเซเชŸเชฟเชฎเชพเช‡เชเซ‡เชถเชจ. เช•เชฟเชฐเซ€เชฒ เชฌเซ‹เชฐเซ‹เชตเชฟเช•เซ‹เชต (เชŸเซ‡เชจเซเชธเชฐ)

เช…เชฎเชจเซ‡ เช†เชจเชพ เชœเซ‡เชตเซเช‚ เช•เช‚เชˆเช• เชฎเชณเซเชฏเซเช‚, เชœเซ‡เชฎเชพเช‚ เชธเชฟเชจเซเชŸเซ‡เช•เซเชธ เชนเชพเช‡เชฒเชพเช‡เชŸเชฟเช‚เช—เชจเซ‹ เชธเชฎเชพเชตเซ‡เชถ เชฅเชพเชฏ เช›เซ‡. เชชเชฐเช‚เชคเซ เชธเชพเชฎเชพเชจเซเชฏ เชฐเซ€เชคเซ‡ เช…เชฎเชพเชฐเชพ เชตเชฟเช•เชพเชธเช•เชฐเซเชคเชพเช“ เชนเชตเซ‡ เชฏเซ‹เชœเชจเชพเชจเซ€ เชธเช‚เชชเซ‚เชฐเซเชฃ เชฐเชœเซ‚เช†เชค เชธเชพเชฅเซ‡ เช•เชพเชฎ เช•เชฐเชคเชพ เชจเชฅเซ€, เชชเชฐเช‚เชคเซ เชŸเซ‚เช‚เช•เชพ เชฏเซ‹เชœเชจเชพ เชธเชพเชฅเซ‡. เช›เซ‡เชตเชŸเซ‡, เช…เชฎเซ‡ เชชเชนเซ‡เชฒเชพเชฅเซ€ เชœ เชฌเชงเซ€ เชธเช‚เช–เซเชฏเชพเช“เชจเซเช‚ เชตเชฟเชถเซเชฒเซ‡เชทเชฟเชค เช•เชฐเซเชฏเซเช‚ เช›เซ‡ เช…เชจเซ‡ เชคเซ‡เชฎเชจเซ‡ เชกเชพเชฌเซ‡ เช…เชจเซ‡ เชœเชฎเชฃเซ‡ เชซเซ‡เช‚เช•เซ€ เชฆเซ€เชงเชพ เช›เซ‡, เช…เชจเซ‡ เชฎเชงเซเชฏเชฎเชพเช‚ เช…เชฎเซ‡ เชซเช•เซเชค เชชเซเชฐเชฅเชฎ เชฒเซ€เชŸเซ€ เช›เซ‹เชกเซ€ เชฆเซ€เชงเซ€ เช›เซ‡, เชคเซ‡ เช•เซ‡เชตเชพ เชชเซเชฐเช•เชพเชฐเชจเซ‹ เชจเซ‹เชก เช›เซ‡: เชธเซ€เชŸเซ€เช‡ เชธเซเช•เซ‡เชจ, เชธเซ€เชŸเซ€เช‡ เชœเชจเชฐเซ‡เชถเชจ เช…เชฅเชตเชพ เชธเซ‡เช• เชธเซเช•เซ‡เชจ เช…เชฎเซเช• เชจเชฟเชถเชพเชจเซ€ เช…เชจเซเชธเชพเชฐ.

เช† เชธเช‚เช•เซเชทเชฟเชชเซเชค เชฐเชœเซ‚เช†เชค เช›เซ‡ เชœเซ‡เชจเซ‡ เช†เชชเชฃเซ‡ เช•เชนเซ€เช เช›เซ€เช เชฏเซ‹เชœเชจเชพ เชจเชฎเซ‚เชจเซ‹.

PostgreSQL เช•เซเชตเซ‡เชฐเซ€เชเชจเซเช‚ เชฌเชฒเซเช• เช‘เชชเซเชŸเชฟเชฎเชพเช‡เชเซ‡เชถเชจ. เช•เชฟเชฐเซ€เชฒ เชฌเซ‹เชฐเซ‹เชตเชฟเช•เซ‹เชต (เชŸเซ‡เชจเซเชธเชฐ)

เชฌเซ€เชœเซเช‚ เชถเซเช‚ เช…เชจเซเช•เซ‚เชณ เชนเชถเซ‡? เช†เชชเชฃเชพ เช•เซเชฒ เชธเชฎเชฏเชจเซ‹ เช•เซ‡เชŸเชฒเซ‹ เชนเชฟเชธเซเชธเซ‹ เช•เชฏเชพ เชจเซ‹เชกเชจเซ‡ เชซเชพเชณเชตเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡ เชคเซ‡ เชœเซ‹เชตเชพเชจเซเช‚ เช…เชจเซเช•เซ‚เชณ เชฐเชนเซ‡เชถเซ‡ - เช…เชจเซ‡ เชซเช•เซเชค เชคเซ‡เชจเซ‡ เชฌเชพเชœเซ เชชเชฐ "เชšเซ€เช‚เชธเซ‹" เชชเชพเช‡ เชšเชพเชฐเซเชŸ.

เช…เชฎเซ‡ เชจเซ‹เชก เชชเชฐ เชจเชฟเชฐเซเชฆเซ‡เชถ เช•เชฐเซ€เช เช›เซ€เช เช…เชจเซ‡ เชœเซเช“ - เชคเซ‡ เชคเชพเชฐเชฃ เช†เชชเซ‡ เช›เซ‡ เช•เซ‡ เชธเซ‡เช• เชธเซเช•เซ‡เชจ เช•เซเชฒ เชธเชฎเชฏเชจเชพ เชเช• เช•เซเชตเชพเชฐเซเชŸเชฐ เช•เชฐเชคเชพ เช“เช›เซ‹ เชธเชฎเชฏ เชฒเซ‡ เช›เซ‡, เช…เชจเซ‡ เชฌเชพเช•เซ€เชจเซ‹ 3/4 CTE เชธเซเช•เซ‡เชจ เชฆเซเชตเชพเชฐเชพ เชฒเซ‡เชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเซ‹ เชนเชคเซ‹. เชนเซ‹เชฐเชฐ! เชœเซ‹ เชคเชฎเซ‡ เชคเชฎเชพเชฐเซ€ เช•เซเชตเซ‡เชฐเซ€เชเชฎเชพเช‚ เชคเซ‡เชจเซ‹ เชธเช•เซเชฐเชฟเชฏ เชฐเซ€เชคเซ‡ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ‹ เช›เซ‹ เชคเซ‹ CTE เชธเซเช•เซ‡เชจเชจเชพ "เช†เช—เชจเชพ เชฆเชฐ" เชตเชฟเชถเซ‡ เช† เชเช• เชจเชพเชจเซ€ เชจเซ‹เช‚เชง เช›เซ‡. เชคเซ‡เช“ เช–เซ‚เชฌ เชเชกเชชเซ€ เชจเชฅเซ€ - เชคเซ‡เช“ เชจเชฟเชฏเชฎเชฟเชค เชŸเซ‡เชฌเชฒ เชธเซเช•เซ‡เชจเชฟเช‚เช— เช•เชฐเชคเชพ เชชเชฃ เชนเชฒเช•เซ€ เช—เซเชฃเชตเชคเซเชคเชพเชตเชพเชณเชพ เช›เซ‡. [เชฒเซ‡เช–] [เชฒเซ‡เช–]

เชชเชฐเช‚เชคเซ เชธเชพเชฎเชพเชจเซเชฏ เชฐเซ€เชคเซ‡ เช†เชตเชพ เช†เช•เซƒเชคเชฟเช“ เชตเชงเซ เชฐเชธเชชเซเชฐเชฆ, เชตเชงเซ เชœเชŸเชฟเชฒ เชนเซ‹เชฏ เช›เซ‡, เชœเซเชฏเชพเชฐเซ‡ เช†เชชเชฃเซ‡ เชคเชฐเชค เชœ เช•เซ‹เชˆ เชธเซ‡เช—เชฎเซ‡เชจเซเชŸ เชคเชฐเชซ เชจเชฟเชฐเซเชฆเซ‡เชถ เช•เชฐเซ€เช เช›เซ€เช เช…เชจเซ‡ เชœเซ‹เชˆเช เช›เซ€เช, เช‰เชฆเชพเชนเชฐเชฃ เชคเชฐเซ€เช•เซ‡, เช…เชกเชงเชพ เช•เชฐเชคเชพเช‚ เชตเชงเซ เชธเชฎเชฏ เช…เชฎเซเช• Seq Scan โ€œเช–เชพเชคเซ‹โ€ เช›เซ‡. เชคเชฆเซเชชเชฐเชพเช‚เชค, เช…เช‚เชฆเชฐ เชเช• เชชเซเชฐเช•เชพเชฐเชจเซเช‚ เชซเชฟเชฒเซเชŸเชฐ เชนเชคเซเช‚, เชคเซ‡ เชฎเซเชœเชฌ เช˜เชฃเชพ เชฌเชงเชพ เชฐเซ‡เช•เซ‹เชฐเซเชกเซเชธ เช•เชพเชขเซ€ เชจเชพเช–เชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเชพ เชนเชคเชพ... เชคเชฎเซ‡ เช† เชšเชฟเชคเซเชฐ เชธเซ€เชงเชพ เชตเชฟเช•เชพเชธเช•เชฐเซเชคเชพเชจเซ‡ เชซเซ‡เช‚เช•เซ€ เชถเช•เซ‹ เช›เซ‹ เช…เชจเซ‡ เช•เชนเซ€ เชถเช•เซ‹ เช›เซ‹: โ€œเชตเชพเชธเซเชฏเชพ, เช…เชนเซ€เช‚ เชคเชฎเชพเชฐเชพ เชฎเชพเชŸเซ‡ เชฌเชงเซเช‚ เช–เชฐเชพเชฌ เช›เซ‡! เชคเซ‡เชจเซ‡ เชถเซ‹เชงเซ‹, เชœเซเช“ - เช•เช‚เชˆเช• เช–เซ‹เชŸเซเช‚ เช›เซ‡!โ€

PostgreSQL เช•เซเชตเซ‡เชฐเซ€เชเชจเซเช‚ เชฌเชฒเซเช• เช‘เชชเซเชŸเชฟเชฎเชพเช‡เชเซ‡เชถเชจ. เช•เชฟเชฐเซ€เชฒ เชฌเซ‹เชฐเซ‹เชตเชฟเช•เซ‹เชต (เชŸเซ‡เชจเซเชธเชฐ)

เชธเซเชตเชพเชญเชพเชตเชฟเช• เชฐเซ€เชคเซ‡, เชคเซ‡เชฎเชพเช‚ เช•เซ‡เชŸเชฒเชพเช• "เชฐเซ‡เช•" เชธเชพเชฎเซ‡เชฒ เชนเชคเชพ.

เช…เชฎเซ‡ เชœเซ‡ เชชเซเชฐเชฅเชฎ เชตเชธเซเชคเซ เชคเชฐเชซ เช†เชตเซเชฏเชพ เชคเซ‡ เชฐเชพเช‰เชจเซเชกเชฟเช‚เช— เชธเชฎเชธเซเชฏเชพ เชนเชคเซ€. เชฏเซ‹เชœเชจเชพเชฎเชพเช‚ เชฆเชฐเซ‡เช• เชตเซเชฏเช•เซเชคเชฟเช—เชค เชจเซ‹เชกเชจเซ‹ เชธเชฎเชฏ 1 ฮผs เชจเซ€ เชšเซ‹เช•เชธเชพเชˆ เชธเชพเชฅเซ‡ เชฆเชฐเซเชถเชพเชตเซ‡เชฒ เช›เซ‡. เช…เชจเซ‡ เชœเซเชฏเชพเชฐเซ‡ เชจเซ‹เชก เชธเชพเชฏเช•เชฒเชจเซ€ เชธเช‚เช–เซเชฏเชพ เชตเชงเซ€ เชœเชพเชฏ, เช‰เชฆเชพเชนเชฐเชฃ เชคเชฐเซ€เช•เซ‡, 1000 - เช…เชฎเชฒเซ€เช•เชฐเชฃ เชชเช›เซ€ เชชเซ‹เชธเซเชŸเช—เซเชฐเซ‡เชเชธเช•เซเชฏเซเชเชฒ "เชšเซ‹เช•เชธเชพเชˆเชจเซ€ เช…เช‚เชฆเชฐ" เชตเชฟเชญเชพเชœเชฟเชค เชฅเชพเชฏ เช›เซ‡, เชคเซ‹ เชœเซเชฏเชพเชฐเซ‡ เชชเชพเช›เซเช‚ เช—เชฃเชคเชฐเซ€ เช•เชฐเซ€เช เช›เซ€เช เชคเซเชฏเชพเชฐเซ‡ เช…เชฎเชจเซ‡ "เช•เซเชฏเชพเช‚เช• 0.95ms เช…เชจเซ‡ 1.05ms เชตเชšเซเชšเซ‡" เช•เซเชฒ เชธเชฎเชฏ เชฎเชณเซ‡ เช›เซ‡. เชœเซเชฏเชพเชฐเซ‡ เช—เชฃเชคเชฐเซ€ เชฎเชพเช‡เช•เซเชฐเซ‹เชธเซ‡เช•เชจเซเชกเซเชธเชฎเชพเช‚ เชœเชพเชฏ เช›เซ‡, เชคเซเชฏเชพเชฐเซ‡ เชคเซ‡ เช เซ€เช• เช›เซ‡, เชชเชฐเช‚เชคเซ เชœเซเชฏเชพเชฐเซ‡ เชคเซ‡ เชชเชนเซ‡เชฒเซ‡เชฅเซ€ เชœ [เชฎเชฟเชฒเซ€] เชธเซ‡เช•เชจเซเชกเซเชธ เช›เซ‡, เชคเซเชฏเชพเชฐเซ‡ เชคเชฎเชพเชฐเซ‡ เช† เชฎเชพเชนเชฟเชคเซ€เชจเซ‡ เชงเซเชฏเชพเชจเชฎเชพเช‚ เชฒเซ‡เชตเซ€ เชชเชกเชถเซ‡ เชœเซเชฏเชพเชฐเซ‡ "เช•เซ‹เชฃเซ‡ เช•เซ‡เชŸเชฒเซ‹ เชตเชชเชฐเชพเชถ เช•เชฐเซเชฏเซ‹" เชฏเซ‹เชœเชจเชพเชจเชพ เช—เชพเช‚เช เซ‹ เชชเชฐ เชธเช‚เชธเชพเชงเชจเซ‹ "เช‰เชชเชฏเซ‹เช—" เช•เชฐเซ‹.

PostgreSQL เช•เซเชตเซ‡เชฐเซ€เชเชจเซเช‚ เชฌเชฒเซเช• เช‘เชชเซเชŸเชฟเชฎเชพเช‡เชเซ‡เชถเชจ. เช•เชฟเชฐเซ€เชฒ เชฌเซ‹เชฐเซ‹เชตเชฟเช•เซ‹เชต (เชŸเซ‡เชจเซเชธเชฐ)

เชฌเซ€เชœเซ‹ เชฎเซเชฆเซเชฆเซ‹, เชตเชงเซ เชœเชŸเชฟเชฒ, เช—เชคเชฟเชถเซ€เชฒ เช—เชพเช‚เช เซ‹ เชตเชšเซเชšเซ‡ เชธเช‚เชธเชพเชงเชจเซ‹เชจเซเช‚ (เชคเซ‡ เชฌเชซเชฐเซเชธ) เชตเชฟเชคเชฐเชฃ เช›เซ‡. เช†เชจเชพเชฅเซ€ เช…เชฎเชจเซ‡ เชชเซเชฐเซ‹เชŸเซ‹เชŸเชพเช‡เชชเชจเชพ เชชเซเชฐเชฅเชฎ 2 เช…เช เชตเชพเชกเชฟเชฏเชพ เช‰เชชเชฐเชพเช‚เชค เชฌเซ€เชœเชพ 4 เช…เช เชตเชพเชกเชฟเชฏเชพเชจเซ‹ เช–เชฐเซเชš เชฅเชฏเซ‹.

เช† เชชเซเชฐเช•เชพเชฐเชจเซ€ เชธเชฎเชธเซเชฏเชพ เชฎเซ‡เชณเชตเชตเซ€ เชเช•เชฆเชฎ เชธเชฐเชณ เช›เซ‡ - เช…เชฎเซ‡ CTE เช•เชฐเซ€เช เช›เซ€เช เช…เชจเซ‡ เชคเซ‡เชฎเชพเช‚ เช•เช‚เชˆเช• เชตเชพเช‚เชšเซ€เช เช›เซ€เช. เชนเช•เซ€เช•เชคเชฎเชพเช‚, PostgreSQL "เชธเซเชฎเชพเชฐเซเชŸ" เช›เซ‡ เช…เชจเซ‡ เชคเซเชฏเชพเช‚ เชธเซ€เชงเซเช‚ เช•เช‚เชˆเชชเชฃ เชตเชพเช‚เชšเชถเซ‡ เชจเชนเซ€เช‚. เชชเช›เซ€ เช…เชฎเซ‡ เชคเซ‡เชฎเชพเช‚เชฅเซ€ เชชเซเชฐเชฅเชฎ เชฐเซ‡เช•เซ‹เชฐเซเชก เชฒเชˆเช เช›เซ€เช, เช…เชจเซ‡ เชคเซ‡ เชœ CTE เชฎเชพเช‚เชฅเซ€ เชเช•เชธเซ‹ เช…เชจเซ‡ เชชเซเชฐเชฅเชฎ เชฐเซ‡เช•เซ‹เชฐเซเชก เชฒเชˆเช เช›เซ€เช.

PostgreSQL เช•เซเชตเซ‡เชฐเซ€เชเชจเซเช‚ เชฌเชฒเซเช• เช‘เชชเซเชŸเชฟเชฎเชพเช‡เชเซ‡เชถเชจ. เช•เชฟเชฐเซ€เชฒ เชฌเซ‹เชฐเซ‹เชตเชฟเช•เซ‹เชต (เชŸเซ‡เชจเซเชธเชฐ)

เช…เชฎเซ‡ เชฏเซ‹เชœเชจเชพ เชœเซ‹เชˆเช เช›เซ€เช เช…เชจเซ‡ เชธเชฎเชœเซ€เช เช›เซ€เช - เชคเซ‡ เชตเชฟเชšเชฟเชคเซเชฐ เช›เซ‡, เช…เชฎเชพเชฐเซ€ เชชเชพเชธเซ‡ Seq เชธเซเช•เซ‡เชจเชฎเชพเช‚ 3 เชฌเชซเชฐเซเชธ (เชกเซ‡เชŸเชพ เชชเซƒเชทเซเช เซ‹) "เชตเชชเชฐเชพเชถ" เช›เซ‡, 1 เชตเชงเซ CTE เชธเซเช•เซ‡เชจเชฎเชพเช‚, เช…เชจเซ‡ เชฌเซ€เชœเชพ CTE เชธเซเช•เซ‡เชจเชฎเชพเช‚ 2 เชตเชงเซ เช›เซ‡. เชเชŸเชฒเซ‡ เช•เซ‡, เชœเซ‹ เช†เชชเชฃเซ‡ เชฆเชฐเซ‡เช• เชตเชธเซเชคเซเชจเซ‹ เชธเชฐเชตเชพเชณเซ‹ เช•เชฐเซ€เช, เชคเซ‹ เช†เชชเชฃเชจเซ‡ 6 เชฎเชณเชถเซ‡, เชชเชฐเช‚เชคเซ เชŸเซ‡เชฌเซเชฒเซ‡เชŸเชฎเชพเช‚เชฅเซ€ เช†เชชเชฃเซ‡ เชซเช•เซเชค 3 เชตเชพเช‚เชšเซ€เชถเซเช‚! CTE เชธเซเช•เซ‡เชจ เช—เชฎเซ‡ เชคเซเชฏเชพเช‚เชฅเซ€ เช•เช‚เชˆเชชเชฃ เชตเชพเช‚เชšเชคเซเช‚ เชจเชฅเซ€, เชชเชฐเช‚เชคเซ เชชเซเชฐเซ‹เชธเซ‡เชธ เชฎเซ‡เชฎเชฐเซ€ เชธเชพเชฅเซ‡ เชธเซ€เชงเซเช‚ เช•เชพเชฎ เช•เชฐเซ‡ เช›เซ‡. เชเชŸเชฒเซ‡ เช•เซ‡, เช…เชนเซ€เช‚ เช•เช‚เชˆเช• เชธเซเชชเชทเซเชŸ เชฐเซ€เชคเซ‡ เช–เซ‹เชŸเซเช‚ เช›เซ‡!

เชนเช•เซ€เช•เชคเชฎเชพเช‚, เชคเซ‡ เชคเชพเชฐเชฃ เช†เชชเซ‡ เช›เซ‡ เช•เซ‡ เช…เชนเซ€เช‚ เชคเซ‡ เชคเชฎเชพเชฎ 3 เชชเซƒเชทเซเช  เชกเซ‡เชŸเชพ เช›เซ‡ เชœเซ‡ Seq เชธเซเช•เซ‡เชจเชฅเซ€ เชตเชฟเชจเช‚เชคเซ€ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ€ เชนเชคเซ€, เชชเซเชฐเชฅเชฎ 1 เช 1 เชฒเซ€ CTE เชธเซเช•เซ‡เชจ เชฎเชพเชŸเซ‡ เชชเซ‚เช›เซเชฏเซเช‚ เชนเชคเซเช‚, เช…เชจเซ‡ เชชเช›เซ€ 2 เชœเซ€ เช…เชจเซ‡ 2 เชตเชงเซ เชคเซ‡เชจเซ‡ เชตเชพเช‚เชšเชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเชพ เชนเชคเชพ. เชเชŸเชฒเซ‡ เช•เซ‡, เช•เซเชฒ 3 เชชเชพเชจเชพเชจเซ‹ เชกเซ‡เชŸเชพ เชตเชพเช‚เชšเชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเซ‹ เชนเชคเซ‹, 6 เชจเชนเซ€เช‚.

PostgreSQL เช•เซเชตเซ‡เชฐเซ€เชเชจเซเช‚ เชฌเชฒเซเช• เช‘เชชเซเชŸเชฟเชฎเชพเช‡เชเซ‡เชถเชจ. เช•เชฟเชฐเซ€เชฒ เชฌเซ‹เชฐเซ‹เชตเชฟเช•เซ‹เชต (เชŸเซ‡เชจเซเชธเชฐ)

เช…เชจเซ‡ เช† เชšเชฟเชคเซเชฐ เช…เชฎเชจเซ‡ เชธเชฎเชœเชฃ เชคเชฐเชซ เชฆเซ‹เชฐเซ€ เช—เชฏเซเช‚ เช•เซ‡ เชฏเซ‹เชœเชจเชพเชจเซเช‚ เช…เชฎเชฒเซ€เช•เชฐเชฃ เชนเชตเซ‡ เชเชพเชก เชจเชฅเซ€, เชชเชฐเช‚เชคเซ เชซเช•เซเชค เชเช• เชชเซเชฐเช•เชพเชฐเชจเซเช‚ เชเชธเชพเชฏเช•เซเชฒเชฟเช• เช—เซเชฐเชพเชซ เช›เซ‡. เช…เชจเซ‡ เช…เชฎเชจเซ‡ เช†เชจเซ€ เชœเซ‡เชฎ เชเช• เช†เช•เซƒเชคเชฟ เชฎเชณเซ€ เช›เซ‡, เชœเซ‡เชฅเซ€ เช†เชชเชฃเซ‡ เชธเชฎเชœเซ€ เชถเช•เซ€เช เช•เซ‡ "เชชเชนเซ‡เชฒเชพ เชธเซเชฅเชพเชจเซ‡ เช•เซเชฏเชพเช‚เชฅเซ€ เชถเซเช‚ เช†เชตเซเชฏเซเช‚." เชเชŸเชฒเซ‡ เช•เซ‡, เช…เชนเซ€เช‚ เช…เชฎเซ‡ pg_class เชฎเชพเช‚เชฅเซ€ CTE เชฌเชจเชพเชตเซเชฏเซเช‚, เช…เชจเซ‡ เชคเซ‡ เชฌเซ‡ เชตเชพเชฐ เชฎเชพเช‚เช—เซเชฏเซเช‚, เช…เชจเซ‡ เชœเซเชฏเชพเชฐเซ‡ เช…เชฎเซ‡ เชฌเซ€เชœเซ€ เชตเชพเชฐ เชชเซ‚เช›เซเชฏเซเช‚ เชคเซเชฏเชพเชฐเซ‡ เช…เชฎเชพเชฐเซ‹ เชฒเช—เชญเช— เชฌเชงเซ‹ เชธเชฎเชฏ เชฌเซเชฐเชพเชจเซเชš เชชเชฐ เชœ เชชเชธเชพเชฐ เชฅเชˆ เช—เชฏเซ‹. เชคเซ‡ เชธเซเชชเชทเซเชŸ เช›เซ‡ เช•เซ‡ เชŸเซ‡เชฌเซเชฒเซ‡เชŸเชฎเชพเช‚เชฅเซ€ เชฎเชพเชคเซเชฐ 2เชฒเซ€ เชเชจเซเชŸเซเชฐเซ€ เชตเชพเช‚เชšเชตเชพ เช•เชฐเชคเชพเช‚ 101เชฎเซ€ เชเชจเซเชŸเซเชฐเซ€ เชตเชพเช‚เชšเชตเซ€ เชตเชงเซ เช–เชฐเซเชšเชพเชณ เช›เซ‡.

PostgreSQL เช•เซเชตเซ‡เชฐเซ€เชเชจเซเช‚ เชฌเชฒเซเช• เช‘เชชเซเชŸเชฟเชฎเชพเช‡เชเซ‡เชถเชจ. เช•เชฟเชฐเซ€เชฒ เชฌเซ‹เชฐเซ‹เชตเชฟเช•เซ‹เชต (เชŸเซ‡เชจเซเชธเชฐ)

เช…เชฎเซ‡ เชฅเซ‹เชกเซ€เชตเชพเชฐ เชฎเชพเชŸเซ‡ เชถเซเชตเชพเชธ เช›เซ‹เชกเซเชฏเซ‹. เชคเซ‡เช“เช เช•เชนเซเชฏเซเช‚: โ€œเชนเชตเซ‡, เชจเซ€เช“, เชคเชฎเซ‡ เช•เซ‚เช‚เช— เชซเซ เชœเชพเชฃเซ‹ เช›เซ‹! เชนเชตเซ‡ เช…เชฎเชพเชฐเซ‹ เช…เชจเซเชญเชต เชคเชฎเชพเชฐเซ€ เชธเซเช•เซเชฐเซ€เชจ เชชเชฐ เชœ เช›เซ‡. เชนเชตเซ‡ เชคเชฎเซ‡ เชคเซ‡เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€ เชถเช•เซ‹ เช›เซ‹." [เชฒเซ‡เช–]

เชฒเซ‹เช— เชเช•เซ€เช•เชฐเชฃ

เช…เชฎเชพเชฐเชพ 1000 เชตเชฟเช•เชพเชธเช•เชฐเซเชคเชพเช“เช เชฐเชพเชนเชคเชจเซ‹ เชถเซเชตเชพเชธ เชฒเซ€เชงเซ‹. เชชเชฐเช‚เชคเซ เช…เชฎเซ‡ เชธเชฎเชœเซ€ เช—เชฏเชพ เช•เซ‡ เช…เชฎเชพเชฐเซ€ เชชเชพเชธเซ‡ เชซเช•เซเชค เชธเซ‡เช‚เช•เชกเซ‹ "เชฒเชกเชพเช‡" เชธเชฐเซเชตเชฐเซเชธ เช›เซ‡, เช…เชจเซ‡ เชตเชฟเช•เชพเชธเช•เชฐเซเชคเชพเช“ เชคเชฐเชซเชฅเซ€ เช† เชฌเชงเซ€ "เช•เซ‹เชชเซ€-เชชเซ‡เชธเซเชŸ" เชฌเชฟเชฒเช•เซเชฒ เช…เชจเซเช•เซ‚เชณ เชจเชฅเซ€. เช…เชฎเชจเซ‡ เชธเชฎเชœเชพเชฏเซเช‚ เช•เซ‡ เช…เชฎเชพเชฐเซ‡ เชคเซ‡ เชœเชพเชคเซ‡ เชœ เชเช•เชคเซเชฐเชฟเชค เช•เชฐเชตเซเช‚ เชชเชกเชถเซ‡.

PostgreSQL เช•เซเชตเซ‡เชฐเซ€เชเชจเซเช‚ เชฌเชฒเซเช• เช‘เชชเซเชŸเชฟเชฎเชพเช‡เชเซ‡เชถเชจ. เช•เชฟเชฐเซ€เชฒ เชฌเซ‹เชฐเซ‹เชตเชฟเช•เซ‹เชต (เชŸเซ‡เชจเซเชธเชฐ)

เชธเชพเชฎเชพเชจเซเชฏ เชฐเซ€เชคเซ‡, เชคเซเชฏเชพเช‚ เชเช• เชชเซเชฐเชฎเชพเชฃเชญเซ‚เชค เชฎเซ‹เชกเซเชฏเซเชฒ เช›เซ‡ เชœเซ‡ เช†เช‚เช•เชกเชพ เชเช•เชคเซเชฐเชฟเชค เช•เชฐเซ€ เชถเช•เซ‡ เช›เซ‡, เชœเซ‹ เช•เซ‡, เชคเซ‡เชจเซ‡ เชฐเซ‚เชชเชฐเซ‡เช–เชพเชฎเชพเช‚ เชธเช•เซเชฐเชฟเชฏ เช•เชฐเชตเชพเชจเซ€ เชชเชฃ เชœเชฐเซ‚เชฐ เช›เซ‡ - เช† เชฎเซ‹เชกเซเชฏเซเชฒ pg_stat_statements. เชชเชฐเช‚เชคเซ เชคเซ‡ เช…เชฎเชจเซ‡ เช…เชจเซเช•เซ‚เชณ เชจ เชนเชคเซ‹.

เชธเซŒเชชเซเชฐเชฅเชฎ, เชคเซ‡ เชธเชฎเชพเชจ เชกเซ‡เชŸเชพเชฌเซ‡เชเชฎเชพเช‚ เชตเชฟเชตเชฟเชง เชฏเซ‹เชœเชจเชพเช“เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡ เชธเชฎเชพเชจ เชชเซเชฐเชถเซเชจเซ‹เชจเซ‡ เชธเซ‹เช‚เชชเซ‡ เช›เซ‡ เชตเชฟเชตเชฟเชง QueryIds. เชเชŸเชฒเซ‡ เช•เซ‡, เชœเซ‹ เชคเชฎเซ‡ เชชเชนเซ‡เชฒเชพ เช•เชฐเซ‹ SET search_path = '01'; SELECT * FROM user LIMIT 1;เช…เชจเซ‡ เชชเช›เซ€ SET search_path = '02'; เช…เชจเซ‡ เชคเซ‡ เชœ เชตเชฟเชจเช‚เชคเซ€, เชคเซ‹ เชชเช›เซ€ เช† เชฎเซ‹เชกเซเชฏเซเชฒเชจเชพ เช†เช‚เช•เชกเชพเช“ เช…เชฒเช— เช…เชฒเช— เชฐเซ‡เช•เซ‹เชฐเซเชก เชงเชฐเชพเชตเชถเซ‡, เช…เชจเซ‡ เชนเซเช‚ เชฏเซ‹เชœเชจเชพเช“เชจเซ‡ เชงเซเชฏเชพเชจเชฎเชพเช‚ เชฒเซ€เชงเชพ เชตเชฟเชจเชพ, เช–เชพเชธ เช•เชฐเซ€เชจเซ‡ เช† เชตเชฟเชจเช‚เชคเซ€ เชชเซเชฐเซ‹เชซเชพเช‡เชฒเชจเชพ เชธเช‚เชฆเชฐเซเชญเชฎเชพเช‚ เชธเชพเชฎเชพเชจเซเชฏ เช†เช‚เช•เชกเชพ เชเช•เชคเซเชฐเชฟเชค เช•เชฐเซ€ เชถเช•เซ€เชถ เชจเชนเซ€เช‚.

เชฌเซ€เชœเซ‹ เชฎเซเชฆเซเชฆเซ‹ เชœเซ‡ เช†เชชเชฃเชจเซ‡ เชคเซ‡เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเชคเชพ เช…เชŸเช•เชพเชตเซ‡ เช›เซ‡ เชคเซ‡ เช›เซ‡ เชฏเซ‹เชœเชจเชพเช“เชจเซ‹ เช…เชญเชพเชต. เชเชŸเชฒเซ‡ เช•เซ‡, เชคเซเชฏเชพเช‚ เช•เซ‹เชˆ เชฏเซ‹เชœเชจเชพ เชจเชฅเซ€, เชซเช•เซเชค เชตเชฟเชจเช‚เชคเซ€ เชœ เช›เซ‡. เช†เชชเชฃเซ‡ เชœเซ‹เชˆเช เช›เซ€เช เช•เซ‡ เชถเซเช‚ เชงเซ€เชฎเซเช‚ เชฅเชˆ เชฐเชนเซเชฏเซเช‚ เช›เซ‡, เชชเชฐเช‚เชคเซ เชถเชพ เชฎเชพเชŸเซ‡ เช…เชฎเซ‡ เชธเชฎเชœเซ€ เชถเช•เชคเชพ เชจเชฅเซ€. เช…เชจเซ‡ เช…เชนเซ€เช‚ เช†เชชเชฃเซ‡ เชเชกเชชเชฅเซ€ เชฌเชฆเชฒเชพเชคเชพ เชกเซ‡เชŸเชพเชธเซ‡เชŸเชจเซ€ เชธเชฎเชธเซเชฏเชพ เชชเชฐ เชชเชพเช›เชพ เช†เชตเซ€เช เช›เซ€เช.

เช…เชจเซ‡ เช›เซ‡เชฒเซเชฒเซ€ เช•เซเชทเชฃ - "เชคเชฅเซเชฏเซ‹" เชจเซ‹ เช…เชญเชพเชต. เชเชŸเชฒเซ‡ เช•เซ‡, เชคเชฎเซ‡ เช•เซเชตเซ‡เชฐเซ€ เชเช•เซเชเซ‡เช•เซเชฏเซเชถเชจเชจเชพ เชšเซ‹เช•เซเช•เชธ เช‰เชฆเชพเชนเชฐเชฃเชจเซ‡ เชธเช‚เชฌเซ‹เชงเชฟเชค เช•เชฐเซ€ เชถเช•เชคเชพ เชจเชฅเซ€ - เชคเซเชฏเชพเช‚ เช•เซ‹เชˆ เชจเชฅเซ€, เชคเซเชฏเชพเช‚ เชฎเชพเชคเซเชฐ เชเช•เซ€เช•เซƒเชค เช†เช‚เช•เชกเชพ เช›เซ‡. เชœเซ‹ เช•เซ‡ เชคเซ‡เชจเซ€ เชธเชพเชฅเซ‡ เช•เชพเชฎ เช•เชฐเชตเซเช‚ เชถเช•เซเชฏ เช›เซ‡, เชคเซ‡ เช–เซ‚เชฌ เชœ เชฎเซเชถเซเช•เซ‡เชฒ เช›เซ‡.

PostgreSQL เช•เซเชตเซ‡เชฐเซ€เชเชจเซเช‚ เชฌเชฒเซเช• เช‘เชชเซเชŸเชฟเชฎเชพเช‡เชเซ‡เชถเชจ. เช•เชฟเชฐเซ€เชฒ เชฌเซ‹เชฐเซ‹เชตเชฟเช•เซ‹เชต (เชŸเซ‡เชจเซเชธเชฐ)

เชคเซ‡เชฅเซ€, เช…เชฎเซ‡ เช•เซ‹เชชเซ€-เชชเซ‡เชธเซเชŸ เชธเชพเชฎเซ‡ เชฒเชกเชตเชพเชจเซเช‚ เชจเช•เซเช•เซ€ เช•เชฐเซเชฏเซเช‚ เช…เชจเซ‡ เชฒเช–เชตเชพเชจเซเช‚ เชถเชฐเซ‚ เช•เชฐเซเชฏเซเช‚ เช•เชฒเซ‡เช•เซเชŸเชฐ.

เช•เชฒเซ‡เช•เซเชŸเชฐ SSH เชฆเซเชตเชพเชฐเชพ เชœเซ‹เชกเชพเชฏ เช›เซ‡, เชชเซเชฐเชฎเชพเชฃเชชเชคเซเชฐเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡ เชกเซ‡เชŸเชพเชฌเซ‡เช เชธเชพเชฅเซ‡ เชธเชฐเซเชตเชฐ เชธเชพเชฅเซ‡ เชธเซเชฐเช•เซเชทเชฟเชค เช•เชจเซ‡เช•เซเชถเชจ เชธเซเชฅเชพเชชเชฟเชค เช•เชฐเซ‡ เช›เซ‡, เช…เชจเซ‡ tail -F เชฒเซ‹เช— เชซเชพเชˆเชฒเชฎเชพเช‚ เชคเซ‡เชจเซ‡ "เช•เซเชฒเชฟเช‚เช—" เช•เชฐเซ‡ เช›เซ‡. เชคเซ‹ เช† เชธเชคเซเชฐเชฎเชพเช‚ เช…เชฎเชจเซ‡ เชธเชฎเช—เซเชฐ เชฒเซ‹เช— เชซเชพเช‡เชฒเชจเซ‹ เชธเช‚เชชเซ‚เชฐเซเชฃ "เชฎเชฟเชฐเชฐ" เชฎเชณเซ‡ เช›เซ‡, เชœเซ‡ เชธเชฐเซเชตเชฐ เชœเชจเชฐเซ‡เชŸ เช•เชฐเซ‡ เช›เซ‡. เชธเชฐเซเชตเชฐ เชชเชฐเชจเซ‹ เชญเชพเชฐ เชชเซ‹เชคเซ‡ เชœ เชจเซเชฏเซ‚เชจเชคเชฎ เช›เซ‡, เช•เชพเชฐเชฃ เช•เซ‡ เช…เชฎเซ‡ เชคเซเชฏเชพเช‚ เช•เช‚เชˆเชชเชฃ เชชเชพเชฐเซเชธ เช•เชฐเชคเชพ เชจเชฅเซ€, เช…เชฎเซ‡ เชซเช•เซเชค เชŸเซเชฐเชพเชซเชฟเช•เชจเซ‡ เชฎเชฟเชฐเชฐ เช•เชฐเซ€เช เช›เซ€เช.

เช…เชฎเซ‡ เชชเชนเซ‡เชฒเซ‡เชฅเซ€ เชœ Node.js เชฎเชพเช‚ เช‡เชจเซเชŸเชฐเชซเซ‡เชธ เชฒเช–เชตเชพเชจเซเช‚ เชถเชฐเซ‚ เช•เชฐเซเชฏเซเช‚ เชนเซ‹เชตเชพเชฅเซ€, เช…เชฎเซ‡ เชคเซ‡เชฎเชพเช‚ เช•เชฒเซ‡เช•เซเชŸเชฐ เชฒเช–เชตเชพเชจเซเช‚ เชšเชพเชฒเซ เชฐเชพเช–เซเชฏเซเช‚. เช…เชจเซ‡ เช† เชŸเซ‡เช•เซเชจเซ‹เชฒเซ‹เชœเซ€เช เชชเซ‹เชคเชพเชจเซ‡ เชจเซเชฏเชพเชฏเซ€ เช เซ‡เชฐเชตเซเชฏเซ‹ เช›เซ‡, เช•เชพเชฐเชฃ เช•เซ‡ เชคเซ‡ เชจเชฌเชณเชพ เชซเซ‹เชฐเซเชฎเซ‡เชŸ เช•เชฐเซ‡เชฒเชพ เชŸเซ‡เช•เซเชธเซเชŸ เชกเซ‡เชŸเชพ เชธเชพเชฅเซ‡ เช•เชพเชฎ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ JavaScript เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เช–เซ‚เชฌ เช…เชจเซเช•เซ‚เชณ เช›เซ‡, เชœเซ‡ เชฒเซ‹เช— เช›เซ‡. เช…เชจเซ‡ เชฌเซ‡เช•เชเชจเซเชก เชชเซเชฒเซ‡เชŸเชซเซ‹เชฐเซเชฎ เชคเชฐเซ€เช•เซ‡ Node.js เชˆเชจเซเชซเซเชฐเชพเชธเซเชŸเซเชฐเช•เซเชšเชฐ เชคเชฎเชจเซ‡ เชจเซ‡เชŸเชตเชฐเซเช• เช•เชจเซ‡เช•เซเชถเชจเซเชธ เชธเชพเชฅเซ‡ เช…เชจเซ‡ เช–เชฐเซ‡เช–เชฐ เช•เซ‹เชˆเชชเชฃ เชกเซ‡เชŸเชพ เชธเซเชŸเซเชฐเซ€เชฎเซเชธ เชธเชพเชฅเซ‡ เชธเชฐเชณเชคเชพเชฅเซ€ เช…เชจเซ‡ เชธเช—เชตเชกเชคเชพเชชเซ‚เชฐเซเชตเช• เช•เชพเชฎ เช•เชฐเชตเชพเชจเซ€ เชฎเช‚เชœเซ‚เชฐเซ€ เช†เชชเซ‡ เช›เซ‡.

เชคเชฆเชจเซเชธเชพเชฐ, เช…เชฎเซ‡ เชฌเซ‡ เชœเซ‹เชกเชพเชฃเซ‹ "เชฒเช‚เชฌเชพเชตเซ€" เช›เซ€เช: เชชเซเชฐเชฅเชฎ เชฒเซ‹เช—เชจเซ‡ "เชธเชพเช‚เชญเชณเชตเชพ" เช…เชจเซ‡ เชคเซ‡เชจเซ‡ เช†เชชเชฃเซ€ เชชเชพเชธเซ‡ เชฒเชˆ เชœเชตเชพเชจเซเช‚, เช…เชจเซ‡ เชฌเซ€เชœเซเช‚ เชธเชฎเชฏเชพเช‚เชคเชฐเซ‡ เช†เชงเชพเชฐเชจเซ‡ เชชเซ‚เช›เชตเชพ เชฎเชพเชŸเซ‡. "เชชเชฐเช‚เชคเซ เชฒเซ‹เช— เชฌเชคเชพเชตเซ‡ เช›เซ‡ เช•เซ‡ oid 123 เชธเชพเชฅเซ‡เชจเซเช‚ เชšเชฟเชนเซเชจ เช…เชตเชฐเซ‹เชงเชฟเชค เช›เซ‡," เชชเชฐเช‚เชคเซ เช†เชจเซ‹ เช…เชฐเซเชฅ เชตเชฟเช•เชพเชธเช•เชฐเซเชคเชพ เชฎเชพเชŸเซ‡ เช•เช‚เชˆ เชจเชฅเซ€, เช…เชจเซ‡ เชกเซ‡เชŸเชพเชฌเซ‡เชเชจเซ‡ เชชเซ‚เช›เชตเซเช‚ เชธเชพเชฐเซเช‚ เชฐเชนเซ‡เชถเซ‡, "เช•เซ‹เชˆเชชเชฃ เชฐเซ€เชคเซ‡ OID = 123 เชถเซเช‚ เช›เซ‡?" เช…เชจเซ‡ เชคเซ‡เชฅเซ€ เช…เชฎเซ‡ เชธเชฎเชฏเชพเช‚เชคเชฐเซ‡ เช†เชงเชพเชฐเชจเซ‡ เชชเซ‚เช›เซ€เช เช›เซ€เช เช•เซ‡ เช†เชชเชฃเซ‡ เชนเชœเซ€ เชธเซเชงเซ€ เช†เชชเชฃเชพ เชตเชฟเชถเซ‡ เชถเซเช‚ เชœเชพเชฃเชคเชพ เชจเชฅเซ€.

PostgreSQL เช•เซเชตเซ‡เชฐเซ€เชเชจเซเช‚ เชฌเชฒเซเช• เช‘เชชเซเชŸเชฟเชฎเชพเช‡เชเซ‡เชถเชจ. เช•เชฟเชฐเซ€เชฒ เชฌเซ‹เชฐเซ‹เชตเชฟเช•เซ‹เชต (เชŸเซ‡เชจเซเชธเชฐ)

"เชคเซเชฏเชพเช‚ เชฎเชพเชคเซเชฐ เชเช• เชœ เชตเชธเซเชคเซ เช›เซ‡ เชœเซ‡เชจเซ‡ เชคเชฎเซ‡ เชงเซเชฏเชพเชจเชฎเชพเช‚ เชจ เชฒเซ€เชงเซ€, เชนเชพเชฅเซ€ เชœเซ‡เชตเซ€ เชฎเชงเชฎเชพเช–เซ€เช“เชจเซ€ เชเช• เชชเซเชฐเชœเชพเชคเชฟ เช›เซ‡!.." เช…เชฎเซ‡ 10 เชธเชฐเซเชตเชฐเชจเซเช‚ เชจเชฟเชฐเซ€เช•เซเชทเชฃ เช•เชฐเชตเชพ เชฎเชพเช‚เช—เชคเชพ เชนเชคเชพ เชคเซเชฏเชพเชฐเซ‡ เช…เชฎเซ‡ เช† เชธเชฟเชธเซเชŸเชฎ เชตเชฟเช•เชธเชพเชตเชตเชพเชจเซเช‚ เชถเชฐเซ‚ เช•เชฐเซเชฏเซเช‚. เช…เชฎเชพเชฐเซ€ เชธเชฎเชœเชฃเชฎเชพเช‚ เชธเซŒเชฅเซ€ เชœเชŸเชฟเชฒ, เชœเซเชฏเชพเช‚ เช•เซ‡เชŸเชฒเซ€เช• เชธเชฎเชธเซเชฏเชพเช“ เชŠเชญเซ€ เชฅเชˆ เชœเซ‡เชจเซ‹ เชธเชพเชฎเชจเซ‹ เช•เชฐเชตเซ‹ เชฎเซเชถเซเช•เซ‡เชฒ เชนเชคเซ‹. เชชเชฐเช‚เชคเซ เชชเซเชฐเชฅเชฎ เช•เซเชตเชพเชฐเซเชŸเชฐ เชฆเชฐเชฎเชฟเชฏเชพเชจ, เช…เชฎเชจเซ‡ เชฎเซ‹เชจเชฟเชŸเชฐเชฟเช‚เช— เชฎเชพเชŸเซ‡ เชธเซ‹ เชชเซเชฐเชพเชชเซเชค เชฅเชฏเชพ - เช•เชพเชฐเชฃ เช•เซ‡ เชธเชฟเชธเซเชŸเชฎ เช•เชพเชฎ เช•เชฐเชคเซ€ เชนเชคเซ€, เชฆเชฐเซ‡เช•เชจเซ‡ เชคเซ‡ เชœเซ‹เชˆเชคเซเช‚ เชนเชคเซเช‚, เชฆเชฐเซ‡เช• เช†เชฐเชพเชฎเชฆเชพเชฏเช• เชนเชคเซเช‚.

เช† เชฌเชงเซเช‚ เช‰เชฎเซ‡เชฐเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡, เชกเซ‡เชŸเชพ เชซเซเชฒเซ‹ เชฎเซ‹เชŸเซ‹ เช…เชจเซ‡ เชธเช•เซเชฐเชฟเชฏ เช›เซ‡. เชตเชพเชธเซเชคเชตเชฎเชพเช‚, เช†เชชเชฃเซ‡ เชœเซ‡เชจเซ€ เชฆเซ‡เช–เชฐเซ‡เช– เชฐเชพเช–เซ€เช เช›เซ€เช, เชœเซ‡เชจเซ€ เชธเชพเชฅเซ‡ เช†เชชเชฃเซ‡ เชตเซเชฏเชตเชนเชพเชฐ เช•เชฐเซ€ เชถเช•เซ€เช เช›เซ€เช, เชคเซ‡เชจเซ‹ เช†เชชเชฃเซ‡ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เช เช›เซ€เช. เช…เชฎเซ‡ เชกเซ‡เชŸเชพ เชธเซเชŸเซ‹เชฐเซ‡เชœ เชคเชฐเซ€เช•เซ‡ PostgreSQL เชจเซ‹ เชชเชฃ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เช เช›เซ€เช. เช…เชจเซ‡ เช‘เชชเชฐเซ‡เชŸเชฐ เช•เชฐเชคเชพเช‚ เชคเซ‡เชฎเชพเช‚ เชกเซ‡เชŸเชพ "เชฐเซ‡เชกเชตเซเช‚" เช•เช‚เชˆ เชตเชงเซ เชเชกเชชเซ€ เชจเชฅเซ€ COPY เชนเชœเซ€ เชจเชนเชฟเช‚.

เชชเชฐเช‚เชคเซ เชซเช•เซเชค "เชฐเซ‡เชกเชตเซเช‚" เชกเซ‡เชŸเชพ เช–เชฐเซ‡เช–เชฐ เช…เชฎเชพเชฐเซ€ เชคเช•เชจเซ€เช• เชจเชฅเซ€. เช•เชพเชฐเชฃ เช•เซ‡ เชœเซ‹ เชคเชฎเชพเชฐเซ€ เชชเชพเชธเซ‡ เชธเซ‹ เชธเชฐเซเชตเชฐ เชชเชฐ เชธเซ‡เช•เชจเซเชก เชฆเซ€เช  เช…เช‚เชฆเชพเชœเซ‡ 50k เชตเชฟเชจเช‚เชคเซ€เช“ เช›เซ‡, เชคเซ‹ เช† เชฆเชฐเชฐเซ‹เชœ 100-150GB เชฒเซ‹เช— เชœเชจเชฐเซ‡เชŸ เช•เชฐเชถเซ‡. เชคเซ‡เชฅเซ€, เช…เชฎเชพเชฐเซ‡ เช•เชพเชณเชœเซ€เชชเซ‚เชฐเซเชตเช• เช†เชงเชพเชฐ "เช•เชŸ" เช•เชฐเชตเซ‹ เชชเชกเซเชฏเซ‹.

เชชเซเชฐเชฅเชฎ, เช…เชฎเซ‡ เช•เชฐเซเชฏเซเช‚ เชฆเชฟเชตเชธเซ‡ เชชเชพเชฐเซเชŸเซ€เชถเชจ, เช•เชพเชฐเชฃ เช•เซ‡, เชฎเซ‹เชŸเชพเชญเชพเช—เซ‡, เชฆเชฟเชตเชธเซ‹ เชตเชšเซเชšเซ‡เชจเชพ เชธเชนเชธเช‚เชฌเช‚เชงเชฎเชพเช‚ เช•เซ‹เชˆเชจเซ‡ เชฐเชธ เชจเชฅเซ€. เช—เชˆเช•เชพเชฒเซ‡ เชคเชฎเชพเชฐเซ€ เชชเชพเชธเซ‡ เชœเซ‡ เชนเชคเซเช‚ เชคเซ‡เชจเชพเชฅเซ€ เชถเซเช‚ เชซเชฐเช• เชชเชกเซ‡ เช›เซ‡, เชœเซ‹ เช†เชœเซ‡ เชฐเชพเชคเซเชฐเซ‡ เชคเชฎเซ‡ เชเชชเซเชฒเชฟเช•เซ‡เชถเชจเชจเซเช‚ เชจเชตเซเช‚ เชธเช‚เชธเซเช•เชฐเชฃ เชฐเชœเซ‚ เช•เชฐเซเชฏเซเช‚ เช›เซ‡ - เช…เชจเซ‡ เชชเชนเซ‡เชฒเชพเชฅเซ€ เชœ เช•เซ‡เชŸเชฒเชพเช• เชจเชตเชพ เช†เช‚เช•เชกเชพ.

เชฌเซ€เชœเซเช‚, เช…เชฎเซ‡ เชถเซ€เช–เซเชฏเชพ (เชฌเชณเชœเชฌเชฐเซ€เชฅเซ€) เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡ เชฒเช–เชตเชพเชฎเชพเช‚ เช–เซ‚เชฌ เชœ เชเชกเชชเซ€ COPY. เชเชŸเชฒเซ‡ เช•เซ‡, เชฎเชพเชคเซเชฐ เชจเชนเซ€เช‚ COPYเช•เชพเชฐเชฃ เช•เซ‡ เชคเซ‡ เชคเซ‡เชจเชพ เช•เชฐเชคเชพ เชเชกเชชเซ€ เช›เซ‡ INSERT, เช…เชจเซ‡ เชตเชงเซ เชเชกเชชเซ€.

PostgreSQL เช•เซเชตเซ‡เชฐเซ€เชเชจเซเช‚ เชฌเชฒเซเช• เช‘เชชเซเชŸเชฟเชฎเชพเช‡เชเซ‡เชถเชจ. เช•เชฟเชฐเซ€เชฒ เชฌเซ‹เชฐเซ‹เชตเชฟเช•เซ‹เชต (เชŸเซ‡เชจเซเชธเชฐ)

เชคเซเชฐเซ€เชœเซ‹ เชฎเซเชฆเซเชฆเซ‹ - เชฎเชพเชฐเซ‡ เช•เชฐเชตเซเช‚ เชชเชกเซเชฏเซเช‚ เช…เชจเซเช•เซเชฐเชฎเซ‡ เชŸเซเชฐเชฟเช—เชฐเซเชธ เช…เชจเซ‡ เชตเชฟเชฆเซ‡เชถเซ€ เช•เซ€เช“ เช›เซ‹เชกเซ€ เชฆเซ‹. เชเชŸเชฒเซ‡ เช•เซ‡, เช…เชฎเชพเชฐเซ€ เชชเชพเชธเซ‡ เช•เซ‹เชˆ เชธเช‚เชฆเชฐเซเชญเชจเซ€ เช…เช–เช‚เชกเชฟเชคเชคเชพ เชจเชฅเซ€. เช•เชพเชฐเชฃ เช•เซ‡ เชœเซ‹ เชคเชฎเชพเชฐเซ€ เชชเชพเชธเซ‡ FK เชจเซ€ เชœเซ‹เชกเซ€ เชงเชฐเชพเชตเชคเซเช‚ เชŸเซ‡เชฌเชฒ เชนเซ‹เชฏ เช…เชจเซ‡ เชคเชฎเซ‡ เชกเซ‡เชŸเชพเชฌเซ‡เช เชธเซเชŸเซเชฐเช•เซเชšเชฐเชฎเชพเช‚ เช•เชนเซ‹ เช•เซ‡ "เช…เชนเซ€เช‚ เชเช• เชฒเซ‹เช— เชฐเซ‡เช•เซ‹เชฐเซเชก เช›เซ‡ เชœเซ‡ FK เชฆเซเชตเชพเชฐเชพ เชธเช‚เชฆเชฐเซเชญเชฟเชค เช›เซ‡, เช‰เชฆเชพเชนเชฐเชฃ เชคเชฐเซ€เช•เซ‡, เชฐเซ‡เช•เซ‹เชฐเซเชกเซเชธเชจเชพ เชœเซ‚เชฅ เชฎเชพเชŸเซ‡," เชคเซ‹ เชœเซเชฏเชพเชฐเซ‡ เชคเชฎเซ‡ เชคเซ‡เชจเซ‡ เชฆเชพเช–เชฒ เช•เชฐเซ‹ เช›เซ‹, เชคเซเชฏเชพเชฐเซ‡ PostgreSQL เชคเซ‡เชจเซ‡ เช•เซ‡เชตเซ€ เชฐเซ€เชคเซ‡ เชฒเซ‡เชตเซเช‚ เช…เชจเซ‡ เชคเซ‡เชจเซ‡ เชชเซเชฐเชพเชฎเชพเชฃเชฟเช•เชชเชฃเซ‡ เช•เชฐเชตเซเช‚ เชคเซ‡ เชธเชฟเชตเชพเชฏ เช•เช‚เชˆ เชฌเชพเช•เซ€ เชจเชฅเซ€ SELECT 1 FROM master_fk1_table WHERE ... เชคเชฎเซ‡ เชฆเชพเช–เชฒ เช•เชฐเชตเชพเชจเซ‹ เชชเซเชฐเชฏเชพเชธ เช•เชฐเซ€ เชฐเชนเซเชฏเชพเช‚ เช›เซ‹ เชคเซ‡ เช“เชณเช–เช•เชฐเซเชคเชพ เชธเชพเชฅเซ‡ - เชซเช•เซเชค เช† เชฐเซ‡เช•เซ‹เชฐเซเชก เชคเซเชฏเชพเช‚ เชนเชพเชœเชฐ เช›เซ‡ เช•เซ‡ เชจเชนเซ€เช‚ เชคเซ‡ เชคเชชเชพเชธเชตเชพ เชฎเชพเชŸเซ‡, เช•เซ‡ เชคเชฎเซ‡ เชคเชฎเชพเชฐเชพ เชจเชฟเชตเซ‡เชถ เชธเชพเชฅเซ‡ เช† เชตเชฟเชฆเซ‡เชถเซ€ เช•เซ€เชจเซ‡ "เชคเซ‹เชกเซ€" เชจเชฅเซ€.

เชฒเช•เซเชทเซเชฏ เช•เซ‹เชทเซเชŸเช• เช…เชจเซ‡ เชคเซ‡เชจเชพ เช…เชจเซเช•เซเชฐเชฎเชฃเชฟเช•เชพเช“เชจเชพ เชเช• เชฐเซ‡เช•เซ‹เชฐเซเชกเชจเซ‡ เชฌเชฆเชฒเซ‡, เช…เชฎเชจเซ‡ เชคเซ‡ เชธเช‚เชฆเชฐเซเชญเชฟเชค เชคเชฎเชพเชฎ เช•เซ‹เชทเซเชŸเช•เซ‹เชฎเชพเช‚เชฅเซ€ เชตเชพเช‚เชšเชตเชพเชจเซ‹ เชตเชงเชพเชฐเชพเชจเซ‹ เชฒเชพเชญ เชฎเชณเซ‡ เช›เซ‡. เชชเชฐเช‚เชคเซ เช…เชฎเชจเซ‡ เช†เชจเซ€ เชฌเชฟเชฒเช•เซเชฒ เชœเชฐเซ‚เชฐ เชจเชฅเซ€ - เช…เชฎเชพเชฐเซเช‚ เช•เชพเชฐเซเชฏ เช“เช›เชพเชฎเชพเช‚ เช“เช›เชพ เชฒเซ‹เชก เชธเชพเชฅเซ‡ เชถเช•เซเชฏ เชคเซ‡เชŸเชฒเซเช‚ เช…เชจเซ‡ เชถเช•เซเชฏ เชคเซ‡เชŸเชฒเซเช‚ เชเชกเชชเชฅเซ€ เชฐเซ‡เช•เซ‹เชฐเซเชก เช•เชฐเชตเชพเชจเซเช‚ เช›เซ‡. เชคเซ‡เชฅเซ€ FK - เชจเซ€เชšเซ‡!

เช†เช—เชณเชจเซ‹ เชฎเซเชฆเซเชฆเซ‹ เชเช—เซเชฐเชฟเช—เซ‡เชถเชจ เช…เชจเซ‡ เชนเซ‡เชถเชฟเช‚เช— เช›เซ‡. เชถเชฐเซ‚เช†เชคเชฎเชพเช‚, เช…เชฎเซ‡ เชคเซ‡เชฎเชจเซ‡ เชกเซ‡เชŸเชพเชฌเซ‡เชเชฎเชพเช‚ เช…เชฎเชฒเชฎเชพเช‚ เชฎเซ‚เช•เซเชฏเชพ - เช›เซ‡เชตเชŸเซ‡, เชœเซเชฏเชพเชฐเซ‡ เช•เซ‹เชˆ เชฐเซ‡เช•เซ‹เชฐเซเชก เช†เชตเซ‡ เชคเซเชฏเชพเชฐเซ‡ เชคเชฐเชค เชœ เชคเซ‡ เช…เชจเซเช•เซ‚เชณ เช›เซ‡, เชคเซ‡เชจเซ‡ เช…เชฎเซเช• เชชเซเชฐเช•เชพเชฐเชจเชพ เชŸเซ‡เชฌเซเชฒเซ‡เชŸเชฎเชพเช‚ เช•เชฐเซ‹ เชŸเซเชฐเชฟเช—เชฐเชฎเชพเช‚ เชœ "เชชเซเชฒเชธ เชตเชจ". เชธเชพเชฐเซเช‚, เชคเซ‡ เช…เชจเซเช•เซ‚เชณ เช›เซ‡, เชชเชฐเช‚เชคเซ เชคเซ‡ เชœ เช–เชฐเชพเชฌ เชตเชธเซเชคเซ - เชคเชฎเซ‡ เชเช• เชฐเซ‡เช•เซ‹เชฐเซเชก เชฆเชพเช–เชฒ เช•เชฐเซ‹ เช›เซ‹, เชชเชฐเช‚เชคเซ เชฌเซ€เชœเชพ เชŸเซ‡เชฌเชฒเชฎเชพเช‚เชฅเซ€ เช•เช‚เชˆเช• เชฌเซ€เชœเซเช‚ เชตเชพเช‚เชšเชตเชพ เช…เชจเซ‡ เชฒเช–เชตเชพเชจเซ€ เชซเชฐเชœ เชชเชพเชกเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡. เชคเชฆเซเชชเชฐเชพเช‚เชค, เชคเชฎเซ‡ เชฎเชพเชคเซเชฐ เชตเชพเช‚เชšเชคเชพ เช…เชจเซ‡ เชฒเช–เชคเชพ เชจเชฅเซ€, เชคเชฎเซ‡ เชคเซ‡ เชฆเชฐ เชตเช–เชคเซ‡ เชชเชฃ เช•เชฐเซ‹ เช›เซ‹.

เชนเชตเซ‡ เช•เชฒเซเชชเชจเชพ เช•เชฐเซ‹ เช•เซ‡ เชคเชฎเชพเชฐเซ€ เชชเชพเชธเซ‡ เชเช• เชŸเซ‡เชฌเชฒ เช›เซ‡ เชœเซ‡เชฎเชพเช‚ เชคเชฎเซ‡ เชšเซ‹เช•เซเช•เชธ เชนเซ‹เชธเซเชŸเชฎเชพเช‚เชฅเซ€ เชชเชธเชพเชฐ เชฅเชฏเซ‡เชฒเซ€ เชตเชฟเชจเช‚เชคเซ€เช“เชจเซ€ เชธเช‚เช–เซเชฏเชพ เช—เชฃเซ‹ เช›เซ‹: +1, +1, +1, ..., +1. เช…เชจเซ‡ เชคเชฎเชจเซ‡, เชธเซˆเชฆเซเชงเชพเช‚เชคเชฟเช• เชฐเซ€เชคเซ‡, เช†เชจเซ€ เชœเชฐเซ‚เชฐ เชจเชฅเซ€ - เชคเซ‡ เชฌเชงเซเช‚ เชถเช•เซเชฏ เช›เซ‡ เช•เชฒเซ‡เช•เซเชŸเชฐ เชชเชฐ เชฎเซ‡เชฎเชฐเซ€เชจเซ‹ เชธเชฐเชตเชพเชณเซ‹ เช…เชจเซ‡ เชเช• เชœ เชตเชพเชฐเชฎเชพเช‚ เชกเซ‡เชŸเชพเชฌเซ‡เช เชชเชฐ เชฎเซ‹เช•เชฒเซ‹ +10.

เชนเชพ, เช•เซ‡เชŸเชฒเซ€เช• เชธเชฎเชธเซเชฏเชพเช“เชจเชพ เช•เชฟเชธเซเชธเชพเชฎเชพเช‚, เชคเชฎเชพเชฐเซ€ เชคเชพเชฐเซเช•เชฟเช• เช…เช–เช‚เชกเชฟเชคเชคเชพ "เช…เชฒเช— เชชเชกเซ€" เชถเช•เซ‡ เช›เซ‡, เชชเชฐเช‚เชคเซ เช† เชฒเช—เชญเช— เช…เชตเชพเชธเซเชคเชตเชฟเช• เช•เซ‡เชธ เช›เซ‡ - เช•เชพเชฐเชฃ เช•เซ‡ เชคเชฎเชพเชฐเซ€ เชชเชพเชธเซ‡ เชธเชพเชฎเชพเชจเซเชฏ เชธเชฐเซเชตเชฐ เช›เซ‡, เชคเซ‡เชฎเชพเช‚ เช•เช‚เชŸเซเชฐเซ‹เชฒเชฐเชฎเชพเช‚ เชฌเซ‡เชŸเชฐเซ€ เช›เซ‡, เชคเชฎเชพเชฐเซ€ เชชเชพเชธเซ‡ เชŸเซเชฐเชพเชจเซเชเซ‡เช•เซเชถเชจ เชฒเซ‹เช— เช›เซ‡, เชฒเซ‹เช— เชชเชฐ เชฒเซ‹เช— เช›เซ‡. เชซเชพเช‡เชฒ เชธเชฟเชธเซเชŸเชฎ... เชธเชพเชฎเชพเชจเซเชฏ เชฐเซ€เชคเซ‡, เชคเซ‡ เชฎเซ‚เชฒเซเชฏเชตเชพเชจ เชจเชฅเซ€. เชŸเซเชฐเชฟเช—เชฐเซเชธ/FK เชšเชฒเชพเชตเชตเชพเชฅเซ€ เชคเชฎเซ‡ เชœเซ‡ เช‰เชคเซเชชเชพเชฆเช•เชคเชพ เช—เซเชฎเชพเชตเซ‹ เช›เซ‹ เชคเซ‡ เชคเชฎเซ‡ เชœเซ‡ เช–เชฐเซเชš เช•เชฐเซ‹ เช›เซ‹ เชคเซ‡ เชฎเซ‚เชฒเซเชฏเชตเชพเชจ เชจเชฅเซ€.

เชคเซ‡ เชนเซ‡เชถเชฟเช‚เช— เชธเชพเชฅเซ‡ เชธเชฎเชพเชจ เช›เซ‡. เชšเซ‹เช•เซเช•เชธ เชตเชฟเชจเช‚เชคเซ€ เชคเชฎเชพเชฐเซ€ เชชเชพเชธเซ‡ เช‰เชกเซ‡ เช›เซ‡, เชคเชฎเซ‡ เชกเซ‡เชŸเชพเชฌเซ‡เชเชฎเชพเช‚ เชคเซ‡เชฎเชพเช‚เชฅเซ€ เชšเซ‹เช•เซเช•เชธ เช“เชณเช–เช•เชฐเซเชคเชพเชจเซ€ เช—เชฃเชคเชฐเซ€ เช•เชฐเซ‹ เช›เซ‹, เชคเซ‡เชจเซ‡ เชกเซ‡เชŸเชพเชฌเซ‡เชเชฎเชพเช‚ เชฒเช–เซ‹ เช…เชจเซ‡ เชชเช›เซ€ เชคเซ‡ เชฆเชฐเซ‡เช•เชจเซ‡ เชœเชฃเชพเชตเซ‹. เชฌเชงเซเช‚ เชฌเชฐเชพเชฌเชฐ เช›เซ‡ เชคเซเชฏเชพเช‚ เชธเซเชงเซ€, เชฐเซ‡เช•เซ‹เชฐเซเชกเชฟเช‚เช— เชธเชฎเชฏเซ‡, เชฌเซ€เชœเซ€ เชตเซเชฏเช•เซเชคเชฟ เชคเชฎเชพเชฐเซ€ เชชเชพเชธเซ‡ เช†เชตเซ‡ เชœเซ‡ เชคเซ‡ เชœ เชตเชธเซเชคเซเชจเซ‡ เชฐเซ‡เช•เซ‹เชฐเซเชก เช•เชฐเชตเชพ เชฎเชพเช‚เช—เซ‡ เช›เซ‡ - เช…เชจเซ‡ เชคเชฎเซ‡ เช…เชตเชฐเซ‹เชงเชฟเชค เชฅเชˆ เชœเชพเช“ เช›เซ‹, เช…เชจเซ‡ เช† เชชเชนเซ‡เชฒเซ‡เชฅเซ€ เชœ เช–เชฐเชพเชฌ เช›เซ‡. เชคเซ‡เชฅเซ€, เชœเซ‹ เชคเชฎเซ‡ เช•เซเชฒเชพเชฏเช‚เชŸ (เชกเซ‡เชŸเชพเชฌเซ‡เชเชจเซ‡ เชธเช‚เชฌเช‚เชงเชฟเชค) เชจเซ‡ เช…เชฎเซเช• ID เชจเซ€ เชœเชจเชฐเซ‡เชถเชจ เชŸเซเชฐเชพเชจเซเชธเชซเชฐ เช•เชฐเซ€ เชถเช•เซ‹ เช›เซ‹, เชคเซ‹ เช† เช•เชฐเชตเซเช‚ เชตเชงเซ เชธเชพเชฐเซเช‚ เช›เซ‡.

เชŸเซ‡เช•เซเชธเซเชŸ - เชตเชฟเชจเช‚เชคเซ€, เชฏเซ‹เชœเชจเชพ, เชŸเซ‡เชฎเซเชชเซเชฒเซ‡เชŸ,...เชฎเชพเช‚เชฅเซ€ MD5 เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเชตเซ‹ เชคเซ‡ เช…เชฎเชพเชฐเชพ เชฎเชพเชŸเซ‡ เชฏเซ‹เช—เซเชฏ เชนเชคเซเช‚... เช…เชฎเซ‡ เชคเซ‡เชจเซ‡ เช•เชฒเซ‡เช•เซเชŸเชฐ เชฌเชพเชœเซเช เช—เชฃเซ€เช เช›เซ€เช, เช…เชจเซ‡ เชคเซˆเชฏเชพเชฐ ID เชจเซ‡ เชกเซ‡เชŸเชพเชฌเซ‡เชเชฎเชพเช‚ "เช เชพเชฒเชตเซ€เช เช›เซ€เช". MD5 เชจเซ€ เชฒเช‚เชฌเชพเชˆ เช…เชจเซ‡ เชฆเซˆเชจเชฟเช• เชชเชพเชฐเซเชŸเซ€เชถเชจ เช…เชฎเชจเซ‡ เชธเช‚เชญเชตเชฟเชค เช…เชฅเชกเชพเชฎเชฃ เชตเชฟเชถเซ‡ เชšเชฟเช‚เชคเชพ เชจ เช•เชฐเชตเชพเชจเซ€ เชฎเช‚เชœเซ‚เชฐเซ€ เช†เชชเซ‡ เช›เซ‡.

PostgreSQL เช•เซเชตเซ‡เชฐเซ€เชเชจเซเช‚ เชฌเชฒเซเช• เช‘เชชเซเชŸเชฟเชฎเชพเช‡เชเซ‡เชถเชจ. เช•เชฟเชฐเซ€เชฒ เชฌเซ‹เชฐเซ‹เชตเชฟเช•เซ‹เชต (เชŸเซ‡เชจเซเชธเชฐ)

เชชเชฐเช‚เชคเซ เช† เชฌเชงเซเช‚ เชเชกเชชเชฅเซ€ เชฐเซ‡เช•เซ‹เชฐเซเชก เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡, เช…เชฎเชพเชฐเซ‡ เชฐเซ‡เช•เซ‹เชฐเซเชกเชฟเช‚เช— เชชเซเชฐเช•เซเชฐเชฟเชฏเชพเชฎเชพเช‚ เชœ เชซเซ‡เชฐเชซเชพเชฐ เช•เชฐเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เชนเชคเซ€.

เชคเชฎเซ‡ เชธเชพเชฎเชพเชจเซเชฏ เชฐเซ€เชคเซ‡ เชกเซ‡เชŸเชพ เช•เซ‡เชตเซ€ เชฐเซ€เชคเซ‡ เชฒเช–เซ‹ เช›เซ‹? เช…เชฎเชพเชฐเซ€ เชชเชพเชธเซ‡ เช…เชฎเซเช• เชชเซเชฐเช•เชพเชฐเชจเซ‹ เชกเซ‡เชŸเชพเชธเซ‡เชŸ เช›เซ‡, เช…เชฎเซ‡ เชคเซ‡เชจเซ‡ เช…เชจเซ‡เช• เช•เซ‹เชทเซเชŸเช•เซ‹เชฎเชพเช‚ เชตเชฟเชญเชพเชœเชฟเชค เช•เชฐเซ€เช เช›เซ€เช, เช…เชจเซ‡ เชชเช›เซ€ เชคเซ‡เชจเซ‡ เช•เซ‰เชชเชฟ เช•เชฐเซ€เช เช›เซ€เช - เชชเชนเซ‡เชฒเชพ เชชเซเชฐเชฅเชฎเชฎเชพเช‚, เชชเช›เซ€ เชฌเซ€เชœเชพเชฎเชพเช‚, เชคเซเชฐเซ€เชœเชพเชฎเชพเช‚... เชคเซ‡ เช…เชธเซเชตเชฟเชงเชพเชœเชจเช• เช›เซ‡, เช•เชพเชฐเชฃ เช•เซ‡ เช…เชฎเซ‡ เชคเซเชฐเชฃ เชชเช—เชฒเชพเชฎเชพเช‚ เชเช• เชกเซ‡เชŸเชพ เชธเซเชŸเซเชฐเซ€เชฎ เชฒเช–เซ€ เชฐเชนเซเชฏเชพ เชนเซ‹เชฏ เชคเซ‡เชตเซเช‚ เชฒเชพเช—เซ‡ เช›เซ‡. เช…เชจเซเช•เซเชฐเชฎเซ‡. เช…เชชเซเชฐเชฟเชฏ. เชถเซเช‚ เชคเซ‡ เชเชกเชชเชฅเซ€ เช•เชฐเซ€ เชถเช•เชพเชฏ เช›เซ‡? เช•เชฐเซ€ เชถเช•เซ‹ เช›เซ‹!

เช† เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡, เช† เชชเซเชฐเชตเชพเชนเซ‹เชจเซ‡ เชเช•เชฌเซ€เชœเชพ เชธเชพเชฅเซ‡ เชธเชฎเชพเช‚เชคเชฐ เชฐเซ€เชคเซ‡ เชตเชฟเช˜เชŸเชฟเชค เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เชชเซ‚เชฐเชคเซเช‚ เช›เซ‡. เชคเซ‡ เชคเชพเชฐเชฃ เช†เชชเซ‡ เช›เซ‡ เช•เซ‡ เช…เชฎเชพเชฐเซ€ เชชเชพเชธเซ‡ เชญเซ‚เชฒเซ‹, เชตเชฟเชจเช‚เชคเซ€เช“, เชจเชฎเซ‚เชจเชพเช“, เชฌเซเชฒเซ‹เช•เชฟเช‚เช—เซเชธ, ... เช…เชฒเช— เชฅเซเชฐเซ‡เชกเซ‹เชฎเชพเช‚ เช‰เชกเชคเซ€ เช›เซ‡ - เช…เชจเซ‡ เช…เชฎเซ‡ เชคเซ‡ เชฌเชงเซเช‚ เชธเชฎเชพเช‚เชคเชฐเชฎเชพเช‚ เชฒเช–เซ€เช เช›เซ€เช. เช† เชฎเชพเชŸเซ‡ เชชเซ‚เชฐเชคเซเช‚ เช›เซ‡ เชฆเชฐเซ‡เช• เชตเซเชฏเช•เซเชคเชฟเช—เชค เชฒเช•เซเชทเซเชฏ เช•เซ‹เชทเซเชŸเช• เชฎเชพเชŸเซ‡ เช•เซ‰เชชเซ€ เชšเซ‡เชจเชฒ เชธเชคเชค เช–เซเชฒเซเชฒเซ€ เชฐเชพเช–เซ‹.

PostgreSQL เช•เซเชตเซ‡เชฐเซ€เชเชจเซเช‚ เชฌเชฒเซเช• เช‘เชชเซเชŸเชฟเชฎเชพเช‡เชเซ‡เชถเชจ. เช•เชฟเชฐเซ€เชฒ เชฌเซ‹เชฐเซ‹เชตเชฟเช•เซ‹เชต (เชŸเซ‡เชจเซเชธเชฐ)

เชเชŸเชฒเซ‡ เช•เซ‡ เช•เชฒเซ‡เช•เซเชŸเชฐ เช–เชพเชคเซ‡ เชนเช‚เชฎเซ‡เชถเชพ เชเช• เชชเซเชฐเชตเชพเชน เชนเซ‹เชฏ เช›เซ‡, เชœเซ‡เชฎเชพเช‚ เชนเซเช‚ เชœเชฐเซ‚เชฐเซ€ เชกเซ‡เชŸเชพ เชฒเช–เซ€ เชถเช•เซเช‚ เช›เซเช‚. เชชเชฐเช‚เชคเซ เชœเซ‡เชฅเซ€ เชกเซ‡เชŸเชพเชฌเซ‡เช เช† เชกเซ‡เชŸเชพ เชœเซเช, เช…เชจเซ‡ เช•เซ‹เชˆ เชตเซเชฏเช•เซเชคเชฟ เช† เชกเซ‡เชŸเชพ เชฒเช–เชตเชพเชจเซ€ เชฐเชพเชน เชœเซ‹เชคเชพ เช…เชŸเช•เซ€ เชจ เชœเชพเชฏ, เช•เซ‹เชชเซ€ เชšเซ‹เช•เซเช•เชธ เช…เช‚เชคเชฐเชพเชฒเซ‹เชฎเชพเช‚ เชตเชฟเช•เซเชทเซ‡เชชเชฟเชค เชฅเชตเซ€ เชœเซ‹เชˆเช. เช…เชฎเชพเชฐเชพ เชฎเชพเชŸเซ‡, เชธเซŒเชฅเซ€ เช…เชธเชฐเช•เชพเชฐเช• เชธเชฎเชฏเช—เชพเชณเซ‹ เชฒเช—เชญเช— 100ms เชนเชคเซ‹ - เช…เชฎเซ‡ เชคเซ‡เชจเซ‡ เชฌเช‚เชง เช•เชฐเซ€เช เช›เซ€เช เช…เชจเซ‡ เชคเชฐเชค เชœ เชคเซ‡ เชœ เชŸเซ‡เชฌเชฒ เชชเชฐ เชซเชฐเซ€เชฅเซ€ เช–เซ‹เชฒเซ€เช เช›เซ€เช. เช…เชจเซ‡ เชœเซ‹ เช…เชฎเซเช• เชถเชฟเช–เชฐเซ‹ เชฆเชฐเชฎเชฟเชฏเชพเชจ เช†เชชเชฃเซ€ เชชเชพเชธเซ‡ เชชเซ‚เชฐเชคเซ‹ เชเช• เชชเซเชฐเชตเชพเชน เชจ เชนเซ‹เชฏ, เชคเซ‹ เช…เชฎเซ‡ เชšเซ‹เช•เซเช•เชธ เชฎเชฐเซเชฏเชพเชฆเชพ เชธเซเชงเซ€ เชชเซ‚เชฒเชฟเช‚เช— เช•เชฐเซ€เช เช›เซ€เช.

เชตเชงเซเชฎเชพเช‚, เช…เชฎเชจเซ‡ เชœเชพเชฃเชตเชพ เชฎเชณเซเชฏเซเช‚ เช•เซ‡ เช†เชตเซ€ เชฒเซ‹เชก เชชเซเชฐเซ‹เชซเชพเช‡เชฒ เชฎเชพเชŸเซ‡, เช•เซ‹เชˆเชชเชฃ เชเช•เชคเซเชฐเซ€เช•เชฐเชฃ, เชœเซเชฏเชพเชฐเซ‡ เชฐเซ‡เช•เซ‹เชฐเซเชก เชฌเซ‡เชšเชฎเชพเช‚ เชเช•เชคเซเชฐเชฟเชค เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡, เชคเซ‡ เช…เชจเชฟเชทเซเชŸ เช›เซ‡. เช‰เชคเซเชคเชฎ เชฆเซเชทเซเชŸ เช›เซ‡ INSERT ... VALUES เช…เชจเซ‡ เชตเชงเซ 1000 เชฐเซ‡เช•เซ‹เชฐเซเชก. เช•เชพเชฐเชฃ เช•เซ‡ เชคเซ‡ เชธเชฎเชฏเซ‡ เชคเชฎเชพเชฐเซ€ เชชเชพเชธเซ‡ เชฎเซ€เชกเชฟเชฏเชพ เชชเชฐ เชฒเช–เชตเชพเชจเซ€ เชŸเซ‹เชš เช›เซ‡, เช…เชจเซ‡ เชกเชฟเชธเซเช• เชชเชฐ เช•เช‚เชˆเช• เชฒเช–เชตเชพเชจเซ‹ เชชเซเชฐเชฏเชพเชธ เช•เชฐเซ€ เชฐเชนเซ‡เชฒเชพ เชฆเชฐเซ‡เช• เชตเซเชฏเช•เซเชคเชฟ เชฐเชพเชน เชœเซ‹เชถเซ‡.

เช†เชตเซ€ เชตเชฟเชธเช‚เช—เชคเชคเชพเช“เชฅเซ€ เช›เซเชŸเช•เชพเชฐเซ‹ เชฎเซ‡เชณเชตเชตเชพ เชฎเชพเชŸเซ‡, เชซเช•เซเชค เช•เช‚เชˆเชชเชฃ เชเช•เชคเซเชฐเชฟเชค เช•เชฐเชถเซ‹ เชจเชนเซ€เช‚, เชฌเชฟเชฒเช•เซเชฒ เชฌเชซเชฐ เช•เชฐเชถเซ‹ เชจเชนเซ€เช‚. เช…เชจเซ‡ เชœเซ‹ เชกเชฟเชธเซเช• เชชเชฐ เชฌเชซเชฐเชฟเช‚เช— เชฅเชพเชฏ เช›เซ‡ (เชธเชฆเชจเชธเซ€เชฌเซ‡, Node.js เชฎเชพเช‚ เชธเซเชŸเซเชฐเซ€เชฎ API เชคเชฎเชจเซ‡ เชถเซ‹เชงเชตเชพ เชฎเชพเชŸเซ‡ เชชเชฐเชตเชพเชจเช—เซ€ เช†เชชเซ‡ เช›เซ‡) - เช† เช•เชจเซ‡เช•เซเชถเชจ เชฎเซเชฒเชคเชตเซ€ เชฐเชพเช–เซ‹. เชœเซเชฏเชพเชฐเซ‡ เชคเชฎเซ‡ เช•เซ‹เชˆ เช‡เชตเซ‡เชจเซเชŸ เชชเซเชฐเชพเชชเซเชค เช•เชฐเซ‹ เช•เซ‡ เชคเซ‡ เชซเชฐเซ€เชฅเซ€ เชฎเชซเชค เช›เซ‡, เชคเซเชฏเชพเชฐเซ‡ เชธเช‚เชšเชฟเชค เช•เชคเชพเชฐเชฎเชพเช‚เชฅเซ€ เชคเซ‡เชจเซ‡ เชฒเช–เซ‹. เช…เชจเซ‡ เชœเซเชฏเชพเชฐเซ‡ เชคเซ‡ เชตเซเชฏเชธเซเชค เชนเซ‹เชฏ, เชคเซเชฏเชพเชฐเซ‡ เชชเซ‚เชฒเชฎเชพเช‚เชฅเซ€ เช†เช—เชฒเซเช‚ เชฎเชซเชค เชฒเซ‹ เช…เชจเซ‡ เชคเซ‡เชจเชพ เชชเชฐ เชฒเช–เซ‹.

เชกเซ‡เชŸเชพ เชฐเซ‡เช•เซ‹เชฐเซเชกเชฟเช‚เช— เชฎเชพเชŸเซ‡ เช† เช…เชญเชฟเช—เชฎเชจเซ‹ เชชเชฐเชฟเชšเชฏ เช†เชชเชคเชพ เชชเชนเซ‡เชฒเชพ, เช…เชฎเชพเชฐเซ€ เชชเชพเชธเซ‡ เชฒเช—เชญเช— 4K เชฐเชพเช‡เชŸ เช‘เชชเซเชธ เชนเชคเชพ, เช…เชจเซ‡ เช† เชฐเซ€เชคเซ‡ เช…เชฎเซ‡ เชฒเซ‹เชกเชจเซ‡ 4 เช—เชฃเซ‹ เช˜เชŸเชพเชกเซ€ เชฆเซ€เชงเซ‹. เชนเชตเซ‡ เชคเซ‡เช“ เชจเชตเชพ เชฎเซ‹เชจเชฟเชŸเชฐ เช•เชฐเซ‡เชฒเชพ เชกเซ‡เชŸเชพเชฌเซ‡เชธเซ‡เชธเชจเซ‡ เช•เชพเชฐเชฃเซ‡ 6 เช—เชฃเชพ เชตเชงเซเชฏเชพ เช›เซ‡ - 100MB/s เชธเซเชงเซ€. เช…เชจเซ‡ เชนเชตเซ‡ เช…เชฎเซ‡ เชฒเช—เชญเช— 3-10TB เชจเชพ เชœเชฅเซเชฅเชพเชฎเชพเช‚ เช›เซ‡เชฒเซเชฒเชพ 15 เชฎเชนเชฟเชจเชพเชจเชพ เชฒเซ‰เช—เซเชธ เชธเซเชŸเซ‹เชฐ เช•เชฐเซ€เช เช›เซ€เช, เช†เชถเชพ เชฐเชพเช–เซ€เช เช›เซ€เช เช•เซ‡ เชฎเชพเชคเซเชฐ เชคเซเชฐเชฃ เชฎเชนเชฟเชจเชพเชฎเชพเช‚ เช•เซ‹เชˆเชชเชฃ เชตเชฟเช•เชพเชธเช•เชฐเซเชคเชพ เช•เซ‹เชˆเชชเชฃ เชธเชฎเชธเซเชฏเชพเชจเซ‡ เช‰เช•เซ‡เชฒเชตเชพเชฎเชพเช‚ เชธเช•เซเชทเชฎ เชนเชถเซ‡.

เช…เชฎเซ‡ เชธเชฎเชธเซเชฏเชพเช“ เชธเชฎเชœเซ€เช เช›เซ€เช

เชชเชฐเช‚เชคเซ เชซเช•เซเชค เช† เชคเชฎเชพเชฎ เชกเซ‡เชŸเชพ เชเช•เชคเซเชฐ เช•เชฐเชตเซ‹ เช เชธเชพเชฐเซ‹, เช‰เชชเชฏเซ‹เช—เซ€, เชธเซเชธเช‚เช—เชค เช›เซ‡, เชชเชฐเช‚เชคเซ เชชเซ‚เชฐเชคเซ‹ เชจเชฅเซ€ - เชคเซ‡ เชธเชฎเชœเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡. เช•เชพเชฐเชฃ เช•เซ‡ เช† เชฐเซ‹เชœเชจเซ€ เชฒเชพเช–เซ‹ เชตเชฟเชตเชฟเชง เชฏเซ‹เชœเชจเชพเช“ เช›เซ‡.

PostgreSQL เช•เซเชตเซ‡เชฐเซ€เชเชจเซเช‚ เชฌเชฒเซเช• เช‘เชชเซเชŸเชฟเชฎเชพเช‡เชเซ‡เชถเชจ. เช•เชฟเชฐเซ€เชฒ เชฌเซ‹เชฐเซ‹เชตเชฟเช•เซ‹เชต (เชŸเซ‡เชจเซเชธเชฐ)

เชชเชฐเช‚เชคเซ เชฒเชพเช–เซ‹ เช…เชตเซเชฏเชตเชธเซเชฅเชฟเชค เช›เซ‡, เช†เชชเชฃเซ‡ เชชเชนเซ‡เชฒเชพ "เชจเชพเชจเซเช‚" เช•เชฐเชตเซเช‚ เชœเซ‹เชˆเช. เช…เชจเซ‡, เชธเซŒ เชชเซเชฐเชฅเชฎ, เชคเชฎเชพเชฐเซ‡ เชจเช•เซเช•เซ€ เช•เชฐเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡ เช•เซ‡ เชคเชฎเซ‡ เช† "เชจเชพเชจเซ€" เชตเชธเซเชคเซเชจเซ‡ เช•เซ‡เชตเซ€ เชฐเซ€เชคเซ‡ เช—เซ‹เช เชตเชถเซ‹.

เช…เชฎเซ‡ เชคเซเชฐเชฃ เชฎเซเช–เซเชฏ เชฎเซเชฆเซเชฆเชพเช“ เช“เชณเช–เซเชฏเชพ เช›เซ‡:

  • เช•เซ‹เชฃ เช† เชตเชฟเชจเช‚เชคเซ€ เชฎเซ‹เช•เชฒเซ€
    เชเชŸเชฒเซ‡ เช•เซ‡, เชคเซ‡ เช•เชˆ เชเชชเซเชฒเชฟเช•เซ‡เชถเชจเชฎเชพเช‚เชฅเซ€ "เช†เชตเซเชฏเซเช‚": เชตเซ‡เชฌ เชˆเชจเซเชŸเชฐเชซเซ‡เชธ, เชฌเซ‡เช•เชเชจเซเชก, เชชเซ‡เชฎเซ‡เชจเซเชŸ เชธเชฟเชธเซเชŸเชฎ เช…เชฅเชตเชพ เชฌเซ€เชœเซเช‚ เช•เช‚เชˆเช•.
  • เชœเซเชฏเชพเช‚ เชคเซ‡ เชฅเชฏเซเช‚
    เช•เชฏเชพ เชšเซ‹เช•เซเช•เชธ เชธเชฐเซเชตเชฐ เชชเชฐ? เช•เชพเชฐเชฃ เช•เซ‡ เชœเซ‹ เชคเชฎเชพเชฐเซ€ เชชเชพเชธเซ‡ เชเช• เชเชชเซเชฒเชฟเช•เซ‡เชถเชจ เชนเซ‡เช เชณ เช˜เชฃเชพ เชฌเชงเชพ เชธเชฐเซเชตเชฐเซเชธ เช›เซ‡, เช…เชจเซ‡ เช…เชšเชพเชจเช• เชเช• "เชฎเซ‚เชฐเซเช– เชฅเชˆ เชœเชพเชฏ เช›เซ‡" (เช•เชพเชฐเชฃ เช•เซ‡ "เชกเชฟเชธเซเช• เชธเชกเซ‡เชฒเซ€ เช›เซ‡", "เชฎเซ‡เชฎเชฐเซ€ เชฒเซ€เช• เชฅเชˆ เช—เชˆ เช›เซ‡", เช•เซ‹เชˆ เช…เชจเซเชฏ เชธเชฎเชธเซเชฏเชพ), เชคเซ‹ เชคเชฎเชพเชฐเซ‡ เชธเชฐเซเชตเชฐเชจเซ‡ เช–เชพเชธ เชธเช‚เชฌเซ‹เชงเชฟเชค เช•เชฐเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡.
  • เช•เซ‡เชตเซ€ เชฐเซ€เชคเซ‡ เชธเชฎเชธเซเชฏเชพ เชเช• เช…เชฅเชตเชพ เชฌเซ€เชœเซ€ เชฐเซ€เชคเซ‡ เชชเซ‹เชคเชพเชจเซ‡ เชชเซเชฐเช—เชŸ เช•เชฐเซ‡ เช›เซ‡

"เช•เซ‹เชฃเซ‡" เช…เชฎเชจเซ‡ เชตเชฟเชจเช‚เชคเซ€ เชฎเซ‹เช•เชฒเซ€ เช›เซ‡ เชคเซ‡ เชธเชฎเชœเชตเชพ เชฎเชพเชŸเซ‡, เช…เชฎเซ‡ เชเช• เชฎเชพเชจเช• เชธเชพเชงเชจเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เช เช›เซ€เช - เชธเชคเซเชฐ เชšเชฒ เชธเซ‡เชŸ เช•เชฐเซ‹: SET application_name = '{bl-host}:{bl-method}'; โ€” เช…เชฎเซ‡ เชฌเชฟเชเชจเซ‡เชธ เชฒเซ‹เชœเชฟเช• เชนเซ‹เชธเซเชŸเชจเซเช‚ เชจเชพเชฎ เชฎเซ‹เช•เชฒเซ€เช เช›เซ€เช เชœเซ‡เชฎเชพเช‚เชฅเซ€ เชตเชฟเชจเช‚เชคเซ€ เช†เชตเซ‡ เช›เซ‡, เช…เชจเซ‡ เชคเซ‡ เชชเชฆเซเชงเชคเชฟ เช…เชฅเชตเชพ เชเชชเซเชฒเชฟเช•เซ‡เชถเชจเชจเซเช‚ เชจเชพเชฎ เชœเซ‡เชฃเซ‡ เชคเซ‡เชจเซ‡ เชถเชฐเซ‚ เช•เชฐเซเชฏเซเช‚ เช›เซ‡.

เช…เชฎเซ‡ เชตเชฟเชจเช‚เชคเซ€เชจเชพ "เชฎเชพเชฒเชฟเช•"เชจเซ‡ เชชเชธเชพเชฐ เช•เชฐเซเชฏเชพ เชชเช›เซ€, เชคเซ‡ เชฒเซ‹เช—เชฎเชพเช‚ เช†เช‰เชŸเชชเซเชŸ เชนเซ‹เชตเซเช‚ เช†เชตเชถเซเชฏเช• เช›เซ‡ - เช† เชฎเชพเชŸเซ‡ เช…เชฎเซ‡ เชตเซ‡เชฐเซ€เชเชฌเชฒเชจเซ‡ เช—เซ‹เช เชตเซ€เช เช›เซ€เช log_line_prefix = ' %m [%p:%v] [%d] %r %a'. เชฐเชธ เชงเชฐเชพเชตเชคเชพ เชฒเซ‹เช•เซ‹ เชฎเชพเชŸเซ‡, เช•เชฆเชพเชš เชฎเชพเชฐเซเช—เชฆเชฐเซเชถเชฟเช•เชพเชฎเชพเช‚ เชœเซเช“เชคเซ‡ เชฌเชงเชพเชจเซ‹ เช…เชฐเซเชฅ เชถเซเช‚ เช›เซ‡. เชคเซ‡ เชคเชพเชฐเชฃ เช†เชชเซ‡ เช›เซ‡ เช•เซ‡ เช†เชชเชฃเซ‡ เชฒเซ‹เช—เชฎเชพเช‚ เชœเซ‹เชˆเช เช›เซ€เช:

  • ะฒั€ะตะผั
  • เชชเซเชฐเช•เซเชฐเชฟเชฏเชพ เช…เชจเซ‡ เชตเซเชฏเชตเชนเชพเชฐ เช“เชณเช–เช•เชฐเซเชคเชพเช“
  • เชกเซ‡เชŸเชพเชฌเซ‡เช เชจเชพเชฎ
  • เช† เชตเชฟเชจเช‚เชคเซ€ เชฎเซ‹เช•เชฒเชจเชพเชฐ เชตเซเชฏเช•เซเชคเชฟเชจเซ‹ IP
  • เช…เชจเซ‡ เชชเชฆเซเชงเชคเชฟเชจเซเช‚ เชจเชพเชฎ

PostgreSQL เช•เซเชตเซ‡เชฐเซ€เชเชจเซเช‚ เชฌเชฒเซเช• เช‘เชชเซเชŸเชฟเชฎเชพเช‡เชเซ‡เชถเชจ. เช•เชฟเชฐเซ€เชฒ เชฌเซ‹เชฐเซ‹เชตเชฟเช•เซ‹เชต (เชŸเซ‡เชจเซเชธเชฐ)

เชชเช›เซ€ เช…เชฎเชจเซ‡ เชธเชฎเชœเชพเชฏเซเช‚ เช•เซ‡ เชตเชฟเชตเชฟเชง เชธเชฐเซเชตเชฐเซเชธ เชตเชšเซเชšเซ‡เชจเซ€ เชเช• เชตเชฟเชจเช‚เชคเซ€ เชฎเชพเชŸเซ‡เชจเชพ เชธเชนเชธเช‚เชฌเช‚เชงเชจเซ‡ เชœเซ‹เชตเซเช‚ เชฌเชนเซ เชฐเชธเชชเซเชฐเชฆ เชจเชฅเซ€. เชเชตเซเช‚ เช˜เชฃเซ€เชตเชพเชฐ เชจเชฅเซ€ เชนเซ‹เชคเซเช‚ เช•เซ‡ เชคเชฎเชพเชฐเซ€ เชชเชพเชธเซ‡ เชเชตเซ€ เชชเชฐเชฟเชธเซเชฅเชฟเชคเชฟ เชนเซ‹เชฏ เช•เซ‡ เชœเซเชฏเชพเช‚ เชเช• เชเชชเซเชฒเชฟเช•เซ‡เชถเชจ เช…เชนเซ€เช‚ เช…เชจเซ‡ เชคเซเชฏเชพเช‚ เชธเชฎเชพเชจ เชฐเซ€เชคเซ‡ เชธเซเช•เซเชฐเซ‚ เชฅเชพเชฏ. เชชเชฐเช‚เชคเซ เชœเซ‹ เชคเซ‡ เชธเชฎเชพเชจ เชนเซ‹เชฏ เชคเซ‹ เชชเชฃ, เช†เชฎเชพเช‚เชจเชพ เช•เซ‹เชˆเชชเชฃ เชธเชฐเซเชตเชฐเชจเซ‡ เชœเซเช“.

เชคเซ‹ เช…เชนเซ€เช‚ เช•เชŸ เช›เซ‡ "เชเช• เชธเชฐเซเชตเชฐ - เชเช• เชฆเชฟเชตเชธ" เชคเซ‡ เช•เซ‹เชˆเชชเชฃ เชตเชฟเชถเซเชฒเซ‡เชทเชฃ เชฎเชพเชŸเซ‡ เช…เชฎเชพเชฐเชพ เชฎเชพเชŸเซ‡ เชชเซ‚เชฐเชคเซเช‚ เชนเซ‹เชตเชพเชจเซเช‚ เชฌเชนเชพเชฐ เช†เชตเซเชฏเซเช‚ เช›เซ‡.

เชชเซเชฐเชฅเชฎ เชตเชฟเชถเซเชฒเซ‡เชทเชฃเชพเชคเซเชฎเช• เชตเชฟเชญเชพเช— เชธเชฎเชพเชจ เช›เซ‡ "เชจเชฎเซ‚เชจเซ‹" - เชฏเซ‹เชœเชจเชพเชจเซ€ เชฐเชœเซ‚เช†เชคเชจเซเช‚ เชธเช‚เช•เซเชทเชฟเชชเซเชค เชธเซเชตเชฐเซ‚เชช, เชคเชฎเชพเชฎ เชธเช‚เช–เซเชฏเชพเชคเซเชฎเช• เชธเซ‚เชšเช•เชพเช‚เช•เซ‹เชฅเซ€ เชธเชพเชซ. เชฌเซ€เชœเซ‹ เช•เชŸ เช เชเชชเซเชฒเซ€เช•เซ‡เชถเชจ เช…เชฅเชตเชพ เชชเชฆเซเชงเชคเชฟ เช›เซ‡, เช…เชจเซ‡ เชคเซเชฐเซ€เชœเซ‹ เช•เชŸ เช เชšเซ‹เช•เซเช•เชธ เชชเซเชฒเชพเชจ เชจเซ‹เชก เช›เซ‡ เชœเซ‡เชฃเซ‡ เช…เชฎเชจเซ‡ เชธเชฎเชธเซเชฏเชพเช“ เชŠเชญเซ€ เช•เชฐเซ€ เช›เซ‡.

เชœเซเชฏเชพเชฐเซ‡ เช…เชฎเซ‡ เชšเซ‹เช•เซเช•เชธ เชฆเชพเช–เชฒเชพเช“เชฎเชพเช‚เชฅเซ€ เชจเชฎเซ‚เชจเชพเช“ เชชเชฐ เช—เชฏเชพ, เชคเซเชฏเชพเชฐเซ‡ เช…เชฎเชจเซ‡ เชเช• เชธเชพเชฅเซ‡ เชฌเซ‡ เชซเชพเชฏเชฆเชพ เชฎเชณเซเชฏเชพ:

  • เชตเชฟเชถเซเชฒเซ‡เชทเชฃ เชฎเชพเชŸเซ‡ เชตเชธเซเชคเซเช“เชจเซ€ เชธเช‚เช–เซเชฏเชพเชฎเชพเช‚ เชฌเชนเซเชตเชฟเชง เช˜เชŸเชพเชกเซ‹
    เช†เชชเชฃเซ‡ เชธเชฎเชธเซเชฏเชพเชจเซเช‚ เชนเชตเซ‡ เชนเชœเชพเชฐเซ‹ เชชเซเชฐเชถเซเชจเซ‹ เช…เชฅเชตเชพ เชฏเซ‹เชœเชจเชพเช“ เชฆเซเชตเชพเชฐเชพ เชจเชนเซ€เช‚, เชชเชฐเช‚เชคเซ เชกเชเชจเชฌเช‚เชง เชจเชฎเซ‚เชจเชพเช“ เชฆเซเชตเชพเชฐเชพ เชตเชฟเชถเซเชฒเซ‡เชทเชฃ เช•เชฐเชตเซเช‚ เชชเชกเชถเซ‡.
  • เชธเชฎเชฏเชฐเซ‡เช–เชพ
    เชเชŸเชฒเซ‡ เช•เซ‡, เชšเซ‹เช•เซเช•เชธ เชตเชฟเชญเชพเช—เชฎเชพเช‚ "เชคเชฅเซเชฏเซ‹" เชจเซ‹ เชธเชพเชฐเชพเช‚เชถ เช†เชชเซ€เชจเซ‡, เชคเชฎเซ‡ เชฆเชฟเชตเชธ เชฆเชฐเชฎเชฟเชฏเชพเชจ เชคเซ‡เชฎเชจเซ‹ เชฆเซ‡เช–เชพเชต เชชเซเชฐเชฆเชฐเซเชถเชฟเชค เช•เชฐเซ€ เชถเช•เซ‹ เช›เซ‹. เช…เชจเซ‡ เช…เชนเซ€เช‚ เชคเชฎเซ‡ เชธเชฎเชœเซ€ เชถเช•เซ‹ เช›เซ‹ เช•เซ‡ เชœเซ‹ เชคเชฎเชพเชฐเซ€ เชชเชพเชธเซ‡ เช•เซ‹เชˆ เชชเซเชฐเช•เชพเชฐเชจเซ€ เชชเซ‡เชŸเชฐเซเชจ เช›เซ‡ เชœเซ‡ เชฅเชพเชฏ เช›เซ‡, เช‰เชฆเชพเชนเชฐเชฃ เชคเชฐเซ€เช•เซ‡, เชเช• เช•เชฒเชพเช•เชฎเชพเช‚ เชเช• เชตเชพเชฐ, เชชเชฐเช‚เชคเซ เชคเซ‡ เชฆเชฟเชตเชธเชฎเชพเช‚ เชเช•เชตเชพเชฐ เชฅเชตเซเช‚ เชœเซ‹เชˆเช, เชคเซ‹ เชคเชฎเชพเชฐเซ‡ เชคเซ‡ เชตเชฟเชถเซ‡ เชตเชฟเชšเชพเชฐเชตเซเช‚ เชœเซ‹เชˆเช เช•เซ‡ เชถเซเช‚ เช–เซ‹เชŸเซเช‚ เชฅเชฏเซเช‚ - เชคเซ‡ เช•เซ‹เชฃเซ‡ เช•เชฐเซเชฏเซเช‚ เช…เชจเซ‡ เชถเชพ เชฎเชพเชŸเซ‡, เช•เชฆเชพเชš เชคเซ‡ เช…เชนเซ€เช‚ เชนเซ‹เชตเซเช‚ เชœเซ‹เชˆเช. เชจ เชœเซ‹เชˆเช. เช† เช…เชจเซเชฏ เชฌเชฟเชจ-เชธเช‚เช–เซเชฏเชพเชคเซเชฎเช•, เช•เซ‡เชตเชณ เชฆเซเชฐเชถเซเชฏ, เชตเชฟเชถเซเชฒเซ‡เชทเชฃเชจเซ€ เชชเชฆเซเชงเชคเชฟ เช›เซ‡.

PostgreSQL เช•เซเชตเซ‡เชฐเซ€เชเชจเซเช‚ เชฌเชฒเซเช• เช‘เชชเซเชŸเชฟเชฎเชพเช‡เชเซ‡เชถเชจ. เช•เชฟเชฐเซ€เชฒ เชฌเซ‹เชฐเซ‹เชตเชฟเช•เซ‹เชต (เชŸเซ‡เชจเซเชธเชฐ)

เชฌเชพเช•เซ€เชจเซ€ เชชเชฆเซเชงเชคเชฟเช“ เชคเซ‡ เชธเซ‚เชšเช•เชพเช‚เช•เซ‹ เชชเชฐ เช†เชงเชพเชฐเชฟเชค เช›เซ‡ เชœเซ‡ เช…เชฎเซ‡ เชฏเซ‹เชœเชจเชพเชฎเชพเช‚เชฅเซ€ เช•เชพเชขเซ€เช เช›เซ€เช: เช†เชตเซ€ เชชเซ‡เชŸเชฐเซเชจ เช•เซ‡เชŸเชฒเซ€ เชตเช–เชค เช†เชตเซ€, เช•เซเชฒ เช…เชจเซ‡ เชธเชฐเซ‡เชฐเชพเชถ เชธเชฎเชฏ, เชกเชฟเชธเซเช•เชฎเชพเช‚เชฅเซ€ เช•เซ‡เชŸเชฒเซ‹ เชกเซ‡เชŸเชพ เชตเชพเช‚เชšเชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเซ‹ เช…เชจเซ‡ เชฎเซ‡เชฎเชฐเซ€เชฎเชพเช‚เชฅเซ€ เช•เซ‡เชŸเชฒเซ‹...

เช•เชพเชฐเชฃ เช•เซ‡, เช‰เชฆเชพเชนเชฐเชฃ เชคเชฐเซ€เช•เซ‡, เชคเชฎเซ‡ เชนเซ‹เชธเซเชŸ เชฎเชพเชŸเซ‡ เชเชจเชพเชฒเชฟเชŸเชฟเช•เซเชธ เชชเซƒเชทเซเช  เชชเชฐ เช†เชตเซ‹ เช›เซ‹, เชœเซเช“ - เช•เช‚เชˆเช• เชกเชฟเชธเซเช• เชชเชฐ เช–เซ‚เชฌ เชตเชพเช‚เชšเชตเชพเชจเซเช‚ เชถเชฐเซ‚ เช•เชฐเซ€ เชฐเชนเซเชฏเซเช‚ เช›เซ‡. เชธเชฐเซเชตเชฐ เชชเชฐเชจเซ€ เชกเชฟเชธเซเช• เชคเซ‡เชจเซ‡ เชนเซ‡เชจเซเชกเชฒ เช•เชฐเซ€ เชถเช•เชคเซ€ เชจเชฅเซ€ - เชคเซ‡เชฎเชพเช‚เชฅเซ€ เช•เซ‹เชฃ เชตเชพเช‚เชšเซ‡ เช›เซ‡?

เช…เชจเซ‡ เชคเชฎเซ‡ เช•เซ‹เชˆเชชเชฃ เช•เซ‰เชฒเชฎ เชฆเซเชตเชพเชฐเชพ เชธเซ‰เชฐเซเชŸ เช•เชฐเซ€ เชถเช•เซ‹ เช›เซ‹ เช…เชจเซ‡ เชจเช•เซเช•เซ€ เช•เชฐเซ€ เชถเช•เซ‹ เช›เซ‹ เช•เซ‡ เชคเชฎเซ‡ เช…เชคเซเชฏเชพเชฐเซ‡ เชถเซเช‚ เช•เชพเชฎ เช•เชฐเชถเซ‹ - เชชเซเชฐเซ‹เชธเซ‡เชธเชฐ เช…เชฅเชตเชพ เชกเชฟเชธเซเช• เชชเชฐเชจเซ‹ เชญเชพเชฐ, เช…เชฅเชตเชพ เชตเชฟเชจเช‚เชคเซ€เช“เชจเซ€ เช•เซเชฒ เชธเช‚เช–เซเชฏเชพ... เช…เชฎเซ‡ เชคเซ‡เชจเซ‡ เชธเซ‰เชฐเซเชŸ เช•เชฐเซ€, "เชŸเซ‹เชš" เชคเชฐเชซ เชœเซ‹เชฏเซเช‚, เชคเซ‡เชจเซ‡ เช เซ€เช• เช•เชฐเซเชฏเซเช‚ เช…เชจเซ‡ เชเชชเซเชฒเชฟเช•เซ‡เชถเชจเชจเซเช‚ เชจเชตเซเช‚ เชธเช‚เชธเซเช•เชฐเชฃ เชฌเชนเชพเชฐ เชชเชพเชกเซเชฏเซเช‚.
[เชตเชฟเชกเซ€เชฏเซ‹ เชฒเซ‡เช•เซเชšเชฐ]

เช…เชจเซ‡ เชคเชฐเชค เชœ เชคเชฎเซ‡ เชตเชฟเชตเชฟเชง เชเชชเซเชฒเชฟเช•เซ‡เชถเชจเซ‹ เชœเซ‹เชˆ เชถเช•เซ‹ เช›เซ‹ เชœเซ‡ เชเช• เชœ เชŸเซ‡เชฎเซเชชเชฒเซ‡เชŸ เชธเชพเชฅเซ‡ เช†เชตเซ‡ เช›เซ‡ เชœเซ‡เชตเซ€ เชตเชฟเชจเช‚เชคเซ€เชฅเซ€ SELECT * FROM users WHERE login = 'Vasya'. เชซเซเชฐเชจเซเชŸเชเชจเซเชก, เชฌเซ‡เช•เชเชจเซเชก, เชชเซเชฐเซ‹เชธเซ‡เชธเชฟเช‚เช—... เช…เชจเซ‡ เชคเชฎเซ‡ เช†เชถเซเชšเชฐเซเชฏ เชชเชพเชฎเซ‹ เช›เซ‹ เช•เซ‡ เชชเซเชฐเซ‹เชธเซ‡เชธเชฟเช‚เช— เชถเชพ เชฎเชพเชŸเซ‡ เชตเชชเชฐเชพเชถเช•เชฐเซเชคเชพเชจเซ‡ เชตเชพเช‚เชšเชถเซ‡ เชœเซ‹ เชคเซ‡ เชคเซ‡เชจเซ€ เชธเชพเชฅเซ‡ เชธเช‚เชชเชฐเซเช• เชจ เช•เชฐเซ‡.

เชตเชฟเชชเชฐเซ€เชค เชฐเซ€เชค เช เช›เซ‡ เช•เซ‡ เชคเซ‡ เชถเซเช‚ เช•เชฐเซ‡ เช›เซ‡ เชคเซ‡ เชเชชเซเชฒเชฟเช•เซ‡เชถเชจเชฎเชพเช‚เชฅเซ€ เชคเชฐเชค เชœ เชœเซ‹เชตเชพเชจเซเช‚ เช›เซ‡. เช‰เชฆเชพเชนเชฐเชฃ เชคเชฐเซ€เช•เซ‡, เชซเซเชฐเชจเซเชŸเชเชจเซเชก เช†, เช†, เช†, เช…เชจเซ‡ เช† เช•เชฒเชพเช•เชฎเชพเช‚ เชเช•เชตเชพเชฐ เช›เซ‡ (เชธเชฎเชฏเชฐเซ‡เช–เชพ เชฎเชฆเชฆ เช•เชฐเซ‡ เช›เซ‡). เช…เชจเซ‡ เชคเชฐเชค เชœ เชชเซเชฐเชถเซเชจ เชŠเชญเซ‹ เชฅเชพเชฏ เช›เซ‡: เชเชตเซเช‚ เชฒเชพเช—เซ‡ เช›เซ‡ เช•เซ‡ เช•เชฒเชพเช•เชฎเชพเช‚ เชเช•เชตเชพเชฐ เช•เช‚เชˆเช• เช•เชฐเชตเซเช‚ เช เช…เช—เซเชฐเชญเชพเช—เชจเซเช‚ เช•เชพเชฎ เชจเชฅเซ€ ...

PostgreSQL เช•เซเชตเซ‡เชฐเซ€เชเชจเซเช‚ เชฌเชฒเซเช• เช‘เชชเซเชŸเชฟเชฎเชพเช‡เชเซ‡เชถเชจ. เช•เชฟเชฐเซ€เชฒ เชฌเซ‹เชฐเซ‹เชตเชฟเช•เซ‹เชต (เชŸเซ‡เชจเซเชธเชฐ)

เชฅเซ‹เชกเชพ เชธเชฎเชฏ เชชเช›เซ€, เช…เชฎเชจเซ‡ เชธเชฎเชœเชพเชฏเซเช‚ เช•เซ‡ เช…เชฎเชพเชฐเซ€ เชชเชพเชธเซ‡ เชเช•เซ€เช•เซƒเชค เช…เชญเชพเชต เช›เซ‡ เชฏเซ‹เชœเชจเชพ เช—เชพเช‚เช เซ‹ เชฆเซเชตเชพเชฐเชพ เช†เช‚เช•เชกเชพ. เช…เชฎเซ‡ เชฏเซ‹เชœเชจเชพเช“เชฎเชพเช‚เชฅเซ€ เชซเช•เซเชค เชคเซ‡ เชœ เชจเซ‹เชกเซเชธเชจเซ‡ เช…เชฒเช— เช•เชฐเซเชฏเชพ เช›เซ‡ เชœเซ‡ เช•เซ‹เชทเซเชŸเช•เซ‹เชจเชพ เชกเซ‡เชŸเชพ เชธเชพเชฅเซ‡ เช•เช‚เชˆเช• เช•เชฐเซ‡ เช›เซ‡ (เชคเซ‡เชจเซ‡ เช…เชจเซเช•เซเชฐเชฎเชฃเชฟเช•เชพ เชฆเซเชตเชพเชฐเชพ เชตเชพเช‚เชšเซ‹/เชฒเช–เซ‹ เช•เซ‡ เชจเชนเซ€เช‚). เชนเช•เซ€เช•เชคเชฎเชพเช‚, เชชเชพเช›เชฒเชพ เชšเชฟเชคเซเชฐเชจเซ€ เชคเซเชฒเชจเชพเชฎเชพเช‚ เชซเช•เซเชค เชเช• เชœ เชชเชพเชธเซเช‚ เช‰เชฎเซ‡เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเซเช‚ เช›เซ‡ - เช† เชจเซ‹เชก เช…เชฎเชจเซ‡ เช•เซ‡เชŸเชฒเชพ เชฐเซ‡เช•เซ‹เชฐเซเชก เชฒเชพเชตเซเชฏเซ‹?, เช…เชจเซ‡ เช•เซ‡เชŸเชฒเชพ เช•เชพเชขเซ€ เชจเชพเช–เชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเชพ เชนเชคเชพ (เชซเชฟเชฒเซเชŸเชฐ เชฆเซเชตเชพเชฐเชพ เชชเช‚เช•เซเชคเชฟเช“ เชฆเซ‚เชฐ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ€ เชนเชคเซ€).

เชคเชฎเชพเชฐเซ€ เชชเชพเชธเซ‡ เชชเซเชฒเซ‡เชŸ เชชเชฐ เชฏเซ‹เช—เซเชฏ เช…เชจเซเช•เซเชฐเชฎเชฃเชฟเช•เชพ เชจเชฅเซ€, เชคเชฎเซ‡ เชคเซ‡เชจเซ‡ เชตเชฟเชจเช‚เชคเซ€ เช•เชฐเซ‹ เช›เซ‹, เชคเซ‡ เช…เชจเซเช•เซเชฐเชฎเชฃเชฟเช•เชพเชฎเชพเช‚เชฅเซ€ เชชเชธเชพเชฐ เชฅเชพเชฏ เช›เซ‡, เชธเซ‡เช• เชธเซเช•เซ‡เชจเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡... เชคเชฎเซ‡ เชเช• เชธเชฟเชตเชพเชฏเชจเชพ เชคเชฎเชพเชฎ เชฐเซ‡เช•เซ‹เชฐเซเชก เชซเชฟเชฒเซเชŸเชฐ เช•เชฐเซ€ เชฆเซ€เชงเชพ เช›เซ‡. เชคเชฎเชพเชฐเซ‡ เชฆเชฐเชฐเซ‹เชœ 100M เชซเชฟเชฒเซเชŸเชฐ เช•เชฐเซ‡เชฒเชพ เชฐเซ‡เช•เซ‹เชฐเซเชกเซเชธเชจเซ€ เชถเชพ เชฎเชพเชŸเซ‡ เชœเชฐเซ‚เชฐ เช›เซ‡? เชถเซเช‚ เช‡เชจเซเชกเซ‡เช•เซเชธ เชฐเซ‹เชฒ เช…เชช เช•เชฐเชตเซเช‚ เชตเชงเซ เชธเชพเชฐเซเช‚ เชจเชฅเซ€?

PostgreSQL เช•เซเชตเซ‡เชฐเซ€เชเชจเซเช‚ เชฌเชฒเซเช• เช‘เชชเซเชŸเชฟเชฎเชพเช‡เชเซ‡เชถเชจ. เช•เชฟเชฐเซ€เชฒ เชฌเซ‹เชฐเซ‹เชตเชฟเช•เซ‹เชต (เชŸเซ‡เชจเซเชธเชฐ)

เชจเซ‹เชก เชฆเซเชตเชพเชฐเชพ เชคเชฎเชพเชฎ เชฏเซ‹เชœเชจเชพเช“เชจเซเช‚ เชตเชฟเชถเซเชฒเซ‡เชทเชฃ เช•เชฐเซเชฏเชพ เชชเช›เซ€, เช…เชฎเชจเซ‡ เชธเชฎเชœเชพเชฏเซเช‚ เช•เซ‡ เชฏเซ‹เชœเชจเชพเช“เชฎเชพเช‚ เช•เซ‡เชŸเชฒเซ€เช• เชฒเชพเช•เซเชทเชฃเชฟเช• เชฐเชšเชจเชพเช“ เช›เซ‡ เชœเซ‡ เชถเช‚เช•เชพเชธเซเชชเชฆ เชฒเชพเช—เซ‡ เชคเซ‡เชตเซ€ เชถเช•เซเชฏเชคเชพ เช›เซ‡. เช…เชจเซ‡ เชตเชฟเช•เชพเชธเช•เชฐเซเชคเชพเชจเซ‡ เช•เชนเซ‡เชตเซเช‚ เชธเชฐเชธ เชฐเชนเซ‡เชถเซ‡: "เชฎเชฟเชคเซเชฐ, เช…เชนเซ€เช‚ เชคเชฎเซ‡ เชชเชนเซ‡เชฒเชพ เช…เชจเซเช•เซเชฐเชฎเชฃเชฟเช•เชพ เชฆเซเชตเชพเชฐเชพ เชตเชพเช‚เชšเซ‹, เชชเช›เซ€ เชธเซ‰เชฐเซเชŸ เช•เชฐเซ‹ เช…เชจเซ‡ เชชเช›เซ€ เช•เชพเชชเซ€ เชจเชพเช–เซ‹" - เชเช• เชจเชฟเชฏเชฎ เชคเชฐเซ€เช•เซ‡, เชเช• เชฐเซ‡เช•เซ‹เชฐเซเชก เช›เซ‡.

เช•เซเชตเซ‡เชฐเซ€ เชฒเช–เชจเชพเชฐ เชฆเชฐเซ‡เช• เชตเซเชฏเช•เซเชคเชฟเช เช•เชฆเชพเชš เช† เชชเซ‡เชŸเชฐเซเชจเชจเซ‹ เชธเชพเชฎเชจเซ‹ เช•เชฐเชตเซ‹ เชชเชกเซเชฏเซ‹ เช›เซ‡: โ€œเชฎเชจเซ‡ เชตเชพเชธเซเชฏเชพ เชฎเชพเชŸเซ‡ เช›เซ‡เชฒเซเชฒเซ‹ เช“เชฐเซเชกเชฐ เช†เชชเซ‹, เชคเซ‡เชจเซ€ เชคเชพเชฐเซ€เช–.โ€ เช…เชจเซ‡ เชœเซ‹ เชคเชฎเชพเชฐเซ€ เชชเชพเชธเซ‡ เชคเชพเชฐเซ€เช– เชชเซเชฐเชฎเชพเชฃเซ‡ เช‡เชจเซเชกเซ‡เช•เซเชธ เชจ เชนเซ‹เชฏ, เช…เชฅเชตเชพ เชคเชฎเซ‡ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ‡เชฒ เช‡เชจเซเชกเซ‡เช•เซเชธเชฎเชพเช‚ เช•เซ‹เชˆ เชคเชพเชฐเซ€เช– เชจ เชนเซ‹เชฏ, เชคเซ‹ เชคเชฎเซ‡ เชฌเชฐเชพเชฌเชฐ เช เชœ "เชฐเซ‡เช•" เชชเชฐ เชชเช—เชฒเซเช‚ เชญเชฐเซ‹.

เชชเชฐเช‚เชคเซ เช†เชชเชฃเซ‡ เชœเชพเชฃเซ€เช เช›เซ€เช เช•เซ‡ เช† เชเช• "เชฐเซ‡เช•" เช›เซ‡ - เชคเซ‹ เชถเชพ เชฎเชพเชŸเซ‡ เชคเชฐเชค เชœ เชตเชฟเช•เชพเชธเช•เชฐเซเชคเชพเชจเซ‡ เชœเชฃเชพเชตเชถเซ‹ เชจเชนเซ€เช‚ เช•เซ‡ เชคเซ‡เชฃเซ‡ เชถเซเช‚ เช•เชฐเชตเซเช‚ เชœเซ‹เชˆเช. เชคเชฆเชจเซเชธเชพเชฐ, เชœเซเชฏเชพเชฐเซ‡ เชนเชตเซ‡ เช•เซ‹เชˆ เชฏเซ‹เชœเชจเชพ เช–เซ‹เชฒเซ‹ เช›เซ‹, เชคเซเชฏเชพเชฐเซ‡ เช…เชฎเชพเชฐเชพ เชตเชฟเช•เชพเชธเช•เชฐเซเชคเชพ เชคเชฐเชค เชœ เชŸเซ€เชชเซเชธ เชธเชพเชฅเซ‡ เชเช• เชธเซเช‚เชฆเชฐ เชšเชฟเชคเซเชฐ เชœเซเช เช›เซ‡, เชœเซเชฏเชพเช‚ เชคเซ‡เช“ เชคเชฐเชค เชœ เชคเซ‡เชจเซ‡ เช•เชนเซ‡ เช›เซ‡: "เชคเชฎเชจเซ‡ เช…เชนเซ€เช‚ เช…เชจเซ‡ เชคเซเชฏเชพเช‚ เชธเชฎเชธเซเชฏเชพเช“ เช›เซ‡, เชชเชฐเช‚เชคเซ เชคเซ‡ เช† เชฐเซ€เชคเซ‡ เช…เชจเซ‡ เชคเซ‡ เชฐเซ€เชคเซ‡ เชนเชฒ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡."

เชชเชฐเชฟเชฃเชพเชฎเซ‡, เช…เชจเซเชญเชตเชจเซ€ เชฎเชพเชคเซเชฐเชพ เชœเซ‡ เชถเชฐเซ‚เช†เชคเชฎเชพเช‚ เชธเชฎเชธเซเชฏเชพเช“ เช‰เช•เซ‡เชฒเชตเชพ เชฎเชพเชŸเซ‡ เชœเชฐเซ‚เชฐเซ€ เชนเชคเซ€ เช…เชจเซ‡ เชนเชตเซ‡ เชคเซ‡ เชจเซ‹เช‚เชงเชชเชพเชคเซเชฐ เชฐเซ€เชคเซ‡ เช˜เชŸเซ€ เช—เชˆ เช›เซ‡. เช†เชชเชฃเซ€ เชชเชพเชธเซ‡ เช† เชชเซเชฐเช•เชพเชฐเชจเซเช‚ เชธเชพเชงเชจ เช›เซ‡.

PostgreSQL เช•เซเชตเซ‡เชฐเซ€เชเชจเซเช‚ เชฌเชฒเซเช• เช‘เชชเซเชŸเชฟเชฎเชพเช‡เชเซ‡เชถเชจ. เช•เชฟเชฐเซ€เชฒ เชฌเซ‹เชฐเซ‹เชตเชฟเช•เซ‹เชต (เชŸเซ‡เชจเซเชธเชฐ)

เชธเซ‹เชฐเซเชธ: www.habr.com

เชเช• เชŸเชฟเชชเซเชชเชฃเซ€ เช‰เชฎเซ‡เชฐเซ‹