{"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\/et\/blog\/news\/microsoft-otkryl-kod-subd-documentdb-osnovannoj-na-postgresql","title":{"rendered":"Microsoft avas PostgreSQL-p\u00f5hise DocumentDB andmebaasi l\u00e4htekood","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Microsoft teatas DocumentDB projekti avatud koodist, mida saab kasutada iseseisva NoSQL andmebaasina, platvormina oma salvestuss\u00fcsteemide loomiseks v\u00f5i lisandina BSON vormingus andmete salvestamiseks PostgreSQL andmebaasis. Praktikas kasutatakse DocumentDB-d Microsoftis toote \"Azure Cosmos DB for MongoDB\" alusel, mis pakub MongoDB dokumentidep\u00f5hise andmebaasi \u00fchilduvat liidest. Projekti kood on kirjutatud C keeles ja jagatakse MIT litsentsi alusel. DocumentDB mootor on rakendatud PostgreSQL andmebaasi laiendusena.    <\/p>\n<p>Nii nagu MongoDB-s, kasutatakse DocumentDB-s struktureeritud dokumentide salvestamiseks JSON-iga sarnast BSON (Binary JSON) formaati, mis v\u00f5imaldab luua hierarhilisi struktuure, kus \u00fcksikud dokumendid ja massiivid saavad olla sisestatud teistesse dokumentidesse ja massiividesse. Peamine erinevus JSON-ist on andmete serialiseerimise kasutamine binaarsesse vormingusse. Projekt pakub nii NoSQL-operatsioone BSON formaadis andmete loomiseks, lugemiseks, v\u00e4rskendamiseks ja kustutamiseks, kui ka PostgreSQL-i tavap\u00e4rase API (DocumentDB-d v\u00f5ib pidada PostgreSQL variandiks, millel on BSON tugi). DocumentDB-s saab kasutada t\u00e4isteksti otsingu funktsioone, tehingute tegemist vektori ja georuumiliste andmet\u00fc\u00fcpidega.      <\/p>\n<p>Projekt koosneb kahest komponendist:    <\/p>\n<ul>\n<li class=\"l\"> pg_documentdb_core \u2014 PostgreSQL laiendus, mis rakendab BSON t\u00fc\u00fcbi ja toimingud BSON andmete t\u00f6\u00f6tlemiseks PostgreSQL-is.\n<li class=\"l\"> pg_documentdb \u2014 avalik DocumentDB API, mis sisaldab p\u00f5hioperatsioone BSON formaadis dokumentidega t\u00f6\u00f6tamiseks, p\u00e4ringute t\u00f6\u00f6tlemiseks ja indeksite haldamiseks.  <\/ul>\n<p>Esimene DocumentDB v\u00e4ljaanne toetab CRUD operatsioone (loomine, lugemine, uuendamine, kustutamine), indekseerimist eraldi BSON v\u00e4ljade jaoks, t\u00e4istekstiotsingu indekseid (\u00fchilduvad RUM-iga), vektorilisi ja georuumilisi p\u00e4ringuid (\u00fchilduvad pg_vector ja postgis-ga), v\u00f5imalusi p\u00e4ringute koostamiseks ja BSON andmete agregatsiooniks.    <\/p>\n<p>DocumentDB on juba kasutusele v\u00f5etud FerretDB projekti poolt, mis arendab MongoDB andmebaasi rakendust PostgreSQL andmebaasi p\u00f5hjal. FerretDB v\u00f5imaldab ilma rakenduste koodi muutmata asendada patenteeritud dokumentide p\u00f5hist andmebaasi MongoDB t\u00e4iesti avatud tarkvara tehnoloogia, mis p\u00f5hineb PostgreSQL-l. MongoDB asendamise vajadus tuleneb asjaolust, et see andmebaas on l\u00e4inud \u00fcle SSPL litsentsile, mis p\u00f5hineb AGPLv3 litsentsil, kuid pole avatud, kuna see sisaldab diskrimineerivat n\u00f5uet tarnida SSPL litsentsi alusel mitte ainult rakenduse koodi, vaid ka k\u00f5igi komponentide l\u00e4htekoodi, mis on seotud pilveteenuse pakkumisega.     <\/p>\n<p>Alguses piirdus FerretDB t\u00f6\u00f6 MongoDB p\u00e4ringute t\u00f5lkimisega SQL-p\u00e4ringuteks PostgreSQL-le, kuid alates FerretDB 2.0 versioonist, mis on kandidaadietapis, on BSON formaadi toetamiseks kasutusele v\u00f5etud PostgreSQL-laiendus DocumentDB. \u00dcleminek DocumentDB kasutamisele on v\u00f5imaldanud FerretDB j\u00f5udlust m\u00f5nes, koormuse t\u00fc\u00fcbis enam kui 20 korda suurendada. FerretDB 2.0 muudatuste seas on m\u00e4rgitud ka parem \u00fchilduvus MongoDB-ga, replikatsiooni v\u00f5imalus ja vektorkohtingu tugi. FerretDB kood on kirjutatud Go keeles ja jagatakse Apache 2.0 litsentsi alusel.<br \/>\n<br \/>Allikas: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=62621\">opennet.ru<\/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.1.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\/et\/blog\/news\/microsoft-otkryl-kod-subd-documentdb-osnovannoj-na-postgresql\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.1.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"et_EE\" \/>\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\/et\/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 avas PostgreSQL-p\u00f5hise DocumentDB andmebaasi koodi | ProHoster","description":"Ettev\u00f5te Microsoft teatas DocumentDB projekti koodi avamisest, mida saab kasutada kas eraldi NoSQL andmebaasina, isiklike salvestuss\u00fcsteemide loomise platvormina v\u00f5i andmete salvestamise t\u00e4ienduseks.","canonical_url":"https:\/\/prohoster.info\/et\/blog\/news\/microsoft-otkryl-kod-subd-documentdb-osnovannoj-na-postgresql","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"et_EE","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\/et\/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\/et\/wp-json\/wp\/v2\/posts\/121505","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/comments?post=121505"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts\/121505\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/media?parent=121505"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/categories?post=121505"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/tags?post=121505"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}