PostgreSQL 12 නිකුතුව

PostgreSQL කණ්ඩායම විසින් විවෘත මූලාශ්‍ර සම්බන්ධතා දත්ත සමුදා කළමනාකරණ පද්ධතියේ නවතම අනුවාදය වන PostgreSQL 12 නිකුතුව නිවේදනය කර ඇත.
PostgreSQL 12 විමසුම් කාර්ය සාධනය සැලකිය යුතු ලෙස වැඩි දියුණු කර ඇත - විශේෂයෙන් විශාල දත්ත පරිමාවන් සමඟ වැඩ කරන විට, සහ පොදුවේ තැටි අවකාශය භාවිතා කිරීම ප්‍රශස්ත කර ඇත.

නව විශේෂාංග ඇතුළත් වේ:

  • JSON Path විමසුම් භාෂාව ක්‍රියාත්මක කිරීම (SQL/JSON සම්මතයේ වැදගත්ම කොටස);
  • පොදු වගු ප්‍රකාශන (WITH) ක්‍රියාත්මක කිරීම ප්‍රශස්ත කිරීම;
  • ජනනය කරන ලද තීරු සඳහා සහාය

ප්‍රජාව PostgreSQL හි ව්‍යාප්තිය සහ විශ්වසනීයත්වය, ජාත්‍යන්තරකරණය සඳහා සහය වර්ධනය කිරීම, සත්‍යාපනය කිරීමේ හැකියාවන් සහ පද්ධතිය පරිපාලනය කිරීමට පහසු ක්‍රම ලබා දීම සඳහා අඛණ්ඩව කටයුතු කරයි.

මෙම නිකුතුවට ප්ලග් කළ හැකි ගබඩා එන්ජින් සඳහා අතුරු මුහුණතක් ක්‍රියාත්මක කිරීම ඇතුළත් වන අතර එමඟින් සංවර්ධකයින්ට ඔවුන්ගේම දත්ත ගබඩා කිරීමේ ක්‍රම නිර්මාණය කිරීමට ඉඩ සලසයි.

කාර්ය සාධනය වැඩි දියුණු කිරීම්

PostgreSQL 12 සුචිගත කිරීම සහ කොටස් කිරීමේ පද්ධති සඳහා සැලකිය යුතු කාර්ය සාධනය සහ නඩත්තු වැඩිදියුණු කිරීම් ඇතුළත් වේ.

PostgreSQL හි සම්මත සුචිගත කිරීමේ වර්ගය වන B-tree indexes, නිතර නිතර දර්ශක වෙනස් කිරීම් ඇතුළත් වැඩ බර සඳහා 12 අනුවාදයේ ප්‍රශස්ත කර ඇත. PostgreSQL 12 සඳහා TPC-C මිණුම් ලකුණ භාවිතා කිරීමෙන් අභ්‍යවකාශ භාවිතයේ සාමාන්‍ය 40% අඩුවීමක් සහ විමසුම් කාර්ය සාධනයේ සමස්ත වැඩි වීමක් පෙන්නුම් කරයි.

කොටස් කරන ලද වගු වලට එරෙහිව විමසුම් සැලකිය යුතු වැඩිදියුණු කිරීම් ලැබී ඇත, විශේෂයෙන් දත්ත අරා වල සීමිත කොටස් සමඟ පමණක් වැඩ කිරීමට අවශ්‍ය වන කොටස් දහස් ගණනකින් සමන්විත වගු සඳහා. INSERT සහ COPY භාවිතයෙන් කොටස් කරන ලද වගු වලට දත්ත එකතු කිරීමේ ක්‍රියාකාරීත්වය මෙන්ම විමසුම් අවහිර නොකර නව කොටසක් ඇමිණීමේ හැකියාවද වැඩි දියුණු කර ඇත.

PostgreSQL 12 සමස්ත කාර්ය සාධනයට බලපාන සුචිගත කිරීම සඳහා අතිරේක වැඩිදියුණු කිරීම් සිදු කර ඇත, ඇතුළුව:

  • GiST, GIN සහ SP-GiST දර්ශක වර්ග සඳහා WAL ජනනය කිරීමේදී පොදු කාර්ය අඩු කිරීම;
  • GiST දර්ශක මත ඊනියා ආවරණ දර්ශක (වගන්තිය ඇතුළත්) නිර්මාණය කිරීමේ හැකියාව;
  • දුර ක්‍රියාකරු (<->) භාවිතයෙන් සහ SP-GiST දර්ශක භාවිතයෙන් "ළඟම අසල්වැසි" විමසුම් (k-NN සෙවීම) සිදු කිරීමේ හැකියාව;
  • CREATE STATISTICS භාවිතයෙන් වඩාත් පොදු අගය (MCV) සංඛ්‍යාලේඛන එකතු කිරීම සඳහා සහය වන අතර, අගයන් අසමාන ලෙස බෙදා හැර ඇති තීරු භාවිතා කරන විට වඩා හොඳ විමසුම් සැලසුම් ලබා ගැනීමට උපකාරී වේ.

PostgreSQL 11 හි හඳුන්වා දුන් LLVM භාවිතයෙන් JIT සම්පාදනය දැන් පෙරනිමියෙන් සක්‍රීය කර ඇත. JIT සම්පාදනය WHERE වගන්ති, ඉලක්ක ලැයිස්තු, එකතු කිරීම් සහ සමහර අභ්‍යන්තර මෙහෙයුම් වල ප්‍රකාශන සමඟ වැඩ කරන විට කාර්ය සාධනය වැඩි දියුණු කරයි. ඔබ LLVM සමඟ PostgreSQL සම්පාදනය කර ඇත්නම් හෝ LLVM සක්‍රීය කර සාදන ලද PostgreSQL පැකේජයක් භාවිතා කරන්නේ නම් එය ලබා ගත හැකිය.

SQL භාෂා හැකියාවන් සහ සම්මත ගැළපුම සඳහා වැඩිදියුණු කිරීම්

PostgreSQL 12 විසින් SQL/JSON ප්‍රමිතියෙන් අර්ථ දක්වා ඇති JSON මාර්ග ප්‍රකාශන භාවිතයෙන් JSON ලේඛන විමසීමේ හැකියාව හඳුන්වා දෙන ලදී. එවැනි විමසුම් මගින් දත්ත කාර්යක්ෂමව ලබා ගැනීම සඳහා JSONB ආකෘතියෙන් ගබඩා කර ඇති ලේඛන සඳහා පවතින සුචිගත කිරීමේ යාන්ත්‍රණයන් උපයෝගී කර ගත හැක.

සාමාන්‍ය වගු ප්‍රකාශන, විමසුම් සමඟින් ලෙසද හැඳින්වේ, දැන් PostgreSQL 12 හි ආදේශනය භාවිතයෙන් ස්වයංක්‍රීයව ක්‍රියාත්මක කළ හැක, එමඟින් පවතින බොහෝ විමසුම්වල ක්‍රියාකාරිත්වය වැඩි දියුණු කිරීමට උපකාරී වේ. නව අනුවාදයේ, විමසුමක ආදේශක කොටසක් ක්‍රියාත්මක කළ හැක්කේ එය පුනරාවර්තන නොවේ නම්, අතුරු ආබාධ නොමැති නම් සහ විමසුමේ ඊළඟ කොටසක එක් වරක් පමණක් යොමු කෙරේ.

PostgreSQL 12 "ජනනය කරන ලද තීරු" සඳහා සහය හඳුන්වා දෙයි. SQL ප්‍රමිතියෙන් විස්තර කර ඇති මෙම තීරු වර්ගය එකම වගුවේ ඇති අනෙකුත් තීරු වල අන්තර්ගතය මත පදනම්ව අගයක් ගණනය කරයි. මෙම අනුවාදයේ, PostgreSQL "ගබඩා කරන ලද ජනනය කරන ලද තීරු" සඳහා සහය දක්වයි, එහිදී ගණනය කළ අගය තැටියේ ගබඩා කර ඇත.

ජාත්යන්තරකරණය

PostgreSQL 12 ICU collations සඳහා සහය පුලුල් කරන්නේ පරිශීලකයින්ට "නිශ්චය නොවන collations" නිර්වචනය කිරීමට ඉඩ සලසමින්, උදාහරණයක් ලෙස, සිද්ධි-සංවේදී හෝ උච්චාරණ-අසංවේදී සැසඳීම් වලට ඉඩ දිය හැක.

සත්යාපනය

අමතර ආරක්ෂාව සහ ක්‍රියාකාරීත්වය සපයන වැඩිදියුණු කිරීම් කිහිපයක් සමඟින් ශක්තිමත් සත්‍යාපන ක්‍රම සඳහා PostgreSQL සිය සහාය පුළුල් කරයි. මෙම නිකුතුව මඟින් GSSAPI අතුරුමුහුණත් හරහා සත්‍යාපනය සඳහා සේවාලාභී පාර්ශවය සහ සේවාදායක පාර්ශවීය සංකේතනය මෙන්ම PostgreSQL OpenLDAP සමඟින් සම්පාදනය කළ විට LDAP සේවාදායකයන් සොයා ගැනීමට PostgreSQL සඳහා ඇති හැකියාව හඳුන්වා දෙයි.

මීට අමතරව, PostgreSQL 12 දැන් බහු සාධක සත්‍යාපන විකල්පයකට සහය දක්වයි. PostgreSQL සේවාදායකයට දැන් සේවාදායකයාට clientcert=verify-full භාවිතා කරමින් අදාළ පරිශීලක නාමය සමඟ වලංගු SSL සහතිකයක් සැපයීම අවශ්‍ය කළ හැකි අතර, මෙය වෙනම සත්‍යාපන ක්‍රම අවශ්‍යතාවයක් සමඟ ඒකාබද්ධ කරන්න (උදා. scram-sha-256).

පරිපාලනය

PostgreSQL 12 විසින් REINDEX CONCURRENTLY විධානය භාවිතයෙන් අවහිර නොවන දර්ශක නැවත ගොඩනැගීමේ හැකියාව හඳුන්වා දෙන ලදී. දිගු දර්ශක නැවත ගොඩනැගීමේදී DBMS අක්‍රීය කාලය වළක්වා ගැනීමට පරිශීලකයින්ට මෙය ඉඩ දෙයි.

අතිරේකව, PostgreSQL 12 හි, ඔබට pg_checksums විධානය භාවිතයෙන් වසා දැමීමේ පොකුරක් තුළ පිටු චෙක්සම් සක්‍රීය හෝ අක්‍රිය කළ හැක. මීට පෙර, තැටියේ ගබඩා කර ඇති දත්තවල අඛණ්ඩතාව තහවුරු කිරීමට උපකාර වන විශේෂාංගයක් වන පිටු පිරික්සුම්, PostgreSQL පොකුර initdb භාවිතයෙන් ආරම්භ කළ විට පමණක් සක්‍රීය කළ හැක.

මූලාශ්රය: linux.org.ru

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