PostgreSQL 12 DBMS ထုတ်ဝေမှု

ဖွံ့ဖြိုးတိုးတက်မှုတစ်နှစ်ပြီးနောက် ပုံနှိပ်ထုတ်ဝေ PostgreSQL 12 DBMS ၏ တည်ငြိမ်သောဌာနခွဲအသစ်။ ဌာနခွဲအသစ်အတွက် အပ်ဒိတ်များ ထွက်လာလိမ့်မယ်။ 2024 ခုနှစ် နိုဝင်ဘာလအထိ ငါးနှစ်။

အဓိက တီထွင်ဆန်းသစ်မှုများ:

  • ပံ့ပိုးကူညီမှု ထပ်လောင်း "ကော်လံများကိုထုတ်ပေးသည်။"၊ တူညီသောဇယားရှိ အခြားကော်လံများ၏ တန်ဖိုးများကို လွှမ်းခြုံထားသည့် စကားရပ်တစ်ခုအပေါ် အခြေခံ၍ တွက်ချက်ထားသည့် တန်ဖိုး (ကြည့်ရှုမှုများနှင့် ဆင်တူသော်လည်း ကော်လံတစ်ခုစီအတွက်)။ ထုတ်လုပ်လိုက်သော ကော်လံများသည် သိမ်းဆည်းထားသော နှင့် virtual ဟူ၍ နှစ်မျိုးရှိနိုင်ပါသည်။ ပထမကိစ္စတွင်၊ ဒေတာကို ထည့်သည် သို့မဟုတ် ပြောင်းလဲချိန်တွင် တန်ဖိုးကို တွက်ချက်ပြီး ဒုတိယအခြေအနေတွင်၊ အခြားကော်လံများ၏ လက်ရှိအခြေအနေအပေါ် အခြေခံ၍ ဖတ်ရှုမှုတစ်ခုစီတွင် တန်ဖိုးကို တွက်ချက်သည်။ လက်ရှိတွင်၊ PostgreSQL သည် သိမ်းဆည်းထားသော ထုတ်ပေးထားသော ကော်လံများကိုသာ ပံ့ပိုးပေးသည်။
  • JSON စာရွက်စာတမ်းများကို အသုံးပြု၍ ဒေတာမေးမြန်းနိုင်မှုကို ထည့်သွင်းထားသည်။ မဂ်အသုံးအနှုန်းများအမှတ်ရစရာ၊ XPath SQL/JSON စံနှုန်းများတွင် သတ်မှတ်ထားသည်။ JSONB ဖော်မတ်တွင် သိမ်းဆည်းထားသည့် စာရွက်စာတမ်းများအတွက် ထိုဖော်ပြချက်များကို လုပ်ဆောင်ခြင်း၏ စွမ်းဆောင်ရည်ကို မြှင့်တင်ရန်အတွက် ရှိရင်းစွဲ အညွှန်းကိန်းယန္တရားများကို အသုံးပြုပါသည်။
  • ပုံသေအားဖြင့် ဖွင့်ထားသည်မှာ SQL query လုပ်ဆောင်နေစဉ်အတွင်း အချို့သော expression များကို အရှိန်မြှင့်ရန် LLVM ဖွံ့ဖြိုးတိုးတက်မှုများကို အခြေခံသည့် JIT (Just-in-Time) compiler ကို အသုံးပြုခြင်းဖြစ်သည်။ ဥပမာအားဖြင့်၊ JIT ကို WHERE ဘလောက်များ၊ ပစ်မှတ်စာရင်းများ၊ စုစည်းဖော်ပြချက်များနှင့် အချို့သော အတွင်းပိုင်းလုပ်ဆောင်မှုများအတွင်း ဖော်ပြချက်များကို အရှိန်မြှင့်ရန်အတွက် အသုံးပြုသည်။
  • Indexing Performance သိသိသာသာ တိုးတက်လာပါပြီ။ B-tree အညွှန်းကိန်းများသည် အညွှန်းကိန်းများ မကြာခဏပြောင်းလဲနေသည့် ပတ်ဝန်းကျင်များတွင် အလုပ်လုပ်ရန် အကောင်းဆုံးဖြစ်အောင် လုပ်ဆောင်သည် - TPC-C စမ်းသပ်မှုများသည် အလုံးစုံစွမ်းဆောင်ရည်တိုးတက်မှုနှင့် disk space သုံးစွဲမှု 40% ပျမ်းမျှလျှော့ချမှုကို ပြသသည်။ GiST၊ GIN နှင့် SP-GiST အညွှန်းအမျိုးအစားများအတွက် ရေး-ကြိုတင်မှတ်တမ်း (WAL) ကိုထုတ်ပေးသောအခါတွင် ကုန်ကျစရိတ်ကို လျှော့ချထားသည်။ GiST အတွက်၊ အပိုကော်လံများပါ ၀ င်သော wrapper အညွှန်းကိန်းများ (အပါအ ၀ င်အသုံးအနှုန်းများမှတဆင့်) ဖန်တီးနိုင်စွမ်းကိုထည့်သွင်းထားသည်။ လည်ပတ်နေပါသည်။ စာရင်းအင်းဖန်တီးခြင်း မညီမညာ ဖြန့်ဝေထားသော ကော်လံများကို အသုံးပြုသည့်အခါ ပိုမိုသင့်လျော်သော စုံစမ်းမေးမြန်းမှု အစီအစဉ်များကို ဖန်တီးရန်အတွက် Most Common Value (MCV) စာရင်းဇယားများအတွက် ပံ့ပိုးမှုပေးပါသည်။
  • ပိုင်းခြားခြင်းကို အကောင်အထည်ဖော်ခြင်းသည် ထောင်ပေါင်းများစွာသော အခန်းကန့်များပါရှိသော ဇယားများကို ချဲ့ထွင်သည့် queries အတွက် အကောင်းဆုံးဖြစ်အောင် ပြုလုပ်ထားသော်လည်း အကန့်အသတ်ရှိသော ဒေတာအစုခွဲကို ရွေးချယ်ရန် ကန့်သတ်ထားသည်။ INSERT နှင့် Copy လုပ်ဆောင်ချက်များကို အသုံးပြု၍ အပိုင်းပိုင်းခွဲထားသော ဇယားများသို့ ဒေတာထည့်ခြင်း၏ စွမ်းဆောင်ရည်သည် တိုးမြင့်လာခဲ့ပြီး query execution ကို ပိတ်ဆို့ခြင်းမပြုဘဲ "ALTER TABLE ATTACH PARTITION" မှတဆင့် ကဏ္ဍအသစ်များကို ပေါင်းထည့်နိုင်သည်။
  • ယေဘူယျအားဖြင့် ဇယားအသုံးအနှုန်းများ အလိုအလျောက် အတွင်းလိုင်းချဲ့ထွင်ခြင်းအတွက် ထပ်လောင်းပံ့ပိုးမှု (Common Table Expression, CTE) WITH ထုတ်ပြန်ချက်ကို အသုံးပြု၍ သတ်မှတ်ထားသော ယာယီအမည်ပေးထားသော ရလဒ်အစုံများကို အသုံးပြုခွင့်ပြုသည်။ Inline ဖြန့်ကျက်ခြင်းသည် မေးခွန်းအများစု၏ စွမ်းဆောင်ရည်ကို မြှင့်တင်ပေးနိုင်သော်လည်း လက်ရှိတွင် ပြန်ယူခြင်းမရှိသော CTE များအတွက်သာ အသုံးပြုပါသည်။
  • ပံ့ပိုးကူညီမှု တို့ကို ထည့်သွင်းခဲ့သည်။ အဆုံးအဖြတ်မရှိသော စာလုံးများ၏ အဓိပ္ပာယ်ကို ထည့်သွင်းစဉ်းစားရန် ခွင့်ပြုသည့် “Collation” ဒေသ၏ ဂုဏ်သတ္တိများ (ဥပမာ၊ ဒစ်ဂျစ်တယ်တန်ဖိုးများကို စီရန်၊ ဂဏန်းတစ်ခု၏ ရှေ့တွင် အနုတ်တစ်ခုနှင့် အစက်တစ်ခု ရှိနေခြင်း၊ စာလုံးပေါင်းကို ထည့်သွင်းစဉ်းစားပြီး နှိုင်းယှဉ်ကြည့်သောအခါတွင် အက္ခရာများ၏ အခြေအနေနှင့် လေယူလေသိမ်း အမှတ်အသား ရှိနေခြင်းကို ထည့်သွင်းစဉ်းစားခြင်း မရှိပါ။
  • pg_hba.conf တွင် သင်သည် SSL လက်မှတ် စစ်မှန်ကြောင်းအထောက်အထား (clientcert=verify-full) ကို စစ်မှန်ကြောင်းသက်သေပြရန်အတွက် scram-sha-256 ကဲ့သို့သော စစ်မှန်ကြောင်းအထောက်အထားပြခြင်းအတွက် ထပ်လောင်းစစ်မှန်ကြောင်းပြနည်းလမ်းဖြင့် ပေါင်းထည့်နိုင်သည်;
  • မှတစ်ဆင့် စစ်မှန်ကြောင်းအထောက်အထားပြသည့်အခါ ဆက်သွယ်ရေးချန်နယ်၏ ကုဒ်ဝှက်ခြင်းအတွက် ပံ့ပိုးမှု ထပ်လောင်းထည့်ထားသည်။ GSSAPIclient side နှင့် server side တွင်ရော၊
  • PostgreSQL ကို OpenLDAP ဖြင့် တည်ဆောက်ထားပါက “DNS SRV” မှတ်တမ်းများကို အခြေခံ၍ LDAP ဆာဗာများကို သတ်မှတ်ခြင်းအတွက် ပံ့ပိုးမှု ထပ်လောင်းထည့်သွင်းထားသည်။
  • လုပ်ဆောင်ချက် ထပ်ထည့်သည်"REINDEX သည် တစ်ပြိုင်နက်တည်း» အညွှန်းသို့ရေးရန်လုပ်ဆောင်မှုများကိုပိတ်ဆို့ခြင်းမရှိဘဲအညွှန်းများကိုပြန်လည်တည်ဆောက်ရန်။
  • အမိန့်ကို ထည့်ပေးခဲ့သည်။ pg_checksumsရှိပြီးသားဒေတာဘေ့စ်အတွက် ဒေတာစာမျက်နှာများ၏ checksums များကို ဖွင့်ရန် သို့မဟုတ် ပိတ်ရန် ခွင့်ပြုပေးသော (ယခင်က ဤလုပ်ဆောင်ချက်ကို ဒေတာဘေ့စ်အစပျိုးစဉ်တွင်သာ ပံ့ပိုးပေးခဲ့သည်)။
  • လုပ်ဆောင်ချက်များအတွက် တိုးတက်မှုအညွှန်း၏ အထွက်ကို ပံ့ပိုးပေးထားသော CREATE INDEX၊ REINDEX၊ CLUSTER၊ VACUUM FULL နှင့် pg_checksums;
  • ထည့်ပေးလိုက်တဲ့ အမိန့်"ဝင်ခွင့်နည်းလမ်းကို ဖန်တီးပါ။» အမျိုးမျိုးသော လုပ်ငန်းတာဝန်များအတွက် အကောင်းဆုံးပြင်ဆင်ထားသော ဇယားသိုလှောင်မှုနည်းလမ်းအသစ်များအတွက် ကိုင်တွယ်သူများကို ချိတ်ဆက်ရန်။ လောလောဆယ်တွင် တစ်ခုတည်းသော built-in table access method မှာ "heap" ဖြစ်သည်။
  • recovery.conf ဖွဲ့စည်းမှုပုံစံဖိုင်ကို postgresql.conf နှင့် ပေါင်းထားသည်။ ရှုံးနိမ့်ပြီးနောက် ပြန်လည်ထူထောင်ရေးအခြေအနေသို့ အသွင်ကူးပြောင်းမှု၏ အညွှန်းများအဖြစ် ယခု၊ သင့်တယ် recovery.signal နှင့် standby.signal ဖိုင်များကို အသုံးပြုပါ။

source: opennet.ru

မှတ်ချက် Add