PostgreSQL DBMS ఆధారంగా FerretDB, MongoDB అమలు యొక్క మొదటి స్థిరమైన విడుదల

FerretDB 1.0 ప్రాజెక్ట్ విడుదల ప్రచురించబడింది, ఇది అప్లికేషన్ కోడ్‌లో మార్పులు చేయకుండానే పత్రం-ఆధారిత DBMS MongoDBని PostgreSQLతో భర్తీ చేయడానికి మిమ్మల్ని అనుమతిస్తుంది. FerretDB ప్రాక్సీ సర్వర్‌గా అమలు చేయబడుతుంది, ఇది MongoDBకి కాల్‌లను SQL ప్రశ్నలను PostgreSQLకి అనువదిస్తుంది, ఇది PostgreSQLని వాస్తవ నిల్వగా ఉపయోగించడానికి మిమ్మల్ని అనుమతిస్తుంది. వెర్షన్ 1.0 సాధారణ ఉపయోగం కోసం సిద్ధంగా ఉన్న మొదటి స్థిరమైన విడుదలగా గుర్తించబడింది. కోడ్ గోలో వ్రాయబడింది మరియు Apache 2.0 లైసెన్స్ క్రింద పంపిణీ చేయబడుతుంది.

FerretDB కోసం ప్రధాన లక్ష్య ప్రేక్షకులు తమ అప్లికేషన్‌లలో MongoDB అధునాతన ఫీచర్‌లను ఉపయోగించని వినియోగదారులు, కానీ పూర్తిగా ఓపెన్ సాఫ్ట్‌వేర్ స్టాక్‌ను ఉపయోగించాలనుకుంటున్నారు. దాని ప్రస్తుత అభివృద్ధి దశలో, ఫెరెట్‌డిబి విలక్షణమైన అప్లికేషన్‌లలో సాధారణంగా ఉపయోగించే మొంగోడిబి లక్షణాల ఉపసమితికి మద్దతు ఇస్తుంది. మొంగోడిబిని నాన్-ఫ్రీ SSPL లైసెన్స్‌కి మార్చడానికి సంబంధించి FerretDBని అమలు చేయవలసిన అవసరం ఏర్పడవచ్చు, ఇది AGPLv3 లైసెన్స్‌పై ఆధారపడి ఉంటుంది, కానీ ఇది SSPL లైసెన్స్ కింద సరఫరా చేయడానికి వివక్షాపూరితమైన అవసరాన్ని కలిగి ఉన్నందున ఇది తెరవబడదు. అప్లికేషన్ కోడ్, కానీ క్లౌడ్ సేవలను అందించడంలో పాల్గొన్న అన్ని భాగాల సోర్స్ కోడ్‌లు కూడా.

కీ/విలువ డేటాపై పనిచేసే వేగవంతమైన మరియు స్కేలబుల్ సిస్టమ్‌లు మరియు ఫంక్షనల్ మరియు సులభంగా ప్రశ్నించే రిలేషనల్ DBMSల మధ్య MongoDB సముచిత స్థానాన్ని ఆక్రమించింది. MongoDB పత్రాలను JSON-వంటి ఫార్మాట్‌లో నిల్వ చేయడానికి మద్దతు ఇస్తుంది, ప్రశ్నలను రూపొందించడానికి చాలా సరళమైన భాషను కలిగి ఉంటుంది, వివిధ నిల్వ చేయబడిన లక్షణాల కోసం సూచికలను సృష్టించగలదు, పెద్ద బైనరీ వస్తువుల నిల్వను సమర్ధవంతంగా అందిస్తుంది, డేటాబేస్‌కు డేటాను మార్చడానికి మరియు జోడించడానికి కార్యకలాపాలను లాగింగ్ చేయడానికి మద్దతు ఇస్తుంది. నమూనా మ్యాప్/తగ్గింపుకు అనుగుణంగా పని చేయండి, ప్రతిరూపణకు మద్దతు ఇస్తుంది మరియు తప్పు-తట్టుకునే కాన్ఫిగరేషన్‌లను రూపొందించడం.

FerretDB 1.0లో మార్పులలో:

  • సేకరణకు ఒకటి లేదా అంతకంటే ఎక్కువ సూచికలను సృష్టించడం మరియు వదలడం కోసం createIndexes మరియు dropIndexes ఆదేశాలు అమలు చేయబడ్డాయి.
  • కనుగొనడం మరియు సమీకరించడం వంటి కర్సర్‌ను తిరిగి ఇచ్చే కమాండ్‌ల అమలు నుండి పొందిన ఫలితం యొక్క కొత్త భాగాన్ని ప్రదర్శించడానికి getMore కమాండ్ అమలు చేయబడింది.
  • సమూహ విలువల మొత్తాన్ని లెక్కించడానికి $sum అగ్రిగేషన్ ఆపరేటర్‌కు మద్దతు జోడించబడింది.
  • సంఖ్యను పరిమితం చేయడానికి మరియు అగ్రిగేట్ చేసేటప్పుడు డాక్యుమెంట్‌లను దాటవేయడానికి $limit మరియు $skip ఆపరేటర్‌లకు మద్దతు జోడించబడింది.
  • అగ్రిగేట్ చేస్తున్నప్పుడు పత్రాలను లెక్కించడానికి $count ఆపరేటర్‌కు మద్దతు జోడించబడింది.
  • ఇన్‌కమింగ్ డాక్యుమెంట్‌లలో శ్రేణి ఫీల్డ్‌లను అన్వయించడానికి మరియు ప్రతి అర్రే ఎలిమెంట్‌కు ప్రత్యేక పత్రంతో జాబితాను రూపొందించడానికి $అన్‌వైండ్ ఆపరేటర్‌కు మద్దతు జోడించబడింది.
  • సేకరణ మరియు డేటాబేస్ గణాంకాలు మరియు డేటా పరిమాణాన్ని పొందడానికి collStats, dbStats మరియు dataSize ఆదేశాలకు పాక్షిక మద్దతు జోడించబడింది.

మూలం: opennet.ru

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