{"id":293034,"date":"2019-08-06T15:00:39","date_gmt":"2019-08-06T15:00:39","guid":{"rendered":"http:\/\/savepearlharbor.com\/?p=293034"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-29T21:00:00","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=293034","title":{"rendered":"\u041c\u0443\u043b\u044c\u0442\u0438\u043c\u043e\u0434\u0435\u043b\u044c\u043d\u044b\u0435 \u0421\u0423\u0411\u0414\u00a0\u2014 \u043e\u0441\u043d\u043e\u0432\u0430 \u0441\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u043e\u043d\u043d\u044b\u0445 \u0441\u0438\u0441\u0442\u0435\u043c?"},"content":{"rendered":"\n<div class=\"post__text post__text-html js-mediator-article\">\n<p>\u0421\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u043e\u043d\u043d\u044b\u0435 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0441\u043b\u043e\u0436\u043d\u044b. \u041d\u0435 \u0432 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u044e\u044e \u043e\u0447\u0435\u0440\u0435\u0434\u044c \u0438\u0445 \u0441\u043b\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u043e\u0431\u0443\u0441\u043b\u043e\u0432\u043b\u0435\u043d\u0430 \u0441\u043b\u043e\u0436\u043d\u043e\u0441\u0442\u044c\u044e \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0435\u043c\u044b\u0445 \u0432 \u043d\u0438\u0445 \u0434\u0430\u043d\u043d\u044b\u0445. \u0421\u043b\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u0436\u0435 \u0434\u0430\u043d\u043d\u044b\u0445 \u0437\u0430\u0447\u0430\u0441\u0442\u0443\u044e \u0437\u0430\u043a\u043b\u044e\u0447\u0430\u0435\u0442\u0441\u044f \u0432 \u043c\u043d\u043e\u0433\u043e\u043e\u0431\u0440\u0430\u0437\u0438\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u044b\u0445 \u043c\u043e\u0434\u0435\u043b\u0435\u0439 \u0434\u0430\u043d\u043d\u044b\u0445. \u0422\u0430\u043a, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043a\u043e\u0433\u0434\u0430 \u0434\u0430\u043d\u043d\u044b\u0435 \u0441\u0442\u0430\u043d\u043e\u0432\u044f\u0442\u0441\u044f \u00ab\u0431\u043e\u043b\u044c\u0448\u0438\u043c\u0438\u00bb, \u043e\u0434\u043d\u043e\u0439 \u0438\u0437\u00a0\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u044e\u0449\u0438\u0445 \u043d\u0435\u0443\u0434\u043e\u0431\u0441\u0442\u0432\u0430 \u0445\u0430\u0440\u0430\u043a\u0442\u0435\u0440\u0438\u0441\u0442\u0438\u043a \u0441\u0447\u0438\u0442\u0430\u0435\u0442\u0441\u044f \u043d\u0435\u00a0\u0442\u043e\u043b\u044c\u043a\u043e \u0438\u0445 \u043e\u0431\u044a\u0435\u043c (\u00abvolume\u00bb), \u043d\u043e \u0438\u00a0\u0438\u0445 \u0440\u0430\u0437\u043d\u043e\u043e\u0431\u0440\u0430\u0437\u0438\u0435 (\u00abvariety\u00bb). <\/p>\n<p>  <\/p>\n<p>\u0415\u0441\u043b\u0438 \u0432\u044b \u043f\u043e\u043a\u0430 \u043d\u0435 \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u0435 \u0438\u0437\u044a\u044f\u043d\u0430 \u0432 \u0440\u0430\u0441\u0441\u0443\u0436\u0434\u0435\u043d\u0438\u044f\u0445, \u0442\u043e \u0447\u0438\u0442\u0430\u0439\u0442\u0435 \u0434\u0430\u043b\u044c\u0448\u0435.<\/p>\n<p>  <\/p>\n<p><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/94\/mx\/d8\/94mxd8qgj-3patv4bk_mwhbpwaq.jpeg\" alt=\"\u0428\u0430\u043c\u043f\u0443\u043d\u044c 5-\u0432-1\"><\/p>\n<p><a name=\"habracut\"><\/a>  <\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u0421\u043e\u0434\u0435\u0440\u0436\u0430\u043d\u0438\u0435<\/b><\/p>\n<div class=\"spoiler_text\">\n<p><a href=\"#polyglot-persistenceanchoranchor\">Polyglot persistence<\/a><br \/>  <a href=\"#multimodelnostanchoranchor\">\u041c\u0443\u043b\u044c\u0442\u0438\u043c\u043e\u0434\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c<\/a><br \/>  <a href=\"#multimodelnye-subd-na-osnove-relyacionnoy-modelianchoranchor\">\u041c\u0443\u043b\u044c\u0442\u0438\u043c\u043e\u0434\u0435\u043b\u044c\u043d\u044b\u0435 \u0421\u0423\u0411\u0414 \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u0440\u0435\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u043e\u0439 \u043c\u043e\u0434\u0435\u043b\u0438<\/a><br \/>  \u00a0\u00a0\u00a0\u00a0\u00a0<a href=\"#dokumentnaya-model-v-ms-sql-serveranchoranchor\">\u0414\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u043d\u0430\u044f \u043c\u043e\u0434\u0435\u043b\u044c \u0432 MS SQL Server<\/a><br \/>  \u00a0\u00a0\u00a0\u00a0\u00a0<a href=\"#grafovaya-model-v-ms-sql-serveranchoranchor\">\u0413\u0440\u0430\u0444\u043e\u0432\u0430\u044f \u043c\u043e\u0434\u0435\u043b\u044c \u0432 MS SQL Server<\/a><br \/>  <a href=\"#multimodelnye-subd-na-osnove-dokumentnoy-modelianchoranchor\">\u041c\u0443\u043b\u044c\u0442\u0438\u043c\u043e\u0434\u0435\u043b\u044c\u043d\u044b\u0435 \u0421\u0423\u0411\u0414 \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u043d\u043e\u0439 \u043c\u043e\u0434\u0435\u043b\u0438<\/a><br \/>  \u00a0\u00a0\u00a0\u00a0\u00a0<a href=\"#relyacionnaya-model-v-marklogicanchoranchor\">\u0420\u0435\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u0430\u044f \u043c\u043e\u0434\u0435\u043b\u044c \u0432 MarkLogic<\/a><br \/>  \u00a0\u00a0\u00a0\u00a0\u00a0<a href=\"#grafovaya-model-v-marklogicanchoranchor\">\u0413\u0440\u0430\u0444\u043e\u0432\u0430\u044f \u043c\u043e\u0434\u0435\u043b\u044c \u0432 MarkLogic<\/a><br \/>  <a href=\"#multimodelnye-subd-bez-osnovnoy-modelianchoranchor\">\u041c\u0443\u043b\u044c\u0442\u0438\u043c\u043e\u0434\u0435\u043b\u044c\u043d\u044b\u0435 \u0421\u0423\u0411\u0414 \u00ab\u0431\u0435\u0437 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0439 \u043c\u043e\u0434\u0435\u043b\u0438\u00bb<\/a><br \/>  \u00a0\u00a0\u00a0\u00a0\u00a0<a href=\"#arangodbanchoranchor\">ArangoDB<\/a><br \/>  \u00a0\u00a0\u00a0\u00a0\u00a0<a href=\"#orientdbanchoranchor\">OrientDB<\/a><br \/>  \u00a0\u00a0\u00a0\u00a0\u00a0<a href=\"#azure-cosmosdbanchoranchor\">Azure CosmosDB<\/a><br \/>  <a href=\"#multimodelnye-subd-na-osnove-grafovoy-modelianchoranchor\">\u041c\u0443\u043b\u044c\u0442\u0438\u043c\u043e\u0434\u0435\u043b\u044c\u043d\u044b\u0435 \u0421\u0423\u0411\u0414 \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u0433\u0440\u0430\u0444\u043e\u0432\u043e\u0439 \u043c\u043e\u0434\u0435\u043b\u0438?<\/a><br \/>  <a href=\"#zaklyuchenieanchoranchor\">\u0417\u0430\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435<\/a><br \/>  <a href=\"#anchoranchorhr\">\u041e\u043f\u0440\u043e\u0441<\/a><\/p>\n<\/div>\n<\/div>\n<p>  <\/p>\n<h2 id=\"polyglot-persistenceanchoranchor\">Polyglot persistence<\/h2>\n<p>  <\/p>\n<p>\u0421\u043a\u0430\u0437\u0430\u043d\u043d\u043e\u0435 \u0432\u044b\u0448\u0435 \u043f\u0440\u0438\u0432\u043e\u0434\u0438\u0442 \u043a \u0442\u043e\u043c\u0443, \u0447\u0442\u043e \u043f\u043e\u0440\u043e\u044e \u0432 \u0440\u0430\u043c\u043a\u0430\u0445 \u0434\u0430\u0436\u0435 \u043e\u0434\u043d\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u043f\u0440\u0438\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u0434\u043b\u044f\u00a0\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u0434\u0430\u043d\u043d\u044b\u0445 \u0438\u00a0\u0440\u0435\u0448\u0435\u043d\u0438\u044f \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0445 \u0437\u0430\u0434\u0430\u0447 \u043f\u043e \u0438\u0445 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0445 \u0421\u0423\u0411\u0414, \u043a\u0430\u0436\u0434\u0430\u044f \u0438\u0437 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442 \u0441\u0432\u043e\u044e \u043c\u043e\u0434\u0435\u043b\u044c \u0434\u0430\u043d\u043d\u044b\u0445. \u0421 \u043b\u0435\u0433\u043a\u043e\u0439 \u0440\u0443\u043a\u0438 \u041c.\u00a0\u0424\u0430\u0443\u043b\u0435\u0440\u0430, <a href=\"https:\/\/www.amazon.com\/Martin-Fowler\/e\/B000AQ6PGM\">\u0430\u0432\u0442\u043e\u0440\u0430<\/a> \u0440\u044f\u0434\u0430 \u0438\u0437\u0432\u0435\u0441\u0442\u043d\u044b\u0445 \u043a\u043d\u0438\u0433 \u0438 \u043e\u0434\u043d\u043e\u0433\u043e \u0438\u0437 <a href=\"https:\/\/agilemanifesto.org\/authors.html\">\u0441\u043e\u0430\u0432\u0442\u043e\u0440\u043e\u0432<\/a> Agile Manifesto, \u0442\u0430\u043a\u0430\u044f \u0441\u0438\u0442\u0443\u0430\u0446\u0438\u044f \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u0430 \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u0435 <em>\u043c\u043d\u043e\u0433\u043e\u0432\u0430\u0440\u0438\u0430\u043d\u0442\u043d\u043e\u0433\u043e \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f<\/em> (\u00abpolyglot persistence\u00bb). <\/p>\n<p>  <\/p>\n<p>\u0424\u0430\u0443\u043b\u0435\u0440\u0443 \u043f\u0440\u0438\u043d\u0430\u0434\u043b\u0435\u0436\u0438\u0442 \u0438 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439 \u043f\u0440\u0438\u043c\u0435\u0440 \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u0438 \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u0434\u0430\u043d\u043d\u044b\u0445 \u0432\u00a0\u043f\u043e\u043b\u043d\u043e\u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e\u043c \u0438\u00a0\u0432\u044b\u0441\u043e\u043a\u043e\u043d\u0430\u0433\u0440\u0443\u0436\u0435\u043d\u043d\u043e\u043c \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0438 \u0432 \u0441\u0444\u0435\u0440\u0435 \u044d\u043b\u0435\u043a\u0442\u0440\u043e\u043d\u043d\u043e\u0439 \u043a\u043e\u043c\u043c\u0435\u0440\u0446\u0438\u0438.<\/p>\n<p>  <\/p>\n<p><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/01\/kr\/tj\/01krtjyrneny1qg_luwiaycrhwe.png\"><\/p>\n<p>  <\/p>\n<p>\u041f\u0440\u0438\u043c\u0435\u0440 \u044d\u0442\u043e\u0442, \u043a\u043e\u043d\u0435\u0447\u043d\u043e, \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0443\u0442\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439, \u043d\u043e \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0441\u043e\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044f \u0432 \u043f\u043e\u043b\u044c\u0437\u0443 \u0432\u044b\u0431\u043e\u0440\u0430 \u0442\u043e\u0439 \u0438\u043b\u0438 \u0438\u043d\u043e\u0439 \u0421\u0423\u0411\u0414 \u0434\u043b\u044f \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0435\u0439 \u0446\u0435\u043b\u0438 \u043c\u043e\u0436\u043d\u043e \u043d\u0430\u0439\u0442\u0438, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, <a href=\"https:\/\/db-engines.com\/en\/ranking\">\u0437\u0434\u0435\u0441\u044c<\/a>.<\/p>\n<p>  <\/p>\n<p>\u041f\u043e\u043d\u044f\u0442\u043d\u043e, \u0447\u0442\u043e \u0431\u044b\u0442\u044c \u0441\u043b\u0443\u0436\u0438\u0442\u0435\u043b\u0435\u043c \u0432 \u0442\u0430\u043a\u043e\u043c \u0437\u043e\u043e\u043f\u0430\u0440\u043a\u0435 \u043d\u0435\u043b\u0435\u0433\u043a\u043e. <\/p>\n<p>  <\/p>\n<ul>\n<li>\u041e\u0431\u044a\u0435\u043c \u043a\u043e\u0434\u0430, \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u044e\u0449\u0435\u0433\u043e \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435 \u0434\u0430\u043d\u043d\u044b\u0445, \u0440\u0430\u0441\u0442\u0435\u0442 \u043f\u0440\u043e\u043f\u043e\u0440\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e \u0447\u0438\u0441\u043b\u0443 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u044b\u0445 \u0421\u0423\u0411\u0414; \u043e\u0431\u044a\u0435\u043c \u043a\u043e\u0434\u0430, \u0441\u0438\u043d\u0445\u0440\u043e\u043d\u0438\u0437\u0438\u0440\u0443\u044e\u0449\u0435\u0433\u043e \u0434\u0430\u043d\u043d\u044b\u0435, \u2014 \u0445\u043e\u0440\u043e\u0448\u043e \u0435\u0441\u043b\u0438 \u043d\u0435 \u043f\u0440\u043e\u043f\u043e\u0440\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e \u043a\u0432\u0430\u0434\u0440\u0430\u0442\u0443 \u044d\u0442\u043e\u0433\u043e \u0447\u0438\u0441\u043b\u0430. <\/li>\n<li>\u041a\u0440\u0430\u0442\u043d\u043e \u0447\u0438\u0441\u043b\u0443 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u044b\u0445 \u0421\u0423\u0411\u0414 \u0432\u043e\u0437\u0440\u0430\u0441\u0442\u0430\u044e\u0442 \u0437\u0430\u0442\u0440\u0430\u0442\u044b \u043d\u0430\u00a0\u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0435\u043d\u0438\u0435 enterprise-\u0445\u0430\u0440\u0430\u043a\u0442\u0435\u0440\u0438\u0441\u0442\u0438\u043a (\u043c\u0430\u0441\u0448\u0442\u0430\u0431\u0438\u0440\u0443\u0435\u043c\u043e\u0441\u0442\u0438, \u043e\u0442\u043a\u0430\u0437\u043e\u0443\u0441\u0442\u043e\u0439\u0447\u0438\u0432\u043e\u0441\u0442\u0438, \u0432\u044b\u0441\u043e\u043a\u043e\u0439 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u043e\u0441\u0442\u0438) \u043a\u0430\u0436\u0434\u043e\u0439 \u0438\u0437 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u044b\u0445 \u0421\u0423\u0411\u0414.<\/li>\n<li>\u041d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0442\u044c enterprise-\u0445\u0430\u0440\u0430\u043a\u0442\u0435\u0440\u0438\u0441\u0442\u0438\u043a\u0438 \u043f\u043e\u0434\u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u0432\u00a0\u0446\u0435\u043b\u043e\u043c \u2014 \u043e\u0441\u043e\u0431\u0435\u043d\u043d\u043e \u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u043e\u043d\u043d\u043e\u0441\u0442\u044c.<\/li>\n<\/ul>\n<p>  <\/p>\n<p>\u0421 \u0442\u043e\u0447\u043a\u0438 \u0437\u0440\u0435\u043d\u0438\u044f \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0430 \u0437\u043e\u043e\u043f\u0430\u0440\u043a\u0430 \u0432\u0441\u0435 \u0432\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u0442\u0430\u043a:<\/p>\n<p>  <\/p>\n<ul>\n<li>\u041a\u0440\u0430\u0442\u043d\u043e\u0435 \u0443\u0432\u0435\u043b\u0438\u0447\u0435\u043d\u0438\u0435 \u0441\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u0438 \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u0439 \u0438\u00a0\u0442\u0435\u0445\u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438 \u043e\u0442\u00a0\u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044f \u0421\u0423\u0411\u0414.<\/li>\n<li>\u0420\u0430\u0437\u0434\u0443\u0442\u0438\u0435 \u0448\u0442\u0430\u0442\u0430 \u0438 \u0443\u0432\u0435\u043b\u0438\u0447\u0435\u043d\u0438\u0435 \u0441\u0440\u043e\u043a\u043e\u0432.<\/li>\n<li>\u041f\u0440\u044f\u043c\u044b\u0435 \u0444\u0438\u043d\u0430\u043d\u0441\u043e\u0432\u044b\u0435 \u043f\u043e\u0442\u0435\u0440\u0438 \u0438\u043b\u0438 \u0448\u0442\u0440\u0430\u0444\u043d\u044b\u0435 \u0441\u0430\u043d\u043a\u0446\u0438\u0438 \u0438\u0437-\u0437\u0430 \u043d\u0435\u0441\u043e\u0433\u043b\u0430\u0441\u043e\u0432\u0430\u043d\u043d\u043e\u0441\u0442\u0438 \u0434\u0430\u043d\u043d\u044b\u0445.<\/li>\n<\/ul>\n<p>  <\/p>\n<p>\u041a\u043e\u0440\u043e\u0447\u0435 \u0433\u043e\u0432\u043e\u0440\u044f, \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u0437\u043d\u0430\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u0440\u043e\u0441\u0442 \u0441\u043e\u0432\u043e\u043a\u0443\u043f\u043d\u043e\u0439 \u0441\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u0438 \u0432\u043b\u0430\u0434\u0435\u043d\u0438\u044f \u0441\u0438\u0441\u0442\u0435\u043c\u043e\u0439. \u0415\u0441\u0442\u044c \u043b\u0438 \u0438\u0437 \u0441\u0438\u0442\u0443\u0430\u0446\u0438\u0438 \u00ab\u043c\u043d\u043e\u0433\u043e\u0432\u0430\u0440\u0438\u0430\u043d\u0442\u043d\u043e\u0433\u043e \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f\u00bb \u043a\u0430\u043a\u043e\u0439-\u0442\u043e \u0432\u044b\u0445\u043e\u0434?<\/p>\n<p>  <\/p>\n<h2 id=\"multimodelnostanchoranchor\">\u041c\u0443\u043b\u044c\u0442\u0438\u043c\u043e\u0434\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c<\/h2>\n<p>  <\/p>\n<p>\u0422\u0435\u0440\u043c\u0438\u043d \u00ab\u043c\u043d\u043e\u0433\u043e\u0432\u0430\u0440\u0438\u0430\u043d\u0442\u043d\u043e\u0435 \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435\u00bb \u0432\u043e\u0448\u0435\u043b \u0432 \u043e\u0431\u0438\u0445\u043e\u0434 \u0432 2011 \u0433\u043e\u0434\u0443. \u041e\u0441\u043e\u0437\u043d\u0430\u043d\u0438\u0435 \u043f\u0440\u043e\u0431\u043b\u0435\u043c \u043f\u043e\u0434\u0445\u043e\u0434\u0430 \u0438\u00a0\u043f\u043e\u0438\u0441\u043a \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u0437\u0430\u043d\u044f\u043b\u0438 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043b\u0435\u0442, \u0438\u00a0\u043a\u00a02015 \u0433\u043e\u0434\u0443 \u0443\u0441\u0442\u0430\u043c\u0438 \u0430\u043d\u0430\u043b\u0438\u0442\u0438\u043a\u043e\u0432 Gartner \u043e\u0442\u0432\u0435\u0442 \u0431\u044b\u043b \u0441\u0444\u043e\u0440\u043c\u0443\u043b\u0438\u0440\u043e\u0432\u0430\u043d:<\/p>\n<p>  <\/p>\n<ul>\n<li>\u0418\u0437 \u00ab<a href=\"https:\/\/www.gartner.com\/en\/documents\/3105622\">Market Guide for NoSQL DBMSs \u2014 2015<\/a>\u00bb:<br \/> <br \/>\n<blockquote><p>\u0411\u0443\u0434\u0443\u0449\u0435\u0435 \u0421\u0423\u0411\u0414, \u0438\u0445 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440 \u0438 \u0441\u043f\u043e\u0441\u043e\u0431\u043e\u0432 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u2014 <em>\u043c\u0443\u043b\u044c\u0442\u0438\u043c\u043e\u0434\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c<\/em>.  <\/p><\/blockquote>\n<\/li>\n<li>\u0418\u0437 \u00ab<a href=\"https:\/\/www.gartner.com\/en\/documents\/3467318\">Magic Quadrant for ODBMS \u2014 2016<\/a>\u00bb:<br \/> <br \/>\n<blockquote><p>\u0412\u0435\u0434\u0443\u0449\u0438\u0435 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u044b\u0435 \u0421\u0423\u0411\u0414 \u0431\u0443\u0434\u0443\u0442 \u043f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u0442\u044c \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043c\u043e\u0434\u0435\u043b\u0435\u0439 \u2014 \u0440\u0435\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u0443\u044e \u0438\u00a0\u043d\u0435\u0440\u0435\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u044b\u0435 \u2014 \u0432\u00a0\u0441\u043e\u0441\u0442\u0430\u0432\u0435 \u0435\u0434\u0438\u043d\u043e\u0439 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u044b.  <\/p><\/blockquote>\n<\/li>\n<\/ul>\n<p>  <\/p>\n<p>\u0418 \u043f\u043e\u0445\u043e\u0436\u0435, \u0447\u0442\u043e \u043d\u0430 \u044d\u0442\u043e\u0442 \u0440\u0430\u0437 \u0430\u043d\u0430\u043b\u0438\u0442\u0438\u043a\u0438 Gartner \u043d\u0435 \u043e\u0448\u0438\u0431\u043b\u0438\u0441\u044c. \u0415\u0441\u043b\u0438 \u0437\u0430\u0439\u0442\u0438 \u043d\u0430 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0443 \u0441\u00a0<a href=\"https:\/\/db-engines.com\/en\/ranking\">\u043e\u0441\u043d\u043e\u0432\u043d\u044b\u043c \u0440\u0435\u0439\u0442\u0438\u043d\u0433\u043e\u043c<\/a> \u0421\u0423\u0411\u0414 \u043d\u0430 DB-Engines, \u043c\u043e\u0436\u043d\u043e \u0443\u0432\u0438\u0434\u0435\u0442\u044c, \u0447\u0442\u043e \u0431\u043e\u043b\u044c\u0448\u0430\u044f \u0447\u0430\u0441\u0442\u044c \u0435\u0433\u043e \u043b\u0438\u0434\u0435\u0440\u043e\u0432 \u043f\u043e\u0437\u0438\u0446\u0438\u043e\u043d\u0438\u0440\u0443\u0435\u0442 \u0441\u0435\u0431\u044f \u0438\u043c\u0435\u043d\u043d\u043e \u043a\u0430\u043a \u043c\u0443\u043b\u044c\u0442\u0438\u043c\u043e\u0434\u0435\u043b\u044c\u043d\u044b\u0435 \u0421\u0423\u0411\u0414. \u0422\u043e \u0436\u0435 \u043c\u043e\u0436\u043d\u043e \u0443\u0432\u0438\u0434\u0435\u0442\u044c \u0438 \u043d\u0430 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0435 \u0441 \u043b\u044e\u0431\u044b\u043c \u0447\u0430\u0441\u0442\u043d\u044b\u043c \u0440\u0435\u0439\u0442\u0438\u043d\u0433\u043e\u043c.<\/p>\n<p>  <\/p>\n<p>\u0412 \u0442\u0430\u0431\u043b\u0438\u0446\u0435 \u043d\u0438\u0436\u0435 \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u043d\u044b \u0421\u0423\u0411\u0414 \u2014 \u043b\u0438\u0434\u0435\u0440\u044b \u0432 \u043a\u0430\u0436\u0434\u043e\u043c \u0438\u0437 \u0447\u0430\u0441\u0442\u043d\u044b\u0445 \u0440\u0435\u0439\u0442\u0438\u043d\u0433\u043e\u0432, \u0437\u0430\u044f\u0432\u043b\u044f\u044e\u0449\u0438\u0435 \u043e\u00a0\u0441\u0432\u043e\u0435\u0439 \u043c\u0443\u043b\u044c\u0442\u0438\u043c\u043e\u0434\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438. \u0414\u043b\u044f \u043a\u0430\u0436\u0434\u043e\u0439 \u0421\u0423\u0411\u0414 \u0443\u043a\u0430\u0437\u0430\u043d\u044b \u043f\u0435\u0440\u0432\u043e\u043d\u0430\u0447\u0430\u043b\u044c\u043d\u0430\u044f \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u043c\u0430\u044f \u043c\u043e\u0434\u0435\u043b\u044c (\u0431\u044b\u0432\u0448\u0430\u044f \u043a\u043e\u0433\u0434\u0430-\u0442\u043e \u0435\u0434\u0438\u043d\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0439) \u0438 \u043d\u0430\u0440\u044f\u0434\u0443 \u0441 \u043d\u0435\u0439 \u043c\u043e\u0434\u0435\u043b\u0438, \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u043c\u044b\u0435 \u0441\u0435\u0439\u0447\u0430\u0441. \u0422\u0430\u043a\u0436\u0435 \u043f\u0435\u0440\u0435\u0447\u0438\u0441\u043b\u0435\u043d\u044b \u0421\u0423\u0411\u0414, \u043f\u043e\u0437\u0438\u0446\u0438\u043e\u043d\u0438\u0440\u0443\u044e\u0449\u0438\u0435 \u0441\u0435\u0431\u044f \u043a\u0430\u043a \u00ab\u0438\u0437\u043d\u0430\u0447\u0430\u043b\u044c\u043d\u043e \u043c\u0443\u043b\u044c\u0442\u0438\u043c\u043e\u0434\u0435\u043b\u044c\u043d\u044b\u0435\u00bb, \u043d\u0435 \u0438\u043c\u0435\u044e\u0449\u0438\u0435 \u043f\u043e \u0437\u0430\u044f\u0432\u043b\u0435\u043d\u0438\u044f\u043c \u0441\u043e\u0437\u0434\u0430\u0442\u0435\u043b\u0435\u0439 \u043a\u0430\u043a\u043e\u0439-\u043b\u0438\u0431\u043e \u043f\u0435\u0440\u0432\u043e\u043d\u0430\u0447\u0430\u043b\u044c\u043d\u043e\u0439 \u0443\u043d\u0430\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043d\u043d\u043e\u0439 \u043c\u043e\u0434\u0435\u043b\u0438.<\/p>\n<p>  <\/p>\n<p>\u0414\u0430\u043b\u0435\u0435 \u0434\u043b\u044f \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u0438\u0437 \u044d\u0442\u0438\u0445 \u043a\u043b\u0430\u0441\u0441\u043e\u0432 \u043c\u044b \u043f\u043e\u043a\u0430\u0436\u0435\u043c, \u043a\u0430\u043a \u0440\u0435\u0430\u043b\u0438\u0437\u0443\u0435\u0442\u0441\u044f \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u0445 \u043c\u043e\u0434\u0435\u043b\u0435\u0439 \u0432\u00a0\u0421\u0423\u0411\u0414, \u043e\u0442\u043d\u043e\u0441\u044f\u0449\u0438\u0445\u0441\u044f \u043a \u044d\u0442\u043e\u043c\u0443 \u043a\u043b\u0430\u0441\u0441\u0443. \u041d\u0430\u0438\u0431\u043e\u043b\u0435\u0435 \u0432\u0430\u0436\u043d\u044b\u043c\u0438 \u0431\u0443\u0434\u0435\u043c \u0441\u0447\u0438\u0442\u0430\u0442\u044c \u0440\u0435\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u0443\u044e, \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u043d\u0443\u044e \u0438\u00a0\u0433\u0440\u0430\u0444\u043e\u0432\u0443\u044e \u043c\u043e\u0434\u0435\u043b\u0438, \u0438\u00a0\u043d\u0430 \u043f\u0440\u0438\u043c\u0435\u0440\u0435 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u044b\u0445 \u0421\u0423\u0411\u0414 \u043f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0442\u044c, \u043a\u0430\u043a \u0440\u0435\u0430\u043b\u0438\u0437\u0443\u044e\u0442\u0441\u044f \u00ab\u043d\u0435\u0434\u043e\u0441\u0442\u0430\u044e\u0449\u0438\u0435\u00bb.<\/p>\n<p>  <\/p>\n<div class=\"scrollable-table\">\n<table>\n<thead>\n<tr>\n<th>\u0421\u0423\u0411\u0414<\/th>\n<th>\u0418\u0437\u043d\u0430\u0447\u0430\u043b\u044c\u043d\u0430\u044f \u043c\u043e\u0434\u0435\u043b\u044c<\/th>\n<th>\u0414\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u043c\u043e\u0434\u0435\u043b\u0438<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>Oracle<\/td>\n<td>\u0420\u0435\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u0430\u044f<\/td>\n<td>\u0413\u0440\u0430\u0444\u043e\u0432\u0430\u044f, \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u043d\u0430\u044f<\/td>\n<\/tr>\n<tr>\n<td>MS SQL<\/td>\n<td>\u0420\u0435\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u0430\u044f<\/td>\n<td>\u0413\u0440\u0430\u0444\u043e\u0432\u0430\u044f, \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u043d\u0430\u044f<\/td>\n<\/tr>\n<tr>\n<td>PostgreSQL<\/td>\n<td>\u0420\u0435\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u0430\u044f<\/td>\n<td>\u0413\u0440\u0430\u0444\u043e\u0432\u0430\u044f*, \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u043d\u0430\u044f<\/td>\n<\/tr>\n<tr>\n<td>MarkLogic<\/td>\n<td>\u0414\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u043d\u0430\u044f<\/td>\n<td>\u0413\u0440\u0430\u0444\u043e\u0432\u0430\u044f, \u0440\u0435\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u0430\u044f<\/td>\n<\/tr>\n<tr>\n<td>MongoDB<\/td>\n<td>\u0414\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u043d\u0430\u044f<\/td>\n<td>\u041a\u043b\u044e\u0447-\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435, \u0433\u0440\u0430\u0444\u043e\u0432\u0430\u044f*<\/td>\n<\/tr>\n<tr>\n<td>DataStax<\/td>\n<td>Wide-column<\/td>\n<td>\u0414\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u043d\u0430\u044f, \u0433\u0440\u0430\u0444\u043e\u0432\u0430\u044f<\/td>\n<\/tr>\n<tr>\n<td>Redis<\/td>\n<td>\u041a\u043b\u044e\u0447-\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435<\/td>\n<td>\u0414\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u043d\u0430\u044f, \u0433\u0440\u0430\u0444\u043e\u0432\u0430\u044f*<\/td>\n<\/tr>\n<tr>\n<td>ArangoDB<\/td>\n<td>\u2014<\/td>\n<td>\u0413\u0440\u0430\u0444\u043e\u0432\u0430\u044f, \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u043d\u0430\u044f<\/td>\n<\/tr>\n<tr>\n<td>OrientDB<\/td>\n<td>\u2014<\/td>\n<td>\u0413\u0440\u0430\u0444\u043e\u0432\u0430\u044f, \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u043d\u0430\u044f, \u0440\u0435\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u0430\u044f<\/td>\n<\/tr>\n<tr>\n<td>Azure CosmosDB<\/td>\n<td>\u2014<\/td>\n<td>\u0413\u0440\u0430\u0444\u043e\u0432\u0430\u044f, \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u043d\u0430\u044f, \u0440\u0435\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u0430\u044f<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<p>  <\/p>\n<p>\u0417\u0432\u0435\u0437\u0434\u043e\u0447\u043a\u0430\u043c\u0438 \u0432 \u0442\u0430\u0431\u043b\u0438\u0446\u0435 \u043f\u043e\u043c\u0435\u0447\u0435\u043d\u044b \u0443\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u0438\u044f, \u0442\u0440\u0435\u0431\u0443\u044e\u0449\u0438\u0435 \u043e\u0433\u043e\u0432\u043e\u0440\u043e\u043a: <\/p>\n<p>  <\/p>\n<ul>\n<li>\u0421\u0423\u0411\u0414 PostgreSQL \u043d\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442 \u0433\u0440\u0430\u0444\u043e\u0432\u0443\u044e \u043c\u043e\u0434\u0435\u043b\u044c \u0434\u0430\u043d\u043d\u044b\u0445, \u043e\u0434\u043d\u0430\u043a\u043e \u0435\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442 \u0442\u0430\u043a\u043e\u0439 \u043f\u0440\u043e\u0434\u0443\u043a\u0442 <a href=\"https:\/\/wiki.postgresql.org\/wiki\/PostgreSQL_derived_databases\">\u043d\u0430 \u0435\u0435 \u043e\u0441\u043d\u043e\u0432\u0435<\/a>, \u043a\u0430\u043a, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, AgensGraph.<\/li>\n<li>\u041f\u0440\u0438\u043c\u0435\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u043a MongoDB \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u0435\u0435 \u0433\u043e\u0432\u043e\u0440\u0438\u0442\u044c \u0441\u043a\u043e\u0440\u0435\u0435 \u043e \u043d\u0430\u043b\u0438\u0447\u0438\u0438 \u0433\u0440\u0430\u0444\u043e\u0432\u044b\u0445 \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u043e\u0432 \u0432 \u044f\u0437\u044b\u043a\u0435 \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432 (<a href=\"https:\/\/docs.mongodb.com\/manual\/reference\/operator\/aggregation\/lookup\/index.html#lookup-aggregation\"><code>$lookup<\/code><\/a>, <a href=\"https:\/\/docs.mongodb.com\/manual\/reference\/operator\/aggregation\/graphLookup\/index.html#graphlookup-aggregation\"><code>$graphLookup<\/code><\/a>), \u0447\u0435\u043c \u043e \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0435 \u0433\u0440\u0430\u0444\u043e\u0432\u043e\u0439 \u043c\u043e\u0434\u0435\u043b\u0438, \u0445\u043e\u0442\u044f, \u043a\u043e\u043d\u0435\u0447\u043d\u043e, \u0438\u0445 \u0432\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u043f\u043e\u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043b\u043e \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u0439 \u043d\u0430 \u0443\u0440\u043e\u0432\u043d\u0435 \u0444\u0438\u0437\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u0432 \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0438 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438 \u0433\u0440\u0430\u0444\u043e\u0432\u043e\u0439 \u043c\u043e\u0434\u0435\u043b\u0438.<\/li>\n<li>\u041f\u0440\u0438\u043c\u0435\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u043a Redis \u0438\u043c\u0435\u0435\u0442\u0441\u044f \u0432 \u0432\u0438\u0434\u0443 \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u0435 <a href=\"https:\/\/oss.redislabs.com\/redisgraph\/\">RedisGraph<\/a>.<\/li>\n<\/ul>\n<p>  <\/p>\n<h2 id=\"multimodelnye-subd-na-osnove-relyacionnoy-modelianchoranchor\">\u041c\u0443\u043b\u044c\u0442\u0438\u043c\u043e\u0434\u0435\u043b\u044c\u043d\u044b\u0435 \u0421\u0423\u0411\u0414 \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u0440\u0435\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u043e\u0439 \u043c\u043e\u0434\u0435\u043b\u0438<\/h2>\n<p>  <\/p>\n<p>\u0412\u0435\u0434\u0443\u0449\u0438\u043c\u0438 \u0421\u0423\u0411\u0414 \u0432 \u043d\u0430\u0441\u0442\u043e\u044f\u0449\u0435\u0435 \u0432\u0440\u0435\u043c\u044f \u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u0440\u0435\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u044b\u0435, \u0438 \u043f\u0440\u043e\u0433\u043d\u043e\u0437 Gartner \u043d\u0435\u043b\u044c\u0437\u044f \u0431\u044b\u043b\u043e \u0431\u044b \u0441\u0447\u0438\u0442\u0430\u0442\u044c \u0441\u0431\u044b\u0432\u0448\u0438\u043c\u0441\u044f, \u0435\u0441\u043b\u0438 \u0431\u044b \u0420\u0421\u0423\u0411\u0414 \u043d\u0435 \u0434\u0435\u043c\u043e\u043d\u0441\u0442\u0440\u0438\u0440\u043e\u0432\u0430\u043b\u0438 \u0434\u0432\u0438\u0436\u0435\u043d\u0438\u044f \u0432 \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0438 \u043c\u0443\u043b\u044c\u0442\u0438\u043c\u043e\u0434\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438. \u0418 \u043e\u043d\u0438 \u0434\u0435\u043c\u043e\u043d\u0441\u0442\u0440\u0438\u0440\u0443\u044e\u0442. \u041a \u0441\u043b\u043e\u0432\u0443, \u0441\u043e\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044f \u043e \u0442\u043e\u043c, \u0447\u0442\u043e \u043c\u0443\u043b\u044c\u0442\u0438\u043c\u043e\u0434\u0435\u043b\u044c\u043d\u0430\u044f \u0421\u0423\u0411\u0414 \u043f\u043e\u0434\u043e\u0431\u043d\u0430 \u0448\u0432\u0435\u0439\u0446\u0430\u0440\u0441\u043a\u043e\u043c\u0443 \u043d\u043e\u0436\u0443, \u043a\u043e\u0442\u043e\u0440\u044b\u043c \u043d\u0438\u0447\u0435\u0433\u043e \u043d\u0435\u043b\u044c\u0437\u044f \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0445\u043e\u0440\u043e\u0448\u043e, \u043c\u043e\u0436\u043d\u043e \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u044f\u0442\u044c \u0441\u0440\u0430\u0437\u0443 \u041b\u0430\u0440\u0440\u0438 \u042d\u043b\u043b\u0438\u0441\u043e\u043d\u0443.<\/p>\n<p>  <\/p>\n<p>\u0410\u0432\u0442\u043e\u0440\u0443, \u043e\u0434\u043d\u0430\u043a\u043e, \u0431\u043e\u043b\u044c\u0448\u0435 \u043d\u0440\u0430\u0432\u0438\u0442\u0441\u044f \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u043c\u0443\u043b\u044c\u0442\u0438\u043c\u043e\u0434\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u0432 Microsoft SQL Server, \u043d\u0430 \u043f\u0440\u0438\u043c\u0435\u0440\u0435 \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u0438 \u0431\u0443\u0434\u0435\u0442 \u0432\u0435\u0441\u0442\u0438\u0441\u044c \u0440\u0430\u0441\u0441\u043a\u0430\u0437.<\/p>\n<p>  <\/p>\n<h3 id=\"dokumentnaya-model-v-ms-sql-serveranchoranchor\">\u0414\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u043d\u0430\u044f \u043c\u043e\u0434\u0435\u043b\u044c \u0432 MS SQL Server<\/h3>\n<p>  <\/p>\n<p>\u041e \u0442\u043e\u043c, \u043a\u0430\u043a \u0432 MS SQL Server \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u0430 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u043d\u043e\u0439 \u043c\u043e\u0434\u0435\u043b\u0438, \u043d\u0430 \u0425\u0430\u0431\u0440\u0435 \u0443\u0436\u0435 \u0431\u044b\u043b\u043e \u0434\u0432\u0435 \u043e\u0442\u043b\u0438\u0447\u043d\u044b\u0445 \u0441\u0442\u0430\u0442\u044c\u0438, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0438\u043c\u0441\u044f \u043a\u0440\u0430\u0442\u043a\u0438\u043c \u043f\u0435\u0440\u0435\u0441\u043a\u0430\u0437\u043e\u043c \u0438 \u043a\u043e\u043c\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u0435\u043c: <\/p>\n<p>  <\/p>\n<ul>\n<li><a href=\"https:\/\/habr.com\/ru\/post\/317166\/\">\u0420\u0430\u0431\u043e\u0442\u0430\u0435\u043c \u0441 JSON \u0432 SQL Server 2016<\/a><\/li>\n<li><a href=\"https:\/\/habr.com\/ru\/post\/317166\/\">SQL Server 2017 JSON<\/a><\/li>\n<\/ul>\n<p>  <\/p>\n<p>\u0421\u043f\u043e\u0441\u043e\u0431 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u043d\u043e\u0439 \u043c\u043e\u0434\u0435\u043b\u0438 \u0432 MS SQL Server \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0442\u0438\u043f\u0438\u0447\u0435\u043d \u0434\u043b\u044f \u0440\u0435\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u044b\u0445 \u0421\u0423\u0411\u0414: JSON-\u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u044b \u043f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u0435\u0442\u0441\u044f \u0445\u0440\u0430\u043d\u0438\u0442\u044c \u0432 \u043e\u0431\u044b\u0447\u043d\u044b\u0445 \u0442\u0435\u043a\u0441\u0442\u043e\u0432\u044b\u0445 \u043f\u043e\u043b\u044f\u0445. \u041f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u043d\u043e\u0439 \u043c\u043e\u0434\u0435\u043b\u0438 \u0437\u0430\u043a\u043b\u044e\u0447\u0430\u0435\u0442\u0441\u044f \u0432 \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0438 \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0445 \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u043e\u0432 \u0434\u043b\u044f \u0440\u0430\u0437\u0431\u043e\u0440\u0430 \u044d\u0442\u043e\u0433\u043e JSON:<\/p>\n<p>  <\/p>\n<ul>\n<li><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/t-sql\/functions\/json-value-transact-sql\"><code>JSON_VALUE<\/code><\/a> \u0434\u043b\u044f \u0438\u0437\u0432\u043b\u0435\u0447\u0435\u043d\u0438\u044f \u0441\u043a\u0430\u043b\u044f\u0440\u043d\u044b\u0445 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439 \u0430\u0442\u0440\u0438\u0431\u0443\u0442\u043e\u0432,<\/li>\n<li><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/t-sql\/functions\/json-query-transact-sql\"><code>JSON_QUERY<\/code><\/a> \u0434\u043b\u044f \u0438\u0437\u0432\u043b\u0435\u0447\u0435\u043d\u0438\u044f \u043f\u043e\u0434\u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u043e\u0432.<\/li>\n<\/ul>\n<p>  <\/p>\n<p>\u0412\u0442\u043e\u0440\u044b\u043c \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u043e\u043c \u043e\u0431\u043e\u0438\u0445 \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u043e\u0432 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u0435 \u0432 JSONPath-\u043f\u043e\u0434\u043e\u0431\u043d\u043e\u043c \u0441\u0438\u043d\u0442\u0430\u043a\u0441\u0438\u0441\u0435.<\/p>\n<p>  <\/p>\n<p>\u0410\u0431\u0441\u0442\u0440\u0430\u043a\u0442\u043d\u043e \u043c\u043e\u0436\u043d\u043e \u0441\u043a\u0430\u0437\u0430\u0442\u044c, \u0447\u0442\u043e \u0445\u0440\u0430\u043d\u0438\u043c\u044b\u0435 \u0442\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u044b \u043d\u0435 \u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u0432 \u0440\u0435\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u043e\u0439 \u0421\u0423\u0411\u0414 \u00ab\u0441\u0443\u0449\u043d\u043e\u0441\u0442\u044f\u043c\u0438 \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u043a\u043b\u0430\u0441\u0441\u0430\u00bb, \u0432 \u043e\u0442\u043b\u0438\u0447\u0438\u0435 \u043e\u0442 \u043a\u043e\u0440\u0442\u0435\u0436\u0435\u0439. \u041a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u043e \u0432 MS SQL Server \u0432\u00a0\u043d\u0430\u0441\u0442\u043e\u044f\u0449\u0435\u0435 \u0432\u0440\u0435\u043c\u044f \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u044e\u0442\u00a0\u0438\u043d\u0434\u0435\u043a\u0441\u044b \u043f\u043e \u043f\u043e\u043b\u044f\u043c JSON-\u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u043e\u0432, \u0447\u0442\u043e \u0434\u0435\u043b\u0430\u0435\u0442 \u0437\u0430\u0442\u0440\u0443\u0434\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u043c\u0438 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f \u0442\u0430\u0431\u043b\u0438\u0446 \u043f\u043e\u00a0\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f\u043c \u044d\u0442\u0438\u0445 \u043f\u043e\u043b\u0435\u0439 \u0438 \u0434\u0430\u0436\u0435 \u0432\u044b\u0431\u043e\u0440\u043a\u0443 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u043e\u0432 \u043f\u043e\u00a0\u044d\u0442\u0438\u043c \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f\u043c. \u0412\u043f\u0440\u043e\u0447\u0435\u043c, \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u043f\u043e \u0442\u0430\u043a\u043e\u043c\u0443 \u043f\u043e\u043b\u044e \u0432\u044b\u0447\u0438\u0441\u043b\u0438\u043c\u044b\u0439 \u0441\u0442\u043e\u043b\u0431\u0435\u0446 \u0438 \u0438\u043d\u0434\u0435\u043a\u0441 \u043f\u043e \u043d\u0435\u043c\u0443.<\/p>\n<p>  <\/p>\n<p>\u0414\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e MS SQL Server \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u0443\u0434\u043e\u0431\u043d\u043e \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u0438\u0440\u043e\u0432\u0430\u0442\u044c JSON-\u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442 \u0438\u0437\u00a0\u0441\u043e\u0434\u0435\u0440\u0436\u0438\u043c\u043e\u0433\u043e \u0442\u0430\u0431\u043b\u0438\u0446 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u0430 <a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/json\/format-query-results-as-json-with-for-json-sql-server\"><code>FOR JSON PATH<\/code><\/a> \u2014 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c, \u0432 \u0438\u0437\u0432\u0435\u0441\u0442\u043d\u043e\u043c \u0441\u043c\u044b\u0441\u043b\u0435 \u043f\u0440\u043e\u0442\u0438\u0432\u043e\u043f\u043e\u043b\u043e\u0436\u043d\u0443\u044e \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0435\u0439, \u043e\u0431\u044b\u0447\u043d\u043e\u043c\u0443 \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044e. \u041f\u043e\u043d\u044f\u0442\u043d\u043e, \u0447\u0442\u043e \u043a\u0430\u043a\u043e\u0439 \u0431\u044b \u0431\u044b\u0441\u0442\u0440\u043e\u0439 \u043d\u0438 \u0431\u044b\u043b\u0430 \u0420\u0421\u0423\u0411\u0414, \u0442\u0430\u043a\u043e\u0439 \u043f\u043e\u0434\u0445\u043e\u0434 \u043f\u0440\u043e\u0442\u0438\u0432\u043e\u0440\u0435\u0447\u0438\u0442 \u0438\u0434\u0435\u043e\u043b\u043e\u0433\u0438\u0438 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u043d\u044b\u0445 \u0421\u0423\u0411\u0414, \u043f\u043e \u0441\u0443\u0442\u0438 \u0445\u0440\u0430\u043d\u044f\u0449\u0438\u0445 \u0433\u043e\u0442\u043e\u0432\u044b\u0435 \u043e\u0442\u0432\u0435\u0442\u044b \u043d\u0430 \u043f\u043e\u043f\u0443\u043b\u044f\u0440\u043d\u044b\u0435 \u0437\u0430\u043f\u0440\u043e\u0441\u044b, \u0438 \u043c\u043e\u0436\u0435\u0442 \u0440\u0435\u0448\u0430\u0442\u044c \u043b\u0438\u0448\u044c \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b \u0443\u0434\u043e\u0431\u0441\u0442\u0432\u0430 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438, \u043d\u043e \u043d\u0435 \u0431\u044b\u0441\u0442\u0440\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f.<\/p>\n<p>  <\/p>\n<p>\u041d\u0430\u043a\u043e\u043d\u0435\u0446, MS SQL Server \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0440\u0435\u0448\u0430\u0442\u044c \u0437\u0430\u0434\u0430\u0447\u0443, \u043e\u0431\u0440\u0430\u0442\u043d\u0443\u044e \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044e \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430: \u043c\u043e\u0436\u043d\u043e \u0440\u0430\u0437\u043b\u043e\u0436\u0438\u0442\u044c JSON \u043f\u043e \u0442\u0430\u0431\u043b\u0438\u0446\u0430\u043c \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e <a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/t-sql\/functions\/openjson-transact-sql\"><code>OPENJSON<\/code><\/a>. \u0415\u0441\u043b\u0438 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442 \u043d\u0435 \u0441\u043e\u0432\u0441\u0435\u043c \u043f\u043b\u043e\u0441\u043a\u0438\u0439, \u043f\u043e\u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c <code>CROSS APPLY<\/code>.<\/p>\n<p>  <\/p>\n<h3 id=\"grafovaya-model-v-ms-sql-serveranchoranchor\">\u0413\u0440\u0430\u0444\u043e\u0432\u0430\u044f \u043c\u043e\u0434\u0435\u043b\u044c \u0432 MS SQL Server<\/h3>\n<p>  <\/p>\n<p>\u041f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 \u0433\u0440\u0430\u0444\u043e\u0432\u043e\u0439 (<abbr>LPG<\/abbr>) \u043c\u043e\u0434\u0435\u043b\u0438 \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u0430 \u0432 Microsoft SQL Server \u0442\u043e\u0436\u0435 \u0432\u043f\u043e\u043b\u043d\u0435 <a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/graphs\/sql-graph-overview?view=sql-server-2017\">\u043f\u0440\u0435\u0434\u0441\u043a\u0430\u0437\u0443\u0435\u043c\u043e<\/a>: \u043f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u0435\u0442\u0441\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0435 \u0442\u0430\u0431\u043b\u0438\u0446\u044b \u0434\u043b\u044f \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u0443\u0437\u043b\u043e\u0432 \u0438 \u0434\u043b\u044f \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u0440\u0435\u0431\u0435\u0440 \u0433\u0440\u0430\u0444\u0430. \u0422\u0430\u043a\u0438\u0435 \u0442\u0430\u0431\u043b\u0438\u0446\u044b \u0441\u043e\u0437\u0434\u0430\u044e\u0442\u0441\u044f \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u0439 <code>CREATE TABLE AS NODE<\/code> \u0438 <code>CREATE TABLE AS EDGE<\/code> \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0435\u043d\u043d\u043e.<\/p>\n<p>  <\/p>\n<p>\u0422\u0430\u0431\u043b\u0438\u0446\u044b \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u0432\u0438\u0434\u0430 \u0441\u0445\u043e\u0434\u043d\u044b \u0441 \u043e\u0431\u044b\u0447\u043d\u044b\u043c\u0438 \u0442\u0430\u0431\u043b\u0438\u0446\u0430\u043c\u0438 \u0434\u043b\u044f \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u0437\u0430\u043f\u0438\u0441\u0435\u0439 \u0441 \u0442\u0435\u043c \u043b\u0438\u0448\u044c \u0432\u043d\u0435\u0448\u043d\u0438\u043c \u043e\u0442\u043b\u0438\u0447\u0438\u0435\u043c, \u0447\u0442\u043e \u0432 \u0442\u0430\u0431\u043b\u0438\u0446\u0435 \u043f\u0440\u0438\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u0435\u0442 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u043e\u0435 \u043f\u043e\u043b\u0435 <code>$node_id<\/code> \u2014 \u0443\u043d\u0438\u043a\u0430\u043b\u044c\u043d\u044b\u0439 \u0432 \u043f\u0440\u0435\u0434\u0435\u043b\u0430\u0445 \u0431\u0430\u0437\u044b \u0434\u0430\u043d\u043d\u044b\u0445 \u0438\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440 \u0443\u0437\u043b\u0430 \u0433\u0440\u0430\u0444\u0430.<\/p>\n<p>  <\/p>\n<p>\u0410\u043d\u0430\u043b\u043e\u0433\u0438\u0447\u043d\u043e, \u0442\u0430\u0431\u043b\u0438\u0446\u044b \u0432\u0442\u043e\u0440\u043e\u0433\u043e \u0432\u0438\u0434\u0430 \u0438\u043c\u0435\u044e\u0442 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0435 \u043f\u043e\u043b\u044f <code>$from_id<\/code> \u0438 <code>$to_id<\/code>, \u0437\u0430\u043f\u0438\u0441\u0438 \u0432 \u0442\u0430\u043a\u0438\u0445 \u0442\u0430\u0431\u043b\u0438\u0446\u0430\u0445 \u043f\u043e\u043d\u044f\u0442\u043d\u044b\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c \u0437\u0430\u0434\u0430\u044e\u0442 \u0441\u0432\u044f\u0437\u0438 \u043c\u0435\u0436\u0434\u0443 \u0443\u0437\u043b\u0430\u043c\u0438. \u0414\u043b\u044f \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u0441\u0432\u044f\u0437\u0435\u0439 \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u0432\u0438\u0434\u0430 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u0430\u044f \u0442\u0430\u0431\u043b\u0438\u0446\u0430.<\/p>\n<p>  <\/p>\n<p><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/ts\/yx\/yf\/tsyxyfmueakjzmknlgaqxzkwx-o.png\" align=\"right\"> \u041f\u0440\u043e\u0438\u043b\u043b\u044e\u0441\u0442\u0440\u0438\u0440\u0443\u0435\u043c \u0441\u043a\u0430\u0437\u0430\u043d\u043d\u043e\u0435 \u043f\u0440\u0438\u043c\u0435\u0440\u043e\u043c. \u041f\u0443\u0441\u0442\u044c \u0433\u0440\u0430\u0444\u043e\u0432\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435 \u0438\u043c\u0435\u044e\u0442 \u0441\u0445\u0435\u043c\u0443 \u043a\u0430\u043a \u043d\u0430 \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u043d\u043d\u043e\u043c \u0440\u0438\u0441\u0443\u043d\u043a\u0435. \u0422\u043e\u0433\u0434\u0430 \u0434\u043b\u044f \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0435\u0439 \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u044b \u0432 \u0431\u0430\u0437\u0435 \u0434\u0430\u043d\u043d\u044b\u0445 \u043d\u0443\u0436\u043d\u043e \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u044c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 DDL-\u0437\u0430\u043f\u0440\u043e\u0441\u044b:<\/p>\n<p>  <\/p>\n<pre><code class=\"sql\">CREATE TABLE Person (   ID INTEGER NOT NULL,   name VARCHAR(100) ) AS NODE;  CREATE TABLE Cafe (   ID INTEGER NOT NULL,    name VARCHAR(100),  ) AS NODE;  CREATE TABLE likes (   rating INTEGER ) AS EDGE;  CREATE TABLE friendOf   AS EDGE;  ALTER TABLE likes   ADD CONSTRAINT EC_LIKES CONNECTION (Person TO Cafe);<\/code><\/pre>\n<p>  <\/p>\n<p>\u041e\u0441\u043d\u043e\u0432\u043d\u0430\u044f \u0441\u043f\u0435\u0446\u0438\u0444\u0438\u043a\u0430 \u0442\u0430\u043a\u0438\u0445 \u0442\u0430\u0431\u043b\u0438\u0446 \u0437\u0430\u043a\u043b\u044e\u0447\u0430\u0435\u0442\u0441\u044f \u0432 \u0442\u043e\u043c, \u0447\u0442\u043e \u0432 \u0437\u0430\u043f\u0440\u043e\u0441\u0430\u0445 \u043a \u043d\u0438\u043c \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0433\u0440\u0430\u0444\u043e\u0432\u044b\u0435 \u043f\u0430\u0442\u0442\u0435\u0440\u043d\u044b \u0441 Cypher-\u043f\u043e\u0434\u043e\u0431\u043d\u044b\u043c \u0441\u0438\u043d\u0442\u0430\u043a\u0441\u0438\u0441\u043e\u043c (\u0432\u043f\u0440\u043e\u0447\u0435\u043c, \u00ab<code>*<\/code>\u00bb \u0438 \u043f\u0440. \u043f\u043e\u043a\u0430 \u043d\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u044e\u0442\u0441\u044f). \u041c\u043e\u0436\u043d\u043e \u0442\u0430\u043a\u0436\u0435 \u043f\u0440\u0435\u0434\u043f\u043e\u043b\u043e\u0436\u0438\u0442\u044c, \u0447\u0442\u043e \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u0434\u0430\u043d\u043d\u044b\u0445 \u0432 \u044d\u0442\u0438\u0445 \u00ab\u0442\u0430\u0431\u043b\u0438\u0446\u0430\u0445\u00bb \u043e\u0442\u043b\u0438\u0447\u0435\u043d \u043e\u0442 \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c\u0430 \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u0434\u0430\u043d\u043d\u044b\u0445 \u043e\u0431\u044b\u0447\u043d\u044b\u0445 \u0442\u0430\u0431\u043b\u0438\u0446 \u0438 \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u043d \u0434\u043b\u044f \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u043f\u043e\u0434\u043e\u0431\u043d\u044b\u0445 \u0433\u0440\u0430\u0444\u043e\u0432\u044b\u0445 \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432.<\/p>\n<p>  <\/p>\n<pre><code class=\"sql\">SELECT Cafe.name   FROM Person, likes, Cafe   WHERE MATCH (Person-(friendOf)-(likes)-&gt;Cafe)   AND Person.name = 'John';<\/code><\/pre>\n<p>  <\/p>\n<p>\u0411\u043e\u043b\u0435\u0435 \u0442\u043e\u0433\u043e, \u0434\u043e\u0432\u043e\u043b\u044c\u043d\u043e \u0442\u0440\u0443\u0434\u043d\u043e \u043f\u0440\u0438 \u0440\u0430\u0431\u043e\u0442\u0435 \u0441 \u0442\u0430\u043a\u0438\u043c\u0438 \u0442\u0430\u0431\u043b\u0438\u0446\u0430\u043c\u0438 \u044d\u0442\u0438 \u0433\u0440\u0430\u0444\u043e\u0432\u044b\u0435 \u043f\u0430\u0442\u0442\u0435\u0440\u043d\u044b \u043d\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c, \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u0432 \u043e\u0431\u044b\u0447\u043d\u044b\u0445 SQL-\u0437\u0430\u043f\u0440\u043e\u0441\u0430\u0445 \u0434\u043b\u044f \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u0430\u043d\u0430\u043b\u043e\u0433\u0438\u0447\u043d\u044b\u0445 \u0437\u0430\u0434\u0430\u0447 \u043f\u043e\u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u043f\u0440\u0435\u0434\u043f\u0440\u0438\u043d\u0438\u043c\u0430\u0442\u044c \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u0443\u0441\u0438\u043b\u0438\u044f \u0434\u043b\u044f \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0445 \u00ab\u0433\u0440\u0430\u0444\u043e\u0432\u044b\u0445\u00bb \u0438\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440\u043e\u0432 \u0443\u0437\u043b\u043e\u0432 (<code>$node_id<\/code>, <code>$from_id<\/code>, <code>$to_id<\/code>; \u043f\u043e \u044d\u0442\u043e\u0439 \u0436\u0435 \u043f\u0440\u0438\u0447\u0438\u043d\u0435 \u0437\u0430\u043f\u0440\u043e\u0441\u044b \u043d\u0430 \u0432\u0441\u0442\u0430\u0432\u043a\u0443 \u0434\u0430\u043d\u043d\u044b\u0445 \u043d\u0435 \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u043d\u044b \u0437\u0434\u0435\u0441\u044c \u043a\u0430\u043a \u0438\u0437\u043b\u0438\u0448\u043d\u0435 \u0433\u0440\u043e\u043c\u043e\u0437\u0434\u043a\u0438\u0435).   <\/p>\n<p>  <\/p>\n<p>\u041f\u043e\u0434\u0432\u043e\u0434\u044f \u0438\u0442\u043e\u0433 \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u044e \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0439 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u043d\u043e\u0439 \u0438 \u0433\u0440\u0430\u0444\u043e\u0432\u043e\u0439 \u043c\u043e\u0434\u0435\u043b\u0435\u0439 \u0432 MS SQL Server, \u044f \u0431\u044b \u043e\u0442\u043c\u0435\u0442\u0438\u043b, \u0447\u0442\u043e \u043f\u043e\u0434\u043e\u0431\u043d\u044b\u0435 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u043e\u0434\u043d\u043e\u0439 \u043c\u043e\u0434\u0435\u043b\u0438 \u043f\u043e\u0432\u0435\u0440\u0445 \u0434\u0440\u0443\u0433\u043e\u0439 \u043d\u0435 \u043a\u0430\u0436\u0443\u0442\u0441\u044f \u0443\u0434\u0430\u0447\u043d\u044b\u043c\u0438 \u0432\u00a0\u043f\u0435\u0440\u0432\u0443\u044e \u043e\u0447\u0435\u0440\u0435\u0434\u044c \u0441 \u0442\u043e\u0447\u043a\u0438 \u0437\u0440\u0435\u043d\u0438\u044f \u044f\u0437\u044b\u043a\u043e\u0432\u043e\u0433\u043e \u0434\u0438\u0437\u0430\u0439\u043d\u0430. \u0422\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u0440\u0430\u0441\u0448\u0438\u0440\u044f\u0442\u044c \u043e\u0434\u0438\u043d \u044f\u0437\u044b\u043a \u0434\u0440\u0443\u0433\u0438\u043c, \u044f\u0437\u044b\u043a\u0438 \u043d\u0435 \u0432\u043f\u043e\u043b\u043d\u0435 \u00ab\u043e\u0440\u0442\u043e\u0433\u043e\u043d\u0430\u043b\u044c\u043d\u044b\u00bb, \u043f\u0440\u0430\u0432\u0438\u043b\u0430 \u0441\u043e\u0447\u0435\u0442\u0430\u0435\u043c\u043e\u0441\u0442\u0438 \u043c\u043e\u0433\u0443\u0442 \u0431\u044b\u0442\u044c \u0434\u043e\u0432\u043e\u043b\u044c\u043d\u043e \u043f\u0440\u0438\u0447\u0443\u0434\u043b\u0438\u0432\u044b. <\/p>\n<p>  <\/p>\n<h2 id=\"multimodelnye-subd-na-osnove-dokumentnoy-modelianchoranchor\">\u041c\u0443\u043b\u044c\u0442\u0438\u043c\u043e\u0434\u0435\u043b\u044c\u043d\u044b\u0435 \u0421\u0423\u0411\u0414 \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u043d\u043e\u0439 \u043c\u043e\u0434\u0435\u043b\u0438<\/h2>\n<p>  <\/p>\n<p>\u0412 \u044d\u0442\u043e\u043c \u0440\u0430\u0437\u0434\u0435\u043b\u0435 \u0445\u043e\u0447\u0435\u0442\u0441\u044f \u043f\u0440\u043e\u0438\u043b\u043b\u044e\u0441\u0442\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044e \u043c\u0443\u043b\u044c\u0442\u0438\u043c\u043e\u0434\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u0432 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u043d\u044b\u0445 \u0421\u0423\u0411\u0414 \u043d\u0430\u00a0\u043f\u0440\u0438\u043c\u0435\u0440\u0435 \u043d\u0435 \u043d\u0430\u0438\u0431\u043e\u043b\u0435\u0435 \u043f\u043e\u043f\u0443\u043b\u044f\u0440\u043d\u043e\u0439 MongoDB (\u043a\u0430\u043a \u0431\u044b\u043b\u043e \u0441\u043a\u0430\u0437\u0430\u043d\u043e, \u0432 \u043d\u0435\u0439 \u0435\u0441\u0442\u044c \u043b\u0438\u0448\u044c \u0443\u0441\u043b\u043e\u0432\u043d\u043e \u0433\u0440\u0430\u0444\u043e\u0432\u044b\u0435 \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u044b <code>$lookup<\/code> \u0438 <code>$graphLookup<\/code>, \u043d\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0449\u0438\u0435 \u043a \u0442\u043e\u043c\u0443 \u0436\u0435 \u043d\u0430 \u0448\u0430\u0440\u0434\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0445 \u043a\u043e\u043b\u043b\u0435\u043a\u0446\u0438\u044f\u0445), \u0430 \u043d\u0430 \u043f\u0440\u0438\u043c\u0435\u0440\u0435 \u0431\u043e\u043b\u0435\u0435 \u0437\u0440\u0435\u043b\u043e\u0439 \u0438\u00a0\u00ab\u044d\u043d\u0442\u0435\u0440\u043f\u0440\u0430\u0439\u0437\u043d\u043e\u0439\u00bb \u0421\u0423\u0411\u0414 <a href=\"https:\/\/www.marklogic.com\/\">MarkLogic<\/a>.<\/p>\n<p>  <\/p>\n<p>\u0418\u0442\u0430\u043a, \u043f\u0443\u0441\u0442\u044c \u043a\u043e\u043b\u043b\u0435\u043a\u0446\u0438\u044f \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442 \u043d\u0430\u0431\u043e\u0440 XML-\u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u043e\u0432 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0433\u043e \u0432\u0438\u0434\u0430 (\u0445\u0440\u0430\u043d\u0438\u0442\u044c JSON-\u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u044b MarkLogic \u0442\u043e\u0436\u0435 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442):<\/p>\n<p>  <\/p>\n<pre><code class=\"xml\">&lt;Person INN=\"631803299804\"&gt;   &lt;name&gt;John&lt;\/name&gt;   &lt;surname&gt;Smith&lt;\/surname&gt; &lt;\/Person&gt;<\/code><\/pre>\n<p>  <\/p>\n<h3 id=\"relyacionnaya-model-v-marklogicanchoranchor\">\u0420\u0435\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u0430\u044f \u043c\u043e\u0434\u0435\u043b\u044c \u0432 MarkLogic<\/h3>\n<p>  <\/p>\n<p>\u0420\u0435\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u043e\u0435 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043a\u043e\u043b\u043b\u0435\u043a\u0446\u0438\u0438 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u043e\u0432 \u043c\u043e\u0436\u043d\u043e \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e <a href=\"https:\/\/docs.marklogic.com\/guide\/sql\/creating-template-views\">\u0448\u0430\u0431\u043b\u043e\u043d\u0430 \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044f<\/a> (\u0441\u043e\u0434\u0435\u0440\u0436\u0438\u043c\u044b\u043c \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432 <code>value<\/code> \u0432 \u043f\u0440\u0438\u043c\u0435\u0440\u0435 \u043d\u0438\u0436\u0435 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u043b\u044c\u043d\u044b\u0439 XPath):<\/p>\n<p>  <\/p>\n<pre><code class=\"xml\">&lt;template xmlns=\"http:\/\/marklogic.com\/xdmp\/tde\"&gt;   &lt;context&gt;\/Person&lt;\/context&gt;   &lt;rows&gt;     &lt;row&gt;       &lt;view-name&gt;Person&lt;\/view-name&gt;       &lt;columns&gt;         &lt;column&gt;           &lt;name&gt;SSN&lt;\/name&gt;           &lt;value&gt;@SSN&lt;\/value&gt;           &lt;type&gt;string&lt;\/type&gt;         &lt;\/column&gt;         &lt;column&gt;           &lt;name&gt;name&lt;\/name&gt;           &lt;value&gt;name&lt;\/value&gt;         &lt;\/column&gt;         &lt;column&gt;           &lt;name&gt;surname&lt;\/name&gt;           &lt;value&gt;surname&lt;\/value&gt;         &lt;\/column&gt;       &lt;\/columns&gt;     &lt;\/row&gt;   &lt;rows&gt; &lt;\/template&gt;<\/code><\/pre>\n<p>  <\/p>\n<p>\u041a \u0441\u043e\u0437\u0434\u0430\u043d\u043d\u043e\u043c\u0443 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044e \u043c\u043e\u0436\u043d\u043e \u0430\u0434\u0440\u0435\u0441\u043e\u0432\u0430\u0442\u044c SQL-\u0437\u0430\u043f\u0440\u043e\u0441 (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0447\u0435\u0440\u0435\u0437 ODBC):<\/p>\n<p>  <\/p>\n<pre><code class=\"sql\">SELECT name, surname FROM Person WHERE name=\"John\"<\/code><\/pre>\n<p>  <\/p>\n<p>\u041a \u0441\u043e\u0436\u0430\u043b\u0435\u043d\u0438\u044e, \u0441\u043e\u0437\u0434\u0430\u043d\u043d\u043e\u0435 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0448\u0430\u0431\u043b\u043e\u043d\u0430 \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044f \u0440\u0435\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u043e\u0435 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u043e \u0442\u043e\u043b\u044c\u043a\u043e \u0434\u043b\u044f \u0447\u0442\u0435\u043d\u0438\u044f. \u041f\u0440\u0438 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0435 \u0437\u0430\u043f\u0440\u043e\u0441\u0430 \u043a \u043d\u0435\u043c\u0443 MarkLogic \u043f\u043e\u043f\u044b\u0442\u0430\u0435\u0442\u0441\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c <a href=\"https:\/\/docs.marklogic.com\/guide\/concepts\/indexing\">\u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u043d\u044b\u0435 \u0438\u043d\u0434\u0435\u043a\u0441\u044b<\/a>. \u041f\u0440\u0435\u0436\u0434\u0435 \u0432 MarkLogic \u0431\u044b\u043b\u0438 \u0438 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u043d\u044b\u0435 \u0440\u0435\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u044b\u0435 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044f, \u0446\u0435\u043b\u0438\u043a\u043e\u043c <a href=\"https:\/\/docs.marklogic.com\/guide\/sql\/creating-range-views\">\u043e\u0441\u043d\u043e\u0432\u0430\u043d\u043d\u044b\u0435 \u043d\u0430 \u0438\u043d\u0434\u0435\u043a\u0441\u0430\u0445<\/a> \u0438 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0435 \u043d\u0430 \u0437\u0430\u043f\u0438\u0441\u044c, \u043d\u043e \u0441\u0435\u0439\u0447\u0430\u0441 \u043e\u043d\u0438 \u0441\u0447\u0438\u0442\u0430\u044e\u0442\u0441\u044f deprecated.<\/p>\n<p>  <\/p>\n<h3 id=\"grafovaya-model-v-marklogicanchoranchor\">\u0413\u0440\u0430\u0444\u043e\u0432\u0430\u044f \u043c\u043e\u0434\u0435\u043b\u044c \u0432 MarkLogic<\/h3>\n<p>  <\/p>\n<p>\u0421 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u043e\u0439 \u0433\u0440\u0430\u0444\u043e\u0432\u043e\u0439 (<abbr>RDF<\/abbr>) \u043c\u043e\u0434\u0435\u043b\u0438 \u0432\u0441\u0435 \u043e\u0431\u0441\u0442\u043e\u0438\u0442 \u043f\u0440\u0438\u043c\u0435\u0440\u043d\u043e \u0442\u0430\u043a \u0436\u0435. \u0421 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043e\u043f\u044f\u0442\u044c-\u0442\u0430\u043a\u0438 <a href=\"https:\/\/docs.marklogic.com\/guide\/semantics\/tde\">\u0448\u0430\u0431\u043b\u043e\u043d\u0430 \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044f<\/a> \u043c\u043e\u0436\u043d\u043e \u0441\u043e\u0437\u0434\u0430\u0442\u044c RDF-\u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043a\u043e\u043b\u043b\u0435\u043a\u0446\u0438\u0438 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u043e\u0432 \u0438\u0437 \u043f\u0440\u0438\u043c\u0435\u0440\u0430 \u0432\u044b\u0448\u0435:<\/p>\n<p>  <\/p>\n<pre><code class=\"xml\">&lt;template xmlns=\"http:\/\/marklogic.com\/xdmp\/tde\"&gt;   &lt;context&gt;\/Person&lt;\/context&gt;     &lt;vars&gt;       &lt;var&gt;         &lt;name&gt;PREFIX&lt;\/name&gt;         &lt;val&gt;\"http:\/\/example.org\/example#\"&lt;\/val&gt;       &lt;\/var&gt;     &lt;\/vars&gt;   &lt;triples&gt;     &lt;triple&gt;       &lt;subject&gt;&lt;value&gt;sem:iri( $PREFIX || @SSN )&lt;\/value&gt;&lt;\/subject&gt;       &lt;predicate&gt;&lt;value&gt;sem:iri( $PREFIX || surname )&lt;\/value&gt;&lt;\/predicate&gt;       &lt;object&gt;&lt;value&gt;xs:string( surname )&lt;\/value&gt;&lt;\/object&gt;     &lt;\/triple&gt;     &lt;triple&gt;       &lt;subject&gt;&lt;value&gt;sem:iri( $PREFIX || @SSN )&lt;\/value&gt;&lt;\/subject&gt;       &lt;predicate&gt;&lt;value&gt;sem:iri( $PREFIX || name )&lt;\/value&gt;&lt;\/predicate&gt;       &lt;object&gt;&lt;value&gt;xs:string( name )&lt;\/value&gt;&lt;\/object&gt;     &lt;\/triple&gt;   &lt;\/triples&gt;   &lt;\/template&gt;<\/code><\/pre>\n<p>  <\/p>\n<p>\u041a \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u043e\u043c\u0443 RDF-\u0433\u0440\u0430\u0444\u0443 \u043c\u043e\u0436\u043d\u043e \u0430\u0434\u0440\u0435\u0441\u043e\u0432\u0430\u0442\u044c SPARQL-\u0437\u0430\u043f\u0440\u043e\u0441:<\/p>\n<p>  <\/p>\n<pre><code class=\"sql\">PREFIX : &lt;http:\/\/example.org\/example#&gt; SELECT ?name ?surname {   :631803299804 :name ?name ; :surname ?surname . }<\/code><\/pre>\n<p>  <\/p>\n<p>\u0412 \u043e\u0442\u043b\u0438\u0447\u0438\u0435 \u043e\u0442 \u0440\u0435\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u043e\u0439, \u0433\u0440\u0430\u0444\u043e\u0432\u0443\u044e \u043c\u043e\u0434\u0435\u043b\u044c MarkLogic \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442 \u0435\u0449\u0435 \u0434\u0432\u0443\u043c\u044f \u0434\u0440\u0443\u0433\u0438\u043c\u0438 \u0441\u043f\u043e\u0441\u043e\u0431\u0430\u043c\u0438: <\/p>\n<p>  <\/p>\n<ol>\n<li>\u0421\u0423\u0411\u0414 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u043f\u043e\u043b\u043d\u043e\u0446\u0435\u043d\u043d\u044b\u043c \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u043c \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435\u043c RDF-\u0434\u0430\u043d\u043d\u044b\u0445 (\u0442\u0440\u0438\u043f\u043b\u0435\u0442\u044b \u0432 \u043d\u0435\u043c \u0431\u0443\u0434\u0443\u0442 \u043d\u0430\u0437\u044b\u0432\u0430\u0442\u044c\u0441\u044f <a href=\"https:\/\/docs.marklogic.com\/guide\/semantics\/updating#id_50917\">managed<\/a> \u0432 \u043f\u0440\u043e\u0442\u0438\u0432\u043e\u043f\u043e\u043b\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u043e\u043f\u0438\u0441\u0430\u043d\u043d\u044b\u043c \u0432\u044b\u0448\u0435 <a href=\"https:\/\/docs.marklogic.com\/guide\/semantics\/tde\">extracted<\/a>). <\/li>\n<li>RDF \u0432 \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u0439 \u0441\u0435\u0440\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u043f\u043e\u043f\u0440\u043e\u0441\u0442\u0443 \u0432\u0441\u0442\u0430\u0432\u043b\u0435\u043d \u0432 XML- \u0438\u043b\u0438 JSON-\u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u044b (\u0438\u00a0\u0442\u0440\u0438\u043f\u043b\u0435\u0442\u044b \u0442\u043e\u0433\u0434\u0430 \u0431\u0443\u0434\u0443\u0442 \u043d\u0430\u0437\u044b\u0432\u0430\u0442\u044c\u0441\u044f <a href=\"https:\/\/docs.marklogic.com\/guide\/semantics\/embedded\">unmanaged<\/a>). \u0412\u0435\u0440\u043e\u044f\u0442\u043d\u043e, \u044d\u0442\u043e \u0442\u0430\u043a\u0430\u044f \u0430\u043b\u044c\u0442\u0435\u0440\u043d\u0430\u0442\u0438\u0432\u0430 \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c\u0430\u043c <code>idref<\/code> \u0438 \u043f\u0440.<\/li>\n<\/ol>\n<p>  <\/p>\n<p>\u0425\u043e\u0440\u043e\u0448\u0435\u0435 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043e \u0442\u043e\u043c, \u043a\u0430\u043a \u00ab\u043d\u0430 \u0441\u0430\u043c\u043e\u043c \u0434\u0435\u043b\u0435\u00bb \u0432\u0441\u0435 \u0443\u0441\u0442\u0440\u043e\u0435\u043d\u043e \u0432 MarkLogic, \u0434\u0430\u0435\u0442 <a href=\"https:\/\/docs.marklogic.com\/guide\/app-dev\/OpticAPI\">Optic API<\/a>, \u0432 \u044d\u0442\u043e\u043c \u0441\u043c\u044b\u0441\u043b\u0435 \u043e\u043d\u043e \u043d\u0438\u0437\u043a\u043e\u0443\u0440\u043e\u0432\u043d\u0435\u0432\u043e\u0435, \u0445\u043e\u0442\u044f \u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0435\u0433\u043e \u0441\u043a\u043e\u0440\u0435\u0435 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0435 \u2014 \u043f\u043e\u043f\u0440\u043e\u0431\u043e\u0432\u0430\u0442\u044c \u0430\u0431\u0441\u0442\u0440\u0430\u0433\u0438\u0440\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u043e\u0442\u00a0\u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u043e\u0439 \u043c\u043e\u0434\u0435\u043b\u0438 \u0434\u0430\u043d\u043d\u044b\u0445, \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0442\u044c \u0441\u043e\u0433\u043b\u0430\u0441\u043e\u0432\u0430\u043d\u043d\u0443\u044e \u0440\u0430\u0431\u043e\u0442\u0443 \u0441\u00a0\u0434\u0430\u043d\u043d\u044b\u043c\u0438 \u0432 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0445 \u043c\u043e\u0434\u0435\u043b\u044f\u0445, \u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u043e\u043d\u043d\u043e\u0441\u0442\u044c \u0438 \u043f\u0440.<\/p>\n<p>  <\/p>\n<h2 id=\"multimodelnye-subd-bez-osnovnoy-modelianchoranchor\">\u041c\u0443\u043b\u044c\u0442\u0438\u043c\u043e\u0434\u0435\u043b\u044c\u043d\u044b\u0435 \u0421\u0423\u0411\u0414 \u00ab\u0431\u0435\u0437 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0439 \u043c\u043e\u0434\u0435\u043b\u0438\u00bb<\/h2>\n<p>  <\/p>\n<p>\u041d\u0430 \u0440\u044b\u043d\u043a\u0435 \u0442\u0430\u043a\u0436\u0435 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u044b \u0421\u0423\u0411\u0414, \u043f\u043e\u0437\u0438\u0446\u0438\u043e\u043d\u0438\u0440\u0443\u044e\u0449\u0438\u0435 \u0441\u0435\u0431\u044f \u043a\u0430\u043a \u0438\u0437\u043d\u0430\u0447\u0430\u043b\u044c\u043d\u043e \u043c\u0443\u043b\u044c\u0442\u0438\u043c\u043e\u0434\u0435\u043b\u044c\u043d\u044b\u0435, \u043d\u0435\u00a0\u0438\u043c\u0435\u044e\u0449\u0438\u0435 \u043d\u0438\u043a\u0430\u043a\u043e\u0439 \u0443\u043d\u0430\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043d\u043d\u043e\u0439 \u00ab\u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0439\u00bb \u043c\u043e\u0434\u0435\u043b\u0438. \u041a \u0438\u0445 \u0447\u0438\u0441\u043b\u0443 \u043e\u0442\u043d\u043e\u0441\u044f\u0442\u0441\u044f <a href=\"https:\/\/www.arangodb.com\/\">ArangoDB<\/a>, <a href=\"https:\/\/orientdb.com\/\">OrientDB<\/a> (c\u00a02018 \u0433\u043e\u0434\u0430 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u044f-\u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a \u043f\u0440\u0438\u043d\u0430\u0434\u043b\u0435\u0436\u0438\u0442 SAP) \u0438 <a href=\"https:\/\/azure.microsoft.com\/en-us\/services\/cosmos-db\/\">CosmosDB<\/a> (\u0441\u0435\u0440\u0432\u0438\u0441 \u0432 \u0441\u043e\u0441\u0442\u0430\u0432\u0435 \u043e\u0431\u043b\u0430\u0447\u043d\u043e\u0439 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u044b Microsoft Azure).<\/p>\n<p>  <\/p>\n<p>\u041d\u0430 \u0441\u0430\u043c\u043e\u043c \u0434\u0435\u043b\u0435 \u00ab\u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0435\u00bb \u043c\u043e\u0434\u0435\u043b\u0438 \u0432 ArangoDB \u0438 OrientDB \u0435\u0441\u0442\u044c. \u042d\u0442\u043e \u0432 \u0442\u043e\u043c \u0438 \u0432 \u0434\u0440\u0443\u0433\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0435 \u043c\u043e\u0434\u0435\u043b\u0438 \u0434\u0430\u043d\u043d\u044b\u0445, \u044f\u0432\u043b\u044f\u044e\u0449\u0438\u0435\u0441\u044f \u043e\u0431\u043e\u0431\u0449\u0435\u043d\u0438\u044f\u043c\u0438 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u043d\u043e\u0439. \u041e\u0431\u043e\u0431\u0449\u0435\u043d\u0438\u044f \u0437\u0430\u043a\u043b\u044e\u0447\u0430\u044e\u0442\u0441\u044f \u0432\u00a0\u043e\u0441\u043d\u043e\u0432\u043d\u043e\u043c \u0432\u00a0\u043e\u0431\u043b\u0435\u0433\u0447\u0435\u043d\u0438\u0438 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u044c \u0437\u0430\u043f\u0440\u043e\u0441\u044b \u0433\u0440\u0430\u0444\u043e\u0432\u043e\u0433\u043e \u0438 \u0440\u0435\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u043e\u0433\u043e \u0445\u0430\u0440\u0430\u043a\u0442\u0435\u0440\u0430.<\/p>\n<p>  <\/p>\n<p>\u042d\u0442\u0438 \u043c\u043e\u0434\u0435\u043b\u0438 \u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u0432 \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u044b\u0445 \u0421\u0423\u0411\u0414 \u0435\u0434\u0438\u043d\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u043c\u0438 \u0434\u043b\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f, \u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0441\u00a0\u043d\u0438\u043c\u0438 \u043f\u0440\u0435\u0434\u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u044b \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0435 \u044f\u0437\u044b\u043a\u0438 \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432. \u0411\u0435\u0437\u0443\u0441\u043b\u043e\u0432\u043d\u043e, \u0442\u0430\u043a\u0438\u0435 \u043c\u043e\u0434\u0435\u043b\u0438 \u0438 \u0421\u0423\u0411\u0414 \u043f\u0435\u0440\u0441\u043f\u0435\u043a\u0442\u0438\u0432\u043d\u044b, \u043e\u0434\u043d\u0430\u043a\u043e \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0438\u0435 \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u0438 \u0441\u043e \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u044b\u043c\u0438 \u043c\u043e\u0434\u0435\u043b\u044f\u043c\u0438 \u0438 \u044f\u0437\u044b\u043a\u0430\u043c\u0438 \u0434\u0435\u043b\u0430\u0435\u0442 \u043d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u044b\u043c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u044d\u0442\u0438\u0445 \u0421\u0423\u0411\u0414 \u0432 \u0443\u043d\u0430\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043d\u043d\u044b\u0445 \u0441\u0438\u0441\u0442\u0435\u043c\u0430\u0445 \u2014 \u0437\u0430\u043c\u0435\u043d\u0443 \u0438\u043c\u0438 \u0443\u0436\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u044b\u0445 \u0421\u0423\u0411\u0414.<\/p>\n<p>  <\/p>\n<p>\u041f\u0440\u043e ArangoDB \u0438 OrientDB \u043d\u0430 \u0425\u0430\u0431\u0440\u0435 \u0443\u0436\u0435 \u0435\u0441\u0442\u044c \u0437\u0430\u043c\u0435\u0447\u0430\u0442\u0435\u043b\u044c\u043d\u0430\u044f \u0441\u0442\u0430\u0442\u044c\u044f: <a href=\"https:\/\/habr.com\/ru\/post\/413123\/\">JOIN \u0432 NoSQL \u0431\u0430\u0437\u0430\u0445 \u0434\u0430\u043d\u043d\u044b\u0445<\/a>.<\/p>\n<p>  <\/p>\n<h3 id=\"arangodbanchoranchor\">ArangoDB<\/h3>\n<p>  <\/p>\n<p>ArangoDB \u0437\u0430\u044f\u0432\u043b\u044f\u0435\u0442 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0443 \u0433\u0440\u0430\u0444\u043e\u0432\u043e\u0439 \u043c\u043e\u0434\u0435\u043b\u0438 \u0434\u0430\u043d\u043d\u044b\u0445.<\/p>\n<p>  <\/p>\n<p>\u0423\u0437\u043b\u044b \u0433\u0440\u0430\u0444\u0430 \u0432 ArangoDB \u2014 \u044d\u0442\u043e \u043e\u0431\u044b\u0447\u043d\u044b\u0435 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u044b, \u0430 \u0440\u0435\u0431\u0440\u0430 \u2014 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u044b \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0432\u0438\u0434\u0430, \u0438\u043c\u0435\u044e\u0449\u0438\u0435 \u043d\u0430\u0440\u044f\u0434\u0443 \u0441 \u043e\u0431\u044b\u0447\u043d\u044b\u043c\u0438 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u043c\u0438 \u043f\u043e\u043b\u044f\u043c\u0438 (<code>_key<\/code>, <code>_id<\/code>, <code>_rev<\/code>) \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0435 \u043f\u043e\u043b\u044f <code>_from<\/code> \u0438 <code>_to<\/code>. \u0414\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u044b \u0432 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u043d\u044b\u0445 \u0421\u0423\u0411\u0414 \u0442\u0440\u0430\u0434\u0438\u0446\u0438\u043e\u043d\u043d\u043e \u043e\u0431\u044a\u0435\u0434\u0438\u043d\u044f\u044e\u0442\u0441\u044f \u0432 \u043a\u043e\u043b\u043b\u0435\u043a\u0446\u0438\u0438. \u041a\u043e\u043b\u043b\u0435\u043a\u0446\u0438\u0438 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u043e\u0432, \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u044e\u0449\u0438\u0445 \u0440\u0435\u0431\u0440\u0430, \u0432 ArangoDB \u043d\u0430\u0437\u044b\u0432\u0430\u044e\u0442\u0441\u044f edge-\u043a\u043e\u043b\u043b\u0435\u043a\u0446\u0438\u044f\u043c\u0438. \u041a \u0441\u043b\u043e\u0432\u0443, \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u044b edge-\u043a\u043e\u043b\u043b\u0435\u043a\u0446\u0438\u0439 \u2014 \u044d\u0442\u043e \u0442\u043e\u0436\u0435 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u044b, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u0440\u0435\u0431\u0440\u0430 \u0432 ArangoDB \u043c\u043e\u0433\u0443\u0442 \u0432\u044b\u0441\u0442\u0443\u043f\u0430\u0442\u044c \u0442\u0430\u043a\u0436\u0435 \u0438 \u0443\u0437\u043b\u0430\u043c\u0438.<\/p>\n<p>  <\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u0418\u0441\u0445\u043e\u0434\u043d\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435<\/b><\/p>\n<div class=\"spoiler_text\">\n<p>\u041f\u0443\u0441\u0442\u044c \u0443 \u043d\u0430\u0441 \u0435\u0441\u0442\u044c \u043a\u043e\u043b\u043b\u0435\u043a\u0446\u0438\u044f <code>persons<\/code>, \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u044b \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u0432\u044b\u0433\u043b\u044f\u0434\u044f\u0442 \u0442\u0430\u043a:<\/p>\n<p>  <\/p>\n<pre><code class=\"json\">[   {     \"_id\"  : \"people\/alice\" ,     \"_key\" : \"alice\" ,     \"name\" : \"\u0410\u043b\u0438\u0441\u0430\"   },   {     \"_id\"  : \"people\/bob\" ,     \"_key\" : \"bob\" ,     \"name\" : \"\u0411\u043e\u0431\"     } ]<\/code><\/pre>\n<p>  <\/p>\n<p>\u041f\u0443\u0441\u0442\u044c \u0442\u0430\u043a\u0436\u0435 \u0435\u0441\u0442\u044c \u043a\u043e\u043b\u043b\u0435\u043a\u0446\u0438\u044f <code>cafes<\/code>:<\/p>\n<p>  <\/p>\n<pre><code class=\"json\">[   {     \"_id\" : \"cafes\/jd\" ,     \"_key\" : \"jd\" ,     \"name\" : \"\u0414\u0436\u043e\u043d \u0414\u043e\u043d\u043d\"     },   {     \"_id\" : \"cafes\/jj\" ,     \"_key\" : \"jj\" ,     \"name\" : \"\u0416\u0430\u043d-\u0416\u0430\u043a\"   } ]<\/code><\/pre>\n<p>  <\/p>\n<p>\u0422\u043e\u0433\u0434\u0430 \u043a\u043e\u043b\u043b\u0435\u043a\u0446\u0438\u044f <code>likes<\/code> \u043c\u043e\u0436\u0435\u0442 \u0432\u044b\u0433\u043b\u044f\u0434\u0435\u0442\u044c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c:<\/p>\n<p>  <\/p>\n<pre><code class=\"json\">[   {     \"_id\" : \"likes\/1\" ,     \"_key\" : \"1\" ,     \"_from\" : \"persons\/alice\" ,     \"_to\" : \"cafes\/jd\",     \"since\" : 2010    },   {     \"_id\" : \"likes\/2\" ,     \"_key\" : \"2\" ,     \"_from\" : \"persons\/alice\" ,     \"_to\" : \"cafes\/jj\",     \"since\" : 2011    } ,   {     \"_id\" : \"likes\/3\" ,     \"_key\" : \"3\" ,     \"_from\" : \"persons\/bob\" ,     \"_to\" : \"cafes\/jd\",     \"since\" : 2012    } ]<\/code><\/pre>\n<\/div>\n<\/div>\n<p>  <\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u0417\u0430\u043f\u0440\u043e\u0441\u044b \u0438 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b<\/b><\/p>\n<div class=\"spoiler_text\">\n<p>\u0417\u0430\u043f\u0440\u043e\u0441 \u0432 \u0433\u0440\u0430\u0444\u043e\u0432\u043e\u043c \u0441\u0442\u0438\u043b\u0435 \u043d\u0430 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u043e\u043c \u0432 ArangoDB \u044f\u0437\u044b\u043a\u0435 AQL, \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u044e\u0449\u0438\u0439 \u0432\u00a0\u0447\u0435\u043b\u043e\u0432\u0435\u043a\u043e\u0447\u0438\u0442\u0430\u0435\u043c\u043e\u043c \u0432\u0438\u0434\u0435 \u0441\u0432\u0435\u0434\u0435\u043d\u0438\u044f \u043e \u0442\u043e\u043c, \u043a\u043e\u043c\u0443 \u043a\u0430\u043a\u043e\u0435 \u043a\u0430\u0444\u0435 \u043d\u0440\u0430\u0432\u0438\u0442\u0441\u044f, \u0432\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u0442\u0430\u043a:<\/p>\n<p>  <\/p>\n<pre><code class=\"plaintext\">FOR p IN persons   FOR c IN OUTBOUND p likes   RETURN { person : p.name , likes : c.name }<\/code><\/pre>\n<p>  <\/p>\n<p>\u0412 \u0440\u0435\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u043e\u043c \u0441\u0442\u0438\u043b\u0435, \u043a\u043e\u0433\u0434\u0430 \u043c\u044b \u0441\u043a\u043e\u0440\u0435\u0435 \u00ab\u0432\u044b\u0447\u0438\u0441\u043b\u044f\u0435\u043c\u00bb \u0441\u0432\u044f\u0437\u0438, \u0430 \u043d\u0435 \u0445\u0440\u0430\u043d\u0438\u043c \u0438\u0445, \u044d\u0442\u043e\u0442 \u0437\u0430\u043f\u0440\u043e\u0441 \u043c\u043e\u0436\u043d\u043e \u043f\u0435\u0440\u0435\u043f\u0438\u0441\u0430\u0442\u044c \u0442\u0430\u043a (\u043a \u0441\u043b\u043e\u0432\u0443, \u0431\u0435\u0437 \u043a\u043e\u043b\u043b\u0435\u043a\u0446\u0438\u0438 <code>likes<\/code> \u043c\u043e\u0436\u043d\u043e \u0431\u044b\u043b\u043e \u0431\u044b \u043e\u0431\u043e\u0439\u0442\u0438\u0441\u044c):<\/p>\n<p>  <\/p>\n<pre><code class=\"plaintext\">FOR p IN persons   FOR l IN likes   FILTER p._key == l._from     FOR c IN cafes     FILTER l._to == c._key     RETURN { person : p.name , likes : c.name }<\/code><\/pre>\n<p>  <\/p>\n<p>\u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0432 \u043e\u0431\u043e\u0438\u0445 \u0441\u043b\u0443\u0447\u0430\u044f\u0445 \u0431\u0443\u0434\u0435\u0442 \u043e\u0434\u0438\u043d \u0438 \u0442\u043e\u0442 \u0436\u0435:<\/p>\n<p>  <\/p>\n<pre><code class=\"json\">[   { \"person\" : \"\u0410\u043b\u0438\u0441\u0430\" , likes : \"\u0416\u0430\u043d-\u0416\u0430\u043a\" } ,   { \"person\" : \"\u0410\u043b\u0438\u0441\u0430\" , likes : \"\u0414\u0436\u043e\u043d \u0414\u043e\u043d\u043d\" } ,   { \"person\" : \"\u0411\u043e\u0431\" , likes : \"\u0414\u0436\u043e\u043d \u0414\u043e\u043d\u043d\" } ]<\/code><\/pre>\n<\/div>\n<\/div>\n<p>  <\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u0415\u0449\u0435 \u0437\u0430\u043f\u0440\u043e\u0441\u044b \u0438 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b<\/b><\/p>\n<div class=\"spoiler_text\">\n<p>\u0415\u0441\u043b\u0438 \u043a\u0430\u0436\u0435\u0442\u0441\u044f, \u0447\u0442\u043e \u0444\u043e\u0440\u043c\u0430\u0442 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430 \u0432\u044b\u0448\u0435 \u0445\u0430\u0440\u0430\u043a\u0442\u0435\u0440\u0435\u043d \u0431\u043e\u043b\u044c\u0448\u0435 \u0434\u043b\u044f \u0440\u0435\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u043e\u0439 \u0421\u0423\u0411\u0414, \u0447\u0435\u043c \u0434\u043b\u044f \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u043d\u043e\u0439, \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u043f\u0440\u043e\u0431\u043e\u0432\u0430\u0442\u044c \u0442\u0430\u043a\u043e\u0439 \u0437\u0430\u043f\u0440\u043e\u0441 (\u043b\u0438\u0431\u043e \u043c\u043e\u0436\u043d\u043e \u0432\u043e\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f <a href=\"https:\/\/www.arangodb.com\/docs\/devel\/aql\/operations-collect.html\"><code>COLLECT<\/code><\/a>):<\/p>\n<p>  <\/p>\n<pre><code class=\"plaintext\">FOR p IN persons   RETURN {     person : p.name,     likes : (       FOR c IN OUTBOUND p likes       RETURN c.name     ) }<\/code><\/pre>\n<p>  <\/p>\n<p>\u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0431\u0443\u0434\u0435\u0442 \u0438\u043c\u0435\u0442\u044c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439 \u0432\u0438\u0434:<\/p>\n<p>  <\/p>\n<pre><code class=\"json\">[   { \"person\" : \"\u0410\u043b\u0438\u0441\u0430\" , likes : [\"\u0416\u0430\u043d-\u0416\u0430\u043a\" , \"\u0414\u0436\u043e\u043d \u0414\u043e\u043d\u043d\"]  } ,   { \"person\" : \"\u0411\u043e\u0431\" , likes : [\"\u0414\u0436\u043e\u043d \u0414\u043e\u043d\u043d\"] } ]<\/code><\/pre>\n<\/div>\n<\/div>\n<p>  <\/p>\n<h3 id=\"orientdbanchoranchor\">OrientDB<\/h3>\n<p>  <\/p>\n<p>\u0412 \u043e\u0441\u043d\u043e\u0432\u0435 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0433\u0440\u0430\u0444\u043e\u0432\u043e\u0439 \u043c\u043e\u0434\u0435\u043b\u0438 \u043f\u043e\u0432\u0435\u0440\u0445 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u043d\u043e\u0439 \u0432 OrientDB \u043b\u0435\u0436\u0438\u0442 <a href=\"http:\/\/orientdb.com\/docs\/3.0.x\/general\/Types.html\">\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c<\/a> \u043f\u043e\u043b\u0435\u0439 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u043e\u0432 \u0438\u043c\u0435\u0442\u044c \u043f\u043e\u043c\u0438\u043c\u043e \u0431\u043e\u043b\u0435\u0435-\u043c\u0435\u043d\u0435\u0435 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u044b\u0445 \u0441\u043a\u0430\u043b\u044f\u0440\u043d\u044b\u0445 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439 \u0435\u0449\u0435 \u0438 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0442\u0430\u043a\u0438\u0445 \u0442\u0438\u043f\u043e\u0432, \u043a\u0430\u043a <code>LINK<\/code>, <code>LINKLIST<\/code>, <code>LINKSET<\/code>, <code>LINKMAP<\/code> \u0438 <code>LINKBAG<\/code>. \u0417\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u044d\u0442\u0438\u0445 \u0442\u0438\u043f\u043e\u0432 \u2014 \u0441\u0441\u044b\u043b\u043a\u0438 \u0438\u043b\u0438 \u043a\u043e\u043b\u043b\u0435\u043a\u0446\u0438\u0438 \u0441\u0441\u044b\u043b\u043e\u043a \u043d\u0430\u00a0<a href=\"http:\/\/www.orientdb.com\/docs\/last\/Tutorial-Record-ID.html\">\u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0435 \u0438\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440\u044b<\/a> \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u043e\u0432.<\/p>\n<p>  <\/p>\n<p>\u041f\u0440\u0438\u0441\u0432\u0430\u0438\u0432\u0430\u0435\u043c\u044b\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u043e\u0439 \u0438\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430 \u0438\u043c\u0435\u0435\u0442 \u00ab\u0444\u0438\u0437\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u0441\u043c\u044b\u0441\u043b\u00bb, \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u044f \u043f\u043e\u0437\u0438\u0446\u0438\u044e \u0437\u0430\u043f\u0438\u0441\u0438 \u0432 \u0431\u0430\u0437\u0435, \u0438 \u0432\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u043f\u0440\u0438\u043c\u0435\u0440\u043d\u043e \u0442\u0430\u043a: <code>@rid : #3:16<\/code>. \u0422\u0435\u043c \u0441\u0430\u043c\u044b\u043c \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0441\u0441\u044b\u043b\u043e\u0447\u043d\u044b\u0445 \u0441\u0432\u043e\u0439\u0441\u0442\u0432 \u2014 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0441\u043a\u043e\u0440\u0435\u0435 \u0443\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u0438 (\u043a\u0430\u043a \u0432 \u0433\u0440\u0430\u0444\u043e\u0432\u043e\u0439 \u043c\u043e\u0434\u0435\u043b\u0438), \u0430 \u043d\u0435 \u0443\u0441\u043b\u043e\u0432\u0438\u044f \u043e\u0442\u0431\u043e\u0440\u0430 (\u043a\u0430\u043a \u0432 \u0440\u0435\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u043e\u0439).<\/p>\n<p>  <\/p>\n<p>\u041a\u0430\u043a \u0438 \u0432 ArangoDB, \u0432 OrientDB \u0440\u0435\u0431\u0440\u0430 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u043c\u0438 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u043c\u0438 (\u0445\u043e\u0442\u044f \u0435\u0441\u043b\u0438 \u0443 \u0440\u0435\u0431\u0440\u0430 \u043d\u0435\u0442 \u0441\u0432\u043e\u0438\u0445 \u0441\u0432\u043e\u0439\u0441\u0442\u0432, \u0435\u0433\u043e \u043c\u043e\u0436\u043d\u043e \u0441\u0434\u0435\u043b\u0430\u0442\u044c <a href=\"http:\/\/www.orientdb.com\/docs\/last\/Lightweight-Edges.html\">\u043b\u0435\u0433\u043a\u043e\u0432\u0435\u0441\u043d\u044b\u043c<\/a>, \u0438 \u0435\u043c\u0443 \u043d\u0435 \u0431\u0443\u0434\u0435\u0442 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u043e\u0432\u0430\u0442\u044c \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0439 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442). <\/p>\n<p>  <\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u0418\u0441\u0445\u043e\u0434\u043d\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435<\/b><\/p>\n<div class=\"spoiler_text\">\n<p>\u0412 \u0444\u043e\u0440\u043c\u0430\u0442\u0435, \u043f\u0440\u0438\u0431\u043b\u0438\u0436\u0435\u043d\u043d\u043e\u043c \u043a <a href=\"https:\/\/orientdb.com\/docs\/last\/Export-Format.html#records-section\">\u0444\u043e\u0440\u043c\u0430\u0442\u0443 \u0434\u0430\u043c\u043f\u0430<\/a> \u0431\u0430\u0437\u044b OrientDB, \u0434\u0430\u043d\u043d\u044b\u0435 \u0438\u0437 \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0435\u0433\u043e \u043f\u0440\u0438\u043c\u0435\u0440\u0430 \u0434\u043b\u044f ArangoDB \u0432\u044b\u0433\u043b\u044f\u0434\u0435\u043b\u0438 \u0431\u044b \u043f\u0440\u0438\u043c\u0435\u0440\u043d\u043e \u0442\u0430\u043a:<\/p>\n<p>  <\/p>\n<pre><code class=\"json\">[      {       \"@type\": \"document\",       \"@rid\": \"#11:0\",       \"@class\": \"Person\",       \"name\": \"\u0410\u043b\u0438\u0441\u0430\",       \"out_likes\": [         \"#30:1\",         \"#30:2\"       ],       \"@fieldTypes\": \"out_likes=LINKBAG\"     },     {       \"@type\": \"document\",       \"@rid\": \"#12:0\",       \"@class\": \"Person\",       \"name\": \"\u0411\u043e\u0431\",       \"out_likes\": [         \"#30:3\"       ],       \"@fieldTypes\": \"out_likes=LINKBAG\"     },     {       \"@type\": \"document\",       \"@rid\": \"#21:0\",       \"@class\": \"Cafe\",       \"name\": \"\u0416\u0430\u043d-\u0416\u0430\u043a\",       \"in_likes\": [         \"#30:2\",         \"#30:3\"       ],       \"@fieldTypes\": \"in_likes=LINKBAG\"     },     {       \"@type\": \"document\",       \"@rid\": \"#22:0\",       \"@class\": \"Cafe\",       \"name\": \"\u0414\u0436\u043e\u043d \u0414\u043e\u043d\u043d\",       \"in_likes\": [         \"#30:1\"       ],       \"@fieldTypes\": \"in_likes=LINKBAG\"     },     {       \"@type\": \"document\",       \"@rid\": \"#30:1\",       \"@class\": \"likes\",       \"in\": \"#22:0\",       \"out\": \"#11:0\",       \"since\": 1262286000000,       \"@fieldTypes\": \"in=LINK,out=LINK,since=date\"     },     {       \"@type\": \"document\",       \"@rid\": \"#30:2\",       \"@class\": \"likes\",       \"in\": \"#21:0\",       \"out\": \"#11:0\",       \"since\": 1293822000000,       \"@fieldTypes\": \"in=LINK,out=LINK,since=date\"     },     {       \"@type\": \"document\",       \"@rid\": \"#30:3\",       \"@class\": \"likes\",       \"in\": \"#21:0\",       \"out\": \"#12:0\",       \"since\": 1325354400000,       \"@fieldTypes\": \"in=LINK,out=LINK,since=date\"     }   ]<\/code><\/pre>\n<p>  <\/p>\n<p>\u041a\u0430\u043a \u043c\u044b \u0432\u0438\u0434\u0438\u043c, \u0432\u0435\u0440\u0448\u0438\u043d\u044b \u0442\u043e\u0436\u0435 \u0445\u0440\u0430\u043d\u044f\u0442 \u0441\u0432\u0435\u0434\u0435\u043d\u0438\u044f \u043e \u0432\u0445\u043e\u0434\u044f\u0449\u0438\u0445 \u0438 \u0438\u0441\u0445\u043e\u0434\u044f\u0449\u0438\u0445 \u0440\u0435\u0431\u0440\u0430\u0445. \u041f\u0440\u0438 <a href=\"http:\/\/orientdb.com\/docs\/3.0.x\/java\/Java-MultiModel-API.html\">\u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0438<\/a> Document API \u0437\u0430 \u0441\u0441\u044b\u043b\u043e\u0447\u043d\u043e\u0439 \u0446\u0435\u043b\u043e\u0441\u0442\u043d\u043e\u0441\u0442\u044c\u044e \u043f\u0440\u0438\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u0441\u043b\u0435\u0434\u0438\u0442\u044c \u0441\u0430\u043c\u043e\u043c\u0443, \u0430 Graph API \u0431\u0435\u0440\u0435\u0442 \u044d\u0442\u0443 \u0440\u0430\u0431\u043e\u0442\u0443 \u043d\u0430 \u0441\u0435\u0431\u044f. \u041d\u043e \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0438\u043c, \u043a\u0430\u043a \u0432\u044b\u0433\u043b\u044f\u0434\u044f\u0442 \u043e\u0431\u0440\u0430\u0449\u0435\u043d\u0438\u0435 \u043a OrientDB \u043d\u0430 \u00ab\u0447\u0438\u0441\u0442\u044b\u0445\u00bb, \u043d\u0435 \u0438\u043d\u0442\u0435\u0433\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0445 \u0432 \u044f\u0437\u044b\u043a\u0438 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f, \u044f\u0437\u044b\u043a\u0430\u0445 \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432.<\/p>\n<\/div>\n<\/div>\n<p>  <\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u0417\u0430\u043f\u0440\u043e\u0441\u044b \u0438 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b<\/b><\/p>\n<div class=\"spoiler_text\">\n<p>\u0417\u0430\u043f\u0440\u043e\u0441, \u0430\u043d\u0430\u043b\u043e\u0433\u0438\u0447\u043d\u044b\u0439 \u043f\u043e \u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044e \u0437\u0430\u043f\u0440\u043e\u0441\u0443 \u0438\u0437 \u043f\u0440\u0438\u043c\u0435\u0440\u0430 \u0434\u043b\u044f ArangoDB, \u0432 OrientDB \u0432\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u0442\u0430\u043a:<\/p>\n<p>  <\/p>\n<pre><code class=\"plaintext\">SELECT name AS person_name, OUT('likes').name AS cafe_name    FROM Person    UNWIND cafe_name<\/code><\/pre>\n<p>  <\/p>\n<p>\u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0431\u0443\u0434\u0435\u0442 \u043f\u043e\u043b\u0443\u0447\u0435\u043d \u0432 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u043c \u0432\u0438\u0434\u0435:<\/p>\n<p>  <\/p>\n<pre><code class=\"json\">[   { \"person_name\": \"\u0410\u043b\u0438\u0441\u0430\", \"cafe_name\": \"\u0414\u0436\u043e\u043d \u0414\u043e\u043d\u043d\" },   { \"person_name\": \"\u0410\u043b\u0438\u0441\u0430\", \"cafe_name\": \"\u0416\u0430\u043d-\u0416\u0430\u043a\" },   { \"person_name\": \"\u0411\u043e\u0431\",  \"cafe_name\": \"\u0416\u0430\u043d-\u0416\u0430\u043a\" } ]<\/code><\/pre>\n<p>  <\/p>\n<p>\u0415\u0441\u043b\u0438 \u0444\u043e\u0440\u043c\u0430\u0442 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430 \u043e\u043f\u044f\u0442\u044c \u043a\u0430\u0436\u0435\u0442\u0441\u044f \u0447\u0435\u0440\u0435\u0441\u0447\u0443\u0440 \u00ab\u0440\u0435\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u044b\u043c\u00bb, \u043d\u0443\u0436\u043d\u043e \u0443\u0431\u0440\u0430\u0442\u044c \u0441\u0442\u0440\u043e\u043a\u0443 \u0441 <a href=\"http:\/\/orientdb.com\/docs\/3.0.x\/sql\/SQL-Query.html#unwinding\"><code>UNWIND()<\/code><\/a>:<\/p>\n<p>  <\/p>\n<pre><code class=\"json\">[   { \"person_name\": \"\u0410\u043b\u0438\u0441\u0430\", \"cafe_name\": [ \"\u0414\u0436\u043e\u043d \u0414\u043e\u043d\u043d\", \"\u0416\u0430\u043d-\u0416\u0430\u043a\" ] },   { \"person_name\": \"\u0411\u043e\u0431\",  \"cafe_name\": [ \"\u0416\u0430\u043d-\u0416\u0430\u043a\" ' } ]<\/code><\/pre>\n<p>  <\/p>\n<p>\u042f\u0437\u044b\u043a \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432 OrientDB \u043c\u043e\u0436\u043d\u043e \u043e\u0445\u0430\u0440\u0430\u043a\u0442\u0435\u0440\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u043a\u0430\u043a SQL c Gremlin-\u043f\u043e\u0434\u043e\u0431\u043d\u044b\u043c\u0438 \u0432\u0441\u0442\u0430\u0432\u043a\u0430\u043c\u0438. \u0412 \u0432\u0435\u0440\u0441\u0438\u0438 2.2 \u043f\u043e\u044f\u0432\u0438\u043b\u0430\u0441\u044c Cypher-\u043f\u043e\u0434\u043e\u0431\u043d\u0430\u044f \u0444\u043e\u0440\u043c\u0430 \u0437\u0430\u043f\u0440\u043e\u0441\u0430, <a href=\"http:\/\/orientdb.com\/docs\/3.0.x\/sql\/SQL-Match.html\"><code>MATCH<\/code><\/a> :<\/p>\n<p>  <\/p>\n<pre><code class=\"plaintext\">MATCH {CLASS: Person, AS: person}-likes-&gt;{CLASS: Cafe, AS: cafe} RETURN person.name AS person_name, LIST(cafe.name) AS cafe_name GROUP BY person_name<\/code><\/pre>\n<p>  <\/p>\n<p>\u0424\u043e\u0440\u043c\u0430\u0442 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430 \u0431\u0443\u0434\u0435\u0442 \u0442\u0430\u043a\u0438\u043c \u0436\u0435, \u043a\u0430\u043a \u0432 \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0435\u043c \u0437\u0430\u043f\u0440\u043e\u0441\u0435. \u041f\u043e\u0434\u0443\u043c\u0430\u0439\u0442\u0435, \u0447\u0442\u043e \u043d\u0443\u0436\u043d\u043e \u0443\u0431\u0440\u0430\u0442\u044c, \u0447\u0442\u043e\u0431\u044b \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0435\u0433\u043e \u0431\u043e\u043b\u0435\u0435 \u00ab\u0440\u0435\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u044b\u043c\u00bb, \u043a\u0430\u043a \u0432 \u0441\u0430\u043c\u043e\u043c \u043f\u0435\u0440\u0432\u043e\u043c \u0437\u0430\u043f\u0440\u043e\u0441\u0435.<\/p>\n<\/div>\n<\/div>\n<p>  <\/p>\n<h3 id=\"azure-cosmosdbanchoranchor\">Azure CosmosDB<\/h3>\n<p>  <\/p>\n<p>\u0412 \u043c\u0435\u043d\u044c\u0448\u0435\u0439 \u0441\u0442\u0435\u043f\u0435\u043d\u0438 \u0441\u043a\u0430\u0437\u0430\u043d\u043d\u043e\u0435 \u0432\u044b\u0448\u0435 \u043e\u0431 ArangoDB \u0438 OrientDB \u043e\u0442\u043d\u043e\u0441\u0438\u0442\u0441\u044f \u043a Azure CosmosDB. CosmosDB \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 API \u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u043a\u00a0\u0434\u0430\u043d\u043d\u044b\u043c: SQL, MongoDB, Gremlin \u0438 Cassandra.<\/p>\n<p>  <\/p>\n<p>SQL API \u0438 MongoDB API \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0442\u0441\u044f \u0434\u043b\u044f \u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u043a \u0434\u0430\u043d\u043d\u044b\u043c \u0432 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u043d\u043e\u0439 \u043c\u043e\u0434\u0435\u043b\u0438. Gremlin API \u0438\u00a0Cassandra API \u2014 \u0434\u043b\u044f \u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u043a \u0434\u0430\u043d\u043d\u044b\u043c \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u0432 \u0433\u0440\u0430\u0444\u043e\u0432\u043e\u0439 \u0438 \u043a\u043e\u043b\u043e\u043d\u043e\u0447\u043d\u043e\u0439. \u0414\u0430\u043d\u043d\u044b\u0435 \u0432\u043e \u0432\u0441\u0435\u0445 \u043c\u043e\u0434\u0435\u043b\u044f\u0445 \u0441\u043e\u0445\u0440\u0430\u043d\u044f\u044e\u0442\u0441\u044f \u0432 \u0444\u043e\u0440\u043c\u0430\u0442\u0435 \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0435\u0439 \u043c\u043e\u0434\u0435\u043b\u0438 CosmosDB: <a href=\"https:\/\/azure.microsoft.com\/en-us\/blog\/a-technical-overview-of-azure-cosmos-db\/\">ARS<\/a> (\u00abatom-record-sequence\u00bb), \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0442\u0430\u043a\u0436\u0435 \u0431\u043b\u0438\u0437\u043a\u0430 \u043a \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u043d\u043e\u0439.<\/p>\n<p>  <\/p>\n<p><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/8g\/qw\/ns\/8gqwnsgawddcuvu4yi46--0bdk8.png\"><\/p>\n<p>  <\/p>\n<p>\u041d\u043e \u0432\u044b\u0431\u0440\u0430\u043d\u043d\u0430\u044f \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u043c \u043c\u043e\u0434\u0435\u043b\u044c \u0434\u0430\u043d\u043d\u044b\u0445 \u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u044b\u0439 API \u0444\u0438\u043a\u0441\u0438\u0440\u0443\u044e\u0442\u0441\u044f \u0432 \u043c\u043e\u043c\u0435\u043d\u0442 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u0430\u043a\u043a\u0430\u0443\u043d\u0442\u0430 \u0432 \u0441\u0435\u0440\u0432\u0438\u0441\u0435. \u041d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0434\u043e\u0441\u0442\u0443\u043f \u043a \u0434\u0430\u043d\u043d\u044b\u043c, \u0437\u0430\u0433\u0440\u0443\u0436\u0435\u043d\u043d\u044b\u043c \u0432\u00a0\u043e\u0434\u043d\u043e\u0439 \u043c\u043e\u0434\u0435\u043b\u0438, \u0432\u00a0\u0444\u043e\u0440\u043c\u0430\u0442\u0435 \u0434\u0440\u0443\u0433\u043e\u0439 \u043c\u043e\u0434\u0435\u043b\u0438, \u0447\u0442\u043e \u0438\u043b\u043b\u044e\u0441\u0442\u0440\u0438\u0440\u043e\u0432\u0430\u043b\u043e\u0441\u044c \u0431\u044b \u043f\u0440\u0438\u043c\u0435\u0440\u043d\u043e \u0442\u0430\u043a\u0438\u043c \u0440\u0438\u0441\u0443\u043d\u043a\u043e\u043c:<\/p>\n<p>  <\/p>\n<p><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/lv\/hx\/lw\/lvhxlwpyyu4aub0riqjp6h2lagq.png\"><\/p>\n<p>  <\/p>\n<p>\u0422\u0435\u043c \u0441\u0430\u043c\u044b\u043c \u043c\u0443\u043b\u044c\u0442\u0438\u043c\u043e\u0434\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u0432 Azure CosmosDB \u043d\u0430 \u0441\u0435\u0433\u043e\u0434\u043d\u044f\u0448\u043d\u0438\u0439 \u0434\u0435\u043d\u044c \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0441\u043e\u0431\u043e\u0439 \u043b\u0438\u0448\u044c \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0431\u0430\u0437 \u0434\u0430\u043d\u043d\u044b\u0445, \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u044e\u0449\u0438\u0445 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0435 \u043c\u043e\u0434\u0435\u043b\u0438, \u043e\u0442\u00a0\u043e\u0434\u043d\u043e\u0433\u043e \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044f, \u0447\u0442\u043e \u043d\u0435 \u0440\u0435\u0448\u0430\u0435\u0442 \u0432\u0441\u0435\u0445 \u043f\u0440\u043e\u0431\u043b\u0435\u043c \u043c\u043d\u043e\u0433\u043e\u0432\u0430\u0440\u0438\u0430\u043d\u0442\u043d\u043e\u0433\u043e \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f.<\/p>\n<p>  <\/p>\n<h2 id=\"multimodelnye-subd-na-osnove-grafovoy-modelianchoranchor\">\u041c\u0443\u043b\u044c\u0442\u0438\u043c\u043e\u0434\u0435\u043b\u044c\u043d\u044b\u0435 \u0421\u0423\u0411\u0414 \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u0433\u0440\u0430\u0444\u043e\u0432\u043e\u0439 \u043c\u043e\u0434\u0435\u043b\u0438?<\/h2>\n<p>  <\/p>\n<p>\u041e\u0431\u0440\u0430\u0449\u0430\u0435\u0442 \u043d\u0430 \u0441\u0435\u0431\u044f \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435 \u0442\u043e\u0442 \u0444\u0430\u043a\u0442, \u0447\u0442\u043e \u043d\u0430 \u0440\u044b\u043d\u043a\u0435 \u043f\u043e\u043a\u0430 \u043d\u0435\u0442 \u043c\u0443\u043b\u044c\u0442\u0438\u043c\u043e\u0434\u0435\u043b\u044c\u043d\u044b\u0445 \u0421\u0423\u0411\u0414, \u0438\u043c\u0435\u044e\u0449\u0438\u0445 \u0432\u00a0\u043e\u0441\u043d\u043e\u0432\u0435 \u0433\u0440\u0430\u0444\u043e\u0432\u0443\u044e \u043c\u043e\u0434\u0435\u043b\u044c (\u0435\u0441\u043b\u0438 \u043d\u0435 \u0441\u0447\u0438\u0442\u0430\u0442\u044c \u043c\u0443\u043b\u044c\u0442\u0438\u043c\u043e\u0434\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c\u044e \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0443 \u043e\u0434\u043d\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e \u0434\u0432\u0443\u0445 \u0433\u0440\u0430\u0444\u043e\u0432\u044b\u0445 \u043c\u043e\u0434\u0435\u043b\u0435\u0439: RDF \u0438 LPG; \u0441\u043c. \u043e\u0431 \u044d\u0442\u043e\u043c \u0432 <a href=\"https:\/\/habr.com\/ru\/post\/451206\/#v-podderzhka-lpganchoranchor\">\u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0435\u0439 \u043f\u0443\u0431\u043b\u0438\u043a\u0430\u0446\u0438\u0438<\/a>). \u041d\u0430\u0438\u0431\u043e\u043b\u044c\u0448\u0438\u0435 \u0437\u0430\u0442\u0440\u0443\u0434\u043d\u0435\u043d\u0438\u0439 \u0432\u044b\u0437\u044b\u0432\u0430\u0435\u0442 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u043f\u043e\u0432\u0435\u0440\u0445 \u0433\u0440\u0430\u0444\u043e\u0432\u043e\u0439 \u043c\u043e\u0434\u0435\u043b\u0438 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u043d\u043e\u0439, \u0430 \u043d\u0435 \u0440\u0435\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u043e\u0439.<\/p>\n<p>  <\/p>\n<p>\u0412\u043e\u043f\u0440\u043e\u0441 \u043e \u0442\u043e\u043c, \u043a\u0430\u043a \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u043f\u043e\u0432\u0435\u0440\u0445 \u0433\u0440\u0430\u0444\u043e\u0432\u043e\u0439 \u043c\u043e\u0434\u0435\u043b\u0438 \u0440\u0435\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u0443\u044e, \u0440\u0430\u0441\u0441\u043c\u0430\u0442\u0440\u0438\u0432\u0430\u043b\u0441\u044f \u0435\u0449\u0435 \u0432\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u0430 \u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u044f \u044d\u0442\u043e\u0439 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0439. \u041a\u0430\u043a <a href=\"http:\/\/www.dbdebunk.com\/2019\/03\/graph-databases-they-who-forget-past.htm\">\u0433\u043e\u0432\u043e\u0440\u0438\u043b<\/a>, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, <a href=\"https:\/\/en.wikipedia.org\/wiki\/David_McGoveran\">\u0414\u044d\u0432\u0438\u0434 \u041c\u0430\u043a\u0433\u043e\u0432\u0435\u0440\u0435\u043d<\/a>:<\/p>\n<p>  <\/p>\n<blockquote><p>There is nothing inherent in the graph approach that prevents creating a layer (e.g., by suitable indexing) on a graph database that enables a relational view with (1) recovery of tuples from the usual key value pairs and (2) grouping of tuples by relation type.<\/p><\/blockquote>\n<p>\u041f\u0440\u0438 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0436\u0435 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u043d\u043e\u0439 \u043c\u043e\u0434\u0435\u043b\u0438 \u043f\u043e\u0432\u0435\u0440\u0445 \u0433\u0440\u0430\u0444\u043e\u0432\u043e\u0439 \u043d\u0443\u0436\u043d\u043e \u0438\u043c\u0435\u0442\u044c \u0432 \u0432\u0438\u0434\u0443, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0435:<\/p>\n<p>  <\/p>\n<ul>\n<li>\u042d\u043b\u0435\u043c\u0435\u043d\u0442\u044b JSON-\u043c\u0430\u0441\u0441\u0438\u0432\u0430 \u0441\u0447\u0438\u0442\u0430\u044e\u0442\u0441\u044f \u0443\u043f\u043e\u0440\u044f\u0434\u043e\u0447\u0435\u043d\u043d\u044b\u043c\u0438, \u0438\u0441\u0445\u043e\u0434\u044f\u0449\u0438\u0435 \u0438\u0437 \u0432\u0435\u0440\u0448\u0438\u043d\u044b \u0440\u0435\u0431\u0440\u0430 \u0433\u0440\u0430\u0444\u0430 \u2014 \u043d\u0435\u0442;<\/li>\n<li>\u0414\u0430\u043d\u043d\u044b\u0435 \u0432 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u043d\u043e\u0439 \u043c\u043e\u0434\u0435\u043b\u0438 \u043e\u0431\u044b\u0447\u043d\u043e \u0434\u0435\u043d\u043e\u0440\u043c\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u044b, \u0445\u0440\u0430\u043d\u0438\u0442\u044c \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043a\u043e\u043f\u0438\u0439 \u043e\u0434\u043d\u043e\u0433\u043e \u0438\u00a0\u0442\u043e\u0433\u043e \u0436\u0435 \u0432\u043b\u043e\u0436\u0435\u043d\u043d\u043e\u0433\u043e \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430 \u0432\u0441\u0435 \u0436\u0435 \u043d\u0435 \u0445\u043e\u0447\u0435\u0442\u0441\u044f, \u0430 \u0438\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440\u043e\u0432 \u0443 \u043f\u043e\u0434\u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u043e\u0432 \u043e\u0431\u044b\u0447\u043d\u043e \u043d\u0435\u0442;<\/li>\n<li>\u0421 \u0434\u0440\u0443\u0433\u043e\u0439 \u0441\u0442\u043e\u0440\u043e\u043d\u044b, \u0438\u0434\u0435\u043e\u043b\u043e\u0433\u0438\u044f \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u043d\u044b\u0445 \u0421\u0423\u0411\u0414 \u0432 \u0442\u043e\u043c \u0438 \u0437\u0430\u043a\u043b\u044e\u0447\u0430\u0435\u0442\u0441\u044f, \u0447\u0442\u043e \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u044b \u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u0433\u043e\u0442\u043e\u0432\u044b\u043c\u0438 \u00ab\u0430\u0433\u0440\u0435\u0433\u0430\u0442\u0430\u043c\u0438\u00bb, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043d\u0435 \u043d\u0443\u0436\u043d\u043e \u043a\u0430\u0436\u0434\u044b\u0439 \u0440\u0430\u0437 \u0441\u0442\u0440\u043e\u0438\u0442\u044c \u0437\u0430\u043d\u043e\u0432\u043e. \u0422\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0442\u044c \u0432 \u0433\u0440\u0430\u0444\u043e\u0432\u043e\u0439 \u043c\u043e\u0434\u0435\u043b\u0438 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u0431\u044b\u0441\u0442\u0440\u043e \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u043f\u043e\u0434\u0433\u0440\u0430\u0444, \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0439 \u0433\u043e\u0442\u043e\u0432\u043e\u043c\u0443 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0443. <\/li>\n<\/ul>\n<p>  <\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u041d\u0435\u043c\u043d\u043e\u0433\u043e \u0440\u0435\u043a\u043b\u0430\u043c\u044b<\/b><\/p>\n<div class=\"spoiler_text\">\n<p>\u0410\u0432\u0442\u043e\u0440 \u0441\u0442\u0430\u0442\u044c\u0438 \u0438\u043c\u0435\u0435\u0442 \u043e\u0442\u043d\u043e\u0448\u0435\u043d\u0438\u0435 \u043a \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0435 \u0421\u0423\u0411\u0414 NitrosBase, \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u044f\u044f \u043c\u043e\u0434\u0435\u043b\u044c \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0433\u0440\u0430\u0444\u043e\u0432\u043e\u0439, \u0430 \u0432\u043d\u0435\u0448\u043d\u0438\u0435 \u043c\u043e\u0434\u0435\u043b\u0438 \u2014 \u0440\u0435\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u0430\u044f \u0438 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u043d\u0430\u044f \u2014 \u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u0435\u0451 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044f\u043c\u0438. \u0412\u0441\u0435 \u043c\u043e\u0434\u0435\u043b\u0438 \u0440\u0430\u0432\u043d\u043e\u043f\u0440\u0430\u0432\u043d\u044b: \u043f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u043b\u044e\u0431\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b \u0432 \u043b\u044e\u0431\u043e\u0439 \u0438\u0437 \u043d\u0438\u0445 \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u0435\u0441\u0442\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0433\u043e \u0434\u043b\u044f \u043d\u0435\u0451 \u044f\u0437\u044b\u043a\u0430 \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432. \u0411\u043e\u043b\u0435\u0435 \u0442\u043e\u0433\u043e, \u0432 \u043b\u044e\u0431\u043e\u043c \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0438 \u0434\u0430\u043d\u043d\u044b\u0435 \u043c\u043e\u0433\u0443\u0442 \u0431\u044b\u0442\u044c \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u044b. \u0418\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u043e\u0442\u0440\u0430\u0437\u044f\u0442\u0441\u044f \u0432\u043e \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0435\u0439 \u043c\u043e\u0434\u0435\u043b\u0438 \u0438, \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0435\u043d\u043d\u043e, \u0432 \u0434\u0440\u0443\u0433\u0438\u0445 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044f\u0445.<\/p>\n<p>  <\/p>\n<p>\u041a\u0430\u043a \u0432\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0438\u0435 \u043c\u043e\u0434\u0435\u043b\u0435\u0439 \u0432 NitrosBase \u2014 \u043e\u043f\u0438\u0448\u0443, \u043d\u0430\u0434\u0435\u044e\u0441\u044c, \u0432 \u043e\u0434\u043d\u043e\u0439 \u0438\u0437 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0445 \u0441\u0442\u0430\u0442\u0435\u0439.<\/p>\n<\/div>\n<\/div>\n<p>  <\/p>\n<h1 id=\"zaklyuchenieanchoranchor\">\u0417\u0430\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435<\/h1>\n<p>  <\/p>\n<p>\u041d\u0430\u0434\u0435\u0435\u043c\u0441\u044f, \u0447\u0442\u043e \u043e\u0431\u0449\u0438\u0435 \u043a\u043e\u043d\u0442\u0443\u0440\u044b \u0442\u043e\u0433\u043e, \u0447\u0442\u043e \u043d\u0430\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u043c\u0443\u043b\u044c\u0442\u0438\u043c\u043e\u0434\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c\u044e, \u0441\u0442\u0430\u043b\u0438 \u0447\u0438\u0442\u0430\u0442\u0435\u043b\u044e \u0431\u043e\u043b\u0435\u0435-\u043c\u0435\u043d\u0435\u0435 \u044f\u0441\u043d\u044b. \u041c\u0443\u043b\u044c\u0442\u0438\u043c\u043e\u0434\u0435\u043b\u044c\u043d\u044b\u043c\u0438 \u043d\u0430\u0437\u044b\u0432\u0430\u044e\u0442\u0441\u044f \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0440\u0430\u0437\u043d\u044b\u0435 \u0421\u0423\u0411\u0414, \u0438 \u00ab\u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u0445 \u043c\u043e\u0434\u0435\u043b\u0435\u0439\u00bb \u043c\u043e\u0436\u0435\u0442 \u0432\u044b\u0433\u043b\u044f\u0434\u0435\u0442\u044c \u043f\u043e-\u0440\u0430\u0437\u043d\u043e\u043c\u0443. \u0414\u043b\u044f \u043f\u043e\u043d\u0438\u043c\u0430\u043d\u0438\u044f \u0442\u043e\u0433\u043e, \u0447\u0442\u043e \u043d\u0430\u0437\u044b\u0432\u0430\u044e\u0442 \u00ab\u043c\u0443\u043b\u044c\u0442\u0438\u043c\u043e\u0434\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c\u044e\u00bb \u0432 \u043a\u0430\u0436\u0434\u043e\u043c \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435, \u043f\u043e\u043b\u0435\u0437\u043d\u043e \u043e\u0442\u0432\u0435\u0442\u0438\u0442\u044c \u043d\u0430 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u0432\u043e\u043f\u0440\u043e\u0441\u044b: <\/p>\n<p>  <\/p>\n<ol>\n<li>\u0418\u0434\u0435\u0442 \u043b\u0438 \u0440\u0435\u0447\u044c \u043e \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0435 \u0442\u0440\u0430\u0434\u0438\u0446\u0438\u043e\u043d\u043d\u044b\u0445 \u043c\u043e\u0434\u0435\u043b\u0435\u0439 \u0438\u043b\u0438 \u0436\u0435 \u043e \u043d\u0435\u043a\u043e\u0435\u0439 \u043e\u0434\u043d\u043e\u0439 \u00ab\u0433\u0438\u0431\u0440\u0438\u0434\u043d\u043e\u0439\u00bb \u043c\u043e\u0434\u0435\u043b\u0438?<\/li>\n<li>\u00ab\u0420\u0430\u0432\u043d\u043e\u043f\u0440\u0430\u0432\u043d\u044b\u00bb \u043b\u0438 \u043c\u043e\u0434\u0435\u043b\u0438, \u0438\u043b\u0438 \u0436\u0435 \u043e\u0434\u043d\u0430 \u0438\u0437 \u043d\u0438\u0445 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043f\u043e\u0434\u043b\u0435\u0436\u0430\u0449\u0435\u0439 \u0434\u043b\u044f \u0434\u0440\u0443\u0433\u0438\u0445? <\/li>\n<li>\u00ab\u0411\u0435\u0437\u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u00bb \u043b\u0438 \u043c\u043e\u0434\u0435\u043b\u0438 \u0434\u0440\u0443\u0433 \u0434\u0440\u0443\u0433\u0443? \u041c\u043e\u0433\u0443\u0442 \u043b\u0438 \u0434\u0430\u043d\u043d\u044b\u0435, \u0437\u0430\u043f\u0438\u0441\u0430\u043d\u043d\u044b\u0435 \u0432 \u043e\u0434\u043d\u043e\u0439 \u043c\u043e\u0434\u0435\u043b\u0438, \u0431\u044b\u0442\u044c\u00a0\u043f\u0440\u043e\u0447\u0438\u0442\u0430\u043d\u043d\u044b\u043c\u0438 \u0432 \u0434\u0440\u0443\u0433\u043e\u0439 \u0438\u043b\u0438 \u0434\u0430\u0436\u0435 \u043f\u0435\u0440\u0435\u0437\u0430\u043f\u0438\u0441\u0430\u043d\u044b? <\/li>\n<\/ol>\n<p>  <\/p>\n<p>\u041f\u043e-\u0432\u0438\u0434\u0438\u043c\u043e\u043c\u0443, \u043d\u0430 \u0432\u043e\u043f\u0440\u043e\u0441 \u043e\u0431 \u0430\u043a\u0442\u0443\u0430\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u043c\u0443\u043b\u044c\u0442\u0438\u043c\u043e\u0434\u0435\u043b\u044c\u043d\u044b\u0445 \u0421\u0423\u0411\u0414 \u0443\u0436\u0435 \u043c\u043e\u0436\u043d\u043e \u0434\u0430\u0442\u044c \u043f\u043e\u043b\u043e\u0436\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u043e\u0442\u0432\u0435\u0442, \u043e\u0434\u043d\u0430\u043a\u043e \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u0435\u043d \u0432\u043e\u043f\u0440\u043e\u0441 \u043e \u0442\u043e\u043c, \u043a\u0430\u043a\u0438\u0435 \u0438\u043c\u0435\u043d\u043d\u043e \u0438\u0445 \u0440\u0430\u0437\u043d\u043e\u0432\u0438\u0434\u043d\u043e\u0441\u0442\u0438 \u0431\u0443\u0434\u0443\u0442 \u0431\u043e\u043b\u0435\u0435 \u0432\u043e\u0441\u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u044b \u0432\u00a0\u0431\u043b\u0438\u0436\u0430\u0439\u0448\u0435\u0435 \u0432\u0440\u0435\u043c\u044f. \u041f\u043e\u0445\u043e\u0436\u0435, \u0431\u043e\u043b\u0435\u0435 \u0432\u043e\u0441\u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u044b \u0431\u0443\u0434\u0443\u0442 \u043c\u0443\u043b\u044c\u0442\u0438\u043c\u043e\u0434\u0435\u043b\u044c\u043d\u044b\u0435 \u0421\u0423\u0411\u0414, \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u044e\u0449\u0438\u0435 \u0442\u0440\u0430\u0434\u0438\u0446\u0438\u043e\u043d\u043d\u044b\u0435 \u043c\u043e\u0434\u0435\u043b\u0438, \u0432\u00a0\u043f\u0435\u0440\u0432\u0443\u044e \u043e\u0447\u0435\u0440\u0435\u0434\u044c, \u0440\u0435\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u0443\u044e; \u043f\u043e\u043f\u0443\u043b\u044f\u0440\u043d\u043e\u0441\u0442\u044c \u0436\u0435 \u043c\u0443\u043b\u044c\u0442\u0438\u043c\u043e\u0434\u0435\u043b\u044c\u043d\u044b\u0445 \u0421\u0423\u0411\u0414, \u043f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u044e\u0449\u0438\u0445 \u043d\u043e\u0432\u044b\u0435 \u043c\u043e\u0434\u0435\u043b\u0438, \u0441\u043e\u0447\u0435\u0442\u0430\u044e\u0449\u0438\u0435 \u0432 \u0441\u0435\u0431\u0435 \u0434\u043e\u0441\u0442\u043e\u0438\u043d\u0441\u0442\u0432\u0430 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0445 \u0442\u0440\u0430\u0434\u0438\u0446\u0438\u043e\u043d\u043d\u044b\u0445, \u2014 \u0434\u0435\u043b\u043e \u0431\u043e\u043b\u0435\u0435 \u043e\u0442\u0434\u0430\u043b\u0435\u043d\u043d\u043e\u0433\u043e \u0431\u0443\u0434\u0443\u0449\u0435\u0433\u043e.<\/p>\n<p>  <\/p>\n<h2 id=\"anchoranchorhr\">\n<hr>\n<\/h2>\n<\/div>\n<p>               <script class=\"js-mediator-script\">!function(e){function t(t,n){if(!(n in e)){for(var r,a=e.document,i=a.scripts,o=i.length;o--;)if(-1!==i[o].src.indexOf(t)){r=i[o];break}if(!r){r=a.createElement(\"script\"),r.type=\"text\/javascript\",r.async=!0,r.defer=!0,r.src=t,r.charset=\"UTF-8\";var d=function(){var e=a.getElementsByTagName(\"script\")[0];e.parentNode.insertBefore(r,e)};\"[object Opera]\"==e.opera?a.addEventListener?a.addEventListener(\"DOMContentLoaded\",d,!1):e.attachEvent(\"onload\",d):d()}}}t(\"\/\/mediator.mail.ru\/script\/2820404\/\",\"_mediator\")}(window);<\/script>     <br \/> \u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b \u0441\u0442\u0430\u0442\u044c\u0438 <a href=\"https:\/\/habr.com\/ru\/post\/462493\/\"> https:\/\/habr.com\/ru\/post\/462493\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"\n<div class=\"post__text post__text-html js-mediator-article\">\n<p>\u0421\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u043e\u043d\u043d\u044b\u0435 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0441\u043b\u043e\u0436\u043d\u044b. \u041d\u0435 \u0432 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u044e\u044e \u043e\u0447\u0435\u0440\u0435\u0434\u044c \u0438\u0445 \u0441\u043b\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u043e\u0431\u0443\u0441\u043b\u043e\u0432\u043b\u0435\u043d\u0430 \u0441\u043b\u043e\u0436\u043d\u043e\u0441\u0442\u044c\u044e \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0435\u043c\u044b\u0445 \u0432 \u043d\u0438\u0445 \u0434\u0430\u043d\u043d\u044b\u0445. \u0421\u043b\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u0436\u0435 \u0434\u0430\u043d\u043d\u044b\u0445 \u0437\u0430\u0447\u0430\u0441\u0442\u0443\u044e \u0437\u0430\u043a\u043b\u044e\u0447\u0430\u0435\u0442\u0441\u044f \u0432 \u043c\u043d\u043e\u0433\u043e\u043e\u0431\u0440\u0430\u0437\u0438\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u044b\u0445 \u043c\u043e\u0434\u0435\u043b\u0435\u0439 \u0434\u0430\u043d\u043d\u044b\u0445. \u0422\u0430\u043a, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043a\u043e\u0433\u0434\u0430 \u0434\u0430\u043d\u043d\u044b\u0435 \u0441\u0442\u0430\u043d\u043e\u0432\u044f\u0442\u0441\u044f \u00ab\u0431\u043e\u043b\u044c\u0448\u0438\u043c\u0438\u00bb, \u043e\u0434\u043d\u043e\u0439 \u0438\u0437\u00a0\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u044e\u0449\u0438\u0445 \u043d\u0435\u0443\u0434\u043e\u0431\u0441\u0442\u0432\u0430 \u0445\u0430\u0440\u0430\u043a\u0442\u0435\u0440\u0438\u0441\u0442\u0438\u043a \u0441\u0447\u0438\u0442\u0430\u0435\u0442\u0441\u044f \u043d\u0435\u00a0\u0442\u043e\u043b\u044c\u043a\u043e \u0438\u0445 \u043e\u0431\u044a\u0435\u043c (\u00abvolume\u00bb), \u043d\u043e \u0438\u00a0\u0438\u0445 \u0440\u0430\u0437\u043d\u043e\u043e\u0431\u0440\u0430\u0437\u0438\u0435 (\u00abvariety\u00bb). <\/p>\n<p>  <\/p>\n<p>\u0415\u0441\u043b\u0438 \u0432\u044b \u043f\u043e\u043a\u0430 \u043d\u0435 \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u0435 \u0438\u0437\u044a\u044f\u043d\u0430 \u0432 \u0440\u0430\u0441\u0441\u0443\u0436\u0434\u0435\u043d\u0438\u044f\u0445, \u0442\u043e \u0447\u0438\u0442\u0430\u0439\u0442\u0435 \u0434\u0430\u043b\u044c\u0448\u0435.<\/p>\n<p>  <\/p>\n<p><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/94\/mx\/d8\/94mxd8qgj-3patv4bk_mwhbpwaq.jpeg\" alt=\"\u0428\u0430\u043c\u043f\u0443\u043d\u044c 5-\u0432-1\"><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-293034","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/293034","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=293034"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/293034\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=293034"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=293034"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=293034"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}