PostgREST 9.0.0 విడుదల, డేటాబేస్‌ను RESTful APIగా మార్చడానికి యాడ్-ఆన్‌లు

PostgREST 9.0.0 విడుదల జరిగింది, PostgreSQL DBMSకి తేలికపాటి యాడ్-ఆన్ అమలుతో విడిగా పనిచేసే వెబ్ సర్వర్, ఇప్పటికే ఉన్న డేటాబేస్ నుండి వస్తువులను RESTful APIలోకి అనువదిస్తుంది. రిలేషనల్ డేటాను ఆబ్జెక్ట్‌లుగా (ORMలు) మ్యాపింగ్ చేయడానికి బదులుగా, PostgREST నేరుగా డేటాబేస్‌లో వీక్షణలను సృష్టిస్తుంది. డేటాబేస్ వైపు JSON ప్రతిస్పందనల సీరియలైజేషన్, డేటా ధ్రువీకరణ మరియు అధికారాన్ని కూడా నిర్వహిస్తుంది. సాధారణ సర్వర్‌లో సెకనుకు 2000 అభ్యర్థనలను ప్రాసెస్ చేయడానికి సిస్టమ్ పనితీరు సరిపోతుంది. ప్రాజెక్ట్ కోడ్ హాస్కెల్‌లో వ్రాయబడింది మరియు MIT లైసెన్స్ క్రింద పంపిణీ చేయబడింది.

ఉదాహరణకు, డేటాబేస్ ప్రివిలేజ్ మెకానిజంను మాత్రమే ఉపయోగించి, మీరు HTTP ద్వారా డేటాకు (టేబుల్‌లు, వీక్షణ రకాలు మరియు నిల్వ చేసిన విధానాలు) యాక్సెస్‌ను మంజూరు చేయవచ్చు. ఈ సందర్భంలో, అటువంటి అనువాదాన్ని ఎన్కోడ్ చేయవలసిన అవసరం లేదు మరియు సాధారణంగా REST API ద్వారా పట్టికను అందుబాటులో ఉంచడానికి ఒక GRANT ఆదేశం సరిపోతుంది. టోకెన్ (JWT) ద్వారా యాక్సెస్‌ని కాన్ఫిగర్ చేయడం మరియు డైనమిక్ రో లెవెల్ సెక్యూరిటీ (రో లెవెల్ సెక్యూరిటీ) ఉపయోగించడం ద్వారా “మల్టీటెనెన్స్” నిర్వహించడం సాధ్యమవుతుంది.

నిర్మాణపరంగా, PostgREST డేటా-ఆధారిత ఆర్కిటెక్చర్ (డేటా-ఓరియెంటెడ్ ఆర్కిటెక్చర్) వైపుకు నెట్టివేయబడుతుంది, ఇక్కడ మైక్రోసర్వీస్‌లు తమను తాము రాష్ట్రాలను సేవ్ చేయవు, కానీ దీని కోసం డేటాకు ఒకే యాక్సెస్‌ను (డేటా యాక్సెస్ లేయర్) ఉపయోగిస్తాయి.

PostgREST 9.0.0 విడుదల, డేటాబేస్‌ను RESTful APIగా మార్చడానికి యాడ్-ఆన్‌లు

కొత్త సంస్కరణలో మార్పులలో:

  • విభజన చేయబడిన పట్టికలు నిల్వ స్కీమా కాష్‌కు జోడించబడ్డాయి, ఇది అటువంటి పట్టికలు స్థాన ప్రతిస్పందనలో UPSERT మరియు INSERT కార్యకలాపాలను పొందుపరచడం, OPTIONS ప్రశ్నలను అమలు చేయడం మరియు OpenAPI మద్దతును అమలు చేయడం సాధ్యం చేసింది.
  • RPC POST ద్వారా ఇది ఒక పేరులేని పరామితితో ఫంక్షన్‌లను కాల్ చేయడానికి అనుమతించబడుతుంది.
  • "Prefer: params=single-object" హెడర్ లేకుండా ఒక JSON పరామితితో ఫంక్షన్‌లను కాల్ చేయడానికి ఇది అనుమతించబడుతుంది.
  • "కంటెంట్-టైప్: అప్లికేషన్/ఆక్టెట్-స్ట్రీమ్"తో అభ్యర్థనలను ఉపయోగించి టైప్ బైటీ డేటాను ఫంక్షన్‌లలోకి లోడ్ చేయడానికి ఇది అనుమతించబడుతుంది.
  • "కంటెంట్-టైప్: టెక్స్ట్/ప్లెయిన్"తో ప్రశ్నలను ఉపయోగించి టెక్స్ట్‌ని ఫంక్షన్‌లలోకి లోడ్ చేయడానికి అనుమతించబడింది.
  • డబుల్ బ్రాకెట్ల లోపల అక్షరాలు తప్పించుకోవడానికి మద్దతు జోడించబడింది, ఉదాహరణకు, "?col=in.("Double\"quote"), ?col=in.("Back\\slash")".
  • అంతర్నిర్మిత ఫిల్టర్‌ల ఆధారంగా మొదటి-స్థాయి వనరులను ఫిల్టర్ చేయగల సామర్థ్యం (“/projects?select=*,clients!inner(*)&clients.id=eq.12” అందించబడింది.
  • "ఇస్" ఆపరేటర్ "తెలియని" విలువను అనుమతిస్తుంది.
  • PostgreSQL 14తో అనుకూలత సాధించబడింది మరియు PostgreSQL 9.5కి మద్దతు నిలిపివేయబడింది.

మూలం: opennet.ru

ఒక వ్యాఖ్యను జోడించండి