Hoʻokuʻu mua ʻia ʻo FerretDB, hoʻokō MongoDB e pili ana i ka PostgreSQL DBMS

Ua paʻi ʻia ka hoʻokuʻu ʻana o ka papahana FerretDB 1.0, kahi e hiki ai iā ʻoe ke hoʻololi i ka DBMS MongoDB e pili ana i ka palapala me PostgreSQL me ka ʻole e hoʻololi i ke code noi. Hoʻokomo ʻia ʻo FerretDB ma ke ʻano he kikowaena proxy e unuhi i nā kelepona iā MongoDB i loko o nā nīnau SQL i PostgreSQL, kahi e hiki ai iā ʻoe ke hoʻohana iā PostgreSQL ma ke ʻano he waihona maoli. Hōʻailona ʻia ka mana 1.0 ma ke ʻano he hoʻokuʻu paʻa mua i mākaukau no ka hoʻohana maʻamau. Ua kākau ʻia ke code ma Go a māhele ʻia ma lalo o ka laikini Apache 2.0.

ʻO ka poʻe i manaʻo nui ʻia no FerretDB nā mea hoʻohana ʻaʻole hoʻohana i nā hiʻohiʻona kiʻekiʻe o MongoDB i kā lākou mau noi, akā makemake lākou e hoʻohana i kahi waihona lako polokalamu wehe loa. I kona manawa o ka hoʻomohala ʻana, kākoʻo ʻo FerretDB i kahi ʻāpana o nā hiʻohiʻona MongoDB i hoʻohana pinepine ʻia i nā noi maʻamau. ʻO ka pono e hoʻokō i ka FerretDB hiki ke ala mai e pili ana i ka hoʻololi ʻana o MongoDB i kahi laikini SSPL manuahi ʻole, kahi i hoʻokumu ʻia ma ka laikini AGPLv3, akā ʻaʻole i wehe ʻia, no ka mea aia kahi koi hoʻokae e hoʻolako ma lalo o ka laikini SSPL ʻaʻole wale ka palapala noi pono'ī, akā ʻo nā kumu kumu o nā mea āpau i pili i ka hoʻolako ʻana i nā lawelawe kapua.

Noho ʻo MongoDB i kahi niche ma waena o nā ʻōnaehana wikiwiki a hiki ke hoʻohana ʻia i ka ʻikepili kī/waiwai a me nā DBMS pili i hana a maʻalahi ke nīnau. Kākoʻo ʻo MongoDB i ka mālama ʻana i nā palapala ma kahi ʻano JSON-like, he ʻōlelo maʻalahi no ka hoʻopuka ʻana i nā nīnau, hiki ke hana i nā kuhikuhi no nā ʻano ʻano mālama like ʻole, hāʻawi maikaʻi i ka mālama ʻana i nā mea binary nui, kākoʻo i ka hoʻopaʻa ʻana i nā hana e hoʻololi a hoʻohui i ka ʻikepili i ka waihona. hana e like me ka paradigm Map/Reduce, kākoʻo i ka hana hou ʻana a me ke kūkulu ʻana i nā hoʻonohonoho hoʻomanawanui hewa.

Ma waena o nā loli ma FerretDB 1.0:

  • Hoʻokō ʻia nā kauoha createIndexes a me dropIndexes no ka hana ʻana a me ka hoʻokuʻu ʻana i hoʻokahi a ʻoi aku paha nā kuhikuhi i kahi hōʻiliʻili.
  • Ua hoʻokō ʻia ke kauoha getMore e hōʻike i kahi ʻāpana hou o ka hopena i loaʻa mai ka hoʻokō ʻana i nā kauoha e hoʻihoʻi i kahi cursor, e like me ka loaʻa a me ka aggregate.
  • Kākoʻo hoʻohui ʻia no ka mea hoʻohana $sum aggregation e helu i ka huina o nā waiwai pūʻulu.
  • Hoʻohui i kākoʻo no ka $limit a me $skip operators e kaupalena i ka helu a hoʻokuʻu i nā palapala i ka wā e hōʻuluʻulu ai.
  • Hoʻohui i ke kākoʻo no ka mea hoʻokele $count no ka helu ʻana i nā palapala i ka wā e hōʻuluʻulu ai.
  • Hoʻohui ʻia ke kākoʻo no ka mea hoʻohana $ unwind e hoʻokaʻawale i nā māla laha i nā palapala e hiki mai ana a hana i kahi papa inoa me kahi palapala ʻokoʻa no kēlā me kēia ʻano hui.
  • Hoʻohui ʻia ke kākoʻo ʻāpana no nā kauoha collStats, dbStats a me dataSize e kiʻi i ka hōʻiliʻili a me ka ʻikepili helu a me ka nui o ka ʻikepili.

Source: opennet.ru

Pākuʻi i ka manaʻo hoʻopuka