PostgreSQL 14 නිකුතුව

වසරක සංවර්ධනයෙන් පසු, PostgreSQL 14 DBMS හි නව ස්ථාවර ශාඛාවක් ප්‍රකාශයට පත් කර ඇත. නව ශාඛාව සඳහා යාවත්කාලීන කිරීම් 2026 නොවැම්බර් දක්වා වසර පහක් පුරා නිකුත් කෙරේ.

ප්රධාන නවෝත්පාදන:

  • අරාව වැනි ප්‍රකාශන භාවිතයෙන් JSON දත්ත වෙත ප්‍රවේශ වීම සඳහා සහය එක් කරන ලදි: SELECT ('{ "postgres": { "release": 14 }}'::jsonb)['postgres']['release']; * පරීක්‍ෂණයෙන් තෝරන්න

    hstore වර්ගය මඟින් සපයන යතුරු/අගය දත්ත සඳහා සමාන වාක්‍ය ඛණ්ඩයක් ක්‍රියාත්මක වේ. මෙම වාක්‍ය ඛණ්ඩය මුලින් ක්‍රියාත්මක කරන ලද්දේ විශ්වීය රාමුවක් භාවිතයෙන් වන අතර එය අනාගතයේදී වෙනත් වර්ග සඳහා භාවිතා කළ හැකිය. hstore වර්ගය සඳහා උදාහරණය: mytable VALUES INSERT ('a=>b, c=>d'); mytable වෙතින් h['a'] තෝරන්න; mytable යාවත්කාලීන කරන්න SET h['c'] = 'නව';

  • පරාස නිර්වචනය කිරීම සඳහා වර්ග පවුල නව "බහු පරාස" වර්ග සමඟින් විස්තාරණය කර ඇත, එමඟින් ඔබට අතිච්ඡාදනය නොවන අගයන් පරාසයක ඇණවුම් කළ ලැයිස්තු නියම කිරීමට ඉඩ සලසයි. පවතින එක් එක් පරාස වර්ගයට අමතරව, එහිම බහු පරාස වර්ගය යෝජනා කර ඇත, උදාහරණයක් ලෙස, “int4range” වර්ගය “int4multirange” ට අනුරූප වන අතර “daterange” වර්ගය “datemultirange” ට අනුරූප වේ. නව වර්ග භාවිතා කිරීම පරාසයන්හි සංකීර්ණ අනුපිළිවෙල හසුරුවන විමසුම් සැලසුම් කිරීම සරල කරයි. තෝරන්න '{[3,7), [8,9)}'::int4multirange; තෝරන්න nummultirange(numrange(1.0, 14.0), numrange(20.0, 25.0));
  • සම්බන්ධතා විශාල සංඛ්‍යාවක් සකසන අධි බර පද්ධතිවල ක්‍රියාකාරිත්වය වැඩි දියුණු කිරීම සඳහා ප්‍රශස්තිකරණය කර ඇත. සමහර පරීක්ෂණ වලදී කාර්ය සාධනයේ දෙගුණයක් වැඩි වීමක් දක්නට ලැබේ.
  • B-tree indexes හි කාර්යක්ෂමතාව වැඩි දියුණු කර ඇති අතර වගු නිතර යාවත්කාලීන වන විට දර්ශක වර්ධනයේ ගැටලුව විසඳා ඇත.
  • සේවාලාභී පාර්ශ්වයේ (libpq මට්ටමින් ක්‍රියාත්මක කරන ලද) ඉල්ලීම් නල මාර්ග සම්ප්‍රේෂණය කිරීමේ මාදිලිය සඳහා සහය එක් කරන ලදී, එමඟින් යැවීමෙන් කුඩා ලිවීමේ මෙහෙයුම් විශාල සංඛ්‍යාවක් (INSERT/UPDATE/DELETE) සිදු කිරීම හා සම්බන්ධ දත්ත සමුදා අවස්ථා සැලකිය යුතු ලෙස වේගවත් කිරීමට ඔබට ඉඩ සලසයි. පෙර එකෙහි ප්‍රතිඵලය බලා නොසිට ඊළඟ ඉල්ලීම. දිගු පැකට් බෙදා හැරීමේ ප්‍රමාදයන් සමඟ සම්බන්ධතා මත වැඩ වේගවත් කිරීමට ද මාදිලිය උපකාරී වේ.
  • බහු PostgreSQL සේවාදායකයන් ඇතුළත් බෙදා හරින ලද වින්‍යාසයන් සඳහා වැඩි දියුණු කළ හැකිය. තාර්කික අනුකරණය ක්‍රියාත්මක කිරීමේදී, ක්‍රියාත්මක කිරීමේ ක්‍රියාවලියේ පවතින ප්‍රවාහ මාදිලියේ ගනුදෙනු යැවීමට දැන් හැකි වන අතර එමඟින් විශාල ගනුදෙනු වල ප්‍රතිවර්තනයේ කාර්ය සාධනය සැලකිය යුතු ලෙස වැඩිදියුණු කළ හැකිය. මීට අමතරව, තාර්කික අනුකරණයේදී ලැබෙන දත්තවල තාර්කික විකේතනය ප්‍රශස්ත කර ඇත.
  • බාහිර වගු සම්බන්ධ කිරීමේ යාන්ත්‍රණය විදේශීය දත්ත එතුම (postgres_fdw) සමාන්තර විමසුම් සැකසීම සඳහා සහය එක් කර ඇත, එය දැනට අදාළ වන්නේ අනෙකුත් PostgreSQL සේවාදායකයන් වෙත සම්බන්ධ වන විට පමණි. postgres_fdw කණ්ඩායම් මාදිලියේ බාහිර වගු වෙත දත්ත එකතු කිරීම සඳහා සහය එක් කරයි සහ "IMPORT FOREIGN SCHEMA" විධානය සඳහන් කිරීමෙන් කොටස් කළ වගු ආයාත කිරීමේ හැකියාව.
  • VACUUM මෙහෙයුම (කසළ එකතු කිරීම සහ තැටි ගබඩා කිරීම ඇසුරුම් කිරීම) ක්රියාත්මක කිරීම සඳහා ප්රශස්තකරණයන් සිදු කර ඇත. ගනුදෙනු හැඳුනුම්පත එතීමේ කොන්දේසි නිර්මානය කර ඇත්නම් අත්‍යවශ්‍ය නොවන පිරිසිදු කිරීමේ මෙහෙයුම් මඟ හරින හදිසි පිරිසිදු කිරීමේ මාදිලියක් එක් කර ඇත. B-Tree ආකෘතියෙන් දර්ශක සකසන විට පොදු කාර්ය අඩු කිරීම. දත්ත සමුදායේ ක්රියාකාරිත්වය පිළිබඳ සංඛ්යා ලේඛන එකතු කරන "විශ්ලේෂණ" මෙහෙයුම ක්රියාත්මක කිරීම සැලකිය යුතු ලෙස වේගවත් කර ඇත.
  • පෙළ හෝ ජ්‍යාමිතික තොරතුරු වැනි විශාල දත්ත ගබඩා කිරීම සඳහා වගකිව යුතු TOAST පද්ධතියේ භාවිතා කරන සම්පීඩන ක්‍රමය වින්‍යාස කිරීමේ හැකියාව එක් කරන ලදී. pglz සම්පීඩන ක්‍රමයට අමතරව, TOAST හට දැන් LZ4 ඇල්ගොරිතම භාවිතා කළ හැක.
  • DBMS හි ක්රියාකාරිත්වය නිරීක්ෂණය කිරීම සඳහා මෙවලම් පුළුල් කර ඇත. COPY විධානවල (pg_stat_progress_copy) ප්‍රගතිය නිරීක්ෂණය කිරීමට දසුන් එක් කරන ලදී, අනුකරණ තව් පිළිබඳ සංඛ්‍යාලේඛන (pg_stat_replication_slots) සහ WAL ගනුදෙනු ලොගයට අදාළ ක්‍රියාකාරකම් (pg_stat_wal). pg_stat_activity සහ EXPLAIN VERBOSE වැනි විවිධ උප පද්ධති සබල කරන compute_query_id ශ්‍රිතය එක් කර ඇත, එක් එක් ඉල්ලීම සඳහා අනන්‍ය හඳුනාගැනීමක් ලබා දීමෙන් ඉල්ලීම් හඹා යාමට.
  • විමසුම්වල සමාන්තර සැකසුම් වැඩිදියුණු කිරීමට සහ අනුක්‍රමික වාර්තා ස්කෑන් මෙහෙයුම් එකවර ක්‍රියාත්මක කිරීමේ ක්‍රියාකාරිත්වය වැඩි දියුණු කිරීමට, “RETURN QUERY” විධානය භාවිතයෙන් PL/pgSQL හි විමසුම් සමාන්තරව ක්‍රියාත්මක කිරීම සහ “ හි විමසුම් සමාන්තරව ක්‍රියාත්මක කිරීම සඳහා ප්‍රශස්තකරණයන් විමසුම් සැලසුම්කරු වෙත එක් කර ඇත. REFRESH MATERILIZED VIEW". චක්‍රීය කූඩු ඒකාබද්ධ කිරීම් (එකතු වීම) ක්‍රියාකාරීත්වය වැඩි දියුණු කිරීම සඳහා අතිරේක හැඹිලි සඳහා සහය ක්‍රියාත්මක කර ඇත.
  • ප්‍රකාශන ප්‍රශස්ත කිරීම සඳහා උසස් සංඛ්‍යාලේඛන දැන් භාවිතා කළ හැකි අතර, කවුළු ක්‍රියාකාරකම් ප්‍රශස්ත කිරීම සඳහා වර්ධක වර්ග කිරීම දැන් භාවිතා කළ හැක.
  • ඔබට කේත කොටස්වල ගනුදෙනු කළමනාකරණය කිරීමට ඉඩ සලසන ගබඩා කර ඇති ක්‍රියා පටිපාටි දැන් "OUT" පරාමිති භාවිතයෙන් ප්‍රතිලාභ දත්ත නිර්වචනය කිරීමට සහාය වේ.
  • නිශ්චිත කාල පරතරයකට අනුව වටකුරු කාල මුද්දර අගයන් වෙත date_bin ශ්‍රිතය එක් කරන ලදී. දිනය_බින් තෝරන්න ('මිනිත්තු 15', TIMESTAMP '2020-02-11 15:44:17', TIMESTAMP '2001-01-01'); 2020-02-11 15:30:00
  • පුනරාවර්තන පොදු වගු ප්‍රකාශනවල (CTE) චක්‍ර ඇණවුම් කිරීම සහ හඳුනා ගැනීම පහසු කිරීම සඳහා SQL ප්‍රමිතියෙහි අර්ථ දක්වා ඇති සෙවුම් සහ චක්‍ර ප්‍රකාශන එකතු කරන ලදී. ප්‍රත්‍යාවර්තී සෙවුම්_ගස (id, සබැඳිය, දත්ත) ලෙස (t.id, t.link, t.data SELECT Tree t UNION ALL SELECT t.id, t.link, t.data from tree t, search_tree st WHERE t. id = st.link ) id SET ordercol SELECT * සෙවුම්_ගසෙන් Ordercol මගින් Order කරන්න;
  • psql උපයෝගිතා තුළ, ටැබ් සහිත විධාන ස්වයංක්‍රීයව සම්පූර්ණ කිරීම වැඩිදියුණු කර ඇත, ක්‍රියාකාරී තර්ක පෙන්වීමේ හැකියාව “\df” විධානයට එකතු කර ඇත, සහ පෙන්වන සංඛ්‍යාලේඛන “\dX” විධානය දක්වා පුළුල් කර ඇත.
  • පරිශීලකයින්ට කියවීමට පමණක් හෝ ලිවීමට පමණක් වරප්‍රසාද ලබා දිය හැකිය. pg_read_all_data සහ pg_write_all_data පූර්ව නිශ්චිත භූමිකාවන් භාවිතයෙන් තනි වගු, දසුන් සහ යෝජනා ක්‍රම මත වරප්‍රසාද සැකසිය හැක. පරිශීලක1 වෙත pg_read_all_data ලබා දෙන්න;
  • නව ස්ථාපනයන් md256 වෙනුවට SCRAM-SHA-5 භාවිතයෙන් මුරපද සත්‍යාපනයට පෙරනිමිය (postgresql.conf ජනනය කිරීමේදී "password_encryption" පරාමිතිය දැන් 'scram-sha-256' ලෙස සකසා ඇත).

මූලාශ්රය: opennet.ru

අදහස් එක් කරන්න