{"id":121505,"date":"2025-01-27T15:46:01","date_gmt":"2025-01-27T13:46:01","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/microsoft-otkryl-kod-subd-documentdb-osnovannoj-na-postgresql"},"modified":"2025-01-27T15:46:01","modified_gmt":"2025-01-27T13:46:01","slug":"microsoft-otkryl-kod-subd-documentdb-osnovannoj-na-postgresql","status":"publish","type":"post","link":"https:\/\/prohoster.info\/ro\/blog\/news\/microsoft-otkryl-kod-subd-documentdb-osnovannoj-na-postgresql","title":{"rendered":"Microsoft a deschis codul SGBD-ului DocumentDB, bazat pe PostgreSQL.","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Compania Microsoft a anun\u021bat deschiderea codului proiectului DocumentDB, care poate fi utilizat ca un sistem de gestionare a bazelor de date NoSQL separat\u0103, ca o platform\u0103 pentru a crea propriile sisteme de stocare sau ca un complement pentru stocarea datelor \u00een format BSON \u00een baza de date PostgreSQL. \u00cen practic\u0103, DocumentDB este utilizat de Microsoft ca baz\u0103 pentru produsul \u201eAzure Cosmos DB for MongoDB\u201d, care ofer\u0103 o interfa\u021b\u0103 compatibil\u0103 cu baza de date document-oriantat\u0103 MongoDB. Codul proiectului este scris \u00een limbajul C \u0219i este distribuit sub licen\u021ba MIT. Motorul DocumentDB este implementat sub forma unei extensii peste baza de date PostgreSQL.    <\/p>\n<p>A\u0219a cum se \u00eent\u00e2mpl\u0103 \u00een MongoDB, pentru stocarea documentelor structurate \u00een DocumentDB se utilizeaz\u0103 un format similar JSON numit BSON (Binary JSON), care permite crearea de structuri ierarhice \u00een care anumite documente \u0219i array-uri pot fi \u00eencorporate \u00een alte documente \u0219i array-uri. Principala diferen\u021b\u0103 fa\u021b\u0103 de JSON este utilizarea serializ\u0103rii datelor \u00eentr-o reprezentare binar\u0103. Proiectul ofer\u0103 at\u00e2t opera\u021biuni NoSQL pentru crearea, citirea, actualizarea \u0219i \u0219tergerea datelor \u00een format BSON, c\u00e2t \u0219i API pentru PostgreSQL standard (DocumentDB poate fi considerat o variant\u0103 a PostgreSQL cu suport pentru BSON). \u00cen DocumentDB pot fi utilizate func\u021bionalit\u0103\u021bile de c\u0103utare full-text, opera\u021bii pe tipuri de date vectoriale \u0219i geospa\u021biale.      <\/p>\n<p>Proiectul este compus din dou\u0103 componente:    <\/p>\n<ul>\n<li class=\"l\"> pg_documentdb_core \u2014 o extensie pentru PostgreSQL cu implementarea tipului BSON \u0219i opera\u021biuni pentru a lucra cu datele BSON \u00een PostgreSQL.\n<li class=\"l\"> pg_documentdb \u2014 un API public DocumentDB cu opera\u021biuni de baz\u0103 pentru gestionarea documentelor \u00een format BSON, procesarea interog\u0103rilor \u0219i gestionarea indicilor.  <\/ul>\n<p>Primul release DocumentDB ofer\u0103 suport pentru opera\u021biuni CRUD (creare, citire, actualizare, \u0219tergere), indicii pentru c\u00e2mpuri individuale BSON, indicii pentru c\u0103utare text complet (compatibili cu RUM), interog\u0103ri vectoriale \u0219i geospa\u021biale (compatibile cu pg_vector \u0219i postgis), func\u021bionalit\u0103\u021bi pentru generarea de cereri \u0219i agregarea datelor BSON.    <\/p>\n<p>Proiectul FerretDB a trecut deja la utilizarea DocumentDB, dezvolt\u00e2nd implementarea SGBD-ului MongoDB pe baza SGBD-ului PostgreSQL. FerretDB permite \u00eenlocuirea SGBD-ului documentar proprietar MongoDB cu un stiv\u0103 software complet deschis\u0103, bazat\u0103 pe PostgreSQL, f\u0103r\u0103 a necesita modific\u0103ri \u00een codul aplica\u021biilor. Necesitatea \u00eenlocuirii MongoDB este explicat\u0103 de trecerea acestui SGBD la licen\u021ba SSPL, care este bazat\u0103 pe licen\u021ba AGPLv3, dar nu este deschis\u0103, deoarece con\u021bine o cerin\u021b\u0103 discriminatorie pentru oferirea nu doar a codului aplica\u021biei \u00een sine, ci \u0219i a codului surs\u0103 al tuturor componentelor implicate \u00een furnizarea serviciului cloud.     <\/p>\n<p>Ini\u021bial, activitatea FerretDB se rezuma la transpunerea apelurilor c\u0103tre MongoDB \u00een interog\u0103ri SQL c\u0103tre PostgreSQL, dar \u00eencep\u00e2nd cu versiunea FerretDB 2.0, care este \u00een stadiul de candidat pentru lansare, pentru sprijinirea formatului BSON a fost folosit\u0103 extensia DocumentDB pentru PostgreSQL. Trecerea la utilizarea DocumentDB a permis o cre\u0219tere a performan\u021bei FerretDB de peste 20 de ori pentru anumite tipuri de sarcini. Alte nout\u0103\u021bi din FerretDB 2.0 includ \u00eembun\u0103t\u0103\u021birea compatibilit\u0103\u021bii cu MongoDB, capacitatea de replicare \u0219i suportul pentru c\u0103utarea vectorial\u0103. Codul FerretDB este scris \u00een limbajul Go \u0219i este distribuit sub licen\u021ba Apache 2.0.<br \/>\n<br \/>Sursa: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=62621\">opennet.ro<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Microsoft \u043e\u0431\u044a\u044f\u0432\u0438\u043b\u0430 \u043e\u0431 \u043e\u0442\u043a\u0440\u044b\u0442\u0438\u0438 \u043a\u043e\u0434\u0430 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 DocumentDB, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043c\u043e\u0436\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u043a\u0430\u043a \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u0430\u044f NoSQL \u0421\u0423\u0411\u0414, \u043a\u0430\u043a \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0430 \u0434\u043b\u044f \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0445 \u0441\u0438\u0441\u0442\u0435\u043c \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u0438\u043b\u0438 \u043a\u0430\u043a \u0434\u043e\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u0434\u043b\u044f \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u0434\u0430\u043d\u043d\u044b\u0445 \u0432 \u0444\u043e\u0440\u043c\u0430\u0442\u0435 BSON \u0432 \u0421\u0423\u0411\u0414 PostgreSQL. \u041d\u0430 \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0435 DocumentDB \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u0435\u0442\u0441\u044f \u0432 Microsoft \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u043e\u0441\u043d\u043e\u0432\u044b \u043f\u0440\u043e\u0434\u0443\u043a\u0442\u0430 &#171;Azure Cosmos DB for MongoDB&#187;, \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u044e\u0449\u0435\u0433\u043e \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441, \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u044b\u0439 \u0441 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u043e-\u043e\u0440\u0438\u0435\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0439 \u0421\u0423\u0411\u0414 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-121505","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.2.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Microsoft \u043e\u0431\u044a\u044f\u0432\u0438\u043b\u0430 \u043e\u0431 \u043e\u0442\u043a\u0440\u044b\u0442\u0438\u0438 \u043a\u043e\u0434\u0430 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 DocumentDB, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043c\u043e\u0436\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u043a\u0430\u043a \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u0430\u044f NoSQL \u0421\u0423\u0411\u0414, \u043a\u0430\u043a \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0430 \u0434\u043b\u044f \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0445 \u0441\u0438\u0441\u0442\u0435\u043c \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u0438\u043b\u0438 \u043a\u0430\u043a \u0434\u043e\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u0434\u043b\u044f \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u0434\u0430\u043d\u043d\u044b\u0445 \u0432.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/ro\/blog\/news\/microsoft-otkryl-kod-subd-documentdb-osnovannoj-na-postgresql\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"ro_RO\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47Microsoft \u043e\u0442\u043a\u0440\u044b\u043b \u043a\u043e\u0434 \u0421\u0423\u0411\u0414 DocumentDB, \u043e\u0441\u043d\u043e\u0432\u0430\u043d\u043d\u043e\u0439 \u043d\u0430 PostgreSQL | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Microsoft \u043e\u0431\u044a\u044f\u0432\u0438\u043b\u0430 \u043e\u0431 \u043e\u0442\u043a\u0440\u044b\u0442\u0438\u0438 \u043a\u043e\u0434\u0430 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 DocumentDB, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043c\u043e\u0436\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u043a\u0430\u043a \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u0430\u044f NoSQL \u0421\u0423\u0411\u0414, \u043a\u0430\u043a \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0430 \u0434\u043b\u044f \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0445 \u0441\u0438\u0441\u0442\u0435\u043c \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u0438\u043b\u0438 \u043a\u0430\u043a \u0434\u043e\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u0434\u043b\u044f \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u0434\u0430\u043d\u043d\u044b\u0445 \u0432.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/ro\/blog\/news\/microsoft-otkryl-kod-subd-documentdb-osnovannoj-na-postgresql\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2025-01-27T13:46:01+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2025-01-27T13:46:01+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Microsoft a deschis codul SGBD-ului DocumentDB, bazat pe PostgreSQL | ProHoster","description":"Compania Microsoft a anun\u021bat deschiderea codului proiectului DocumentDB, care poate fi utilizat ca un SGBD NoSQL separat, ca platform\u0103 pentru construirea propriilor sisteme de stocare sau ca un supliment pentru stocarea datelor \u00een.","canonical_url":"https:\/\/prohoster.info\/ro\/blog\/news\/microsoft-otkryl-kod-subd-documentdb-osnovannoj-na-postgresql","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"ro_RO","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47Microsoft \u043e\u0442\u043a\u0440\u044b\u043b \u043a\u043e\u0434 \u0421\u0423\u0411\u0414 DocumentDB, \u043e\u0441\u043d\u043e\u0432\u0430\u043d\u043d\u043e\u0439 \u043d\u0430 PostgreSQL | ProHoster","og:description":"\u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Microsoft \u043e\u0431\u044a\u044f\u0432\u0438\u043b\u0430 \u043e\u0431 \u043e\u0442\u043a\u0440\u044b\u0442\u0438\u0438 \u043a\u043e\u0434\u0430 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 DocumentDB, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043c\u043e\u0436\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u043a\u0430\u043a \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u0430\u044f NoSQL \u0421\u0423\u0411\u0414, \u043a\u0430\u043a \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0430 \u0434\u043b\u044f \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0445 \u0441\u0438\u0441\u0442\u0435\u043c \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u0438\u043b\u0438 \u043a\u0430\u043a \u0434\u043e\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u0434\u043b\u044f \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u0434\u0430\u043d\u043d\u044b\u0445 \u0432.","og:url":"https:\/\/prohoster.info\/ro\/blog\/news\/microsoft-otkryl-kod-subd-documentdb-osnovannoj-na-postgresql","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2025-01-27T13:46:01+00:00","article:modified_time":"2025-01-27T13:46:01+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"121505","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-23 10:01:22","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2026-01-23 10:01:22","updated":"2026-01-23 10:01:22","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/posts\/121505","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/comments?post=121505"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/posts\/121505\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/media?parent=121505"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/categories?post=121505"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/tags?post=121505"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}