ื‘-24 ื‘ืกืคื˜ืžื‘ืจ ื”ื›ืจื™ื– ืฆื•ื•ืช ื”ืคื™ืชื•ื— ืขืœ ืฉื—ืจื•ืจ ื”ืžื”ื“ื•ืจื” ื”ื‘ืื” ืฉืœ Postgresql ืžืกืคืจ 13. ื”ืžื”ื“ื•ืจื” ื”ื—ื“ืฉื” ื”ืชืžืงื“ื”, ื‘ื™ืŸ ื”ื™ืชืจ, ื‘ืฉื™ืคื•ืจ ื‘ื™ืฆื•ืขื™ื, ื–ื™ืจื•ื– ืฉื™ืจื•ืชื™ ื”ืชื—ื–ื•ืงื” ื”ืคื ื™ืžื™ื™ื ื•ืคื™ืฉื•ื˜ ื ื™ื˜ื•ืจ ืžืกื“ื™ ื”ื ืชื•ื ื™ื, ื›ืžื• ื’ื ื‘ืงืจืช ื’ื™ืฉื” ืืžื™ื ื” ื™ื•ืชืจ ืœืžืขืจื›ืช.

ื”ืขื‘ื•ื“ื” ื ืžืฉื›ื” ืขืœ ืื•ืคื˜ื™ืžื™ื–ืฆื™ื” ืฉืœ ืื™ื ื“ืงืก ื˜ื‘ืœืื•ืช ืžื‘ื—ื™ื ืช ืขื™ื‘ื•ื“ ื›ืคื™ืœื•ื™ื•ืช ื‘ื™ืŸ ื ืชื•ื ื™ื ื‘ืื™ื ื“ืงืก ื‘ืขืฆื™ ืื™ื ื“ืงืก ื‘ื™ื ืืจื™ื™ื, ืžื” ืฉืื™ืคืฉืจ ืœื ืจืง ืœื”ืื™ืฅ ืืช ื‘ื™ืฆื•ืข ื”ืฉืื™ืœืชื•ืช, ืืœื ื’ื ืœืฆืžืฆื ืืช ืฉื˜ื— ื”ื“ื™ืกืง ืฉืชื•ืคืก ื”ืื™ื ื“ืงืก.
ื‘ื ื•ืกืฃ, ื ื•ืกืฃ ืืœื’ื•ืจื™ืชื ืžื™ื•ืŸ ืื™ื ืงืจืžื ื˜ืœื™, ืฉื‘ื• ืžื™ื•ืŸ ื—ื•ื–ืจ ืฉืœ ื ืชื•ื ื™ื ืฉื›ื‘ืจ ืžืžื•ื™ื ื™ื ื‘ืฉืœื‘ื™ื ืงื•ื“ืžื™ื ืขื•ื‘ื“ ืžื”ืจ ื™ื•ืชืจ, ื•ื ื™ืชืŸ ืœื”ืื™ืฅ ืฉืื™ืœืชื•ืช ืžืกื•ื™ืžื•ืช ื‘ืืžืฆืขื•ืช ืฉื™ืžื•ืฉ ื‘ืกื˜ื˜ื™ืกื˜ื™ืงื” ืžื•ืจื—ื‘ืช ื—ื“ืฉื” (ื‘ืืžืฆืขื•ืช ืคืงื•ื“ืช CREATE STATISTICS) ื‘ืขืช ื—ื™ืฉื•ื‘ ืฉืœื‘ ื™ืขื™ืœ ื™ื•ืชืจ- ืชื•ื›ื ื™ืช ืฉืœื‘ื™ื.
ื”ื‘ื™ืฆื•ืข ืฉืœ ืฉืื™ืœืชื•ืช ืขื ืฆื‘ื™ืจืช ื ืชื•ื ื™ื ื™ืงืจื™ื ืขื‘ืจ ืื•ืคื˜ื™ืžื™ื–ืฆื™ื” ื’ื ืขืœ ื™ื“ื™ ืฉื™ืžื•ืฉ ืจื‘ ื™ื•ืชืจ ื‘-hash aggregation ื•ื”ืฉืœื›ืช ื—ืœืง ืžื”ื ืชื•ื ื™ื ื”ืžืฆื˜ื‘ืจื™ื ืœื“ื™ืกืง ืื ื”ื ืื™ื ื ืžืชืื™ืžื™ื ืœ-RAM. ื™ืฉื ื” ืขืœื™ื™ื” ืžืฉืžืขื•ืชื™ืช ื‘ืžื”ื™ืจื•ืช ื—ื™ื‘ื•ืจ ื”ืฉื•ืœื—ื ื•ืช ื”ืžืžื•ืงืžื™ื ืขืœ ืžื—ื™ืฆื•ืช ืฉื•ื ื•ืช.

ื ืขืฉืชื” ืขื‘ื•ื“ื” ื ื™ื›ืจืช ื›ื“ื™ ืœืคืฉื˜ ืืช ื”ืชื—ื–ื•ืงื” ื•ื”ื ื™ื”ื•ืœ ืฉืœ ืžืกื“ื™ ื ืชื•ื ื™ื ืฉืœ Postgresql. ื”ืžืฉื™ืžื” ื”ืžื•ื‘ื ื™ืช ืฉืœ "ืฉืื™ื‘ื”", ื›ืœื•ืžืจ ืฉื™ืžื•ืฉ ื‘ืฉื˜ื— ื“ื™ืกืง ืคื ื•ื™ ืœืื—ืจ ืžื—ื™ืงื” ืื• ืฉื›ืชื•ื‘ ืฉื•ืจื•ืช, ื™ื›ื•ืœื” ื›ืขืช ืœื”ืชื‘ืฆืข ื‘ืฉืจืฉื•ืจื™ื ืžืงื‘ื™ืœื™ื, ื•ืœืžื ื”ืœ ื™ืฉ ื›ืขืช ื”ื–ื“ืžื ื•ืช ืœืฆื™ื™ืŸ ืืช ืžืกืคืจื. ื‘ื ื•ืกืฃ ืœื›ืš, ื ื•ืกืคื• ื›ืœื™ื ื—ื“ืฉื™ื ืœื ื™ื˜ื•ืจ ื”ืคืขื™ืœื•ืช ื”ื ื•ื›ื—ื™ืช ืฉืœ ืžืกื“ ื”ื ืชื•ื ื™ื ื•ื ืžื ืขื• ืฉื’ื™ืื•ืช ื‘ืขืช ืกื ื›ืจื•ืŸ ื™ื•ืžื ื™ ืจืฉื•ืžื” ืžื•ืงื“ืžืช ื‘ื™ืŸ ื”ืžืืกื˜ืจ ื•ื”ืขื•ืชืงื™ื ื”ืขืชืงื™ื, ืžื” ืฉืขืœื•ืœ ืœื”ื•ื‘ื™ืœ ืœื”ืชื ื’ืฉื•ื™ื•ืช ื‘ืขืช ื ื™ืชื•ืง ื”ืขืชืงื™ื ืื• ืœืฉื‘ืฉ ืืช ืฉืœืžื•ืช ื”ืขื•ืชืงื™ื ื”ืžื•ืคืฆื™ื. ืžืกื“ ื”ื ืชื•ื ื™ื ืœืื—ืจ ืฉื—ื–ื•ืจื ื‘ื”ืชื‘ืกืก ืขืœ ื ืชื•ื ื™ ื™ื•ืžืŸ.

ื‘ื™ืŸ ื”ื—ื™ื“ื•ืฉื™ื ืœืžืคืชื—ื™ื, ื›ื“ืื™ ืœื”ื“ื’ื™ืฉ ืืช ื”ืคื•ื ืงืฆื™ื” datetime() ื”ืžืžื™ืจื” ืคื•ืจืžื˜ื™ื ืฉื•ื ื™ื ืฉืœ ืจื™ืฉื•ื ื–ืžืŸ ืกื˜ื ื“ืจื˜ื™ ืœืกื•ื’ Postgresql ืžื•ื‘ื ื”; ืคื•ื ืงืฆื™ื™ืช ื™ืฆื™ืจืช UUID v4 ื–ืžื™ื ื” ืžื”ืงื•ืคืกื” gen_random_uuid(); ื ื•ืจืžืœื™ื–ืฆื™ื” ืฉืœ ืขื‘ื•ื“ื” ืขื Unicode; ืžืขืจื›ืช ื’ืžื™ืฉื” ื™ื•ืชืจ ืœื”ืคืฆืช ื ืชื•ื ื™ ื˜ื‘ืœื” ืขืœ ืฆืžืชื™ ืจืฉืช ืžื—ื•ื‘ืจื™ื ืฉืœ ืžืกื“ ื”ื ืชื•ื ื™ื ืขื ืฉื›ืคื•ืœ ืžืœื ื‘ืจืžื” ื”ืœื•ื’ื™ืช, ื›ืžื• ื’ื ืฉื™ื ื•ื™ื™ื ืื—ืจื™ื ื‘ืฉืื™ืœืชื•ืช ื•ื˜ืจื™ื’ืจื™ื ื—ื“ืฉื™ื ื”ื–ืžื™ื ื™ื ืขื‘ื•ืจ ื”ืขืชืงื™ื.

ื‘ืงืจืช ื’ื™ืฉื” ืœืžืกื“ ื ืชื•ื ื™ื ืžื•ื’ื“ืจืช ื›ืื—ื“ ืžืžืจื›ื™ื‘ื™ ื”ืžืคืชื— ืฉืœ ื”ืžืขืจื›ืช, ื•ื”ื’ืจืกื” ื”ื—ื“ืฉื” ืขื•ืฉื” ืฆืขื“ื™ื ื’ื“ื•ืœื™ื ืงื“ื™ืžื” ื‘ื”ืงืฉืจ ื–ื”. ื›ืขืช ืจืง ืžืฉืชืžืฉ ืžื™ื•ื—ืก (ืžืฉืชืžืฉ-ืขืœ) ื™ื›ื•ืœ ืœื”ืชืงื™ืŸ ื”ืจื—ื‘ื•ืช ืœืžืกื“ ื”ื ืชื•ื ื™ื. ื‘ืžืงื‘ื™ืœ, ืžืฉืชืžืฉื™ื ืจื’ื™ืœื™ื ื™ื•ื›ืœื• ืœื”ืชืงื™ืŸ ืจืง ืืช ื”ื”ืจื—ื‘ื•ืช ืฉืกื™ืžื ื• ื›ืืžื™ืŸ, ืื• ืงื‘ื•ืฆื” ืงื˜ื ื” ืฉืœ ื”ืจื—ื‘ื•ืช ืฉื ื—ืฉื‘ื•ืช ืžื”ื™ืžื ื•ืช ื›ื‘ืจื™ืจืช ืžื—ื“ืœ (ืœื“ื•ื’ืžื”, pgcrypto, tablefunc ืื• hstore). ื‘ืขืช ืื™ืžื•ืช ืžืฉืชืžืฉื™ื ื‘ืืžืฆืขื•ืช ืžื ื’ื ื•ืŸ SCRAM (ื‘ืขืช ืขื‘ื•ื“ื” ื“ืจืš ืžื ื”ืœ ื”ื”ืชืงืŸ ืฉืœ libpq), "ื›ืจื™ื›ืช ืขืจื•ืฅ" ื ื“ืจืฉืช ื›ืขืช, ื•ืคื•ื ืงืฆื™ื™ืช ื”ืขื˜ื™ืคื” ืขื‘ื•ืจ ื ืชื•ื ื™ ืฆื“ ืฉืœื™ืฉื™ postgres_fdw ืžื’ืจืกื” 13 ืชื•ืžื›ืช ื‘ื”ืจืฉืืช ืื™ืฉื•ืจ.

ืžื›ืชื‘ื™ ืฉื—ืจื•ืจ


ืขืžื•ื“ ื”ื•ืจื“ื”

ืžืงื•ืจ: linux.org.ru

ื”ื•ืกืคืช ืชื’ื•ื‘ื”