ืชืืืื ืื"ื 2015 ืืืช ืืืืื ืงืืกืืืืืืื ืกืงื "ืืืื ื ืืื ืืงืก ืืฉืืคืืจ ืืืฆืืขื PostgreSQL"
ืืชื ืืืชืืจ: ืื ื ืืฆืืื ืฉืืื ืื ืืื ืื ืืืืืจ 2015 - ืืืคื ืืืชืจ ื-4 ืฉื ืื ืืขืืจ ืืจืื ืืื. ืืืจืกื 9.4 ืื ืืื ื ืืืื ืืื ื ื ืชืืืช ืขืื. ืืืืื 4 ืืฉื ืื ืืืืจืื ืืช, 5 ืืืืืจืืช ืืืฉืืช ืฉื PostgreSQL ืฉืืืจืจื, ื-15 ืืจืกืืืช ืฉื ืืืืช ืืื ืืงืก ืฉืืืจืจื. ืื ืชืืชืื ืืืืฉ ืืช ืืงืืขืื ืืืื, ืชืงืื ืืื ืืืจ. ืืื ืืื ืื ื ืจืืืื ืืืื ืื ืืื ืืงืก ืืกืืกื ืขืืืจ PostgreSQL, ืฉืขืืืื ืจืืืื ืื ืืืื.
ืฉืื ืืืืื ืงืืกืืืืืืื ืกืงื. ืื ื ืขืืื ื- PostgreSQL-Consulting. ืืขืืฉืื ืืืืจ ืงืฆืช ืขื ืื ืืขืฉืืช ืขื ืืื ืืงืก ืืืืก ืืืกืืกื ื ืชืื ืื ืืืื ื-PostgreSQL ืืคืจื, ืื ืืขืงืจืื ืืช ืื ืืืืื.
ืขื ืื ื ืืืจ? ืื ืืชื ืืชืงืฉืจ ืขื PostgreSQL, ืื ืืืืื ืืกืืืืช ืืชื ืฆืจืื ืืืืืช ืื ืื UNIX. ืื ืื ืืืืจ? ืื ื ืฉืืื ืืช Oracle ื-PostgreSQL, ืื ื-Oracle ืืชื ืฆืจืื ืืืืืช 80% ืื ืื ืืกื ื ืชืื ืื ืฉื DBA ื-20% ืื ืื ืืื ืืงืก.
ืขื PostgreSQL ืื ืงืฆืช ืืืชืจ ืืกืืื. ืขื PostgreSQL ืืชื ืฆืจืื ืืืืื ืืจืื ืืืชืจ ืืื ืืื ืืงืก ืขืืืืช. ืืืืงืืื ืืจืืฅ ืงืฆืช ืืืจื ืืงืืจ, ืื ืืืืจืื ื ืืื ืืชืขืืื ืื ืืคื. ืืืฉืืืจืจืื ืืจืขืื ืื ืืืฉืื, ืคืื ืงืฆืืื ืืืืช ืืืฉื ืืืคืืขื, ืืืฆืืขืื ืืฉืชืคืจืื ืืื'.
ืืื ืื ืื ื ืืืืจืื ืขื ืืื ืืงืก? ืืืื ืื ืืืื ืฉืื ืื ื ืืื ืก Linux Peter, ืืื ืืืื ืฉืืชื ืืื ืืืืจื ืืื ืืืช ืืืขืจืืืช ืืืคืขืื ืืืืฆืืงืืช ืืืืชืจ ืืฉืืืืฉ ืืืกืืกื ื ืชืื ืื ืืืื ืื-PostgreSQL ืืคืจื ืืื ืืื ืืงืก. ืื FreeBSD, ืืืจืื ืืฆืขืจ, ืืชืคืชืืช ืืืืื ืืืืื ืืืื ืืืืจ. ืืืืื ืืขืืืช ืื ืืืืฆืืขืื ืืื ืืืจืื ืืืจืื ืืืจืื. ืืืืฆืืขืื ืฉื PostgreSQL ื-Windows ืื ืืืจื ืืื ืืขืื ืจืฆืื ืืช ื ืคืจืืช, ืืืืืกืกืช ืขื ืืขืืืื ืฉื-Windows ืืื ืืช ืืืชื ืืืืจืื ืืฉืืชืฃ ืืื UNIX, ืืขืื ืฉ-PostgreSQL ืงืฉืืจื ืืืื ืืื, ืืืืืื ืฉืื ืืขืจืืช ืืจืืืช ืชืืืืืื.
ืืื ื ืืืฉื ืฉืืืื ืคืืืช ืืชืขื ืืื ืื ืืืงืืืืืงื ืืื ืกืืืืจืืก, ืื ืืื ื ืื.
ืืืคืฆื ืืืืจื ืืช ืฉื ืืื ืืงืก ืืฉ ืืืชืจ ื-1 ืืคืฉืจืืืืช syctl, ืชืืื ืืื ืืชื ืืื ื ืืช ืืืืื. ืืื ืขื ืืืช, ืื ื ืกืชืื ืขื ืืืืืืื ืืฉืื ืื, ื ืืื ืืืชืืื ืืฉืื ืืืจืืื ืจืืืช. ืืฉื ื ืคืจืืืจืื ืฉื ืืขืจืืช ืืงืืฆืื ืืืฆื ืืืขืืืช ืืืชื. ืื ืืฉ ืื ืฉืืืืช ืืืื ืืื ืืืคืขืื ืืช ืื: ืื ืืืคืขืื ื-BIOS, ืืื ืืืืืืจ ืืช ืืืืืจื ืืื'.
ืืื ื ืคื ืืืื ืืืื ืฉื ืืชื ืืืื ืื ืขื ืคื ื ืืกืคืจ ืืืื, ืืื ืืืื ืงืฆืจ ืืื, ืืื ืืขืช ืืชืืงื ืืืืจืื ืืฉืืืื, ืืืฆื ืืืืื ืข ืืืืชื ืืจืืคืืช ืฉืืืืืืืช ืืื ืขื ืืื ืืืฉืชืืฉ ืืืื ืืืกื ืื ืชืื ืื ืฉืื ืืืื ืืงืก ืื ืืชื ืื ืชืชืงื ืืืชื. ืืืื ืขื ืืืช, ื ืงืืื ืืฉืืื ืืื ืฉืคืจืืืจืื ืจืืื ืฉื ืืจืืจืช ืืืื ืืื ื ืืืืืื ืืืืืจืืช ืื ืืื ืืช ืืืกื ืื ืชืื ืื. ืืืืืจ, ืืืจืืจืช ืืืื ืื ืืขืืื ืืจืืข ืื ืื ืืืื.
ืืืื ืืขืื ืืืื ืื ืืกืืจืชืืื ืืฉ ืืืื ืืงืก? ืื ื ืืืฉื ืฉืืืืืื ืฉืืืืื ืขืืกืงืื ืื ืืืื ืืื ืืงืก, ืืื ืฆืืจื ืืืกืืืจ ืื ืื ืืขืืื.
ืืชื ืืืื ืืืืื:
- ืืขืื.
- ืืืืจืื.
- ืืืกืื.
- ืึทืึตืจ. ื ืืืจ ืขื ืื ืืกืืฃ ืื ืฉื ืืฉ. ืืคืืื, ืืืฉื, ืคืจืืืจืื ืืื ืืืื ืืืช ืืืกืืื ืืื ืจืืื ืืืืืื ืืืฉืคืืข ืขื ืืืืฆืืขืื ืืฆืืจื ืืืื ืื ืฆืคืืื ืืื ืืื ื ืขืืื.
ืื ืื ืืคืจืืื ืฉื PostgreSQL ืืฉื ืืกื ืื ืชืื ืื ืืืื? ืืืขืื ืืื ืฉืืชื ืื ืืืื ืืฆืืื ืืฃ ืืืื ืืืื ืืืจืืืช ืฉืืืืฆืืขืื ืฉืื ื ืืฉืชืคืจื ืืฉืืขืืชืืช.
ืื, ืืฉ ืืืื'ืืื ืืืื, ืืื ืืกื ื ืชืื ืื ืื ืืืจ ืืืจืื. ืืื ืืงืืื ืืื ืืจืืงืฆืื ืขื ืื ืืืฉืืืื ืฉืืฉ ืืฉืจืช ืืืขืืืฃ ืืงืืื ืืื ืืจืืงืฆืื ืืืื. ืื ืชืกืชืื ืขื ืืืืืฆืืช ืืขืืื ืืืช ืฉื ืืืจืงื ืืืฆื ืืืฉืชืืฉ ืืืขืจืืช ืืคืขืื ืืืจื, ืื ืืืื ืืื ืืืืืื ืขื ืืืชื ืงืืกืืื ืืื ืืื ืืืื - ืืืืืื ืืช ืืืื ืืื ืชืืืข ืืืืื. ืืืื ื ืืชื ืืืกื ืื ืชืื ืื ืืช ืื ืืืฉืืืื, ืืืืืจ ืขืฆืื ืืกืืจ ืืื.
ืืืืคื ืขืงืจืื ื, ืืืืื ืืกืืืืช ืืืฆื ืืื ืืืืืืื ืขื PostgreSQL. ืืืืื ืืื ืฉืืกืืก ืื ืชืื ืื ืขืืืื ืื ืืกืืื ืืงืืช ืืช ืื ืืืฉืืืื ืืขืฆืื, ืืืืืจ ืืืคืฉืื ืืจืืช ืืื ืืงืก ืืชื ืฆืจืื ืืกืืจ ืืช ืืื ืืขืฆืื.
ืืจืขืืื ืืืจืืื ืืื ืื ืืืืืจ ืืืจื ืืืืืช ืืืืชืืื ืืืืื ืืืชื, ืืืฉื ืืืืจืื, ืืขืื ืื ืืฉืื ืืื, ืืื ืื ืชื ืืช ืขืืืก ืืขืืืื ืืื ืกืืช ืืฉืคืจ ืืช ืืชืคืืงื ืขื ืืื ืฉื ืืชื ืืื ืฉืืขืืืก ืฉืืชืื ืชืื ืืืืื ืืฆืจื ืืืชื ืขืืืจื ื, ืืืื ืืืฉืชืืฉืื ืฉืื ื.
ืื ื ืชืืื ื ืฉืชืกืืืจ ืื ืื. ืืฉ ืืืืจ ืืขืจืืช ืืคืขืื ืืื ืืงืก ืืืฉ ืืืืจืื ืืฉืืชืฃ ืืืฉ ืืืืจืื ืืฉืืชืคืื ืฉื PostgreSQL. PostgreSQL, ืื ืืืื ื-Oracle, ืขืืื ืืฉืืจืืช ืจืง ืืจื ืืืืจ ืืงืจื ื, ืืืืืจ, ืืื ืฉืืฃ ืืืืืกืง ืืืื ืก ืืืืืจืื ืืืฉืืชืฃ ืฉืื, ืขืืื ืืขืืืจ ืืจื ืืืืจ ืืงืจื ื ืืืืืจื, ืืืืชื ืืฆื ืืืืืง.
ืืืกืงืื ืืืื ืชืืช ืืขืจืืช ืื. ืฆืืืจืชื ืืช ืื ืืืืกืงืื. ืืืขืฉื, ืืืื ืืืืืช ืฉืืฉ ืืงืจ RAID ืืื'.
ืืืงืื-ืคืื ืืื ืืืจื ืื ืื ืืืจืช ืืชืจืืฉ ืืจื ืืขื ืืื ืืื.
PostgreSQL ืืื ืืกื ื ืชืื ืื ืงืืืกื. ืืฉ ืืฃ ืืคื ืื. ืืื ืืงืื ืืืคืื ืืชืจืืฉืื ืืืืฆืขืืช ืืคืื. ืื ืื ื ืืขืืื ืืืืงืื ืืืืืจืื ืขื ืืคืื. ืืื ืฉืื ืืืจ ืื ืงืจื, ืื ืื ื ืคืฉืื ืงืืจืืื ืืืชื, ืื ืืืืจืื ืื ื ืขืืืื ืืืืืืื ืืื, ืืืืืืจืื ืืืฉืืชืคืื ืืืืืขืื ืืืืจื ืืืืกืง.
ืื ื ืืืืฃ ืืฉืื ืืืคืฉืื, ืื ืื ืืขืืื ืืกืืื ืืืืืืื. ืกืืื ืชื ืืืชื ืืื ืืืืื. ืืื ืืืืจ ืฉืืืฃ ืืื ืืืื ืืืืืช ืืกืื ืืจื ืขื ืืืกืื ืืืืง. ืืืืืจ, ืืฉืขืฉืื ื ืืช ืื ืืืืืื, ืขืฉืื ื ืขืจื ื-WAL. ืืืืืื ืจืืข ื ืคืื ืืืื ืืืืขื ืชืืคืขื ืฉื ืงืจืืช ืืืกืื. ืืืืืื ืื ื ืจืฉื ืืืืข ืฉืืื ืืืืข. ืืื ืืืืจ ืฉืื ืืืคืื ืืืืืืืืื ืฉืืื ืืื ืืืืชื ืจืืข ืืืืืจืื ืืืฉืืชืคืื ืืืื ืกืื ืืจื ื ืขื ืืืกืง ืืืืกืื ืืืืฆืขืืช fsync ืืจื ืืืืจ ืืงืจื ื.
ืืื ืื ื ืขืฉื? ืื ืืืืื ื ืืชื, ืื ืื ืงืืืื ื ืืช ืืืฆื ืฉืื ืื ืชืื ืื ืืืื. ืืืืจืื ืืชืืฉื, ืฉืืืื ืกืืคืจื ืื ื ืขืืื, ื ืืฆื ืขื ืื ืืชืืจืช ืืกืื ืื ืชืื ืื - ืืื ืขืชืื ืืืืืจ, ืฉืื ื, ืืืืื, ืฉืืืคืื ืืืื ืืื ืื ื ืืืืืื ืืืชื, ืืื ืืขืช ืขืชื ืื ืืืื ืืขืื ืืื ืืก 20 ืฉื ื. ืืืืืื, ืื ืื ืฆืจืื ืืืืืช ืืืขืงื.
ืืืืฉืืื ืฉื ืืงืกืื ืืชืคืืงื ืืื ืืืืื ื ืืช ืื ืืฉืืืื ืืืื ืื ืฉืืื ืืืื ืงืืืื ืืืืืจื ืืืืืจืืช. ืืืืจืื ืืฉืืชืฃ ืืื ืืขืฆื ืืืืื ืขืืืืื. ื-PostgreSQL ืฉืืื ื ืฉืืืืชืช ืืืืจื ืื ืืฉืื, ืื ืฉืืฃ ืืช ืื ืชืื ืื ืืืื ืืืืืกืง. ืื ืืืืขื ืืืืืจืื ืืฉืืชืคืื. ืืืชืื ืืื, ืืื ืฉืื ืืขืืื ืืื ืืืชืจ, ืืืื ืืืืืช ืืจืื ืืืืจืื.
ืืื ืฉืื ืื ืืขืืื ืืื ืืืืืจ, ืฆืจืื ืืืืืืจ ื ืืื ืืช ืืขืจืืช ืืืคืขืื ืืื ืืฉืืืื. ืืืืจ ืืืืจื ืืืืื ืช, ืื ืื ืืฉ ืื ืืืกืจ ืืืืื ืืืงืื ืืืฉืื, โโืื ืืชื ืืืื ืืืฆืืจ ืืจืื ืืืืจืื, ืืื ืื ืื ืืืืคื ืืืืืจืืช ืืกืคืงืช.
ืืืืื ื ืขืืืจ ืขื ืื ืืืช ืืื ืงืืืืช ืืืื.
ืืื ืืืจืื ืืืคืื ืืืื ืื ืืข ืืืจ ืืืชืจ ืืืื ืืฉืื, ืขืืื ืืืฉืื ืืช ืืคืขืืืืช ืืืืืช:
- ืจืืฉืืช, ืืชื ืฆืจืื ืืขืืื ืืฆืืจื ืืขืืื ืืืชืจ ืขื ืืืืจืื.
- ืฉื ืืช, ืืืขืืจ ืืื ืืืฉืจ ืืคืื ืืืืืืจืื ืขืืืจืื ืืืืกืง ืืืืจ ืืืืืช ืืขืื ืืืชืจ.
- ืืฉืืืฉืืช, ืืืืืื ืืืืืช ืืืกืงืื ืืืืื.
ืื ืืฉ ืื 512 ื'ืืื-ืืืื ืฉื ืืืืจืื RAM ืืฉืจืช ืืื ืื ืืืืข ืืืื ื ืงืฉืื ืฉื SATA ืืื ืื ืืืืื, ืื ืื ืฉืจืช ืืกื ืื ืชืื ืื ืืืคื ืื ืจืง ืืืืขืช, ืืื ืืืืขืช ืขื ืืืฉืง SATA. ืืชื ืชืชืงื ืืื ืืฉืืจืืช. ืืฉืื ืืืจ ืื ืืฆืื ืืืชื.
ืืืื ืื ืงืืื ืืจืืฉืื ื ืขื ืืืืืจืื, ืืฉื ื ืฉืืืฉื ืืืจืื ืฉืืืืืื ืืืงืฉืืช ืืืื ืขื ืืืืื.
ืืจืืฉืื ืฉืืื ืืื NUMA. NUMA ืืื ืืืจ ืฉื ืืฆืจ ืืื ืืฉืคืจ ืืืฆืืขืื. ืืืชืื ืืขืืืก ืืขืืืื, ื ืืชื ืืืืขื ืืืจืื ืฉืื ืื. ืืืฆืืจืชื ืืืืฉื ืื ืืืืืช, ืืื ืืื ื ืืื ืืืืืื ืขืืืจ ืืืฉืืืื ืืืื ืืกืื ื ืชืื ืื ืืืฉืชืืฉืื ืืืื ืื ืกืืืืืช ืืืืืจืื ืืฉืืชืคืื ืฉื ืืืืื ืขืืืืื.
ืึผึฐืงึดืฆืึผืจ ื ึดืืจึธืฅ. ืืื ืืชื ืืืื ืืืขืช ืื ืืฉืื ืื ืืกืืจ ืขื NUMA? ืืฉ ืื ืืืืืฉืื ืืคืืงื ืื ื ืขืืื, ืคืชืืื ืืืื CPU ืขืืืก. ืืืงืืื, ืืชื ืื ืชื ืฉืืืืชืืช ื-PostgreSQL ืืจืืื ืฉืืื ืฉื ืฉืื ืืืจ ืืืื. ืฉืืืืชืืช ืืื ืื ืืืืจืืช ืืืืืช ืืื ืื ืกืืืืืช ืื ืื ืืืขืื. ืืชื ืืืื ืืชืคืืก ืืช ืื ืืืฉื ืืื ืจื. ืงื ืืืชืจ ืืืฉืชืืฉ ืืืืืฆื ืื ืืื ื ืืืจ ืืืืชืืื ืืืฆื ืืืืืืจ ืืช NUMA ืขืืืจ PostgreSQL.
ืื ืืืืช ืงืืจื? NUMA ืจืืฉื ืชืืืืช ืฉื Non-Uniform Memory Access. ืื ืืืขื? ืืฉ ืื ืืขืื, ืืืื ืืฉ ืืช ืืืืืจืื ืืืงืืื ืฉืื. ืืืืืืจื ืืืืืจืื ืืืื ืืืืืื ืืืฉืื ืืืืจืื ืืืขืืืื ืืืจืื.
ืื ืืชื ืจืฅ numactl --hardware
, ืื ืชืงืื ืกืืื ืื ืื ืืืื. ืืื ืืืชืจ ืืชืงืืื ืืืจืฉ ืืจืืงืื. ืืืื ืืกืคืจืื - 10-20, ืืฉืื ืืื. ืืืกืคืจืื ืืืื ืื ืื ืืืชืจ ืืืกืคืจ ืืงืคืืฆืืช ืืื ืืืกืืฃ ืืช ืืืืืจืื ืืืจืืืง ืืื ืืืืฉืชืืฉ ืื ืืืืคื ืืงืืื. ืขืงืจืื ืืช, ืจืขืืื ืืื. ืื ืืืืฅ ืืช ืืืืฆืืขืื ืืืื ืชืืช ืืืืื ืขืืืกื ืขืืืื.
ืืขืช ืชืืจื ืืขืฆืืื ืฉืืฉ ืืื ืืขืื ืืื ืฉืื ืกื ืืืฉืชืืฉ ืืืืืจืื ืืืงืืื ืฉืื, ืืืืืจ ืืื ืื ืกื ืืืฉืื ืืืืจืื ืืืจ ืืืืฆืขืืช ืืืืืจ ืืืฉืื. ืืืืขืื ืืื ืืงืื ืืช ืื ืืืืื ืืขืืืืื ืฉืื ื-PostgreSQL - ืืื, ืืื ื'ืืื-ืืืื. ืืชื ืชืืื ืืงืื ืืช ืืืงืจื ืืืจืืข ืืืืชืจ, ืื ืืืขืื ืืฉ ืืืจื ืืื ืืขื ืืืืจืื ืืืืืื ืขืฆืื. ืืื ืืืืืจืื ืฉืืืืคื ืขืืืจ ืืจื ืืืืืืจืื ืืืื. ืื ืืืฆื ืืืื ืืขืฆืื. ืืืืขืื ืฉืื ืฉืืฉืจืช ืืช ืืฆืืืช ืืื ืขืืืก ืื ืืืื. ืืืื ืืืืฉื ืฉื ืืืืืจืื ืืื ืืจืืข, ืืืื. ืื ืืืฆื ืฉืืชื ืื ืจืืฆื ืื ืืชื ืืฉืชืืฉ ืืื ืขืืืจ ืืกื ื ืชืื ืื.
ืืื, ืืคืฉืจืืช ื ืืื ื ืืืชืจ ืืืกื ืื ืชืื ืื ืืื ืฉืืขืจืืช ืืืคืขืื ืืื ืืงืก ืื ืชืืข ืื ืงืืจื ืฉื ืืืื. ืื ืฉืืื ื ืืืฉ ืืืืืจืื ืืคื ืฉืืื ืขืืฉื.
ืืื? ื ืจืื ืฉืื ืฆืจืื ืืืืืช ืืคืื. ืื ืงืืจื ืืกืืื ืืืช ืคืฉืืื: ืื ืื ื ืฆืจืืืื ืืจืื ืืืืจืื ืขืืืจ ืืืืื ืืขืืืืื - ืขืฉืจืืช, ืืืืช ืืืื-ืืืื.
ืืื ืืงืฆืื ื ืืช ืื ืื ืืฉืืืจืื ืืช ืื ืชืื ืื ืฉืื ื ืฉื, ืื ืืจืืื ืืฉืืืืฉ ืืืืืื ืืืื ืืืื ืืฉืืขืืชืืช ืืืจืืื ืืืืฉื ืื ืื ืืกืืืืช ืืืืืจืื. ืืื ื ืจืืืื ืืืื ืขืจืื ืืืฉืืืื ืืขืืืื ืฉื ืืืฉ ืืืืืจืื ืืฆืืจื ืืขืืื ืืืชืจ ืืืืฆืขืืช NUMA.
ืืื, ืืฉ ืืื ืฉืชื ืืืฉืืช ืืจืืข, ืขื ืฉืืขืชืื ืืืืืจ ืืืืข, ืืืกื ืื ืชืื ืื ืขืฆืื ืื ืืกืืื ืืืืื ืขื ืืืื ืืขืืืื ืืื ืคืืขื ืืืืืคื ืืื ืฆืจืื ืืืฉืื ืืฉืื.
ืืื, ืืืืฉื ืื ืืื ื ืืื ืืืฉืืืช ืืช NUMA ืืืืืืื, ืืืฉื, ืืขืช ืืชืืื ืืืืฉ. ืืจืื ืืืงืจืื, ืืืืืืช ืื ืืกืืจื ืืืื ืืืื ืฉืืฉืืื ืื ืขืืืฃ ืืื ืื ืขืืื.
ืืฉ ืืคืฉืจืืช ื ืืกืคืช. ืื ื ืืฉืชืืฉืื ืื ืืขืชืื ืงืจืืืืช ืืืชืจ ืืืจืืฉืื, ืืืืืื ืฉืืืฉืจ ืืงืื ืืืืข ืืืื ื ืืชืืืื, ืืชืืื ืืฉืจืช ืืื ืขื ืืื ืืืื ืขืืืจื. ืืฉ ืื ืฉื ืขืกืง. ืืื ืืืืื ืืขืืืช ืืืื NUMA. ืืื, ืื ื ืื ืกืื ืืืฉืืืช ืืืชื ืืืจืืื ืคืืืช ืคืืืฉื ืืืช ืืืฉืจ ืืืชืืื ืืืืฉ, ืื ืืงืคืืื ืืืืืง ืฉืืื ืืืฉืืช. ืื ืืคื ืฉืืจืื ืื ืืกืืื, ืื ืืื ืฉื ืฉืืืช ืืช NUMA ืืชืืืื ืืื PostgreSQL, ืืื ืื ืืืื ืื ืืืจืื ืฉืื ืืขืืื. ืื ืื ื ืฆืจืืืื ืืืืืง ืืืจืืืช ืฉืืื ืืืืช ืืืชื.
ืืฉ ืคืืกื ืืื ืฉื ืจืืืจื ืืืก. ืืื ืืื ืืืืื PostgreSQL. ืืื ืืืคืชืืื ืืขืืงืจืืื ืฉื ืื ืืืืืืื ืืจืื ื ืืืื. ืืื ืืชื ืขืืงื ืืืจ ืืงืืฉืืจืื ืืืคืืกื ืืื, ืื ืืชืืจืื ืืื ืกืืคืืจืื ืฆืืขืื ืืื ืขื ืืื NUMA ืขืฉืชื ืืืื ืงืฉืื ืืื ืฉืื. ืชืจืื, ืืื ืืช ืจืฉืืืช ืืืืืงื ืฉื ืื ืื ืืืขืจืืช ืฉื ืื ืฉืฆืจืื ืืืืืืจ ืืฉืจืช ืืื ืฉืืกืืก ืื ืชืื ืื ืฉืื ื ืืขืืื ืืื. ืฆืจืื ืืจืฉืื ืืืืืืง ืืช ืืืืืจืืช ืืืื, ืื ืืืจืช ืื ืื ืืืื ืืื ืืืืืื.
ืฉืืื ืื ืฉืื ืื ืขื ืื ืืืืืจืืช ืฉืขืืืื ืืืืจ. ืืื ืืืจื ืืื ืืกืื ื ืชืื ืื ื ืืกืคืื ืืืฆื ืืืกืืจ-ืขืื ืืกืืืื ืืช ืชืงืืืช. ืื ืชืฉืื ืืขืฉืืช ืืช ืืืืืจืืช ืืืื ืขื ืืขืื ืื ืืื ืืื ืชืืื ืื ืชืืื ื ืืชืขืืืจ ืืขืื ืืืื ืืืคืื ืืืืื.
ืืืฆื ืืืจืื, ืืฉืืื ืจืข ืืืื, ืืืืคืื ืฉืื ืืฆืืฆื ืื ืืืื ืืืืืก ืฉืื ืื ืืจืืฆื ืขื ืืงื ืืืื, ืื ืืืื ืื ืืื ืืืฉืื ืขื ืืืืงื. ืืืชืืฆืืืช ืืืืืืช ืืืืืช ืื ืืจืืช ืืกืื.
ืื ืงืืื ืืืื ืืื ืืคืื ืขื ืงืืื. ืืคืื ืขื ืงืืื ืงืฉื ืืืืืงื ืื ืคืจื, ืืืื ืืขื ืืขืฉืืช ืืืช, ืืืจืืช ืฉืืฉ ืืืืื ืฉืืืืืื ืืขืฉืืช ืืืช. ืงื ืืืืื ืืืชื.
ืื ืืืขื? ืืฉ ืื ืฉืจืช ืื ืืืื ืืงืจ ืขื ืืจืื ืืืืจืื RAM, ืืืฉื, ืืืชืจ ื-30 GB. ืืชื ืื ืืฉืชืืฉ ืืืคืื ืขื ืงืืื. ืื ืืืืจ ืฉืืืืื ืืฉ ืื ืชืงืืจื ืืืื ืืื ืฉื ืฉืืืืฉ ืืืืืจืื. ืืืชืงืืจื ืืื ืจืืืงื ืืืืืืช ืืื ื ืขืืื.
ืืื? ืื ืื ืงืืจื? ืืขืจืืช ืืืคืขืื ืืงืฆื ืืืืจืื ืืืชืืืืช ืงืื ืืช. ืื ืื ืื ื ืื, ืืื ืื ืงืจื ืืืกืืืจืืช. ืืื ื ืืื ืก ืืคืจืืื, ืืขืจืืช ืืืคืขืื ืืืืืช ืืชืจืื ืืชืืืืช ืืืจืืืืืืืช ืืืชืืืืช ืคืืืืืช. ืืืชืืืื ืืื ืืื ื ืืคืฉืื ืืืืชืจ, ืืืื ืืขืจืืช ืืืคืขืื ืืืืกื ืช ืืช ืืชืืฆืื ืฉื ืืคืขืืื ืืื ืืืืืจ ืืชืจืืื Lookaside Buffer (TLB).
ืืืืืืื ืฉื-TLB ืืื ืืืืื, ืื ืืืขืืืช ืืืืืืืช ืืืืืื ืืชืขืืจืจืืช ืืืฆื ืื. ืจืืฉืืช, ืื ืืฉ ืื ืืจืื ืืืืจืื RAM ืืืื ืืืงืฆื ืื ืชืืื ืงืื ืื, ืื ืืืืืจ ืืื ืืืคื ืืืื ืืืื. ืืื ืืืืืื ืืืื, ืืืืคืืฉ ืืจืื ืืืื ืืืชืจ. ืชืงืืจื ืืื ืืจืืื ืืืื ืขืฆืื ืชืืคืกืช ืืงืื, ืืืืืจ ืืืืจืื RAM ื ืฆืจื ืขื ืืื ืืฉืื ืื ื ืืื. ืืคืขื.
ืฉื ืืื - ืืื ืฉืืืืืื ืืืื ืืืชืจ ืืืฆื ืืื, ืื ืืื ืืกืืืื ืฉืืืื ืื ืคืกืคืืกื ืืืืื. ืืืืขืืืืช ืฉื ืืืืืื ืืื ืืืจืืช ืืืืืจืืช ืืื ืฉืืืืื ืืื. ืืื, ืืขืจืืืช ืืคืขืื ืืืืขื ืขื ืืืฉื ืคืฉืืื. ืื ืืื ืืฉืืืืฉ ืืืื ืืงืก ืืืฉื ืืื ืจื. ืื ืืืคืืข ื- FreeBSD ืื ืื ืื ืืืื. ืืื ืื ืื ื ืืืืจืื ืขื ืืื ืืงืก. ืืื ืืคืื ืขื ืงืืื.
ืืืื ืืฉ ืืฆืืื ืฉืขืืืืื ืขื ืงืืื, ืืจืขืืื, ื ืืืคื ืืชืืืื ืขื ืืื ืงืืืืืช ืฉืืืื ืืช ืืืจืงื ื-IBM, ืืืืืจ ืืฆืจื ื ืืกืื ื ืชืื ืื ืืฉืื ืืืื ืฉืื ืืืื ืฉืืืืฉื ืื ืขืืืจ ืืกืื ื ืชืื ืื.
ืืืื ืืคืฉืจ ืืืชืืืื ืขื PostgreSQL? ืจืืฉืืช, ืืฉ ืืืคืขืื ืืคืื ืขื ืงืืื ืืืืืช ืืื ืืงืก.
ืฉื ืืช, ืืฉ ืืฆืืื ืืืชื ืืืคืืจืฉ ืขื ืืื ืืคืจืืืจ sysctl - ืืื ืืฉ. ืืืกืคืจืื ืืื ืื ืืืืื ืฉืจืช ืืฉื. ืืชื ืืืื ืืืฉื ืืื ืืืืจืื ืืฉืืชืคืื ืืฉ ืื ืืื ืฉืขืืืืื ืขื ืงืืื ืืืืื ืืืืื ืก ืืฉื.
ืืื ืื ืืฉืจืช ืฉืื ืืืงืืฉ ื-PostgreSQL, ืื ื ืงืืืช ืืชืืื ืืืื ืืื ืืืงืฆืืช ืื 25% ืื-RAM ืืืืืจืื ืืฉืืชืคืื, ืื 75% ืื ืืชื ืืืื ืฉืืกื ืื ืชืื ืื ืฉืื ืืืืื ืืชืืื ื-75%. ื ืงืืืช ืืชืืื ืืืช. ืืฉืงืื, ืื ืืฉ ืื 256 GB ืฉื ืืืืจืื RAM, ืื, ืืืชืื, ืืืื ืื 64 GB ืฉื ืืืฆืฆืื ืืืืืื. ืืฉืื ืืงืืจืื ืขื ืงืฆืช ืฉืืืืื - ืืื ืฆืจืื ืืืืืืจ ืืช ืื ืชืื ืืื.
ืืคื ื ืืจืกื 9.2 (ืื ืื ื ืื ืืืขื, ืืื ืืจืกื 8.2), ืืคืฉืจ ืืื ืืืืจ ืืช PostgreSQL ืขื ืืคืื ืขื ืงืืื ืืืืฆืขืืช ืกืคืจืืืช ืฆื ืฉืืืฉื. ืืืช ืื ืฆืจืื ืืขืฉืืช ืชืืื. ืจืืฉืืช, ืืชื ืฆืจืื ืืช ืืงืจื ื ืืื ืืืืืช ืืกืืื ืืืงืฆืืช ืืคืื ืขื ืงืืื ืืฆืืจื ื ืืื ื. ืืฉื ืืช, ืืื ืฉืืืคืืืงืฆืื ืฉืขืืืืช ืืืชื ืชืืื ืืืฉืชืืฉ ืืื. ืื ืื ืืฉืืฉ ืจืง ืืื. ืืืืืื ืฉ-PostgreSQL ืืงืฆืชื ืืืืจืื ืืกืื ืื ืืขืจืืช 5, ื ืืชื ืืื ืืขืฉืืช ืืืช ืืืืฆืขืืช libhugetlbfs - ืืื ืืฉื ืืืื ืฉื ืืกืคืจืืื.
ื-9.3, ืืืฆืืขื PostgreSQL ืฉืืคืจื ืืขืช ืขืืืื ืขื ืืืืจืื ืืฉืืืช ืืงืฆืืช ืืืืจืื ืืขืจืืช 5 ื ืื ืื. ืืืื ืฉืืื ืืืื, ืื ืืืจืช ืืชื ืื ืกื ืืืจืืฅ ืฉื ื ืืืคืขื PostgreSQL ืขื ืืืฉื ืืื, ืืืื ืืืืจ ืฉืืื ืื ืืกืคืืง ืืืืจืื ืืฉืืชืฃ. ืืืื ืืืืจ ืฉืฆืจืื ืืชืงื ืืช sysctl. ืืืฉ ืืื sysctl ืฉืขืืืื ืฆืจืื ืืืชืื ืืื'. ืืืืคื ืืืื ืืืื ืืื ืืจืืฆืื. ืืื ืืงืฆืืช ืืืืจืื mmap ืฉืืจื ืืช ืืฉืืืืฉ ืืืคืื ืขื ืงืืื. ืจืื ืืืงืืืืช ืฉืื ื ืืฉืชืืฉืื ืืืืืจืื ืืฉืืชืคืื ืืืืืื. ืืืืืฆื ื ืืืื ืื ืืขืืืจ ื-9.3, ืื ืืชืงืืจื ืฉื ืืชืืืื ืืืฉื ืืืืืืื ืืืืื.
ืืื ืืงืืืื ืฉืื ืื ืืืขืื ืืื ืื-9.4 ืื ืขืืืื ืืช ืืืืจืืข ืืื ืืฆืืจื ืืืื ืืืื. ืื-9.4 ืืืคืืข ืคืจืืืจ ื-postgresql.conf ืฉืื ืืชื ืืืื ืืืคืฉืจ ืื ืกืืช, ืืืคืขืื ืื ืืืืืช.
ื ืกื ืืื ืืืคืฉืจืืช ืืืืืื ืืืืชืจ. ืืืฉืจ PostgreSQL ืืชืืื, ืืืฉืจ ืืื ืืงืฆื ืืืืจืื ืืฉืืชืฃ, ืืื ืื ืกื ืืชืคืืก ืืช ืืืืืจืื ืืื ืืืขืืืืื ืืขื ืงืืื. ืืื ืื ืื ืขืืื, ืื ืื ืืืืจ ืืืืืจื ืืจืืืื. ืืื ืืฉ ืื FreeBSD ืื Solaris, ืื ืืชื ืืืื ืื ืกืืช, ืื ืชืืื ืืืื.
ืื ืืื ืคืืขื, ืื ืืื ืคืฉืื ืื ืืชืืื ืื ืืื ืื ืืืื ืืื ืืืืืจ ืืชืื ืืืคืื ืืขื ืงืืื. ืืื ืื ืืืจ ืขื ืื ืืื ืืืชืจ ื ืืื. ืืื ืื ื ืืกืืช, ืืืืง ืฉืืืืช ืืฉ ืื ืืช ืื ืฉืืชื ืฆืจืื ืืืืืฉ, ืื ืืฉ ืืจืื ืืงืื ืืืขืืืืช. ื ืืื ืืขืืฉืื ืคืื ืงืฆืืื ืืืืช ืื ืคืืขืืช ืจืง ืขื ืืื ืืงืก.
ืขืื ืืขืจื ืงืื ื ืืคื ื ืฉื ืืฉืื ืืืื. ืืคื ืขื ืง ืฉืงืืคืื ืืื ื ืขืืกืงืื ืขืืืื ื-PostgreSQL. ืืื ืื ืืืื ืืืฉืชืืฉ ืืื ืืจืืื. ืืขื ืืคื ืขื ืง ืฉืงืืคืื ืืขืืืก ืขืืืื ืฉืืื, ืืืฉืจ ืืฉ ืฆืืจื ืืคืืกืช ืืืืจืื ืืฉืืชืฃ ืืืืื, ืืืชืจืื ืืช ืืืืขืื ืจืง ืขื ื ืคืืื ืืืืืื ืืืื. ืื ืืฉ ืื ืืจื-ืืืื ืฉื ืืืืจืื ืื ืื ืขืฉืื ืืืื ืืืื ืืืืื. ืื ืื ืื ื ืืืืจืื ืขื ืืืฉืืืื ืืืืืืืืื ืืืชืจ, ืืืฉืจ ืืฉ ืื ืืืืจืื ืฉื 32, 64, 128, 256 ื'ืืื-ืืืื ืืืืฉื ืฉืื, ืื ืืืคืื ืืขื ืงืืื ืืจืืืืื ืื ืืกืืจ, ืืื ืื ื ืคืฉืื ืืฉืืืชืื ืืช ืืฉืงืืฃ.
ืืืืืจ ืืืืจืื ืืืืืจืื ืื ืงืฉืืจ ืืฉืืจืืช ืืคืจื, ืื ืืืืช ืืืื ืืืจืืก ืืช ืืืืื ืฉืื. ืื ืืชืคืืงื ืชืืฉืคืข ืืืื ืืืขืืืื ืฉืืฉืจืช ืืืืืฃ ืื ืืืื.
ืืื ืืืื ืืืื ืื ื ืขืื ืืืื ืืจืืื. ืืืืขืื ืืขืืงืจืืช ืืื ืฉืืจืขืื ืื ืืืืจื ืืื ืืชื ืืืื ืืขื ืฉืื ื ืืืจืขืื ื ืืื ืืงืก ืืฉื ืื ืืืชืจ. ืืืืืจ ืืื ืื ืื ื ืขืื ืืืจืื ืขืืื, ืื ืืฉืื ืื ื ืืืืจืื ืขื ืืืืืฉืื ืขืืืื ืขื ืืืืคื, ืื ื ืืืจ ืืืืขืชื ืืืจื ืขืช ืฉื ืืจืืฆื OOM. ืื-OOM-killer, ืฉืื ืืืืข ืืืื ืืืคืื ืืช PostgreSQL, ืืื ืื ื ืขืื. ืืืื ืืืืขื ืขื ืื, ืืืืืจ ืขื ืืืฉืชืืฉ ืืืืจืื.
ืื ืงืืจื? ืืฉ ืื ืืืืช ืืืืื ืฉื ืืืืจืื RAM ืฉื, ืืื ืขืืื ืืื. ืืื ืืกืืื ืืืฉืื ืืฉืจืช ื ืชืงืข ืืืืืคื ืืืื ืืืื ืื. ื ืจืื ืฉืืฉ ืืจืื ืืืืจืื, ืืื ืื ืงืืจื.
ืืขืืจ, ืืืืฆื ื ืืืืืืจ ืืช vm.swappiness ืืืคืก, ืืืืืจ ืืืฉืืืช ืืช ืืืืืคื. ืืขืืจ, ื ืจืื ืืื ืฉ-32 ื'ืืื-ืืืื ืฉื ืืืืจืื RAM ืืืืืจืื ืืฉืืชืคืื ืชืืืืื ืืื ืืืืช ืขืฆืืื. ืืืืจื ืืขืืงืจืืช ืฉื ืืืืืคื ืืื ืฉืืืื ืืงืื ืืืจืืง ืืช ืืงืจืื ืื ื ืืคืื. ืืื ืืืจ ืื ืืชืืฉื ืืืืืื. ืืื ืื ืืชื ืืืื ืืขืฉืืช ืขื ืืงืจืื ืืื? ืื ืืฉืืื ืฉืื ืื ืืืื ืืจืืจ ืืืืข ืืฉ ืฆืืจื ืืืืืคื, ืืืืืื ืืืืื ืืื.
ืืื ืืืืจืกืืืช ืืืืจื ืืืช ืืืชืจ, ืืืืืจ, ืฉืืืฉืืืช ืฉื ืืงืจื ื, ืืืชื ืืืืช ืืฉืชื ืชื. ืืื ืชืืืืจ ืืช ืืืืืคื ืืืคืก, ืืืืืจ ืชืืื ืืืชื, ืื ืืืืงืื ืื ืืืืืืจ, ืื ืื ื ืฉืืจ ืงืฆืช ืืืืจืื RAM, ืจืืฆื OOM ืืืืข ืืืื ืืื ืืืจืื ืืช ืืฆืจืื ืื ืืืื ืื ืกืืืืื ืืืืชืจ. ืื ืืื ืืฉืงืื ืฉืขื ืขืืืก ืืื ืขืื ื ืฉืืจ ืื ื ืงืฆืช ืื ืงืคืืฅ ืืืืฆื, ืืืืืจ, ืื ืืืกืืจ ืืช ืชืืืื ืืืขืจืืช, ืืื ืืืกืืจ ืืฉืื ืคืืืช ืืฉืื. ืืื ืคืืืช ืืฉืื ืื ืืืื ืืฆืจืื ืืืื ืื ืกืืื ืฉื ืืืืจืื ืืฉืืชืฃ, ืืืืืจ ืื ืื ืืืืืจ. ืืืืจื ืื ืืืื ืืื ืื ืืืกืืก ืื ืฆืจืื ืืืืืช ืืฉืืืืจ.
ืืื, ืืขืช ืืจืืจืช ืืืืื, ืขื ืืื ืฉืื ื ืืืืจ, ืจืื ืืืคืฆืืช ืื ืืืคืฉืื ืืกืืืืืช 6, ืืืืืจ ืืืืื ืฉืื ืืืื ืืืชืืื ืืืฉืชืืฉ ื-swap ืืืชืื ืืืืืช ืืืืืจืื ืฉื ืืชืจ. ืืขืช ืื ื ืืืืืฆืื ืืืืืืจ vm.swappiness = 1, ืื ืื ืืืขื ืืืื ืืช ืื, ืืื ืื ื ืืชื ืืช ืืืชื ืืคืงืืื ืืื ืขื OOM-killer ืฉืืืืข ืืืืคื ืืืชื ืฆืคืื ืืืจื ืืช ืื ืืขื ืืื.
ืื ืืืื? ืืฉืืืืจืื ืขื ืืืฆืืขืื ืฉื ืืกืื ื ืชืื ืื ืืืชืงืืืื ืืืืจืื ืืขืืจ ืืืกืงืื, ืืืื ืืชืืืืื ืืชืคืืก ืืช ืืจืืฉ. ืื ืืืืช ืฉืืืืกืง ืืืื ืืืืืืจืื ืืืืจ ืืืืจืช ืืืืื ืืืืืืช. ืืืืื ืืืืขืื ืฉืืืกืืก ืื ืชืื ืื ืืืื ืืขืืืช ืืืืฆืืขื ืืืืกืง.
ืืขืืืช ืืืืฆืืขืื ืืขืืงืจืืช ืฉื PostgreSQL ืืงืฉืืจื ืืขืืืืช ื ืงืืืืช ืืืงืืจืช ืืื ื ืืชืจืืฉืช ืืืืืื ืฉืืืืกืง ืืืื. ืกืืืจ ืืื ืื ืฉืื ื ืืืข ืืืขืืืื ืฉืจืืื ืืคืก ืฉื ืืืืืจืื ืืืืืกืง ืืื ื ืืืืื ืื. ืขื ืืืช, ืืืชืื ืฉืื ืื ืืืื ืืืืื ืื ืืืงืืืืช ืฉืื ืื. PostgreSQL ืืื ื ืืืืืจ, ืืขืจืืช ืืืคืขืื ืืื ื ืืืืืจืช, ืืืืืจื ืืื ื ืืืืืจืช ืืืืืืจื ืฉืืืื. ืืืืขืื ืืื ืื ืงืืจืืช ืจืง ืื ืืื ืงืืจื ืืื ืฉืฆืจืื, ืืืืืจ ืื ืฉืืื ืขืืืก, ืื ืฉืืืืืจืืช ืืืืืืจื ื ืืืจืืช ืืืื.
ืื ืื ืืืื ืื ื ืจืื? ืืืจื ืืื ืื ืฉืื ืฉืขืืืืื ืขื PostgreSQL ื ืื ืกื ืืขื ืืื ืืื ืืืชืจ ืืคืขื ืืืช. ืื ื ืืกืืืจ. ืืคื ืฉืืืจืชื, PostgreSQL ืืืืฆืจ ืืขืช ืืขืช ื ืงืืืืช ืืืงืืจืช ืืื ืืืจืืง ืืคืื ืืืืืืืื ืืืืืจืื ืืืฉืืชืฃ ืืืืกืง. ืื ืืฉ ืื ื ืืืืช ืืืืื ืฉื ืืืืจืื ืืฉืืชืฃ, ืื ื ืงืืืช ืืืืืงื ืืชืืืื ืืืฉืคืืข ืืืืคื ืืื ืื ืกืืื ืขื ืืืืกืง, ืืืืืื ืฉืืื ืืฉืืื ืืช ืืืคืื ืืืื ืขื fsync. ืืื ืืืืข ืืืืืจ ืืงืจื ื ืื ืืชื ืืืืกืงืื ืืืืฆืขืืช fsync. ืืื ื ืคื ืืขืกืง ืืื ืืืื, ืื ืื ืื ื ืืืืืื ืืจืืืช ืืคืงื ืื ื ืขืื, ืืืืืจ ื ืืฆืื ืืืื ืืืื ืฉื ืืืกืงืื.
ืื ื ืืฉ ืื ืฉืชื ืชืืื ืืช. ืขืืฉืื ืืกืืืจ ืื ืื. ืืื ืฉื ื ืืจืคืื ืืงืืจืืฆืื ืืืื. ืืืจืฃ ืืจืืฉืื ืืื ื ืืฆืื ืืืกืง. ืืื ืื ืืืืข ืืืืขื 90% ืื ืงืืืช ืืื ืื. ืื ืืฉ ืื ืืฉื ืืืกื ืื ืชืื ืื ืขื ืืืกืงืื ืคืืืืื, ืขื ื ืืฆืื ืืงืจ RAID ื-90%, ืื ืืื ืืืฉืืช ืจืขืืช. ืื ืืืืจ ืฉืงืฆืช ืืืชืจ ืืื ืืืืข ื-100 ืื-I/O ืืืคืกืง.
ืื ืืฉ ืื ืืขืจื ืืืกืงืื, ืื ืื ืกืืคืืจ ืงืฆืช ืืืจ. ืื ืชืืื ืืื ืื ืืืืืจ, ืืืื ืกืื ืฉื ืืขืจื ืื ืืื'.
ืืืืงืืื, ืืืืืจ ืืื ืืจืฃ ืืืชืฆืืื ืืคื ืืืืช ืฉื postgres, ืฉืืกืคืจ ืืืฆื ืืชืจืืฉ ืืืืกืื. ืืืฆืืข ืืืจืืง ืืื ืืจืื ืืื ืืืืจืื, ืืืคืื ืืืืืืืืื ืืืื, ืืืืขื ืืืืชื ืจืืข ืืืืกืื ืืื ืืฆืืจื ืกื ืืจืื. ืืื ืืืืจ ืืขืืงืจื ืฉืืชื ืฆืจืื ืืืขืช ืืื. ืื ืื ื ืจืืืื ืฉืืฉ ืื ื ืคื ืืจืื ืืคืื ืืืืืืฉืื ืฉืื ื ืื ืกื ื ืืืื, ืืืืืจ ืืชืื ื ืืืชืื ื, ืืื ืืจืืจ ืฉืืขืจืืช ืืืืกืงืื ืืืื ืขืืืกื. ืืืืืกืื ืฉืื ื ืืฉ ืืฉืคืขื ืืืื ืืืงื ืขื ืืืืกืง. ืืืืคื ืืืืืืื, ืืืฆื ืฆืจืื ืืืืจืืืช ืืืชืจ ืืื, ืืืืืจ ืืื ืื ื ืคืืืช ืืงืืืืช ืืื. ืืื ืื ื ืืืืืื ืืชืงื ืืช ืื ืขื ืืืืืจืืช ืื ืฉืื ืืืฉืื ืืืืืช ืืื. ืืืืืจ, ืืืืืืืจ ืงืื, ืืื ืืืคืฉืื ืื ืื ื ืืืชืืื ืคื ืืฉืื.
ืื ืฆืจืื ืืขืฉืืช ืืื ืืืชืืืจ ืขื ืืขืื ืื? ืื ืขืฆืจืช ืืช IO ืืชืืช ืืืกื ืื ืชืื ืื, ืื ืืืืจ ืฉืื ืืืฉืชืืฉืื ืฉืืื ืืืื ืืช ืืืงืฉืืช ืฉืืื ืืืชืื ื.
ืื ืืชื ืืกืชืื ืื ืงืืืช ืืืื ืฉื ืืื ืืงืก, ืื ืืงืืชื ืืืืจื ืืืื, ืืืืจืชื ืืืชื ืืฆืืจื ื ืืื ื, ืืืืจืชื ืืช PostgreSQL ืืฆืืจื ืจืืืื ืื ืฉืืื ืืืคืืช ืืช ืืืืกืืืื ืืืื ืืชืืืจืืช ื ืืืื ืืืชืจ, ืืคืืจืช ืืืชื ืืืืจื ืืื ืื ืืื, ืื ืืชื ื ืื ืกืื ืืคืจืืืจื ืืจืืจืช ืืืืื ืฉื ืืืืื. ืขืืืจ ืจืื ืืืคืฆืืช ืฉื ืืื ืืงืก, ืื ืืชืืื ื: vm.dirty_ratio=20, vm.dirty_background_ratio=10.
ืื ืื ืืืืจ? ืฉื ืฉืืืคื ืืื ืืืคืืข ืืืจืขืื 2.6. Pdglush, ืชืืื ืื ืืฉืชืืฉ ืืืืื, ืฉืขืืกืง ืืืืืื ืจืงืข ืฉื ืขืืืืื ืืืืืืืื ืืืืืจ ืืงืจื ื ืืืฉืืื ืืืฉืจ ืืฉ ืฆืืจื ืืืฉืืื ืืคืื ืืืืืืืื ืื ืืฉื ื ืื, ืืืฉืจ ืืืืื ืจืงืข ืื ืขืืืจ.
ืืชื ืืืืข ืืจืงืข? ืืืฉืจ 10% ืืกื ื-RAM ืืืืื ืืฉืจืช ืชืคืืกืื ืขื ืืื ืืคืื ืืืืืืืื ืืืืืจ ืืืืื, ืคืื ืงืฆืืืช ืืชืืื ืืืืืืช ื ืงืจืืช ืืจืงืข. ืืื ืื ืจืงืข? ืืคืจืืืจ, ืืื ืืืงื ืืืฉืืื ืืื ืขืืืืื ืืืืืง. ืื ื ืื ืฉืืื ืืืืง N ืขืืืืื. ืืืืื ืื ืืืืจ ืืื ื ืจืื. ืืื ืืื ืืื ืฉืื ืืืขืชืืงื ืขืื ืืื ืืคืื.
ืืื ืกืืคืืจ ืคืฉืื ืืืืชืจ. ืืืขืื ืืื ืืื ืืื ืืืจืืืช ืฉืืืื, ืืฉืืื ื ืฉืคืืช ืืฆืื ืืจ ืืื, ืืื ืืืจืืช ืืฆืื ืืจ ืืืจ. ืืืืกืื ืฉืื ื ืืืืข ืืื ืืื ืฉืื ืืื ืืคืื ืืืืืืืื ืืืฉืืื, ืื ืืืืจืื ืื ืืขื ืืื ืืืคืชืจ ืืฆืืจื ืืกืืืจืช ืื-kernel buffer pgflush.
ืื ืืืคืื ืืืืืืืืื ืืืื ืืืฉืืืื ืืืฆืืืจ, ืื ืืฆืืืจืื ืขื 20%, ืืืืืจ ืืื ืืขืืืคืืช ืฉื ืืขืจืืช ืืืคืขืื ืืื ืืืืืง ืืช ืื ืืขื ืืื ืืืืกืง, ืื ืืืื ืืืคืกืง ืืืื ืืืื ืจืข ืื ื. ืื ืื ื ื ืืื ืืช ืื ืชืื ืื ืืืื, ืืืฉื.
ืื ืืืจืืง? ืืืืืื ืืื ืฉืืคืจืืืจืื ืืืื ืืขืืื ืืืืืจื ื ืื 20 ื-10% ืืกื ื-RAM ืฉื ืืฆื ืขื ืืืืื ื, ืื ืืืืื ืืคืืฆืชืืื ืืืืื ืช ืืชืคืืงื ืฉื ืื ืืขืจืืช ืืืกืงืื ืฉืืฉ ืื.
ืชืืจ ืืขืฆืื ืฉืืฉ ืื 128 GB ืฉื ืืืืจืื RAM. 12,8 GB ืืืืข ืืืขืจืืช ืืืืกืงืื ืฉืื. ืืื ืืฉื ื ืืืื ืืืืื ืืฉ ืื ืฉื, ืื ืืฉื ื ืืืื ืืขืจื ืืฉ ืื ืฉื, ืื ืื ืืืืืงื ืืขืื ืื ืื ืืจืื ืืื.
ืืื, ืื ื ืืืืืฆืื ืื ืืืชืืื ืืื ืืช ืืืกืคืจืื ืืืื ืืืชืืกืก ืขื ืืืืืืืช ืฉื ืืงืจ ื-RAID ืฉืื. ืืื ืืืืฆืชื ืืื ืขื ืืงืจ ืฉืืฉ ืื 512 ืืื-ืืืื ืฉื ืืืืื.
ืืื ื ืืฉื ืคืฉืื ืืืื. ืืชื ืืืื ืืฉืื ืืช vm.dirty_background ืืืชืื. ืืืืืืจืืช ืืืื ืืืืืืช ืืช ืืฉืชืืื ืืงืืืืืช. ืื ืืืืก ืืื ืืืจืืจืช ืืืื, ืื ืฉืืื ืขื ืืชืื ืืืคืขืืื, ืืื ืืื ืขื ืืชืื ืืขืืื. ืืื ืืืืืื ืฉืื ื ืืืขืฅ DBA ืืขืืื ืขื ืืงืืืืช ืฉืื ืื, ืื ื ืื ืกื ืืฆืืืจ ืงืฉืืืช ืืืื, ืื ื-bytes, ืื ื-bytes. ืืฃ ืืื ืื ื ืชื ืฉืื ืขืจืืื ืฉืื ืื ืืื ืื ืืืกืืฃ ืขืื ืืืืจืื ืืฉืจืช, ืืืชืื ืืืชื ืืืืฉ, ืืื ืชืื ืืืฉืืจ ืืื. ืคืฉืื ืืฉื ืืช ืืืกืคืจืื ืืืื ืืื ืฉืืื ืืฉืชืื ืฉื ืขื ืืืจืืืช.
ืื ืงืืจื ืื ืืชื ืื ืืชืืื? ืืชืืชื ืฉืื ืฉืืืคื ื ืขืฆืจืช ืืืขืฉื, ืืื ืืืขืฉื ืื ืืืืช ืืืืืจ. ืืืขืจืืช ืืืคืขืื ืืฉ ืืขืื ืืืืื - ืืฉ ืื ืืจืื ืืคืื ืืืืืืืื, ืื ืฉื-IO ืฉืืืงืืืืช ืฉืืื ืืืืฆืจืื ืืืขืฉื ื ืขืฆืจ, ืืืืืจ ืืืคืืืงืฆืื ืืื ืืฉืืื ืฉืืืืชืช sql ืืืกื ืื ืชืื ืื, ืืื ืืืชืื ื. ืื ืงืื/ืคืื ืืืื ืืื ืืขืืืคืืช ืื ืืืื ืืืืชืจ, ืืืืืื ืฉืืกื ืื ืชืื ืื ืชืคืืก ืขื ืืื ืืืกืื. ืืืชื ืืื ืชืกืืื ืื ืืืืจื ืื ืืจืืจ. ืืืืฉืจ ืืฉืืช ืฉืืืคื ืื ืจืงืข, ืื ืืืืจ ืฉืื ื-IO ืฉืื ืชืคืืก ืขื ืืื ืื. ืืขื ืฉืื ืืืืืจ, ืื ืชืขืฉื ืืืื.
ืืฉ ืืื ืขืื ืฉืชื ื ืงืืืืช ืืฉืืืืช ืฉืื ืืขืืจ ืืชืืื ืืืื ืืื. ืืืืจืืช ืืื ืฆืจืืืืช ืืืชืืื ืืืืืจืืช ื-postgresql.conf, ืืืืืจ ืืืืจืืช ื ืงืืืืช ืืืงืืจืช. ืืืขืจืืช ืืืืกืงืื ืฉืื ืืืืืช ืืืืืช ืืืืืจืช ืืจืืื. ืื ืืฉ ืื ืืืืื ื-RAID, ืื ืืืืืช ืืืืืช ืื ืกืืืื. ืื ืฉืื ืงืื ืื RAID ืขื ืืืืื ืืื ืืื ืกืืืื. ืื ืืฉ ืื SSDs ื-RAID, ืื ืื ืืืืืื ืืืืืช ืฉืจืชืื, ืืืืืื ืืืืืช ืฉื ืงืืืื. ืืืื ืจืฉืืืช ืืืืงื ืืคืืจืืช. ืงืืฉืืจ ืื ืืืื ืืช ืืืื ืฉืื ืืืฆื ืืืืืืจ ืืืกืง ืืืฆืืขืื ื-PostgreSQL. ืืฉ ืฉื ืืช ืื ืืจืฉืืืืช ืืืื.
ืื ืขืื ืืืื ืืืงืฉืืช ืืืื ืขื ืืืืื? ืืื ืฉื ื ืคืจืืืจืื. ืื ืืืฉืื ืืืกืืช. ืืืจืืจืช ืืืื, ืื ืืืืืื ืืืืืื ืืืืฉืืืื ืฉืื ืื. ืืื ืืืืืื ืืขืฉืืช ืืช ืืืืื ืงืฉืื ืืืืชื ืืืื ืื ืื ืืืคืขืืื ืืฆืืจื ืื ื ืืื ื.
ืืฉ ืฉื ื ืืืจืื ืืืฉืื ืืืกืืช. ืื ืืืจ ืืืคืืขื ืืืืืืช ืืฉืืืฉืืืช. ืื ืืื sched_migration_cost ืื ื ื-ืฉื ืืืช ื-sched_autogroup_enabled, ืฉืืื ืืื ืืืจืืจืช ืืืื.
ืืืื ืื ืืืจืกืื ืื ืืช ืืืืื? ืื ืื sched_migration_cost? ื-Linux, ืืืชืืื ืืืื ืืืขืืืจ ืชืืืื ืืืขืื ืืื ืืืฉื ืื. ืืขืืืจ PostgreSQL, ืฉืืืฆืข ืฉืืืืชืืช, ืืืืืจื ืืืขืื ืืืจ ืืื ื ืืจืืจื ืืืืืืื. ืื ืงืืืช ืืื ืฉื ืืขืจืืช ืืืคืขืื, ืืืฉืจ ืืชื ืืืืืฃ ืืืื ืืช ืืื openoffice ืืืกืืฃ, ืื ืขืฉืื ืืืืืช ืืื, ืืื ืขืืืจ ืืกื ื ืชืื ืื ืื ืจืข ืืืื. ืืื, ืืืื ืืืช ืกืืืจื ืืื ืืืืืืจ ืืช migration_cost ืืขืจื ืืืื ืืืฉืื, โโืืคืืืช ืืื ืืืคื ื ื ื-ืฉื ืืืช.
ืื ืื ืืืืจ ืขืืืจ ืืืชืืื? ืื ืืืืฉื ืฉืืืืื ืืื ืื ืืชืืืื ืขืืืื ืื. ืืืืืจ, ืื ืืฉ ืืื ืขืกืงื ืืจืืืช ืืืื ืฉืขืืฉื ืืฉืื ืืืจ ืืจืื ืืื, ืืืชืืื ืืืื ืืืช. ืืื ืื ืื ืฉืขื ืฉืคืกืง ืืืื ืืื ืืืืืฃ, ืืื ืฆืืจื ืืืขืืืจ ืืช ืืชืืืื ืืื ืืฉืื ืืงืื. ืื ืืืืชื ืืื ืืชืืืื ืขืืฉื ืืฉืื, ืื ืืื ืื ืืืขืืจ ืืฉืื ืืงืื, ืืื ืืขืืื ืืฉืงื ืขื ืืืขืื ืฉืืืงืฆื ืื. ืืืชืืฆืื ืืขืืื.
ืื ืงืืื ืืฉื ืืื ืืื ืงืืืฆื ืืืืืืืืช. ืืฉ ืจืขืืื ืืื ืืขืืืกื ืขืืืื ืกืคืฆืืคืืื ืฉืืื ื ืงืฉืืจืื ืืืกืืกื ื ืชืื ืื ืืืืจื ืืื - ืื ืืงืืฅ ืชืืืืืื ืืคื ืืืจืืื ื ืืืืืจืืืืื ืฉืืื ื ืื ืืืฉืงืื. ืื ื ืื ืืืฉืืืืช ืืกืืืืืช. ืืคืืขื, PostgreSQL ืืื ืืขืจืืช ืืจืืืช ืชืืืืืื ืขื ืคืืจืง ืฉืคืืขื ืืืกืืฃ ืืืื. ืืฉ ืื ืืืชื ืื ืขืืืื, ืืืกืื, ืืื ืืงืฉืืช ืืืงืื ืฉืื ืืงืืืฆื ืืืชืืื ืืื, ืืื ืืขืื. ืืืืื ืฉื ืืืืืืช ืขื ืฉืืืื ืืืคืฉื, ืืื ืืืคืจืืข ืื ืืื ืืืืขืกืืงื ืขืื. ืื ืกืืคืืจ ืืืืชืจ ืืืืืืื ืืืงืจื ืฉื ืขืืืก ืืื ืืืื ืฆืจืื ืืืืืช ืืืชื.
ืขืืืชื ืืืืกืื ืืกืืืกืงื ืขืฉื ืืืืงืืช ืขื pgbench ืคืฉืื, ืฉื ืืื ืืขืื ืืช ืขืืืช ืืืืืจื ืืกืืจ ืืืื ืืืืื ืืช ื-autogroup. ืืืืื ืืืืืจื ืืจืืขื ืืื ืืืขื 10%. ืืฉ ืืืื ืืจืฉืืืช ืืชืคืืฆื ืฉื postgres ืฉืื ืื ืฉืื ื ืืชื ืื ืชืืฆืืืช ืฉื ืฉืื ืืืื ืืืืื ืืืืืจืืช ืืฉืืืืชื ืืฉืคืืข 50%. ืืฉ ืื ืืจืื ืกืืคืืจืื ืืืื.
ืืืืกืืฃ, ืขื ืืืื ืืืช ืืืกืืื ืืืฉืื. ืืืืจ ืืืื ืืื ืฉืืขืช ื ืืชื ืืืฉืชืืฉ ืืืื ืืงืก ืืืืฉื ื ืืื. ืืืื ืืืืืื ืื ืฆื ืืช ืืกืืืื ืืืื. ืืื ืคืชืืื ืืชืืจืจ ืฉืื ืืืื ืืงืจืืช ืื ืืฉืจืช.
ืืชืจื ืืื, ืื ืืชื ืฉืืืจ ืฉืจืชืื ืืืืจื โโืืืฉืื, โโืื ืืืืจืืื ื"ืืืืื" ืื ืืืคืช ืฉืืฉ ืื ืืืฆืืขืื ืืืืื ืืืชืจ. ืืืฉืืื ืฉืืื ืืื ืืืืืื ืฉืืืจืื ืฉืืื ืื ืืฆื ืืฆืืจื ืืขืืื ืืื ืืืคืฉืจ. ืืื, ืืืจืืจืช ืืืื ืื ืืืืืื ืืืคืขืื ืืฆื ืืืกืืื ืืืฉืื ืฉื ืืืฉื ื ืืื ืืืขืจืืช ืืืคืขืื.
ืื ืืชื ืืฉืชืืฉ ืืืืืจ ืืื ืืฉืจืช ืขื ืืกื ื ืชืื ืื ืืขืืืก ืจื, ืืืืืจื ืฉืื ืืื acpi_cpufreq + permormance. ืื ืขื ืืจืืฉื ืืืื ืืขืืืช.
Intel_pstate ืืื ืืจืืืืจ ืืขื ืฉืื ื. ืืขืืฉืื ื ืืชื ืช ืขืืืคืืช ืืื, ืืคื ืฉืืื ืืืืืจ ืืืชืจ ืืขืืื ืืื ืืืชืจ.
ืืืืชืื ืืื, ืืืืฉื ืืื ืจืง ืืืฆืืขืื. ืืคื ืืจืืฉื, ืืืกืืื ืืืฉืื ืืื ืืฉืืจ ืื ืงืฉืืจืื ืืืืื.
ืืชืืฆืืืช ืฉื ื ืืชืื ืืกืืจ PostgreSQL ืขืฉืืืืช ืืืืืช ืฉืื ืืช ืืืกืคืจ ืกืืจื ืืืื ืื ืชืืคืฉืจ ืืืกืืื ืืืฉืื, ืืืืืื ืฉืืืขืฉื ื-CPU ืชืืช ืืกื ืื ืชืื ืื ืฉืื ืืคืขื ืืฆืืจื ืืืชื ืฆืคืืื ืืืืืืื.
ืคืจืืืื ืืื ืขืฉืืืื ืืืืืื ืืืจืืจืช ืืืื. ืืืืง ืืืื ืื ืื ืืคืขืืื ืืืชื ืืืจืืจืช ืืืื. ืื ืืืืื ืืืืืช ืืขืื ืืืฉ ืืืืื.
ืืืืกืืฃ, ืจืฆืืชื ืืืืื ืชืืื ืืืืจ'ื ืืฆืืืช ื-DBA ืฉื PosgreSQL-Consulting ืฉืื ื, ืืืืืจ ืืงืก ืืืืืง ืืืืืกืื ืืกืืืกืงื, ืฉืืชืงืืืื ืืขื ืืื ืืื ืืื ืืื. ืืื ืื ื ืื ืกืื ืืขืฉืืช ืืช ืืื ืืื ืฉืื ืื ื ืืืืืื ืขืืืจ ืืืงืืืืช ืฉืื ื ืืื ืฉืืื ืืขืืื ืขืืืจื. ืื ืืื ืขื ืืืจืืืช ืืืืืืช ืชืขืืคื. ืืื ืืื ืืชืื ืืื. ืื ืืื ืืืืืืืื ืืืื ื ืืฆื ืืชืืืื ืฉื ืืขืื ืืืฉืื. ืื ื ืฉืื ืืืืืง ืืืชื ืืืชื.
ืฉืืืืช:
ืชืืื! ืื, ืืืฉื, ืืืจื ืจืืฆื ืืืกืื ืืกืฃ ืืืืฆืื ืืช ืืืืืืงื ืฉื ืืกื ืื ืชืื ืื ืืืืคืืืงืฆืื ืขื ืฉืจืช ืืื, ืื ืื ืืืืจื ืืืืืช ืืขืงืืืช ืืืจื ื ืืืืคื ืชื ืฉื ืืจืืืืงืืืจืืช ืืืงืจื-ืฉืืจืืชืื, ืฉืืื ืคืืขืืช PostgreSQL ืืงืื ืืืื ืจ. ืื ืืืจืืง? Sysctl ืืฉืคืืข ืขื ืื ืืืืื ืืจืืื ืืขืืื. ืื ืฉืืขืชื ืขื sysctls ืฉืืืืจืืืืื ืืืืฉืื ืื ืฉืื ืขืืืืื ืื ืคืจื ืขื ืงืื ืืืื ืจ. ืืฉ ืจืง cgroup ืืืฉ ืจืง ืืืง ืืืฉืืืื ืฉื. ืืื ืืคืฉืจ ืืืืืช ืขื ืื? ืื ืื ืืชื ืจืืฆื ืืืฆืืขืื, ืื ืืจืฅ ืืช PostgreSQL ืขื ืฉืจืช ืืืืจื ื ืคืจื ืืชืืืื ืืืชื?
ืขื ืื ื ืขื ืืฉืืื ืฉืื ืืขืจื ืืฉืืืฉ ืืจืืื. ืื ืื ืื ื ืื ืืืืจืื ืขื ืฉืจืช ืืืืจื ืฉืืคืฉืจ ืืืืื ืืื' ืื ืชืืจืืข, ืืื ืืขืืื ืืกืืจ ืืื ืืืืืจืืช ืืืื. ืื ืืฉ ืื ืขืืืก ืืื ืฉืืชื ืฆืจืื ืืขืฉืืช ืืช ืืืืืจืืช ืืืื, ืื ืชืืืข ืืฉืจืช ืืืจืื ืืืงืื ืืืชืจ ืืืฉืจ ืืืืืจืืช ืืืื.
ืื ืืืขืื? ืื ืืืืืจ ืืืืื ื ืืืจืืืืืืช, ืกืืืจ ืืื ืื ืฉืืืื ืื ืืขืืืช ืจืืืช, ืืืฉื, ืขื ืืขืืืื ืฉืืจืื ืืืืื ืืช ืืืืจืืืืืืืช ืืฉืืื ืฉื ืืืืกืง ืื ืื ืขืงืื. ืื ืื ืชืคืืงืช ืืืืกืง ืืืื, ืื ืขืกืงืช I/O ื ืืฉืื ืืืช ืฉืื ืืฉืคืืขื ืืืื ืขื ืืชืคืืงื ืืืืืฆืขืช ืฉืงืจื ืืืื ืืืืกืื ืื ืืืื ืืืชืืื ื-WAL, ืื ืืกืืก ืื ืชืื ืื ืืกืืื ืืื ืืืื. ืืืชื ืชืฉืื ืื ืืื ืืคื ื ืฉืชืชืงื ืืืขืืืช ืืืื.
ืื ืืฉ ืื NGINX ืืืืชื ืฉืจืช, ืชืืื ืื ืื ืืืชื ืืขืื. ืืื ืืืืื ืขื ืืืืจืื ืืฉืืชืฃ. ืืื ืชืืืขื ืืืขืืืช ืืืชืืืจืืช ืืื.
ืืื ืืฆื ืฉื ื, ืืืง ืืืคืจืืืจืื ืืืื ืขืืืื ืืืื ืจืืืื ืืืื ืขืืืจื. ืืืืืื, ืืืืจ dirty_ratio ืขื sysctl ืื ืฉืื ืื ืืืื ืื ืื ืืืืจืฃ - ืืื ืืงืจื, ืื ืืขืืืจ. ืื ืื ืืืจืช, ืชืืื ืื ืืื ืืจืืงืฆืื ืขื ืืืืกืง. ืืื ืืืื ืืคื ืืชืื ืืช ืืื ื ืืื ื. ืื ืืืจื ืืื ืืจืืจืช ืืืื ืขืืืจ ืืคืจืืืจืื ืฉืืฆืืชื. ืืืื ืืงืจื ืขืืืฃ ืืฉื ืืช ืืืชื.
ืืื ืขืฉืืืืช ืืืืืช ืืขืืืช ืขื NUMA. VmWare, ืืืฉื, ืขืืื ืืืื ืขื NUMA ืขื ืืืืืจืืช ืืืคืืืืช ืืืืืง. ืืืื ืืฉ ืืืืืจ - ืฉืจืช ืืจืื ืื ืื ืืจืื.
ืืฉ ืื ืฉืืื ืืงืฉืืจื ืืืืืื AWS. ืืฉ ืืื ืชืืื ืืช ืืืืืจืืช ืืจืืฉ. ืืื ืืื ื ืงืจื Amazon RDS. ืืื ืืฉ ืืืืจืืช ืืืชืืืืช ืืืฉืืช ืืืขืจืืช ืืืคืขืื ืฉืืื?
ืืฉ ืฉื ืืืืจืืช, ืืื ืื ืืืืจืืช ืฉืื ืืช. ืืื ืื ื ืืืืืจืื ืืช ืืขืจืืช ืืืคืขืื ืืืืื ืช ืืืืคื ืฉืื ืืกื ืื ืชืื ืื ืืฉืชืืฉ ืืืืจ ืืื. ืืืฉ ืคืจืืืจืื ืฉืงืืืขืื ืืื ืขืืื ื ืืืืช ืขืืฉืื, ืืื ืขืืฆืื. ืืืืืจ, ืื ืื ื ืฆืจืืืื ืื ืื ืืจืื ืืฉืืืื, ืขืืฉืื ื ืืื ืืืชื. ืืืืจ ืืื, Amazon RDS ืืืืงืช ืืช ืืืฉืืืื ืืืื, ืืืืืฆืืขืื ืืืจืืื ืฉื. ืืฉ ืกืืคืืจืื ืืืืืื ืขื ืืื ืื ืฉืื ืืชืืืืื ืืืชืขืกืง ืืขื ืืื ืืื. ืืคืขืืื ืืคืืื ืื ืืืฆืืื. ืืื ืื ืื ืงืฉืืจ ืืืืืจืืช ืืขืจืืช ืืืคืขืื. ืื ืืื ืืคืจืืฅ ืืขื ื. ืื ืืืจ ืกืืคืืจ ืืืจ.
ืืืืข ืืืคื ืขื ืง ืฉืงืืคืื ืืื ืืฉืคืขื ืืืฉืืืื ื-Huge TLB?
ืื ืชืชื. ื ืืชื ืืืกืืืจ ืืืช ืืืจืืื ืจืืืช. ืืื ืืืขืฉื ืื ืคืฉืื ืื ื ืืชื ืื ืืช ืื. ืืื ืืืืกืืืจืื ืฉื PostgreSQL? ืืขืช ืืืคืขืื, ืืื ืืงืฆื ืืืง ืืืื ืฉื ืืืืจืื ืืฉืืชืฃ. ืื ืื ืฉืงืืคืื ืื ืื ืื ืืืืจื ืื ืจืืืื ืื. ืืขืืืื ืฉืื ืืืืืื ืืืชืืื ืืกืืืจื ืืื. ืืื ืืฉ ืืจืื ืืืืจืื ืืืชื ืฆืจืื ืืื ืืช ืืืืฉ ืืช ืงืืข shared_memory, ืื ืืคื ืขื ืง ืฉืงืืคืื ืืืื ืจืืืื ืืืื. ื-PostgreSQL, ืื ืคืฉืื ืืืงืฆื ืื ืชื ืขื ืง ืืืชืืื ืืืื, ืืื ืฉืื ืืืจ ืืืืื ืื ืงืืจื ืฉื. ืืชื ืืืื, ืืืืื, ืืืฉืชืืฉ ืื, ืืื ืืฉ ืกืืืื ืืงืื ืืฉืืชื ืฉื shared_memory ืืืฉืจ ืืื ืืงืฆื ืืืืฉ ืืฉืื. PostgreSQL ืื ืืืืข ืขื ืื.
ืืงืืจ: www.habr.com