{"id":330927,"date":"2022-03-22T15:00:29","date_gmt":"2022-03-22T15:00:29","guid":{"rendered":"http:\/\/savepearlharbor.com\/?p=330927"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-29T21:00:00","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=330927","title":{"rendered":"<span>\u0417\u0430\u0433\u0440\u0443\u0437\u043a\u0430 stage \u0441\u043b\u043e\u044f DWH. \u0427\u0430\u0441\u0442\u044c 3<\/span>"},"content":{"rendered":"<div><\/div>\n<div id=\"post-content-body\">\n<div>\n<div class=\"article-formatted-body article-formatted-body_version-2\">\n<div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\">\n<p><a href=\"https:\/\/habr.com\/ru\/post\/599911\/\" rel=\"noopener noreferrer nofollow\">\u041f\u0435\u0440\u0432\u0430\u044f<\/a> \u0438 <a href=\"https:\/\/habr.com\/ru\/post\/646403\/\" rel=\"noopener noreferrer nofollow\">\u0432\u0442\u043e\u0440\u0430\u044f<\/a> \u0447\u0430\u0441\u0442\u0438 \u043e\u043f\u0438\u0441\u044b\u0432\u0430\u044e\u0442 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043f\u0440\u0438\u0432\u0435\u043b\u0438 \u043a \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0435 \u0442\u0435\u043a\u0443\u0449\u0435\u0439 \u043c\u043e\u0434\u0435\u043b\u0438. <\/p>\n<p>\u041e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 \u043f\u0440\u0438\u043d\u0446\u0438\u043f\u044b \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u044f \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0430 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438:<\/p>\n<ul>\n<li>\n<p>\u041f\u043e\u0442\u043e\u043a NIFI \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e \u0443\u043d\u0438\u0432\u0435\u0440\u0441\u0430\u043b\u0435\u043d \u0434\u043b\u044f \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u043e\u0432<\/p>\n<\/li>\n<li>\n<p>\u041c\u0435\u0442\u0430\u0434\u0430\u043d\u043d\u044b\u0435 \u043f\u043e\u0442\u043e\u043a\u043e\u0432 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u0440\u0430\u0441\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u044b \u0432\u043d\u0435 NIFI<\/p>\n<\/li>\n<li>\n<p>\u0421 \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435\u043c \u043d\u043e\u0432\u043e\u0433\u043e \u043f\u043e\u0442\u043e\u043a\u0430 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u0434\u043e\u043b\u0436\u0435\u043d \u0441\u043f\u0440\u0430\u0432\u0438\u0442\u0441\u044f \u0430\u043d\u0430\u043b\u0438\u0442\u0438\u043a\/\u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a \u0411\u0414 <\/p>\n<\/li>\n<\/ul>\n<p>\u0412 \u043e\u0431\u0449\u0435\u043c \u0432\u0438\u0434\u0435 \u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435 \u0441\u0438\u0441\u0438\u0442\u0435\u043c \u043c\u043e\u0436\u043d\u043e \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0432 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u043c \u0432\u0438\u0434\u0435.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/0ba\/b24\/b69\/0bab24b699e6543f3c5e72c370967747.png\" width=\"592\" height=\"291\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/0ba\/b24\/b69\/0bab24b699e6543f3c5e72c370967747.png\"\/><figcaption><\/figcaption><\/figure>\n<p>\u041d\u0430 \u0440\u0438\u0441\u0443\u043d\u043a\u0435:<\/p>\n<ul>\n<li>\n<p>\u0418\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u0438 &#8212; \u0432\u0441\u0435, \u0447\u0442\u043e \u043f\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0434\u0430\u043d\u043d\u044b\u0435. \u0412 \u043c\u043e\u0435\u0439 \u0442\u0435\u043a\u0443\u0449\u0435\u0439 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u044d\u0442\u043e \u0442\u043e\u043b\u044c\u043a\u043e \u0431\u0430\u0437\u044b \u0434\u0430\u043d\u043d\u044b\u0445.<\/p>\n<\/li>\n<li>\n<p>\u041a\u0435\u0448 &#8212; \u043b\u0438\u0431\u043e \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0438\u0439 \u043a\u044d\u0448 NIFI, \u043b\u0438\u0431\u043e Redis.<\/p>\n<\/li>\n<li>\n<p>\u0411\u0414 \u043c\u0435\u0442\u0430\u0434\u0430\u043d\u044b\u0445 &#8212; \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 \u0438\u043d\u043e\u0440\u043c\u0430\u0446\u0438\u0438 \u043e \u043f\u043e\u0442\u043e\u043a\u0430\u0445.<\/p>\n<\/li>\n<li>\n<p>\u041d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 &#8212; \u043f\u0440\u0438\u0435\u043c\u043d\u0438\u043a\u0438 \u0434\u0430\u043d\u043d\u044b\u0445. \u0423 \u043c\u0435\u043d\u044f \u0441\u0435\u0439\u0447\u0430\u0441 \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u044b \u0434\u0432\u0435 \u0411\u0414, \u0438 \u043e\u0434\u043d\u043e \u0444\u0430\u0439\u043b\u043e\u0432\u043e\u0435 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435.<\/p>\n<\/li>\n<\/ul>\n<h2>\u041c\u0435\u0442\u0430\u0434\u0430\u043d\u043d\u044b\u0435<\/h2>\n<p>\u041f\u0440\u0435\u0436\u0434\u0435, \u0447\u0435\u043c \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u044c \u043f\u043e\u0442\u043e\u043a \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043d\u0430 NIFI, \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0443\u0434\u0435\u043b\u0438\u0442\u044c \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435 \u043c\u0435\u0442\u0430\u0434\u0430\u043d\u043d\u044b\u043c. \u041c\u0435\u0442\u0430\u0434\u0430\u043d\u043d\u044b\u0435 \u043c\u043e\u0436\u043d\u043e \u0445\u0440\u0430\u043d\u0438\u0442\u044c \u043b\u044e\u0431\u044b\u043c \u0443\u0434\u043e\u0431\u043d\u044b\u043c \u0434\u043b\u044f \u0432\u0430\u0441 \u0441\u043f\u043e\u0441\u043e\u0431\u043e\u043c. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0432 \u0432\u0438\u0434\u0435 XML \u0444\u0430\u0439\u043b\u0430 \u0432 GIT \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0438. \u0412 \u0442\u0435\u043a\u0443\u0449\u0435\u0439 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e \u043f\u043b\u043e\u0441\u043a\u0443\u044e \u0442\u0430\u0431\u043b\u0438\u0446\u0443 \u0432 \u0411\u0414.<\/p>\n<p>\u0421\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430 \u0442\u0430\u0431\u043b\u0438\u0446\u044b (\u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u044b \u043f\u043e\u0442\u043e\u043a\u0430):<\/p>\n<div>\n<div class=\"table\">\n<table>\n<tbody>\n<tr>\n<td data-colwidth=\"116\" width=\"116\">\n<p>\u041f\u0430\u0440\u0430\u043c\u0435\u0442\u0440<\/p>\n<\/td>\n<td data-colwidth=\"215\" width=\"215\">\n<p>\u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435<\/p>\n<\/td>\n<td>\n<p>\u041f\u0440\u0438\u043c\u0435\u0440<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"116\" width=\"116\">\n<p>id<\/p>\n<\/td>\n<td data-colwidth=\"215\" width=\"215\">\n<p>\u0418\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440 \u043f\u043e\u0442\u043e\u043a\u0430.<\/p>\n<\/td>\n<td>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"116\" width=\"116\">\n<p>active<\/p>\n<\/td>\n<td data-colwidth=\"215\" width=\"215\">\n<p>\u0424\u043b\u0430\u0433 \u0430\u043a\u0442\u0438\u0432\u043d\u043e\u0441\u0442\u0438 \u043f\u043e\u0442\u043e\u043a\u0430<\/p>\n<\/td>\n<td>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"116\" width=\"116\">\n<p>last_start<\/p>\n<\/td>\n<td data-colwidth=\"215\" width=\"215\">\n<p>\u041f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439 \u0441\u0442\u0430\u0440\u0442 \u043f\u043e\u0442\u043e\u043a\u0430<\/p>\n<\/td>\n<td rowspan=\"2\">\n<p>\u0421\u043b\u0443\u0436\u0435\u0431\u043d\u044b\u0435 \u043f\u043e\u043b\u044f, \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u0435\u0442\u0441\u044f \u0434\u043b\u044f \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044f \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u0438 \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u044f \u043f\u043e\u0442\u043e\u043a\u043e\u0432<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"116\" width=\"116\">\n<p>last_complete<\/p>\n<\/td>\n<td data-colwidth=\"215\" width=\"215\">\n<p>\u041f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0435 \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u0435 \u043f\u043e\u0442\u043e\u043a\u0430<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"116\" width=\"116\">\n<p>src_erp<\/p>\n<\/td>\n<td data-colwidth=\"215\" width=\"215\">\n<p>\u0418\u043c\u044f \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u0430<\/p>\n<\/td>\n<td>\n<p>\u0422\u0435\u043a\u0441\u0442, \u043f\u043e \u043a\u043e\u0442\u043e\u0440\u043e\u043c\u0443 Nifi \u043c\u043e\u0436\u0435\u0442 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u0442\u044c \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a \u0434\u0430\u043d\u043d\u044b\u0445. \u041e\u0434\u043d\u0438\u043c \u0438\u0437 \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0445 \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u043e\u0432 \u0432 \u043c\u043e\u0435\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f Oracle \u0438 \u0411\u0414 &#171;\u0413\u0430\u043b\u0430\u043a\u0442\u0438\u043a\u0430&#187; &#8212; \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0430 \u0440\u0430\u0432\u043d\u043e &#171;galaxy&#187;<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"116\" width=\"116\">\n<p>src_schema<\/p>\n<\/td>\n<td data-colwidth=\"215\" width=\"215\">\n<p>\u0421\u0445\u0435\u043c\u0430 \u0432 \u0411\u0414<\/p>\n<\/td>\n<td>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"116\" width=\"116\">\n<p>src_table<\/p>\n<\/td>\n<td data-colwidth=\"215\" width=\"215\">\n<p>\u0418\u043c\u044f \u0442\u0430\u0431\u043b\u0438\u0446\u044b \u0438\u043b\u0438 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044f<\/p>\n<\/td>\n<td>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"116\" width=\"116\">\n<p>src_incrementkey<\/p>\n<\/td>\n<td data-colwidth=\"215\" width=\"215\">\n<p>\u0418\u043c\u044f \u043f\u043e\u043b\u044f, \u043f\u043e \u043a\u043e\u0442\u043e\u0440\u043e\u043c\u0443 \u043f\u0440\u043e\u0432\u043e\u0434\u0438\u0442\u0441\u044f \u0438\u043d\u043a\u0440\u0435\u043c\u0435\u043d\u0442\u0430\u043b\u044c\u043d\u0430\u044f \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0430<\/p>\n<\/td>\n<td>\n<p>\u041e \u043f\u0440\u0438\u043d\u0446\u0438\u043f\u0435 \u0438\u043d\u043a\u0440\u0435\u043c\u0435\u043d\u0442\u0430\u043b\u044c\u043d\u043e\u0439 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u044f \u0433\u043e\u0432\u043e\u0440\u0438\u043b \u0432 \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0435\u0439 \u0447\u0430\u0441\u0442\u0438. <\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"116\" width=\"116\">\n<p>src_incrementvalue<\/p>\n<\/td>\n<td data-colwidth=\"215\" width=\"215\">\n<p>\u0417\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0438\u043d\u043a\u0440\u0435\u043c\u0435\u043d\u0442\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u043e\u043b\u044f<\/p>\n<\/td>\n<td>\n<p>\u041f\u043e\u0441\u043b\u0435 \u043a\u0430\u0436\u0434\u043e\u0439 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0432\u044b\u0447\u0438\u0441\u043b\u044f\u0435\u0442\u0441\u044f. \u0422\u0430\u043a\u0436\u0435 \u0435\u0433\u043e \u043c\u043e\u0436\u043d\u043e \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0442\u044c \u0432\u043d\u0435\u0448\u043d\u0438\u043c \u0432\u043e\u0437\u0434\u0435\u0439\u0442\u0441\u0432\u0438\u0435\u043c.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"116\" width=\"116\">\n<p>src_additionalwhere<\/p>\n<\/td>\n<td data-colwidth=\"215\" width=\"215\">\n<p>\u0414\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0435 \u0443\u0441\u043b\u043e\u0432\u0438\u0435 \u043e\u0442\u0431\u043e\u0440\u0430<\/p>\n<\/td>\n<td>\n<p>\u0412\u0441\u0435, \u0447\u0442\u043e \u0431\u0443\u0434\u0435\u0442 \u0432 \u044d\u0442\u043e\u043c \u043f\u043e\u043b\u0435 \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u0441\u044f \u0432 \u0443\u0441\u043b\u043e\u0432\u0438\u0435 WHERE. \u0418 \u043c\u043e\u0436\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u044f EL.<\/p>\n<p>\u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440: VALUE > ${now():toNumber()}<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"116\" width=\"116\">\n<p>tgt_erp<\/p>\n<\/td>\n<td data-colwidth=\"215\" width=\"215\">\n<p>\u0418\u043c\u044f \u0446\u0435\u043b\u0435\u0432\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u044b<\/p>\n<\/td>\n<td>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"116\" width=\"116\">\n<p>tgt_schema<\/p>\n<\/td>\n<td data-colwidth=\"215\" width=\"215\">\n<p>\u0421\u0445\u0435\u043c\u0430 \u0432 \u0446\u0435\u043b\u0435\u0432\u043e\u0439 \u0411\u0414<\/p>\n<\/td>\n<td>\n<p>\u0412 \u0441\u043b\u0443\u0447\u0430\u0435, \u0435\u0441\u043b\u0438 \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u0441\u043e\u0445\u0440\u0430\u043d\u0438\u0442\u044c \u0444\u0430\u0439\u043b, \u0442\u0443\u0442 \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u044e \u043f\u043e\u0434\u043a\u0430\u0442\u0430\u043b\u043e\u0433<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"116\" width=\"116\">\n<p>tgt_table<\/p>\n<\/td>\n<td data-colwidth=\"215\" width=\"215\">\n<p>\u0422\u0438\u044f \u0446\u0435\u043b\u0435\u0432\u043e\u0439 \u0442\u0430\u0431\u043b\u0438\u0446\u044b<\/p>\n<\/td>\n<td>\n<p>\u0414\u043b\u044f \u0444\u0430\u0439\u043b\u043e\u0432\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u044e \u0446\u0435\u043b\u0435\u0432\u043e\u0435 \u0438\u043c\u044f \u0444\u0430\u0439\u043b\u0430<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"116\" width=\"116\">\n<p>column_list<\/p>\n<\/td>\n<td data-colwidth=\"215\" width=\"215\">\n<p>\u0421\u043f\u0438\u0441\u043e\u043a \u043f\u043e\u043b\u0435\u0439<\/p>\n<\/td>\n<td>\n<p>\u0415\u0441\u043b\u0438 \u0437\u0430\u0434\u0430\u043d\u043e \u044d\u0442\u043e \u043f\u043e\u043b\u0435, \u0442\u043e \u0432 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0435 \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 \u0437\u0430\u043f\u0440\u043e\u0441\u0430 \u043a \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u0443 \u043f\u043e\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0434\u0430\u043d\u043d\u044b\u0439 \u0441\u043f\u0438\u0441\u043e\u043a. \u0422.\u043e. \u043c\u043e\u0436\u043d\u043e \u0432\u0441\u0442\u0430\u0432\u0438\u0442\u044c SQL-\u0441\u0438\u043d\u0442\u0430\u043a\u0441\u0438\u0441.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"116\" width=\"116\">\n<p> tgt_truncate<\/p>\n<\/td>\n<td data-colwidth=\"215\" width=\"215\">\n<p>\u041e\u0447\u0438\u0449\u0430\u0442\u044c \u0446\u0435\u043b\u0435\u0432\u0443\u044e \u0442\u0430\u0431\u043b\u0438\u0446\u0443 \u043f\u0440\u0438 \u0441\u0442\u0430\u0440\u0442\u0435 \u043f\u043e\u0442\u043e\u043a\u0430<\/p>\n<\/td>\n<td>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"116\" width=\"116\">\n<p>avro_schema<\/p>\n<\/td>\n<td data-colwidth=\"215\" width=\"215\">\n<p>\u0410\u0432\u0440\u043e-\u0441\u0445\u0435\u043c\u0430<\/p>\n<\/td>\n<td>\n<p>\u0415\u0441\u043b\u0438 \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u0437\u0430\u0434\u0430\u0442\u044c \u0441\u0445\u0435\u043c\u0443, \u0442\u043e \u0432 \u044d\u0442\u043e\u043c \u043f\u043e\u043b\u0435 \u043c\u043e\u0436\u043d\u043e \u0435\u0435 \u0443\u043a\u0430\u0437\u0430\u0442\u044c. \u0412 \u0431\u0443\u0434\u0443\u0449\u0435\u043c \u044f \u043f\u043b\u0430\u043d\u0438\u0440\u0443\u044e \u043f\u0435\u0440\u0435\u0439\u0442\u0438 \u043d\u0430 Schema Registry, \u0438 \u0442\u0443\u0442 \u0431\u0443\u0434\u0435\u0442 \u0441\u0441\u044b\u043b\u043a\u0430<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"116\" width=\"116\">\n<p>adddefstgfields<\/p>\n<\/td>\n<td data-colwidth=\"215\" width=\"215\">\n<p> \u0414\u043e\u0431\u0430\u0432\u043b\u044f\u0442\u044c \u043f\u043e\u043b\u044f Stage \u0441\u043b\u043e\u044f<\/p>\n<\/td>\n<td>\n<p>\u0412 \u0434\u0430\u043d\u043d\u043e\u0439 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u044d\u0442\u043e \u043e\u0441\u043d\u043e\u0432\u043d\u0430\u044f \u0442\u0440\u0430\u043d\u0441\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f, \u0432 \u0445\u043e\u0434\u0435 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u0440\u0430\u0441\u0441\u0447\u0438\u0442\u044b\u0432\u0430\u0435\u0442\u0441\u044f  HASH \u0437\u0430\u043f\u0438\u0441\u0438.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"116\" width=\"116\">\n<p>customselect<\/p>\n<\/td>\n<td data-colwidth=\"215\" width=\"215\">\n<p>\u0417\u0430\u043f\u0440\u043e\u0441 \u043a \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u0443<\/p>\n<\/td>\n<td>\n<p>\u0415\u0441\u043b\u0438 \u0437\u0430\u0434\u0430\u043d \u044d\u0442\u043e\u0442 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440, \u0442\u043e \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0437\u0430\u043f\u0440\u043e\u0441 \u043d\u0435 \u043d\u0430\u0434\u043e, \u043d\u0430\u0434\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0442\u044c \u0442\u0435\u043a\u0443\u0449\u0438\u0439.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"116\" width=\"116\">\n<p>priority<\/p>\n<\/td>\n<td data-colwidth=\"215\" width=\"215\">\n<p>\u041f\u0440\u0438\u043e\u0440\u0438\u0442\u0435\u0442 \u043f\u043e\u0442\u043e\u043a\u0430<\/p>\n<\/td>\n<td>\n<p>\u041f\u0440\u0438\u043c\u0435\u043d\u044f\u0435\u0442\u0441\u044f \u0434\u043b\u044f \u043f\u0440\u0438\u043e\u0440\u0438\u0442\u0435\u0442\u0430 \u0434\u0430\u043d\u044b\u0445 \u0432 \u043e\u0447\u0435\u0440\u0435\u0434\u044f\u0445. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0447\u0442\u043e\u0431\u044b \u0431\u043e\u043b\u044c\u0448\u0430\u044f \u043f\u043e \u043e\u0431\u044a\u0435\u043c\u0443 \u0438\u0441\u0442\u043e\u0440\u0438\u0447\u0435\u0441\u043a\u0430\u044f \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u043d\u0435 \u043c\u0435\u0448\u0430\u043b\u0430 \u0442\u0435\u043a\u0443\u0449\u0438\u043c \u0437\u0430\u0434\u0430\u0447\u0430\u043c, \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0435\u0439 \u043d\u0438\u0437\u043a\u0438\u0439 \u043f\u0440\u0438\u043e\u0440\u0438\u0442\u0435\u0442 (\u0432  Nifi \u0447\u0435\u043c \u0431\u043e\u043b\u044c\u0448\u0435 \u0437\u043d\u0430\u0435\u0447\u043d\u0438\u0435, \u0442\u0435\u043c \u043d\u0438\u0436\u0435 \u043f\u0440\u0438\u043e\u0440\u0438\u0442\u0435\u0442)<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"116\" width=\"116\">\n<p>execprocedure_end<\/p>\n<\/td>\n<td data-colwidth=\"215\" width=\"215\">\n<p>\u0417\u0430\u043f\u0440\u043e\u0441 \u043d\u0430 \u0446\u0435\u043b\u0435\u0432\u043e\u0439 \u0411\u0414, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u0441\u044f \u043f\u043e\u0441\u043b\u0435 \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u044f \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438<\/p>\n<\/td>\n<td>\n<p>\u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043c\u043e\u0436\u043d\u043e \u0437\u0430\u0434\u0430\u0442\u044c \u0442\u0430\u043a\u043e\u0439 \u0437\u0430\u043f\u0440\u043e\u0441:<\/p>\n<p>UPDATE ${paramtable}<br \/>SET active=0<br \/>WHERE id=${paramid}<\/p>\n<p>\u0422.\u043e. \u043f\u043e\u0441\u043b\u0435 \u0437\u0430\u043f\u0443\u0441\u043a\u0430, \u043f\u043e\u0442\u043e\u043a \u0443\u0431\u0435\u0440\u0435\u0442 \u0432 \u0411\u0414 \u0432\u043b\u0430\u0433 \u0430\u043a\u0442\u0438\u0432\u043d\u043e\u0441\u0442\u0438, \u0438 \u043d\u0435 \u0431\u0443\u0434\u0435\u0442 \u0432 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439 \u0440\u0430\u0437 \u0443\u0447\u0430\u0441\u0442\u0432\u043e\u0432\u0430\u0442\u044c \u0432 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0435.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"116\" width=\"116\">\n<p>schedule<\/p>\n<\/td>\n<td data-colwidth=\"215\" width=\"215\">\n<p>\u0420\u0430\u0441\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u0447\u0435\u0440\u0435\u0437 \u0442\u043e\u0447\u043a\u0443 \u0441 \u0437\u0430\u043f\u044f\u0442\u043e\u0439<\/p>\n<\/td>\n<td>\n<p>10:00;21:00;manual<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"116\" width=\"116\">\n<p>sche_to_exec<\/p>\n<\/td>\n<td data-colwidth=\"215\" width=\"215\">\n<p>\u041f\u0440\u0438 \u043a\u0430\u043a\u043e\u043c \u0440\u0430\u0441\u043f\u0438\u0441\u0430\u043d\u0438\u0438 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0442\u044c \u0437\u0430\u043f\u0440\u043e\u0441 \u0438\u0437 \u043f\u043e\u043b\u044f execprocedure_end <\/p>\n<\/td>\n<td>\n<p>21:00;special<\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<h2>\u041f\u043e\u0442\u043e\u043a \u0437\u0430\u0440\u0443\u0437\u043a\u0438<\/h2>\n<p>\u0418\u0442\u0430\u043a, \u043f\u043e\u0442\u043e\u043a NIFI \u0441\u043e\u0441\u0442\u043e\u0438\u0442 \u0438\u0437 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0445 \u043f\u0440\u043e\u0446\u0435\u0441\u043d\u044b\u0445 \u0433\u0440\u0443\u043f\u043f:<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/d33\/386\/2e9\/d333862e93260591f55924ed04b148b1.png\" alt=\"\u041f\u043e\u0442\u043e\u043a \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u0434\u043b\u044f \u043f\u043e\u043d\u0438\u043c\u0430\u043d\u0438\u044f \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0434\u0432\u0438\u0436\u0435\u043d\u0438\u044f \u0434\u0430\u043d\u043d\u044b\u0445\" title=\"\u041f\u043e\u0442\u043e\u043a \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u0434\u043b\u044f \u043f\u043e\u043d\u0438\u043c\u0430\u043d\u0438\u044f \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0434\u0432\u0438\u0436\u0435\u043d\u0438\u044f \u0434\u0430\u043d\u043d\u044b\u0445\" width=\"3598\" height=\"1403\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/d33\/386\/2e9\/d333862e93260591f55924ed04b148b1.png\"\/><figcaption>\u041f\u043e\u0442\u043e\u043a \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u0434\u043b\u044f \u043f\u043e\u043d\u0438\u043c\u0430\u043d\u0438\u044f \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0434\u0432\u0438\u0436\u0435\u043d\u0438\u044f \u0434\u0430\u043d\u043d\u044b\u0445<\/figcaption><\/figure>\n<h3>\u0413\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u044f (Shedulers)<\/h3>\n<p>\u0412 \u0431\u043b\u043e\u043a\u0435 \u0441\u043e\u0431\u0440\u0430\u043d\u044b \u0432\u0441\u0435 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u044b\u0435 \u0433\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440\u044b, \u0442\u0440\u0438\u0433\u0433\u0435\u0440\u044b.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/b30\/302\/d5b\/b30302d5b805d86f2e6f30cc0d128fb8.png\" alt=\"\u041d\u0430\u0431\u043e\u0440\u044b \u0442\u0440\u0438\u0433\u0435\u0440\u043e\u0432\" title=\"\u041d\u0430\u0431\u043e\u0440\u044b \u0442\u0440\u0438\u0433\u0435\u0440\u043e\u0432\" width=\"2016\" height=\"886\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/b30\/302\/d5b\/b30302d5b805d86f2e6f30cc0d128fb8.png\"\/><figcaption>\u041d\u0430\u0431\u043e\u0440\u044b \u0442\u0440\u0438\u0433\u0435\u0440\u043e\u0432<\/figcaption><\/figure>\n<p>\u0414\u043b\u044f \u0443\u0434\u043e\u0431\u0441\u0442\u0432\u0430 \u044f \u0440\u0430\u0437\u0434\u0435\u043b\u0438\u043b \u0433\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440\u044b \u043d\u0430 \u0433\u0440\u0443\u043f\u043f\u044b. \u041e\u0431\u0449\u0438\u0439 \u0441\u043c\u044b\u0441\u043b \u0434\u0430\u043d\u043d\u043e\u0439 \u043f\u0440\u043e\u0446\u0435\u0441\u043d\u043e\u0439 \u0433\u0440\u0443\u043f\u043f\u044b &#8212; \u043f\u043e\u043b\u0443\u0438\u0442\u044c \u0444\u0430\u0439\u043b \u0441 \u0437\u0430\u043f\u043e\u043b\u043d\u0435\u043d\u044b\u043c \u0430\u0442\u0440\u0438\u0431\u0443\u0442\u043e\u043c ${schedule}, \u043f\u043e \u043a\u043e\u0442\u043e\u0440\u043e\u043c\u0443 \u0431\u0443\u0434\u0443\u0442 \u0432\u044b\u0431\u0440\u0430\u043d\u044b \u043f\u043e\u0442\u043e\u043a\u0438 \u0438\u0437 \u0411\u0414. \u0412 \u0438\u043d\u0442\u0435\u0440\u0432\u0430\u043b\u044c\u043d\u043e\u0439 \u0433\u0440\u0443\u043f\u043f\u0435 \u043d\u0430\u0445\u043e\u0434\u044f\u0442\u0441\u044f \u0442\u0440\u0438\u0433\u0433\u0435\u0440\u044b, \u043a\u043e\u0442\u0440\u044b\u0435 \u0441\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u044e\u0442 \u043f\u043e \u0438\u043d\u0442\u0435\u0440\u0432\u0430\u043b\u0443, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0442\u0440\u0438\u0433\u0433\u0435\u0440 \u0440\u0430\u0437 \u0432 \u043f\u044f\u0442\u044c \u043c\u0438\u043d\u0443\u0442 \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u0442 \u0444\u0430\u0439\u043b \u0441 \u0440\u0430\u0441\u043f\u0438\u0441\u0430\u043d\u0438\u0435\u043c <em>5min.<\/em><\/p>\n<p>\u0412 \u0433\u0440\u0443\u043f\u043f\u0435 TimeOfDay \u044f \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u044e \u0444\u0430\u0439\u043b \u0440\u0430\u0437 \u0432 \u043c\u0438\u043d\u0443\u0442\u0443, \u0438 \u0432\u044b\u0441\u0442\u0430\u0432\u043b\u044f\u044e <code>${schedule} = ${now():format(\"HH:mm\")}.<\/code><\/p>\n<p>\u0422\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c, \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u043c\u0435\u0441\u0442\u0438\u0442\u044c \u043f\u0440\u043e\u0446\u0446\u0435\u0441\u0441\u043e\u0440 <strong>GenerateFlowFile <\/strong>\u0441 \u043d\u0443\u0436\u043d\u044b\u043c \u0438\u043d\u0442\u0435\u0440\u0432\u0430\u043b\u043e\u043c \u0438\u043b\u0438 crone \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u0435\u043c, \u0438 \u043f\u043e\u0442\u043e\u043a \u0431\u0443\u0434\u0435\u0442 \u0437\u0430\u0433\u0440\u0443\u0436\u0435\u043d \u0442\u043e\u043b\u044c\u043a\u043e \u043f\u0440\u0438 \u0441\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u043d\u0438\u0438 \u043d\u0443\u0436\u043d\u043e\u0433\u043e \u0437\u0440\u0430\u0447\u0435\u043d\u0438\u044f.<\/p>\n<h3>\u0418\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f (Init)<\/h3>\n<p>\u0412 \u0434\u0430\u043d\u043d\u043e\u0439 \u0433\u0440\u0443\u043f\u043f\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442\u0441\u044f \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u043f\u043e\u0442\u043e\u043a\u0430. \u042f\u0434\u0440\u043e\u043c \u0438 \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u043c \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u043c \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 \u043c\u0435\u0442\u0430\u0434\u0430\u043d\u044b\u0445 \u043f\u043e\u0442\u043e\u043a\u0430:<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/559\/aeb\/b18\/559aebb18b0c2dbc95fa0a1ce404bbb6.png\" width=\"820\" height=\"846\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/559\/aeb\/b18\/559aebb18b0c2dbc95fa0a1ce404bbb6.png\"\/><figcaption><\/figcaption><\/figure>\n<p>\u0412 \u044d\u0442\u043e\u043c \u0431\u043b\u043e\u043a\u0435 \u044f \u0437\u0430\u043f\u0440\u0430\u0448\u0438\u0432\u0430\u044e \u0432 \u0411\u0414 \u0432\u0441\u0435 \u0430\u043a\u0442\u0438\u0432\u043d\u044b\u0435 \u043f\u043e\u0442\u043e\u043a\u0438 \u0441 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0432\u0443\u044e\u0449\u0438\u043c \u0440\u0430\u0441\u043f\u0438\u0441\u0430\u043d\u0438\u0435\u043c, \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u044e \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0443 \u043d\u0430 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0438 \u0438\u0437\u0432\u043b\u0435\u043a\u0430\u044e \u0437\u043d\u0430\u0435\u0447\u043d\u0438\u044f \u0432 \u0430\u0442\u0440\u0438\u0431\u0443\u0442\u044b.<\/p>\n<p>\u0417\u0430\u043f\u0440\u043e\u0441 \u043f\u0440\u043e\u0441\u0442\u043e\u0439:<\/p>\n<pre><code class=\"sql\">SELECT * from ${paramtable}  WHERE active = 1 AND  '${schedule}' in (     SELECT value      FROM string_split(schedule, ';') ) ORDER BY priority<\/code><\/pre>\n<p>\u0414\u0430\u043b\u0435\u0435 \u0432 \u044d\u0442\u043e\u0439 \u0436\u0435 \u0433\u0440\u0443\u043f\u043f\u0435 \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u044b \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 \u043d\u0430 \u043d\u0430\u043b\u0438\u0447\u0438\u0435 \u0442\u0430\u0431\u043b\u0438\u0446\u044b \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u0430, \u0442\u0430\u0431\u043b\u0438\u0446\u044b \u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f, \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u0442\u0441\u044f \u0444\u043e\u0440\u043c\u0430\u0442 \u0438\u043d\u043a\u0440\u0435\u043c\u0435\u043d\u0442\u0430.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/04b\/830\/fc9\/04b830fc992f3f869ecdbd683b4566ba.png\" alt=\"\u0415\u0441\u043b\u0438 \u0447\u0438\u0441\u043b\u043e, \u0442\u043e \u0443\u0441\u043b\u043e\u0432\u0438\u0435 \u0432\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0431\u0435\u0437 \u0430\u043f\u043e\u0441\u0442\u0440\u043e\u0444\u043e\u0432, \u0435\u0441\u043b\u0438 \u0434\u0430\u0442\u0430 - \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0444\u043e\u0440\u043c\u0430\u0442\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u043a \u0434\u0430\u0442\u0435 \u0438 \u043e\u0431\u0440\u0430\u043c\u043b\u044f\u0435\u0442\u0441\u044f \u0430\u043f\u043e\u0441\u0442\u0440\u043e\u0444\u0430\u043c\u0438\" title=\"\u0415\u0441\u043b\u0438 \u0447\u0438\u0441\u043b\u043e, \u0442\u043e \u0443\u0441\u043b\u043e\u0432\u0438\u0435 \u0432\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0431\u0435\u0437 \u0430\u043f\u043e\u0441\u0442\u0440\u043e\u0444\u043e\u0432, \u0435\u0441\u043b\u0438 \u0434\u0430\u0442\u0430 - \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0444\u043e\u0440\u043c\u0430\u0442\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u043a \u0434\u0430\u0442\u0435 \u0438 \u043e\u0431\u0440\u0430\u043c\u043b\u044f\u0435\u0442\u0441\u044f \u0430\u043f\u043e\u0441\u0442\u0440\u043e\u0444\u0430\u043c\u0438\" width=\"1590\" height=\"928\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/04b\/830\/fc9\/04b830fc992f3f869ecdbd683b4566ba.png\"\/><figcaption>\u0415\u0441\u043b\u0438 \u0447\u0438\u0441\u043b\u043e, \u0442\u043e \u0443\u0441\u043b\u043e\u0432\u0438\u0435 \u0432\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0431\u0435\u0437 \u0430\u043f\u043e\u0441\u0442\u0440\u043e\u0444\u043e\u0432, \u0435\u0441\u043b\u0438 \u0434\u0430\u0442\u0430 &#8212; \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0444\u043e\u0440\u043c\u0430\u0442\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u043a \u0434\u0430\u0442\u0435 \u0438 \u043e\u0431\u0440\u0430\u043c\u043b\u044f\u0435\u0442\u0441\u044f \u0430\u043f\u043e\u0441\u0442\u0440\u043e\u0444\u0430\u043c\u0438<\/figcaption><\/figure>\n<p>\u0422\u0430\u043a\u0436\u0435 \u043f\u0440\u0438 \u043d\u0430\u043b\u0438\u0447\u0438\u0438 \u0444\u043b\u0430\u0433\u0430 <strong>tgt_truncate <\/strong>\u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442\u0441\u044f \u0443\u0434\u0430\u043b\u0435\u043d\u0438\u0435 \u0446\u0435\u043b\u0435\u0432\u043e\u0439 \u0442\u0430\u0431\u043b\u0438\u0446\u044b. \u0412 \u0430\u0442\u0440\u0438\u0431\u0443\u0442 ${database.name} \u043f\u043e\u043c\u0435\u0449\u0430\u0435\u0442\u0441\u044f \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0438\u0437 ${src.erp}, \u044d\u0442\u043e \u043f\u043e\u0437\u0432\u043e\u043b\u0438\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043e\u0434\u0438\u043d \u0441\u0435\u0440\u0432\u0438\u0441 \u0434\u043b\u044f \u043f\u0440\u043e\u043a\u0441\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u043d\u044b\u0445 \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u043e\u0432.<\/p>\n<h3>\u0418\u0437\u0432\u043b\u0435\u043a\u0430\u0435\u043c \u0434\u0430\u043d\u043d\u044b\u0435 (Extract)<\/h3>\n<p> \u0412 \u044d\u0442\u043e\u0439 \u0433\u0440\u0443\u043f\u043f\u0435 \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u0433\u0435\u0433\u0435\u0440\u0430\u0446\u0438\u044f \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432 \u0438 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u0438\u0445 \u043a \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u0430\u043c. \u0417\u0434\u0435\u0441\u044c \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u0435\u0442\u0441\u044f \u0437\u0430\u043c\u0435\u0447\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442 <strong>DBCPConnectionPoolLookup<\/strong>, \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u044e\u0449\u0438\u0439 \u043f\u0435\u0440\u0435\u0447\u0438\u0441\u043b\u0438\u0442\u044c \u0432\u0441\u0435 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0435 \u0441\u0438\u0441\u0442\u0435\u043c\u044b, \u0438 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0442\u044c \u0434\u043e\u0441\u0442\u0443\u043f \u043a \u043d\u0438\u043c \u043f\u043e \u0430\u0442\u0440\u0438\u0431\u0443\u0442\u0443 <em>${database.name}<\/em>.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/845\/8a0\/694\/8458a06944a942a1e1890d2b7aeef723.png\" alt=\"\u0423 \u043c\u0435\u043d\u044f \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d \u0434\u043e\u0441\u0442\u0443\u043f \u043a Oracle, Posgre, MsSQl, MySql, Clickhouse\" title=\"\u0423 \u043c\u0435\u043d\u044f \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d \u0434\u043e\u0441\u0442\u0443\u043f \u043a Oracle, Posgre, MsSQl, MySql, Clickhouse\" width=\"1402\" height=\"502\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/845\/8a0\/694\/8458a06944a942a1e1890d2b7aeef723.png\"\/><figcaption>\u0423 \u043c\u0435\u043d\u044f \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d \u0434\u043e\u0441\u0442\u0443\u043f \u043a Oracle, Posgre, MsSQl, MySql, Clickhouse<\/figcaption><\/figure>\n<p> \u0412 \u043e\u0431\u0449\u0435\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442 <strong>GererateTableFetch<\/strong>, \u043f\u0440\u0435\u0434\u0432\u0430\u0440\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0432\u044b\u0431\u0440\u0430\u0432, \u043a \u043a\u0430\u043a\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u0435 \u043d\u0430\u0434\u043e \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0437\u0430\u043f\u0440\u043e\u0441.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/747\/69d\/f64\/74769df649acf67ce7ccaac72d030dc0.png\" alt=\"\u0412\u044b\u0431\u0438\u0440\u0430\u044e \u0441\u0438\u0441\u0442\u0435\u043c\u0443 \u0438 \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u044f\u044e \u043f\u043e\u0442\u043e\u043a \u043d\u0430 \u043d\u0443\u0436\u043d\u044b\u0439 \u0433\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440\" title=\"\u0412\u044b\u0431\u0438\u0440\u0430\u044e \u0441\u0438\u0441\u0442\u0435\u043c\u0443 \u0438 \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u044f\u044e \u043f\u043e\u0442\u043e\u043a \u043d\u0430 \u043d\u0443\u0436\u043d\u044b\u0439 \u0433\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440\" width=\"1402\" height=\"926\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/747\/69d\/f64\/74769df649acf67ce7ccaac72d030dc0.png\"\/><figcaption>\u0412\u044b\u0431\u0438\u0440\u0430\u044e \u0441\u0438\u0441\u0442\u0435\u043c\u0443 \u0438 \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u044f\u044e \u043f\u043e\u0442\u043e\u043a \u043d\u0430 \u043d\u0443\u0436\u043d\u044b\u0439 \u0433\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440<\/figcaption><\/figure>\n<p>\u041e\u0434\u043d\u0430\u043a\u043e \u0434\u0430\u043d\u043d\u044b\u0439 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u043c\u0435\u0434\u043b\u0435\u043d\u043d\u043e, \u043f\u043e \u0440\u0430\u043d\u0435\u0439 \u043c\u0435\u0440\u0435 \u043a \u043d\u0430\u0433\u0440\u0443\u0436\u0435\u043d\u043d\u044b\u043c \u0411\u0414 \u0433\u0435\u0440\u0435\u0430\u0446\u0438\u044f \u0437\u0430\u043f\u0440\u043e\u0441\u044b \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u043b\u0430\u0441\u044c \u0437\u0430 \u043d\u0435\u0441\u043a\u043b\u044c\u043a\u043e \u0441\u0435\u043a\u0443\u043d\u0434. \u041f\u0440\u0438 \u043f\u043e\u0432\u044b\u0448\u0435\u043d\u0438\u0438 \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u0439 \u043f\u043e \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u0438 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0440\u0435\u0448\u0435\u043d\u043e \u0431\u044b\u043b\u043e \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0441\u0432\u043e\u0439 \u0433\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440 \u0434\u043b\u044f \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0445 \u0441\u0438\u0441\u0442\u0435\u043c &#8212; MSSql \u0438 Oracle. \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0435 \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u0435:<\/p>\n<pre><code class=\"sql\">SELECT ${column.list:isEmpty():ifElse('*', ${column.list})}  FROM ${src.schema}.${src.table} ${src.additionalwhere:isEmpty():ifElse(${src.additionalwhere},                                        ${src.additionalwhere:prepend('WHERE ')})}<\/code><\/pre>\n<p>\u0418\u043d\u043e\u0433\u0434\u0430 \u043c\u043e\u0436\u0435\u0442 \u0432\u043e\u0437\u043d\u0438\u043a\u043d\u0443\u0442\u044c \u0441\u0438\u0442\u0443\u0430\u0446\u0438\u044f, \u043a\u043e\u0433\u0434\u0430 \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a \u0434\u043e\u043b\u0433\u043e \u043e\u0442\u0434\u0430\u0442\u0435 \u0434\u0430\u043d\u043d\u044b\u0435, \u043b\u0438\u0431\u043e \u0441\u0435\u0442\u044c \u043f\u043e\u0434\u0432\u0438\u0441\u043b\u0430, \u0430 \u0437\u0430\u043f\u0440\u043e\u0441\u044b \u0432\u0430\u043b\u044f\u0442\u0441\u044f \u0441 \u0431\u043e\u043b\u0448\u043e\u0439 \u0447\u0430\u0441\u0442\u043e\u0442\u043e\u0439. \u0427\u0442\u043e\u0431\u044b \u0438\u0441\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u043e\u0434\u0438\u043d\u0430\u043a\u043e\u0432\u044b\u0435 \u0437\u0430\u043f\u0440\u043e\u0441\u044b \u043a \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u0443 \u0441\u0434\u0435\u043b\u0430\u043b \u043f\u0440\u043e\u0441\u0442\u0443\u044e \u0432\u0435\u0449\u044c &#8212; \u043d\u0430 \u0437\u043d\u0430\u0447\u0438\u043c\u044b\u0445 \u043f\u043e\u043b\u044f\u0445 \u0438 \u0442\u0435\u043a\u0441\u0442\u0435 \u0437\u0430\u043f\u0440\u043e\u0441\u0430 \u0441\u0438\u0442\u0430\u044e \u0445\u0435\u0448 \u0438 \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u044e \u0435\u0433\u043e \u043d\u0430 \u0434\u0443\u0431\u043b\u0438\u043a\u0430\u0442. \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u043b\u0438\u0431\u043e \u0432\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u044b\u0439 <strong>DistributedMapCacheServer <\/strong>\u0438\u043b\u0438 <strong>Redis<\/strong>.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/09c\/11d\/ea4\/09c11dea4e304f297b157c2d254c8402.png\" width=\"836\" height=\"926\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/09c\/11d\/ea4\/09c11dea4e304f297b157c2d254c8402.png\"\/><figcaption><\/figcaption><\/figure>\n<p>\u0415\u0441\u043b\u0438 \u0434\u0443\u0431\u043b\u0438\u043a\u0430\u0442\u043e\u0432 \u043d\u0435\u0442, \u0442\u043e \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u0438\u043c \u043a \u0437\u0430\u043f\u0440\u043e\u0441\u0430\u043c \u043a \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u0443. \u0415\u0441\u043b\u0438 \u0437\u0430\u0434\u0430\u043d\u0430 \u0441\u0445\u0435\u043c\u0430, \u0442\u043e \u0437\u0430\u043f\u0440\u043e\u0441 \u0438\u0434\u0435\u0442 \u0447\u0435\u0440\u0435\u0437 <strong>ExecuteSQLRecord<\/strong>, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c Writer \u0441\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d \u043d\u0430 \u0441\u0445\u0435\u043c\u0443 \u0432 \u0430\u0442\u0440\u0438\u0431\u0443\u0442\u0435.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/6eb\/8f2\/023\/6eb8f202307efd5b0afb7d8c08700e93.png\" width=\"1354\" height=\"734\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/6eb\/8f2\/023\/6eb8f202307efd5b0afb7d8c08700e93.png\"\/><figcaption><\/figcaption><\/figure>\n<p>\u041f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b ExecuteSql:<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/0c2\/b20\/82b\/0c2b2082bbcf1dfc512283c55c354cdd.png\" width=\"1354\" height=\"218\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/0c2\/b20\/82b\/0c2b2082bbcf1dfc512283c55c354cdd.png\"\/><figcaption><\/figcaption><\/figure>\n<p>\u0412 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0430\u0445 \u044f \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u044e:<\/p>\n<ol>\n<li>\n<p><strong>Max Rows Per Flow File<\/strong> &#8212;   e\u0441\u043b\u0438 \u043d\u0430\u0434\u043e \u0441\u043e\u0445\u0440\u0430\u043d\u044f\u0442\u044c \u0444\u0430\u0439\u043b \u0434\u043b\u044f Clickhouse (\u0442\u0430\u043a \u0433\u0440\u0443\u0437\u0438\u043c \u0441\u043b\u043e\u0432\u0430\u0440\u0438), \u0442\u043e \u0432\u044b\u0433\u0440\u0443\u0437\u043a\u0443 \u043d\u0435 \u0440\u0430\u0437\u0431\u0438\u0432\u0430\u0442\u044c, \u0432 \u043f\u0440\u043e\u0442\u0438\u0432\u043d\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u0437\u0430\u0434\u0430\u044e \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0438\u0437 \u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u043e\u0439 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0439.<\/p>\n<\/li>\n<li>\n<p><strong>Output Batch Size<\/strong> &#8212;  \u0435\u0441\u043b\u0438 \u0437\u0430\u0434\u0430\u043d \u0437\u0430\u043f\u0440\u043e\u0441, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043d\u0430\u0434\u043e \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u044c \u0432 \u043a\u043e\u043d\u0446\u0435 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438, \u0442\u043e \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0442\u044c \u0431\u0430\u0442\u0447\u0435\u0432\u0443\u044e \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0443, \u0438\u043d\u0430\u0447\u0435 \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u0442\u044c \u043d\u0430 \u0432\u044b\u0445\u043e\u0434 \u043f\u043e \u043f\u044f\u0442\u044c \u0444\u0430\u0439\u043b\u043e\u0432. \u0411\u0430\u0442\u0447\u0435\u0432\u0430\u044f \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u043f\u043e\u0437\u0432\u043e\u043b\u0438\u0442 \u043e\u0442\u0441\u043b\u0435\u0434\u0438\u0442\u044c \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0444\u0440\u0430\u0433\u043c\u0435\u043d\u0442\u043e\u0432 \u0432 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0435 \u0437\u0430\u043f\u0440\u043e\u0441\u0430.<\/p>\n<\/li>\n<li>\n<p><strong>Fetch Size<\/strong> &#8212;   \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0434\u0440\u0430\u0439\u0432\u0435\u0440\u044b \u0443\u043c\u0435\u044e\u0442 \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u0442\u044c \u044d\u0442\u043e\u0442 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440: \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0437\u0430\u043f\u0438\u0441\u0435\u0439, \u043f\u0435\u0440\u0435\u0434\u0430\u0432\u0430\u0435\u043c\u044b\u0445 \u0432 \u043f\u0430\u043a\u0435\u0442\u0435.<\/p>\n<\/li>\n<\/ol>\n<p><a class=\"anchor\" name=\"serviceable\" id=\"serviceable\"><\/a><\/p>\n<p>\u041d\u0430 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u043c \u044d\u0442\u0430\u043f\u0435 \u044f \u0432\u043d\u043e\u0448\u0443 \u0432 \u0441\u043b\u0443\u0447\u0430\u0435 \u0431\u0430\u0442\u0447\u0435\u0432\u043e\u0439 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u0432\u0441\u0435 \u0444\u0440\u0430\u0433\u043c\u0435\u043d\u0442\u044b \u0432 \u0441\u043b\u0443\u0436\u0435\u0431\u043d\u0443\u044e \u0442\u0430\u0431\u043b\u0438\u0446\u0443. \u041d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u044c \u044d\u0442\u043e\u0433\u043e \u0448\u0430\u0433\u0430 \u044f \u043f\u043e\u044f\u0441\u043d\u044e \u043f\u043e\u0437\u0436\u0435, \u0432 \u0440\u0430\u0437\u0434\u0435\u043b\u0435 \u041f\u043e\u0441\u0442\u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/5cc\/cf8\/4f3\/5cccf84f3ef3c4dd15a9e068fa932006.png\" alt=\"\u0412\u043d\u043e\u0441\u0438\u043c \u0438\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440 \u0444\u0440\u0430\u0433\u043c\u0435\u043d\u0442\u0430 \u0432 \u0441\u043b\u0443\u0436\u0435\u0431\u043d\u0443\u044e \u0442\u0430\u0431\u043b\u0438\u0446\u0443\" title=\"\u0412\u043d\u043e\u0441\u0438\u043c \u0438\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440 \u0444\u0440\u0430\u0433\u043c\u0435\u043d\u0442\u0430 \u0432 \u0441\u043b\u0443\u0436\u0435\u0431\u043d\u0443\u044e \u0442\u0430\u0431\u043b\u0438\u0446\u0443\" width=\"1474\" height=\"656\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/5cc\/cf8\/4f3\/5cccf84f3ef3c4dd15a9e068fa932006.png\"\/><figcaption>\u0412\u043d\u043e\u0441\u0438\u043c \u0438\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440 \u0444\u0440\u0430\u0433\u043c\u0435\u043d\u0442\u0430 \u0432 \u0441\u043b\u0443\u0436\u0435\u0431\u043d\u0443\u044e \u0442\u0430\u0431\u043b\u0438\u0446\u0443<\/figcaption><\/figure>\n<h3>\u0422\u0440\u0430\u043d\u0441\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f (Trasnform)<\/h3>\n<p>\u0412 \u0434\u0430\u043d\u043d\u044b\u0439 \u043c\u043e\u043c\u0435\u043d\u0442 \u0443 \u043d\u0430\u0441 \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u0435\u0442\u0441\u044f \u043e\u0434\u043d\u0430 \u0442\u0440\u0430\u043d\u0441\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f &#8212; \u044d\u0442\u043e \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043f\u043e\u043b\u0435\u0439  Starge \u0441\u043b\u043e\u044f. \u042d\u0442\u0438 \u043f\u043e\u043b\u044f \u0438 \u0443\u0436\u0435 \u043e\u043f\u0438\u0441\u044b\u0432\u0430\u043b \u0432 \u043f\u0435\u0440\u0432\u043e\u0439 \u0438 \u0432\u0442\u043e\u0440\u043e\u0439 \u0447\u0430\u0441\u0442\u0438, \u043f\u043e\u043a\u0430\u0436\u0443 \u043b\u0438\u0448\u044c \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u0443\u044e \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0430\u0446\u0438\u044e.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/7c9\/1dd\/33c\/7c91dd33c0582358ccaf1a945e89e7ac.png\" alt=\"\u0412\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0435 \u0445\u0435\u0448\u0430 \u0437\u0430\u043f\u0438\u0441\u0438\" title=\"\u0412\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0435 \u0445\u0435\u0448\u0430 \u0437\u0430\u043f\u0438\u0441\u0438\" width=\"1070\" height=\"930\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/7c9\/1dd\/33c\/7c91dd33c0582358ccaf1a945e89e7ac.png\"\/><figcaption>\u0412\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0435 \u0445\u0435\u0448\u0430 \u0437\u0430\u043f\u0438\u0441\u0438<\/figcaption><\/figure>\n<p>\u0421\u043d\u0430\u0447\u0430\u043b\u0430 \u0438\u0437\u0432\u043b\u0435\u043a\u0430\u0435\u0442\u0441\u044f \u0430\u0432\u0442\u043e-\u0441\u0445\u0435\u043c\u0430 \u0432 \u0430\u0442\u0440\u0438\u0431\u0443\u0442 ${avro.schema}, \u0434\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0435\u0441\u0442\u044c \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440 <strong>ExtractAvroMetadata. <\/strong>\u0414\u0430\u043b\u0435\u0435 \u0444\u043e\u0440\u043c\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u043f\u0440\u0430\u0432\u0438\u043b\u043e \u043a\u043e\u043d\u043a\u0430\u0442\u0435\u043d\u0430\u0446\u0438\u0438 \u043f\u043e\u043b\u0435\u0439:<\/p>\n<pre><code>${avro.schema:jsonPath(\"$.fields..name\"):replace('[',''): replace(']',''):replace('\"',''):replace(',',',\/'):replace('\\r',''): replace('\\n',''):replace(' ',''):prepend('\/')}<\/code><\/pre>\n<p>\u0418 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u0430 <strong>UpdateRecord<\/strong> \u0432\u044b\u0447\u0438\u0441\u043b\u044f\u0435\u0442\u0441\u044f \u0445\u0435\u0448 \u0437\u0430\u043f\u0438\u0441\u0438, \u043f\u0440\u0435\u0434\u0432\u0430\u0440\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0441\u0445\u0435\u043c\u0430 \u043c\u043e\u0434\u0438\u0444\u0438\u0446\u0438\u0440\u0443\u0435\u0442\u0441\u044f:<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/46a\/57d\/1a5\/46a57d1a5ad1c366f0227f4e2b27e03b.png\" alt=\"\u0412\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0435 \u0445\u0435\u0448\u0430 \u0437\u0430\u043f\u0438\u0441\u0438 \u043f\u043e \u0437\u0430\u0440\u0430\u043d\u0435\u0435 \u0441\u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u043c\u0443 \u043f\u0440\u0430\u0432\u0438\u043b\u0443\" title=\"\u0412\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0435 \u0445\u0435\u0448\u0430 \u0437\u0430\u043f\u0438\u0441\u0438 \u043f\u043e \u0437\u0430\u0440\u0430\u043d\u0435\u0435 \u0441\u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u043c\u0443 \u043f\u0440\u0430\u0432\u0438\u043b\u0443\" width=\"1446\" height=\"362\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/46a\/57d\/1a5\/46a57d1a5ad1c366f0227f4e2b27e03b.png\"\/><figcaption>\u0412\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0435 \u0445\u0435\u0448\u0430 \u0437\u0430\u043f\u0438\u0441\u0438 \u043f\u043e \u0437\u0430\u0440\u0430\u043d\u0435\u0435 \u0441\u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u043c\u0443 \u043f\u0440\u0430\u0432\u0438\u043b\u0443<\/figcaption><\/figure>\n<h3>\u0417\u0430\u0433\u0440\u0443\u0437\u043a\u0430 (Load)<\/h3>\n<p>\u0414\u043b\u044f \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u0435\u0442\u0441\u044f \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440 PutData\u0432aseRecord, \u043f\u0440\u0435\u0434\u0432\u0430\u0440\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0432 \u0430\u0442\u0440\u0438\u0431\u0443\u0442 ${database.name} \u043f\u043e\u043c\u0435\u0449\u0430\u0435\u0442\u0441\u044f \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0438\u0437 ${tgt.erp}. \u0418\u0437\u043d\u0430\u0447\u0430\u043b\u044c\u043d\u043e \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u043b\u0441\u044f \u043e\u0434\u0438\u043d \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440, \u043d\u043e \u0432 \u043f\u043e\u0441\u043b\u0435\u0434\u0441\u0442\u0432\u0438\u0438 \u0432 \u0446\u0435\u043b\u044f\u0445 \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u0438 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u0438 \u0440\u0430\u0437\u0434\u0435\u043b\u0435\u043d\u0438\u044f \u0440\u0435\u0430\u043b\u0442\u0430\u0439\u043c\u043e\u0432\u0441\u043a\u0438\u0445 \u043f\u043e\u0442\u043e\u043a\u043e\u0432 \u043e\u0442 \u0438\u043d\u0442\u0435\u0440\u0432\u0430\u043b\u044c\u043d\u044b\u0445, \u043f\u0440\u0435\u0434\u0432\u0430\u0440\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u0442\u0441\u044f \u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f. <\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/f61\/4ae\/30c\/f614ae30c84b716ed6cd5b05eed21e44.png\" alt=\"\u0420\u0430\u0437\u0434\u0435\u043b\u0435\u043d\u0438\u0435 \u043f\u043e\u0442\u043e\u043a\u043e\u0432 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u043f\u043e \u0441\u0438\u0441\u0442\u0435\u043c\u0430\u043c\" title=\"\u0420\u0430\u0437\u0434\u0435\u043b\u0435\u043d\u0438\u0435 \u043f\u043e\u0442\u043e\u043a\u043e\u0432 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u043f\u043e \u0441\u0438\u0441\u0442\u0435\u043c\u0430\u043c\" width=\"1382\" height=\"870\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/f61\/4ae\/30c\/f614ae30c84b716ed6cd5b05eed21e44.png\"\/><figcaption>\u0420\u0430\u0437\u0434\u0435\u043b\u0435\u043d\u0438\u0435 \u043f\u043e\u0442\u043e\u043a\u043e\u0432 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u043f\u043e \u0441\u0438\u0441\u0442\u0435\u043c\u0430\u043c<\/figcaption><\/figure>\n<p>\u0422\u0430\u043a\u0436\u0435 \u0435\u0441\u0442\u044c \u0433\u0440\u0443\u043f\u043f\u0430, \u0433\u0434\u0435 \u043f\u043e\u0442\u043e\u043a\u0438 \u0441\u043e\u0445\u0440\u0430\u043d\u044f\u044e\u0442\u0441\u044f \u0432 \u0432\u0438\u0434\u0435 \u0444\u0430\u0439\u043b\u043e\u0432. \u0412 \u043d\u0435\u0439 \u043e\u0431\u043d\u043e\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u0430\u0442\u0440\u0438\u0431\u0443\u0442\u044b ${filename}, \u043a\u043e\u043d\u0432\u0435\u0440\u0442\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u0444\u043e\u0440\u043c\u0430\u0442 \u0432 Parquet \u0438 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442\u0441\u044f \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435 \u0432 \u0441\u043c\u043e\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u0443\u044e NFS \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u044e. \u0414\u0430\u043b\u0435\u0435 \u043d\u0430 \u0441\u0435\u0440\u0432\u0435\u0440\u0435 Clickhouse \u044d\u0442\u0438 \u0444\u0430\u0439\u043b\u044b \u043f\u043e\u0434\u0442\u044f\u0433\u0438\u0432\u0430\u044e\u0442\u0441\u044f \u043a\u0430\u043a \u0441\u043b\u043e\u0432\u0430\u0440\u0438.<\/p>\n<h3>\u041f\u043e\u0441\u0442\u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0430 (Postload)<\/h3>\n<p>\u041d\u0430 \u0442\u0435\u043a\u0443\u0449\u0435\u043c \u044d\u0442\u0430\u043f\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u044e\u0442\u0441\u044f \u0434\u0432\u0430 \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0445 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430. \u042d\u0442\u043e \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0435 \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0438\u043d\u043a\u0440\u0435\u043c\u0435\u043d\u0442\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u043a\u043b\u044e\u0447\u0430, \u0438 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u0437\u0430\u043f\u0440\u043e\u0441\u0430 \u043f\u043e \u043e\u043a\u043e\u043d\u0447\u0430\u043d\u0438\u044e \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/d6d\/a97\/ef5\/d6da97ef54465bebdb22787b44550920.png\" alt=\"  \u041f\u043e\u043b\u0443\u0447\u0430\u0435\u043c \u043c\u0430\u043a\u0441\u0438\u043c\u0443\u043c \u043d\u0430 \u043a\u0430\u0436\u0434\u044b\u0439 \u0444\u0430\u0439\u043b \u0438 \u043e\u0431\u043d\u043e\u0432\u043b\u044f\u0435\u043c \u0411\u0414\" title=\"  \u041f\u043e\u043b\u0443\u0447\u0430\u0435\u043c \u043c\u0430\u043a\u0441\u0438\u043c\u0443\u043c \u043d\u0430 \u043a\u0430\u0436\u0434\u044b\u0439 \u0444\u0430\u0439\u043b \u0438 \u043e\u0431\u043d\u043e\u0432\u043b\u044f\u0435\u043c \u0411\u0414\" width=\"832\" height=\"924\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/d6d\/a97\/ef5\/d6da97ef54465bebdb22787b44550920.png\"\/><figcaption>  \u041f\u043e\u043b\u0443\u0447\u0430\u0435\u043c \u043c\u0430\u043a\u0441\u0438\u043c\u0443\u043c \u043d\u0430 \u043a\u0430\u0436\u0434\u044b\u0439 \u0444\u0430\u0439\u043b \u0438 \u043e\u0431\u043d\u043e\u0432\u043b\u044f\u0435\u043c \u0411\u0414<\/figcaption><\/figure>\n<p>\u0421\u043d\u0430\u0447\u0430\u043b\u0430 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0441\u044f \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0435 \u043c\u0430\u043a\u0441\u0438\u043c\u0443\u043c\u0430. \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u0435\u0442\u0441\u044f \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440 <strong>QueryRecord<\/strong>, \u0437\u0430\u043f\u0440\u043e\u0441 \u0438\u043c\u0435\u0435\u0442 \u0432\u0438\u0434:<\/p>\n<pre><code class=\"sql\">SELECT MAX(${src.incrementkey}) as MaxValue FROM FLOWFILE<\/code><\/pre>\n<p>\u0414\u0430\u043b\u0435\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0438\u0437\u0432\u043b\u0435\u043a\u0430\u0435\u0442\u0441\u044f \u0432 \u0430\u0442\u0440\u0438\u0431\u0443\u0442 \u0438 \u0432\u043d\u043e\u0441\u0438\u0442\u0441\u044f \u0432 \u0411\u0414. \u0422\u0430\u043a \u043a\u0430\u043a \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u0434\u0430\u043d\u043d\u044b\u0445 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043c\u043d\u043e\u0433\u043e\u043f\u043e\u0442\u043e\u0447\u043d\u043e\u0439, \u043d\u0435 \u0444\u0430\u043a\u0442, \u0447\u0442\u043e \u0444\u0440\u0430\u0433\u043c\u0435\u043d\u0442 \u0441 \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u044b\u043c \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435\u043c \u043f\u0440\u0438\u0434\u0435\u0442 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u043c. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u0432\u043d\u0435\u0441\u0435\u043d\u0438\u0435 \u0432 \u0411\u0414 \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u043e \u0441\u043a\u0440\u0438\u043f\u0442\u043e\u043c &#8212; \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u043d\u0430 \u0442\u0435\u043a\u0443\u0449\u0435\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0432 \u0411\u0414, \u0441\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435 \u0441 \u043f\u043e\u0441\u0442\u0443\u043f\u0438\u0432\u0448\u0438\u043c, \u0438, \u043f\u0440\u0438 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u0438, \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435. <\/p>\n<p>\u0418 \u0432\u0442\u043e\u0440\u0430\u044f \u0432\u0430\u0436\u043d\u0430\u044f \u0432\u0435\u0449\u044c &#8212; \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u0437\u0430\u043f\u0440\u043e\u0441\u0430 \u043a \u0446\u0435\u043b\u0435\u0432\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u0435 \u043f\u043e\u0441\u043b\u0435 \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u044f \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u0432 \u0441\u043b\u0443\u0447\u0430\u0435 \u0431\u0430\u0442\u0447\u0430. \u0421\u043d\u0430\u0447\u0430\u043b\u0430 \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438, \u0447\u0442\u043e \u0442\u0435\u043a\u0443\u0449\u0438\u0439 \u0444\u0440\u0430\u0433\u043c\u0435\u043d\u0442 \u0437\u0430\u0433\u0440\u0443\u0436\u0435\u043d. \u041e\u0431\u043d\u043e\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0442\u0430 \u0436\u0435 \u0441\u043b\u0443\u0436\u0435\u0431\u043d\u0430\u044f <a href=\"#servicenable\" rel=\"noopener noreferrer nofollow\">\u0442\u0430\u0431\u043b\u0438\u0446\u0430<\/a>, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0437\u0430\u043f\u043e\u043b\u043d\u044f\u0435\u0442\u0441\u044f \u043d\u0430 \u044d\u0442\u0430\u043f\u0435 \u0432\u044b\u0433\u0440\u0443\u0437\u043a\u0438. \u0414\u0430\u043b\u0435\u0435 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0441\u044f \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 &#8212; \u0432\u0441\u0435 \u043b\u0438 \u0444\u0440\u0430\u0433\u043c\u0435\u043d\u0442\u044b \u0431\u0430\u0442\u0447\u0430 \u0437\u0430\u043d\u0435\u0441\u043b\u0438\u0441\u044c \u0432 \u0446\u0435\u043b\u0435\u0432\u0443\u044e \u0441\u0438\u0441\u0442\u0435\u043c\u0443, \u0438 \u0432 \u0441\u043b\u0443\u0447\u0430\u0435 \u0443\u0441\u043f\u0435\u0445\u0430 \u043e\u0447\u0438\u0449\u0430\u0435\u0442\u0441\u044f \u0441\u043b\u0443\u0436\u0435\u0431\u043d\u0430\u044f \u0442\u0430\u0431\u043b\u0438\u0446\u0430.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/cb9\/567\/0ed\/cb95670edff34a7c99bdea545e0a1a2e.png\" width=\"1404\" height=\"924\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/cb9\/567\/0ed\/cb95670edff34a7c99bdea545e0a1a2e.png\"\/><figcaption><\/figcaption><\/figure>\n<p>\u041f\u043e\u0441\u043b\u0435 \u044d\u0442\u043e\u0433\u043e \u043c\u043e\u0436\u043d\u043e \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0442\u044c \u0437\u0430\u043f\u0440\u043e\u0441 \u043a \u0446\u0435\u043b\u0435\u0432\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u0435, \u0442\u0430\u043a \u043a\u0430\u043a \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0430 \u0433\u0430\u0440\u0430\u043d\u0442\u0438\u044f \u0442\u043e\u0433\u043e, \u0447\u0442\u043e \u0431\u0430\u0442\u0447 \u043f\u043e\u043b\u043d\u043e\u0441\u0442\u044c\u044e \u0437\u0430\u0433\u0440\u0443\u0436\u0435\u043d.<\/p>\n<p>\u0414\u0430\u043b\u044c\u043d\u0435\u0439\u0448\u0438\u0435 \u0448\u0430\u0433\u0438 \u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u0441\u043b\u0443\u0436\u0435\u0431\u043d\u044b\u043c\u0438 &#8212; \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043b\u043e\u0433\u0430, \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u0443\u0432\u0435\u0434\u043e\u043c\u043b\u0435\u043d\u0438\u0439 \u0432 \u043a\u0430\u043d\u0430\u043b Slack \u0438 \u0442\u0430\u043a \u0434\u0430\u043b\u0435\u0435. <\/p>\n<h2>\u0417\u0430\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435<\/h2>\n<p>\u042f \u043f\u043e\u0441\u0442\u0430\u0440\u0430\u043b\u0441\u044f \u043e\u043f\u0438\u0441\u0430\u0442\u044c \u0441\u0430\u043c \u043f\u043e\u0434\u0445\u043e\u0434 \u043a \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u044e \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0438\u0437\u043e\u0432\u0430\u043d\u043d\u043e\u0433\u043e \u0443\u043d\u0438\u0432\u0435\u0440\u0441\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u043e\u0442\u043e\u043a\u0430 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438. \u041a\u043e\u043d\u0435\u0447\u043d\u043e, \u0443 \u0442\u0430\u043a\u043e\u0433\u043e \u043f\u043e\u0434\u0445\u043e\u0434\u0430 \u0435\u0441\u0442\u044c \u0438 \u043f\u043b\u044e\u0441\u044b \u0438 \u043c\u0438\u043d\u0443\u0441\u044b, \u0438 \u043d\u0435 \u0432\u0441\u0435\u0433\u0434\u0430 \u0435\u0433\u043e \u043c\u043e\u0436\u043d\u043e \u043f\u0440\u0438\u043c\u0435\u043d\u0438\u0442\u044c. \u041d\u043e \u0435\u0441\u043b\u0438 \u0443 \u0432\u0430\u0441 \u0435\u0434\u0438\u043d\u044b\u0439 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442 \u0437\u0430\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f DWH, \u0442\u043e \u0431\u043e\u043b\u044c\u0448\u0438\u043d\u0441\u0442\u0432\u043e \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0439 \u043c\u043e\u0436\u043d\u043e \u0441\u0432\u0435\u0441\u0442\u0438 \u043a \u043e\u0434\u043d\u043e\u043c\u0443 \u043f\u043e\u0442\u043e\u043a\u0443 \u0441 \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u0438\u043c \u043d\u0430\u0431\u043e\u0440\u043e\u043c \u0432\u0435\u0442\u0432\u043b\u0435\u043d\u0438\u0439.<\/p>\n<h4>\u041f\u0440\u0435\u0438\u043c\u0443\u0449\u0435\u0441\u0442\u0432\u0430<\/h4>\n<ul>\n<li>\n<p>\u0412\u0441\u0435 \u043f\u043e\u0442\u043e\u043a\u0438 \u043e\u043f\u0438\u0441\u0430\u043d\u044b \u0435\u0434\u0438\u043d\u044b\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c, \u0434\u043b\u044f \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043d\u043e\u0432\u043e\u0433\u043e \u043f\u043e\u0442\u043e\u043a\u0430 \u043d\u0435\u0442 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u0438 \u043f\u0440\u0438\u0432\u043b\u0435\u043a\u0430\u0442\u044c \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430 Nifi, \u0432\u0435\u0441\u044c \u043f\u0440\u043e\u0446\u0435\u0441\u0441 \u0437\u0430\u043a\u043b\u044e\u0447\u0430\u0435\u0442\u0441\u044f \u0432 \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0438 \u0438\u043b\u0438 \u0440\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0438 \u0437\u0430\u043f\u0438\u0441\u0438 \u0432 \u0442\u0430\u0431\u043b\u0438\u0446\u0435. <\/p>\n<\/li>\n<li>\n<p>\u041b\u044e\u0431\u044b\u0435 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0432 \u043f\u043e\u0442\u043e\u043a\u0435 \u043d\u0430\u0445\u043e\u0434\u044f\u0442\u0441\u044f \u0432 \u043e\u0434\u043d\u043e\u043c \u043c\u0435\u0441\u0442\u0435, \u0438 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u043e\u0448\u0438\u0431\u043e\u043a \u043f\u0440\u0438 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0435 \u0441\u0432\u043e\u0434\u0438\u0442\u0441\u044f \u043a \u043c\u0438\u043d\u0438\u043c\u0443\u043c\u0443.<\/p>\n<\/li>\n<li>\n<p>\u041f\u043e\u0442\u043e\u043a \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u0437\u0430\u043f\u0443\u0449\u0435\u043d \u0441 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u043c \u0440\u0430\u0441\u043f\u0438\u0441\u0430\u043d\u0438\u0435\u043c, \u0430 \u043d\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u043f\u043e \u0438\u043d\u0442\u0435\u0440\u0432\u0430\u043b\u0443 \u0438\u043b\u0438 \u043a\u0440\u043e\u043d\u0443. \u0422\u0430\u043a\u0436\u0435, \u0434\u043e\u0431\u0430\u0432\u0438\u0432 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0443 HTTP \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432 \u0438 \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u044f \u043d\u0430 \u0432\u0445\u043e\u0434\u0435 JSON \u0441 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0430\u043c\u0438, \u043c\u043e\u0436\u043d\u043e \u0433\u0438\u0431\u043a\u043e \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0443\u0441\u043b\u043e\u0432\u0438\u044f \u043e\u0442\u0431\u043e\u0440\u0430. \u041c\u044b \u0442\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c \u0444\u043e\u0440\u043c\u0438\u0440\u0443\u0435\u043c \u0437\u0430\u043f\u0440\u043e\u0441\u044b \u043a \u0446\u0435\u043b\u0435\u0432\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u0435 \u0432 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043e\u0442 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0439 \u0432 Clickhouse, \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0437\u0430\u043f\u0440\u043e\u0441\u0430 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442\u0441\u044f \u0432 Airflow.<\/p>\n<\/li>\n<li>\n<p>\u0414\u0435\u043f\u043b\u043e\u0439 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442\u0441\u044f \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435\u043c \u043e\u0434\u043d\u043e\u0439 \u0432\u0435\u0440\u0445\u043d\u0435\u0439 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u043e\u043c \u0433\u0440\u0443\u043f\u043f\u044b.<\/p>\n<\/li>\n<\/ul>\n<h4>\u041d\u0435\u0434\u043e\u0441\u0442\u0430\u0442\u043a\u0438<\/h4>\n<ul>\n<li>\n<p>\u0412 \u0434\u0430\u043d\u043d\u044b\u0439 \u043c\u043e\u043c\u0435\u043d\u0442 \u0435\u0441\u0442\u044c \u043e\u0434\u043d\u0430 \u043f\u043b\u043e\u0441\u043a\u0430\u044f \u0442\u0430\u0431\u043b\u0438\u0446\u0430 \u0434\u043b\u044f \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u043c\u0435\u0442\u0430\u0434\u0430\u043d\u043d\u044b\u0445. \u0412\u0435\u0434\u0443\u0442\u0441\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043d\u0430\u0434 \u0431\u043e\u043b\u0435\u0435 \u0433\u0438\u0431\u043a\u043e\u0439 \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u043e\u0439 &#8212; \u0438\u0435\u0440\u0430\u0440\u0445\u0438\u0447\u0435\u0441\u043a\u0438\u043c JSON, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u043e\u0437\u0432\u043e\u043b\u0438\u0442 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0430\u0442\u044c \u043d\u0430\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0435\u043c\u044b\u0435 \u0442\u0440\u0430\u043d\u0441\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438 \u0438 \u0432\u044b\u0445\u043e\u0434\u044b.<\/p>\n<\/li>\n<li>\n<p>\u0422\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u0442\u0449\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u043f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0431\u043e\u043b\u044c\u0448\u0438\u0435 \u0438\u0441\u0442\u043e\u0440\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438, \u0438 \u043d\u0435 \u043e\u0442\u0434\u0430\u0432\u0430\u0442\u044c \u044d\u0442\u043e\u0442 \u043c\u043e\u043c\u0435\u043d\u0442 \u0430\u043d\u0430\u043b\u0438\u0442\u0438\u043a\u0430\u043c \u0438 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430\u043c \u0411\u0414. \u041e\u0434\u043d\u0430\u043a\u043e, \u0435\u0441\u043b\u0438 \u0441 \u0440\u0435\u0441\u0443\u0440\u0441\u0430\u043c\u0438 \u043d\u0435\u0442 \u043f\u0440\u043e\u0431\u043b\u0435\u043c, \u0442\u043e \u044d\u0442\u043e\u0442 \u043f\u0443\u043d\u043a\u0442 \u0438\u0441\u043a\u043b\u044e\u0447\u0430\u0435\u0442\u0441\u044f.<\/p>\n<\/li>\n<li>\n<p>\u0412\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u043f\u043e\u0442\u043e\u043a\u0430 \u0437\u0430\u0432\u0438\u0441\u0438\u0442 \u043e\u0442 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u043e\u0441\u0442\u0438 \u0432\u043d\u0435\u0448\u043d\u0438\u0445 \u0441\u0438\u0441\u0442\u0435\u043c &#8212; \u043a\u0435\u0448\u0430, \u0411\u0414 \u043c\u0435\u0442\u0430\u0434\u0430\u043d\u043d\u044b\u0445 \u0438 \u0442\u0430\u043a \u0434\u0430\u043b\u0435\u0435.<\/p>\n<\/li>\n<li>\n<p>\u0414\u043b\u044f \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043c\u0435\u0442\u0430\u0434\u0430\u043d\u043d\u044b\u043c\u0438 \u0436\u0435\u043b\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441. \u041f\u0435\u0440\u0432\u044b\u0435 200 \u043f\u043e\u0442\u043e\u043a\u043e\u0432 \u043c\u043e\u0436\u043d\u043e \u0440\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0432 \u0411\u0414, \u043d\u043e \u043f\u043e\u0442\u043e\u043c \u0442\u0430\u0431\u043b\u0438\u0446\u0430 \u0440\u0430\u0437\u0440\u0430\u0441\u0442\u0430\u0435\u0442\u0441\u044f, \u0432\u043e\u0437\u0440\u0430\u0441\u0442\u0430\u0435\u0442 \u0432\u0435\u0440\u043e\u044f\u0442\u043d\u043e\u0441\u0442\u044c \u043e\u0448\u0438\u0431\u043a\u0438.<\/p>\n<\/li>\n<\/ul>\n<p>\u0421\u043f\u0430\u0441\u0438\u0431\u043e \u0437\u0430 \u0442\u043e, \u0447\u0442\u043e \u043f\u0440\u043e\u0447\u0438\u0442\u0430\u043b\u0438 \u044d\u0442\u043e\u0442 \u0442\u0435\u043a\u0441\u0442. \u0416\u0434\u0443 \u0432\u0430\u0448\u0438\u0445 \u043a\u043e\u043c\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u0435\u0432. \u041d\u0430 \u0432\u043e\u043f\u0440\u043e\u0441\u044b \u043c\u043e\u0433\u0443 \u043e\u0442\u0432\u0435\u0442\u0438\u0442\u044c \u0432 \u0433\u0440\u0443\u043f\u043f\u0435 <a href=\"https:\/\/t.me\/nifiusers\" rel=\"noopener noreferrer nofollow\">\u0442\u0435\u043b\u0435\u0433\u0440\u0430\u043c\u043c<\/a>.  \u0415\u0441\u043b\u0438 \u0435\u0441\u0442\u044c \u043e\u043f\u0435\u0447\u0430\u0442\u043a\u0438\/\u043e\u0448\u0438\u0431\u043a\u0438 \u0432 \u0442\u0435\u043a\u0441\u0442\u0435 &#8212; \u0441\u043e\u043e\u0431\u0449\u0430\u0439\u0442\u0435, \u0443\u0441\u0442\u0440\u0430\u043d\u044e.<\/p>\n<\/div>\n<\/div>\n<\/div>\n<div class=\"v-portal\" style=\"display:none;\"><\/div>\n<\/div>\n<p> <!----> <!----><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\/656891\/\"> https:\/\/habr.com\/ru\/post\/656891\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<div><\/div>\n<div id=\"post-content-body\">\n<div>\n<div class=\"article-formatted-body article-formatted-body_version-2\">\n<div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\">\n<p><a href=\"https:\/\/habr.com\/ru\/post\/599911\/\" rel=\"noopener noreferrer nofollow\">\u041f\u0435\u0440\u0432\u0430\u044f<\/a> \u0438 <a href=\"https:\/\/habr.com\/ru\/post\/646403\/\" rel=\"noopener noreferrer nofollow\">\u0432\u0442\u043e\u0440\u0430\u044f<\/a> \u0447\u0430\u0441\u0442\u0438 \u043e\u043f\u0438\u0441\u044b\u0432\u0430\u044e\u0442 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043f\u0440\u0438\u0432\u0435\u043b\u0438 \u043a \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0435 \u0442\u0435\u043a\u0443\u0449\u0435\u0439 \u043c\u043e\u0434\u0435\u043b\u0438. <\/p>\n<p>\u041e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 \u043f\u0440\u0438\u043d\u0446\u0438\u043f\u044b \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u044f \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0430 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438:<\/p>\n<ul>\n<li>\n<p>\u041f\u043e\u0442\u043e\u043a NIFI \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e \u0443\u043d\u0438\u0432\u0435\u0440\u0441\u0430\u043b\u0435\u043d \u0434\u043b\u044f \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u043e\u0432<\/p>\n<\/li>\n<li>\n<p>\u041c\u0435\u0442\u0430\u0434\u0430\u043d\u043d\u044b\u0435 \u043f\u043e\u0442\u043e\u043a\u043e\u0432 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u0440\u0430\u0441\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u044b \u0432\u043d\u0435 NIFI<\/p>\n<\/li>\n<li>\n<p>\u0421 \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435\u043c \u043d\u043e\u0432\u043e\u0433\u043e \u043f\u043e\u0442\u043e\u043a\u0430 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u0434\u043e\u043b\u0436\u0435\u043d \u0441\u043f\u0440\u0430\u0432\u0438\u0442\u0441\u044f \u0430\u043d\u0430\u043b\u0438\u0442\u0438\u043a\/\u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a \u0411\u0414 <\/p>\n<\/li>\n<\/ul>\n<p>\u0412 \u043e\u0431\u0449\u0435\u043c \u0432\u0438\u0434\u0435 \u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435 \u0441\u0438\u0441\u0438\u0442\u0435\u043c \u043c\u043e\u0436\u043d\u043e \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0432 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u043c \u0432\u0438\u0434\u0435.<\/p>\n<figure class=\"full-width\"><figcaption><\/figcaption><\/figure>\n<p>\u041d\u0430 \u0440\u0438\u0441\u0443\u043d\u043a\u0435:<\/p>\n<ul>\n<li>\n<p>\u0418\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u0438 &#8212; \u0432\u0441\u0435, \u0447\u0442\u043e \u043f\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0434\u0430\u043d\u043d\u044b\u0435. \u0412 \u043c\u043e\u0435\u0439 \u0442\u0435\u043a\u0443\u0449\u0435\u0439 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u044d\u0442\u043e \u0442\u043e\u043b\u044c\u043a\u043e \u0431\u0430\u0437\u044b \u0434\u0430\u043d\u043d\u044b\u0445.<\/p>\n<\/li>\n<li>\n<p>\u041a\u0435\u0448 &#8212; \u043b\u0438\u0431\u043e \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0438\u0439 \u043a\u044d\u0448 NIFI, \u043b\u0438\u0431\u043e Redis.<\/p>\n<\/li>\n<li>\n<p>\u0411\u0414 \u043c\u0435\u0442\u0430\u0434\u0430\u043d\u044b\u0445 &#8212; \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 \u0438\u043d\u043e\u0440\u043c\u0430\u0446\u0438\u0438 \u043e \u043f\u043e\u0442\u043e\u043a\u0430\u0445.<\/p>\n<\/li>\n<li>\n<p>\u041d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 &#8212; \u043f\u0440\u0438\u0435\u043c\u043d\u0438\u043a\u0438 \u0434\u0430\u043d\u043d\u044b\u0445. \u0423 \u043c\u0435\u043d\u044f \u0441\u0435\u0439\u0447\u0430\u0441 \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u044b \u0434\u0432\u0435 \u0411\u0414, \u0438 \u043e\u0434\u043d\u043e \u0444\u0430\u0439\u043b\u043e\u0432\u043e\u0435 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435.<\/p>\n<\/li>\n<\/ul>\n<h2>\u041c\u0435\u0442\u0430\u0434\u0430\u043d\u043d\u044b\u0435<\/h2>\n<p>\u041f\u0440\u0435\u0436\u0434\u0435, \u0447\u0435\u043c \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u044c \u043f\u043e\u0442\u043e\u043a \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043d\u0430 NIFI, \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0443\u0434\u0435\u043b\u0438\u0442\u044c \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435 \u043c\u0435\u0442\u0430\u0434\u0430\u043d\u043d\u044b\u043c. \u041c\u0435\u0442\u0430\u0434\u0430\u043d\u043d\u044b\u0435 \u043c\u043e\u0436\u043d\u043e \u0445\u0440\u0430\u043d\u0438\u0442\u044c \u043b\u044e\u0431\u044b\u043c \u0443\u0434\u043e\u0431\u043d\u044b\u043c \u0434\u043b\u044f \u0432\u0430\u0441 \u0441\u043f\u043e\u0441\u043e\u0431\u043e\u043c. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0432 \u0432\u0438\u0434\u0435 XML \u0444\u0430\u0439\u043b\u0430 \u0432 GIT \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0438. \u0412 \u0442\u0435\u043a\u0443\u0449\u0435\u0439 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e \u043f\u043b\u043e\u0441\u043a\u0443\u044e \u0442\u0430\u0431\u043b\u0438\u0446\u0443 \u0432 \u0411\u0414.<\/p>\n<p>\u0421\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430 \u0442\u0430\u0431\u043b\u0438\u0446\u044b (\u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u044b \u043f\u043e\u0442\u043e\u043a\u0430):<\/p>\n<div>\n<div class=\"table\">\n<table>\n<tbody>\n<tr>\n<td data-colwidth=\"116\" width=\"116\">\n<p>\u041f\u0430\u0440\u0430\u043c\u0435\u0442\u0440<\/p>\n<\/td>\n<td data-colwidth=\"215\" width=\"215\">\n<p>\u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435<\/p>\n<\/td>\n<td>\n<p>\u041f\u0440\u0438\u043c\u0435\u0440<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"116\" width=\"116\">\n<p>id<\/p>\n<\/td>\n<td data-colwidth=\"215\" width=\"215\">\n<p>\u0418\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440 \u043f\u043e\u0442\u043e\u043a\u0430.<\/p>\n<\/td>\n<td>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"116\" width=\"116\">\n<p>active<\/p>\n<\/td>\n<td data-colwidth=\"215\" width=\"215\">\n<p>\u0424\u043b\u0430\u0433 \u0430\u043a\u0442\u0438\u0432\u043d\u043e\u0441\u0442\u0438 \u043f\u043e\u0442\u043e\u043a\u0430<\/p>\n<\/td>\n<td>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"116\" width=\"116\">\n<p>last_start<\/p>\n<\/td>\n<td data-colwidth=\"215\" width=\"215\">\n<p>\u041f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439 \u0441\u0442\u0430\u0440\u0442 \u043f\u043e\u0442\u043e\u043a\u0430<\/p>\n<\/td>\n<td rowspan=\"2\">\n<p>\u0421\u043b\u0443\u0436\u0435\u0431\u043d\u044b\u0435 \u043f\u043e\u043b\u044f, \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u0435\u0442\u0441\u044f \u0434\u043b\u044f \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044f \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u0438 \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u044f \u043f\u043e\u0442\u043e\u043a\u043e\u0432<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"116\" width=\"116\">\n<p>last_complete<\/p>\n<\/td>\n<td data-colwidth=\"215\" width=\"215\">\n<p>\u041f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0435 \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u0435 \u043f\u043e\u0442\u043e\u043a\u0430<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"116\" width=\"116\">\n<p>src_erp<\/p>\n<\/td>\n<td data-colwidth=\"215\" width=\"215\">\n<p>\u0418\u043c\u044f \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u0430<\/p>\n<\/td>\n<td>\n<p>\u0422\u0435\u043a\u0441\u0442, \u043f\u043e \u043a\u043e\u0442\u043e\u0440\u043e\u043c\u0443 Nifi \u043c\u043e\u0436\u0435\u0442 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u0442\u044c \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a \u0434\u0430\u043d\u043d\u044b\u0445. \u041e\u0434\u043d\u0438\u043c \u0438\u0437 \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0445 \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u043e\u0432 \u0432 \u043c\u043e\u0435\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f Oracle \u0438 \u0411\u0414 &#171;\u0413\u0430\u043b\u0430\u043a\u0442\u0438\u043a\u0430&#187; &#8212; \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0430 \u0440\u0430\u0432\u043d\u043e &#171;galaxy&#187;<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"116\" width=\"116\">\n<p>src_schema<\/p>\n<\/td>\n<td data-colwidth=\"215\" width=\"215\">\n<p>\u0421\u0445\u0435\u043c\u0430 \u0432 \u0411\u0414<\/p>\n<\/td>\n<td>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"116\" width=\"116\">\n<p>src_table<\/p>\n<\/td>\n<td data-colwidth=\"215\" width=\"215\">\n<p>\u0418\u043c\u044f \u0442\u0430\u0431\u043b\u0438\u0446\u044b \u0438\u043b\u0438 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044f<\/p>\n<\/td>\n<td>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"116\" width=\"116\">\n<p>src_incrementkey<\/p>\n<\/td>\n<td data-colwidth=\"215\" width=\"215\">\n<p>\u0418\u043c\u044f \u043f\u043e\u043b\u044f, \u043f\u043e \u043a\u043e\u0442\u043e\u0440\u043e\u043c\u0443 \u043f\u0440\u043e\u0432\u043e\u0434\u0438\u0442\u0441\u044f \u0438\u043d\u043a\u0440\u0435\u043c\u0435\u043d\u0442\u0430\u043b\u044c\u043d\u0430\u044f \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0430<\/p>\n<\/td>\n<td>\n<p>\u041e \u043f\u0440\u0438\u043d\u0446\u0438\u043f\u0435 \u0438\u043d\u043a\u0440\u0435\u043c\u0435\u043d\u0442\u0430\u043b\u044c\u043d\u043e\u0439 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u044f \u0433\u043e\u0432\u043e\u0440\u0438\u043b \u0432 \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0435\u0439 \u0447\u0430\u0441\u0442\u0438. <\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"116\" width=\"116\">\n<p>src_incrementvalue<\/p>\n<\/td>\n<td data-colwidth=\"215\" width=\"215\">\n<p>\u0417\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0438\u043d\u043a\u0440\u0435\u043c\u0435\u043d\u0442\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u043e\u043b\u044f<\/p>\n<\/td>\n<td>\n<p>\u041f\u043e\u0441\u043b\u0435 \u043a\u0430\u0436\u0434\u043e\u0439 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0432\u044b\u0447\u0438\u0441\u043b\u044f\u0435\u0442\u0441\u044f. \u0422\u0430\u043a\u0436\u0435 \u0435\u0433\u043e \u043c\u043e\u0436\u043d\u043e \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0442\u044c \u0432\u043d\u0435\u0448\u043d\u0438\u043c \u0432\u043e\u0437\u0434\u0435\u0439\u0442\u0441\u0432\u0438\u0435\u043c.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"116\" width=\"116\">\n<p>src_additionalwhere<\/p>\n<\/td>\n<td data-colwidth=\"215\" width=\"215\">\n<p>\u0414\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0435 \u0443\u0441\u043b\u043e\u0432\u0438\u0435 \u043e\u0442\u0431\u043e\u0440\u0430<\/p>\n<\/td>\n<td>\n<p>\u0412\u0441\u0435, \u0447\u0442\u043e \u0431\u0443\u0434\u0435\u0442 \u0432 \u044d\u0442\u043e\u043c \u043f\u043e\u043b\u0435 \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u0441\u044f \u0432 \u0443\u0441\u043b\u043e\u0432\u0438\u0435 WHERE. \u0418 \u043c\u043e\u0436\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u044f EL.<\/p>\n<p>\u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440: VALUE > ${now():toNumber()}<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"116\" width=\"116\">\n<p>tgt_erp<\/p>\n<\/td>\n<td data-colwidth=\"215\" width=\"215\">\n<p>\u0418\u043c\u044f \u0446\u0435\u043b\u0435\u0432\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u044b<\/p>\n<\/td>\n<td>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"116\" width=\"116\">\n<p>tgt_schema<\/p>\n<\/td>\n<td data-colwidth=\"215\" width=\"215\">\n<p>\u0421\u0445\u0435\u043c\u0430 \u0432 \u0446\u0435\u043b\u0435\u0432\u043e\u0439 \u0411\u0414<\/p>\n<\/td>\n<td>\n<p>\u0412 \u0441\u043b\u0443\u0447\u0430\u0435, \u0435\u0441\u043b\u0438 \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u0441\u043e\u0445\u0440\u0430\u043d\u0438\u0442\u044c \u0444\u0430\u0439\u043b, \u0442\u0443\u0442 \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u044e \u043f\u043e\u0434\u043a\u0430\u0442\u0430\u043b\u043e\u0433<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"116\" width=\"116\">\n<p>tgt_table<\/p>\n<\/td>\n<td data-colwidth=\"215\" width=\"215\">\n<p>\u0422\u0438\u044f \u0446\u0435\u043b\u0435\u0432\u043e\u0439 \u0442\u0430\u0431\u043b\u0438\u0446\u044b<\/p>\n<\/td>\n<td>\n<p>\u0414\u043b\u044f \u0444\u0430\u0439\u043b\u043e\u0432\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u044e \u0446\u0435\u043b\u0435\u0432\u043e\u0435 \u0438\u043c\u044f \u0444\u0430\u0439\u043b\u0430<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"116\" width=\"116\">\n<p>column_list<\/p>\n<\/td>\n<td data-colwidth=\"215\" width=\"215\">\n<p>\u0421\u043f\u0438\u0441\u043e\u043a \u043f\u043e\u043b\u0435\u0439<\/p>\n<\/td>\n<td>\n<p>\u0415\u0441\u043b\u0438 \u0437\u0430\u0434\u0430\u043d\u043e \u044d\u0442\u043e \u043f\u043e\u043b\u0435, \u0442\u043e \u0432 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0435 \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 \u0437\u0430\u043f\u0440\u043e\u0441\u0430 \u043a \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u0443 \u043f\u043e\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0434\u0430\u043d\u043d\u044b\u0439 \u0441\u043f\u0438\u0441\u043e\u043a. \u0422.\u043e. \u043c\u043e\u0436\u043d\u043e \u0432\u0441\u0442\u0430\u0432\u0438\u0442\u044c SQL-\u0441\u0438\u043d\u0442\u0430\u043a\u0441\u0438\u0441.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"116\" width=\"116\">\n<p> tgt_truncate<\/p>\n<\/td>\n<td data-colwidth=\"215\" width=\"215\">\n<p>\u041e\u0447\u0438\u0449\u0430\u0442\u044c \u0446\u0435\u043b\u0435\u0432\u0443\u044e \u0442\u0430\u0431\u043b\u0438\u0446\u0443 \u043f\u0440\u0438 \u0441\u0442\u0430\u0440\u0442\u0435 \u043f\u043e\u0442\u043e\u043a\u0430<\/p>\n<\/td>\n<td>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"116\" width=\"116\">\n<p>avro_schema<\/p>\n<\/td>\n<td data-colwidth=\"215\" width=\"215\">\n<p>\u0410\u0432\u0440\u043e-\u0441\u0445\u0435\u043c\u0430<\/p>\n<\/td>\n<td>\n<p>\u0415\u0441\u043b\u0438 \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u0437\u0430\u0434\u0430\u0442\u044c \u0441\u0445\u0435\u043c\u0443, \u0442\u043e \u0432 \u044d\u0442\u043e\u043c \u043f\u043e\u043b\u0435 \u043c\u043e\u0436\u043d\u043e \u0435\u0435 \u0443\u043a\u0430\u0437\u0430\u0442\u044c. \u0412 \u0431\u0443\u0434\u0443\u0449\u0435\u043c \u044f \u043f\u043b\u0430\u043d\u0438\u0440\u0443\u044e \u043f\u0435\u0440\u0435\u0439\u0442\u0438 \u043d\u0430 Schema Registry, \u0438 \u0442\u0443\u0442 \u0431\u0443\u0434\u0435\u0442 \u0441\u0441\u044b\u043b\u043a\u0430<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"116\" width=\"116\">\n<p>adddefstgfields<\/p>\n<\/td>\n<td data-colwidth=\"215\" width=\"215\">\n<p> \u0414\u043e\u0431\u0430\u0432\u043b\u044f\u0442\u044c \u043f\u043e\u043b\u044f Stage \u0441\u043b\u043e\u044f<\/p>\n<\/td>\n<td>\n<p>\u0412 \u0434\u0430\u043d\u043d\u043e\u0439 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u044d\u0442\u043e \u043e\u0441\u043d\u043e\u0432\u043d\u0430\u044f \u0442\u0440\u0430\u043d\u0441\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f, \u0432 \u0445\u043e\u0434\u0435 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u0440\u0430\u0441\u0441\u0447\u0438\u0442\u044b\u0432\u0430\u0435\u0442\u0441\u044f  HASH \u0437\u0430\u043f\u0438\u0441\u0438.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"116\" width=\"116\">\n<p>customselect<\/p>\n<\/td>\n<td data-colwidth=\"215\" width=\"215\">\n<p>\u0417\u0430\u043f\u0440\u043e\u0441 \u043a \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u0443<\/p>\n<\/td>\n<td>\n<p>\u0415\u0441\u043b\u0438 \u0437\u0430\u0434\u0430\u043d \u044d\u0442\u043e\u0442 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440, \u0442\u043e \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0437\u0430\u043f\u0440\u043e\u0441 \u043d\u0435 \u043d\u0430\u0434\u043e, \u043d\u0430\u0434\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0442\u044c \u0442\u0435\u043a\u0443\u0449\u0438\u0439.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"116\" width=\"116\">\n<p>priority<\/p>\n<\/td>\n<td data-colwidth=\"215\" width=\"215\">\n<p>\u041f\u0440\u0438\u043e\u0440\u0438\u0442\u0435\u0442 \u043f\u043e\u0442\u043e\u043a\u0430<\/p>\n<\/td>\n<td>\n<p>\u041f\u0440\u0438\u043c\u0435\u043d\u044f\u0435\u0442\u0441\u044f \u0434\u043b\u044f \u043f\u0440\u0438\u043e\u0440\u0438\u0442\u0435\u0442\u0430 \u0434\u0430\u043d\u044b\u0445 \u0432 \u043e\u0447\u0435\u0440\u0435\u0434\u044f\u0445. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0447\u0442\u043e\u0431\u044b \u0431\u043e\u043b\u044c\u0448\u0430\u044f \u043f\u043e \u043e\u0431\u044a\u0435\u043c\u0443 \u0438\u0441\u0442\u043e\u0440\u0438\u0447\u0435\u0441\u043a\u0430\u044f \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u043d\u0435 \u043c\u0435\u0448\u0430\u043b\u0430 \u0442\u0435\u043a\u0443\u0449\u0438\u043c \u0437\u0430\u0434\u0430\u0447\u0430\u043c, \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0435\u0439 \u043d\u0438\u0437\u043a\u0438\u0439 \u043f\u0440\u0438\u043e\u0440\u0438\u0442\u0435\u0442 (\u0432  Nifi \u0447\u0435\u043c \u0431\u043e\u043b\u044c\u0448\u0435 \u0437\u043d\u0430\u0435\u0447\u043d\u0438\u0435, \u0442\u0435\u043c \u043d\u0438\u0436\u0435 \u043f\u0440\u0438\u043e\u0440\u0438\u0442\u0435\u0442)<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"116\" width=\"116\">\n<p>execprocedure_end<\/p>\n<\/td>\n<td data-colwidth=\"215\" width=\"215\">\n<p>\u0417\u0430\u043f\u0440\u043e\u0441 \u043d\u0430 \u0446\u0435\u043b\u0435\u0432\u043e\u0439 \u0411\u0414, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u0441\u044f \u043f\u043e\u0441\u043b\u0435 \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u044f \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438<\/p>\n<\/td>\n<td>\n<p>\u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043c\u043e\u0436\u043d\u043e \u0437\u0430\u0434\u0430\u0442\u044c \u0442\u0430\u043a\u043e\u0439 \u0437\u0430\u043f\u0440\u043e\u0441:<\/p>\n<p>UPDATE ${paramtable}<br \/>SET active=0<br \/>WHERE id=${paramid}<\/p>\n<p>\u0422.\u043e. \u043f\u043e\u0441\u043b\u0435 \u0437\u0430\u043f\u0443\u0441\u043a\u0430, \u043f\u043e\u0442\u043e\u043a \u0443\u0431\u0435\u0440\u0435\u0442 \u0432 \u0411\u0414 \u0432\u043b\u0430\u0433 \u0430\u043a\u0442\u0438\u0432\u043d\u043e\u0441\u0442\u0438, \u0438 \u043d\u0435 \u0431\u0443\u0434\u0435\u0442 \u0432 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439 \u0440\u0430\u0437 \u0443\u0447\u0430\u0441\u0442\u0432\u043e\u0432\u0430\u0442\u044c \u0432 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0435.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"116\" width=\"116\">\n<p>schedule<\/p>\n<\/td>\n<td data-colwidth=\"215\" width=\"215\">\n<p>\u0420\u0430\u0441\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u0447\u0435\u0440\u0435\u0437 \u0442\u043e\u0447\u043a\u0443 \u0441 \u0437\u0430\u043f\u044f\u0442\u043e\u0439<\/p>\n<\/td>\n<td>\n<p>10:00;21:00;manual<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"116\" width=\"116\">\n<p>sche_to_exec<\/p>\n<\/td>\n<td data-colwidth=\"215\" width=\"215\">\n<p>\u041f\u0440\u0438 \u043a\u0430\u043a\u043e\u043c \u0440\u0430\u0441\u043f\u0438\u0441\u0430\u043d\u0438\u0438 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0442\u044c \u0437\u0430\u043f\u0440\u043e\u0441 \u0438\u0437 \u043f\u043e\u043b\u044f execprocedure_end <\/p>\n<\/td>\n<td>\n<p>21:00;special<\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<h2>\u041f\u043e\u0442\u043e\u043a \u0437\u0430\u0440\u0443\u0437\u043a\u0438<\/h2>\n<p>\u0418\u0442\u0430\u043a, \u043f\u043e\u0442\u043e\u043a NIFI \u0441\u043e\u0441\u0442\u043e\u0438\u0442 \u0438\u0437 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0445 \u043f\u0440\u043e\u0446\u0435\u0441\u043d\u044b\u0445 \u0433\u0440\u0443\u043f\u043f:<\/p>\n<figure class=\"full-width\"><figcaption>\u041f\u043e\u0442\u043e\u043a \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u0434\u043b\u044f \u043f\u043e\u043d\u0438\u043c\u0430\u043d\u0438\u044f \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0434\u0432\u0438\u0436\u0435\u043d\u0438\u044f \u0434\u0430\u043d\u043d\u044b\u0445<\/figcaption><\/figure>\n<h3>\u0413\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u044f (Shedulers)<\/h3>\n<p>\u0412 \u0431\u043b\u043e\u043a\u0435 \u0441\u043e\u0431\u0440\u0430\u043d\u044b \u0432\u0441\u0435 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u044b\u0435 \u0433\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440\u044b, \u0442\u0440\u0438\u0433\u0433\u0435\u0440\u044b.<\/p>\n<figure class=\"full-width\"><figcaption>\u041d\u0430\u0431\u043e\u0440\u044b \u0442\u0440\u0438\u0433\u0435\u0440\u043e\u0432<\/figcaption><\/figure>\n<p>\u0414\u043b\u044f \u0443\u0434\u043e\u0431\u0441\u0442\u0432\u0430 \u044f \u0440\u0430\u0437\u0434\u0435\u043b\u0438\u043b \u0433\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440\u044b \u043d\u0430 \u0433\u0440\u0443\u043f\u043f\u044b. \u041e\u0431\u0449\u0438\u0439 \u0441\u043c\u044b\u0441\u043b \u0434\u0430\u043d\u043d\u043e\u0439 \u043f\u0440\u043e\u0446\u0435\u0441\u043d\u043e\u0439 \u0433\u0440\u0443\u043f\u043f\u044b &#8212; \u043f\u043e\u043b\u0443\u0438\u0442\u044c \u0444\u0430\u0439\u043b \u0441 \u0437\u0430\u043f\u043e\u043b\u043d\u0435\u043d\u044b\u043c \u0430\u0442\u0440\u0438\u0431\u0443\u0442\u043e\u043c ${schedule}, \u043f\u043e \u043a\u043e\u0442\u043e\u0440\u043e\u043c\u0443 \u0431\u0443\u0434\u0443\u0442 \u0432\u044b\u0431\u0440\u0430\u043d\u044b \u043f\u043e\u0442\u043e\u043a\u0438 \u0438\u0437 \u0411\u0414. \u0412 \u0438\u043d\u0442\u0435\u0440\u0432\u0430\u043b\u044c\u043d\u043e\u0439 \u0433\u0440\u0443\u043f\u043f\u0435 \u043d\u0430\u0445\u043e\u0434\u044f\u0442\u0441\u044f \u0442\u0440\u0438\u0433\u0433\u0435\u0440\u044b, \u043a\u043e\u0442\u0440\u044b\u0435 \u0441\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u044e\u0442 \u043f\u043e \u0438\u043d\u0442\u0435\u0440\u0432\u0430\u043b\u0443, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0442\u0440\u0438\u0433\u0433\u0435\u0440 \u0440\u0430\u0437 \u0432 \u043f\u044f\u0442\u044c \u043c\u0438\u043d\u0443\u0442 \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u0442 \u0444\u0430\u0439\u043b \u0441 \u0440\u0430\u0441\u043f\u0438\u0441\u0430\u043d\u0438\u0435\u043c <em>5min.<\/em><\/p>\n<p>\u0412 \u0433\u0440\u0443\u043f\u043f\u0435 TimeOfDay \u044f \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u044e \u0444\u0430\u0439\u043b \u0440\u0430\u0437 \u0432 \u043c\u0438\u043d\u0443\u0442\u0443, \u0438 \u0432\u044b\u0441\u0442\u0430\u0432\u043b\u044f\u044e <code>${schedule} = ${now():format(\"HH:mm\")}.<\/code><\/p>\n<p>\u0422\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c, \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u043c\u0435\u0441\u0442\u0438\u0442\u044c \u043f\u0440\u043e\u0446\u0446\u0435\u0441\u0441\u043e\u0440 <strong>GenerateFlowFile <\/strong>\u0441 \u043d\u0443\u0436\u043d\u044b\u043c \u0438\u043d\u0442\u0435\u0440\u0432\u0430\u043b\u043e\u043c \u0438\u043b\u0438 crone \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u0435\u043c, \u0438 \u043f\u043e\u0442\u043e\u043a \u0431\u0443\u0434\u0435\u0442 \u0437\u0430\u0433\u0440\u0443\u0436\u0435\u043d \u0442\u043e\u043b\u044c\u043a\u043e \u043f\u0440\u0438 \u0441\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u043d\u0438\u0438 \u043d\u0443\u0436\u043d\u043e\u0433\u043e \u0437\u0440\u0430\u0447\u0435\u043d\u0438\u044f.<\/p>\n<h3>\u0418\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f (Init)<\/h3>\n<p>\u0412 \u0434\u0430\u043d\u043d\u043e\u0439 \u0433\u0440\u0443\u043f\u043f\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442\u0441\u044f \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u043f\u043e\u0442\u043e\u043a\u0430. \u042f\u0434\u0440\u043e\u043c \u0438 \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u043c \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u043c \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 \u043c\u0435\u0442\u0430\u0434\u0430\u043d\u044b\u0445 \u043f\u043e\u0442\u043e\u043a\u0430:<\/p>\n<figure class=\"full-width\"><figcaption><\/figcaption><\/figure>\n<p>\u0412 \u044d\u0442\u043e\u043c \u0431\u043b\u043e\u043a\u0435 \u044f \u0437\u0430\u043f\u0440\u0430\u0448\u0438\u0432\u0430\u044e \u0432 \u0411\u0414 \u0432\u0441\u0435 \u0430\u043a\u0442\u0438\u0432\u043d\u044b\u0435 \u043f\u043e\u0442\u043e\u043a\u0438 \u0441 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0432\u0443\u044e\u0449\u0438\u043c \u0440\u0430\u0441\u043f\u0438\u0441\u0430\u043d\u0438\u0435\u043c, \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u044e \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0443 \u043d\u0430 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0438 \u0438\u0437\u0432\u043b\u0435\u043a\u0430\u044e \u0437\u043d\u0430\u0435\u0447\u043d\u0438\u044f \u0432 \u0430\u0442\u0440\u0438\u0431\u0443\u0442\u044b.<\/p>\n<p>\u0417\u0430\u043f\u0440\u043e\u0441 \u043f\u0440\u043e\u0441\u0442\u043e\u0439:<\/p>\n<pre><code class=\"sql\">SELECT * from ${paramtable}  WHERE active = 1 AND  '${schedule}' in (     SELECT value      FROM string_split(schedule, ';') ) ORDER BY priority<\/code><\/pre>\n<p>\u0414\u0430\u043b\u0435\u0435 \u0432 \u044d\u0442\u043e\u0439 \u0436\u0435 \u0433\u0440\u0443\u043f\u043f\u0435 \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u044b \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 \u043d\u0430 \u043d\u0430\u043b\u0438\u0447\u0438\u0435 \u0442\u0430\u0431\u043b\u0438\u0446\u044b \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u0430, \u0442\u0430\u0431\u043b\u0438\u0446\u044b \u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f, \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u0442\u0441\u044f \u0444\u043e\u0440\u043c\u0430\u0442 \u0438\u043d\u043a\u0440\u0435\u043c\u0435\u043d\u0442\u0430.<\/p>\n<figure class=\"full-width\"><figcaption>\u0415\u0441\u043b\u0438 \u0447\u0438\u0441\u043b\u043e, \u0442\u043e \u0443\u0441\u043b\u043e\u0432\u0438\u0435 \u0432\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0431\u0435\u0437 \u0430\u043f\u043e\u0441\u0442\u0440\u043e\u0444\u043e\u0432, \u0435\u0441\u043b\u0438 \u0434\u0430\u0442\u0430 &#8212; \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0444\u043e\u0440\u043c\u0430\u0442\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u043a \u0434\u0430\u0442\u0435 \u0438 \u043e\u0431\u0440\u0430\u043c\u043b\u044f\u0435\u0442\u0441\u044f \u0430\u043f\u043e\u0441\u0442\u0440\u043e\u0444\u0430\u043c\u0438<\/figcaption><\/figure>\n<p>\u0422\u0430\u043a\u0436\u0435 \u043f\u0440\u0438 \u043d\u0430\u043b\u0438\u0447\u0438\u0438 \u0444\u043b\u0430\u0433\u0430 <strong>tgt_truncate <\/strong>\u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442\u0441\u044f \u0443\u0434\u0430\u043b\u0435\u043d\u0438\u0435 \u0446\u0435\u043b\u0435\u0432\u043e\u0439 \u0442\u0430\u0431\u043b\u0438\u0446\u044b. \u0412 \u0430\u0442\u0440\u0438\u0431\u0443\u0442 ${database.name} \u043f\u043e\u043c\u0435\u0449\u0430\u0435\u0442\u0441\u044f \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0438\u0437 ${src.erp}, \u044d\u0442\u043e \u043f\u043e\u0437\u0432\u043e\u043b\u0438\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043e\u0434\u0438\u043d \u0441\u0435\u0440\u0432\u0438\u0441 \u0434\u043b\u044f \u043f\u0440\u043e\u043a\u0441\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u043d\u044b\u0445 \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u043e\u0432.<\/p>\n<h3>\u0418\u0437\u0432\u043b\u0435\u043a\u0430\u0435\u043c \u0434\u0430\u043d\u043d\u044b\u0435 (Extract)<\/h3>\n<p> \u0412 \u044d\u0442\u043e\u0439 \u0433\u0440\u0443\u043f\u043f\u0435 \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u0433\u0435\u0433\u0435\u0440\u0430\u0446\u0438\u044f \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432 \u0438 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u0438\u0445 \u043a \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u0430\u043c. \u0417\u0434\u0435\u0441\u044c \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u0435\u0442\u0441\u044f \u0437\u0430\u043c\u0435\u0447\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442 <strong>DBCPConnectionPoolLookup<\/strong>, \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u044e\u0449\u0438\u0439 \u043f\u0435\u0440\u0435\u0447\u0438\u0441\u043b\u0438\u0442\u044c \u0432\u0441\u0435 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0435 \u0441\u0438\u0441\u0442\u0435\u043c\u044b, \u0438 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0442\u044c \u0434\u043e\u0441\u0442\u0443\u043f \u043a \u043d\u0438\u043c \u043f\u043e \u0430\u0442\u0440\u0438\u0431\u0443\u0442\u0443 <em>${database.name}<\/em>.<\/p>\n<figure class=\"full-width\"><figcaption>\u0423 \u043c\u0435\u043d\u044f \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d \u0434\u043e\u0441\u0442\u0443\u043f \u043a Oracle, Posgre, MsSQl, MySql, Clickhouse<\/figcaption><\/figure>\n<p> \u0412 \u043e\u0431\u0449\u0435\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442 <strong>GererateTableFetch<\/strong>, \u043f\u0440\u0435\u0434\u0432\u0430\u0440\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0432\u044b\u0431\u0440\u0430\u0432, \u043a \u043a\u0430\u043a\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u0435 \u043d\u0430\u0434\u043e \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0437\u0430\u043f\u0440\u043e\u0441.<\/p>\n<figure class=\"full-width\"><figcaption>\u0412\u044b\u0431\u0438\u0440\u0430\u044e \u0441\u0438\u0441\u0442\u0435\u043c\u0443 \u0438 \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u044f\u044e \u043f\u043e\u0442\u043e\u043a \u043d\u0430 \u043d\u0443\u0436\u043d\u044b\u0439 \u0433\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440<\/figcaption><\/figure>\n<p>\u041e\u0434\u043d\u0430\u043a\u043e \u0434\u0430\u043d\u043d\u044b\u0439 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u043c\u0435\u0434\u043b\u0435\u043d\u043d\u043e, \u043f\u043e \u0440\u0430\u043d\u0435\u0439 \u043c\u0435\u0440\u0435 \u043a \u043d\u0430\u0433\u0440\u0443\u0436\u0435\u043d\u043d\u044b\u043c \u0411\u0414 \u0433\u0435\u0440\u0435\u0430\u0446\u0438\u044f \u0437\u0430\u043f\u0440\u043e\u0441\u044b \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u043b\u0430\u0441\u044c \u0437\u0430 \u043d\u0435\u0441\u043a\u043b\u044c\u043a\u043e \u0441\u0435\u043a\u0443\u043d\u0434. \u041f\u0440\u0438 \u043f\u043e\u0432\u044b\u0448\u0435\u043d\u0438\u0438 \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u0439 \u043f\u043e \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u0438 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0440\u0435\u0448\u0435\u043d\u043e \u0431\u044b\u043b\u043e \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0441\u0432\u043e\u0439 \u0433\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440 \u0434\u043b\u044f \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0445 \u0441\u0438\u0441\u0442\u0435\u043c &#8212; MSSql \u0438 Oracle. \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0435 \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u0435:<\/p>\n<pre><code class=\"sql\">SELECT ${column.list:isEmpty():ifElse('*', ${column.list})}  FROM ${src.schema}.${src.table} ${src.additionalwhere:isEmpty():ifElse(${src.additionalwhere},                                        ${src.additionalwhere:prepend('WHERE ')})}<\/code><\/pre>\n<p>\u0418\u043d\u043e\u0433\u0434\u0430 \u043c\u043e\u0436\u0435\u0442 \u0432\u043e\u0437\u043d\u0438\u043a\u043d\u0443\u0442\u044c \u0441\u0438\u0442\u0443\u0430\u0446\u0438\u044f, \u043a\u043e\u0433\u0434\u0430 \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a \u0434\u043e\u043b\u0433\u043e \u043e\u0442\u0434\u0430\u0442\u0435 \u0434\u0430\u043d\u043d\u044b\u0435, \u043b\u0438\u0431\u043e \u0441\u0435\u0442\u044c \u043f\u043e\u0434\u0432\u0438\u0441\u043b\u0430, \u0430 \u0437\u0430\u043f\u0440\u043e\u0441\u044b \u0432\u0430\u043b\u044f\u0442\u0441\u044f \u0441 \u0431\u043e\u043b\u0448\u043e\u0439 \u0447\u0430\u0441\u0442\u043e\u0442\u043e\u0439. \u0427\u0442\u043e\u0431\u044b \u0438\u0441\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u043e\u0434\u0438\u043d\u0430\u043a\u043e\u0432\u044b\u0435 \u0437\u0430\u043f\u0440\u043e\u0441\u044b \u043a \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u0443 \u0441\u0434\u0435\u043b\u0430\u043b \u043f\u0440\u043e\u0441\u0442\u0443\u044e \u0432\u0435\u0449\u044c &#8212; \u043d\u0430 \u0437\u043d\u0430\u0447\u0438\u043c\u044b\u0445 \u043f\u043e\u043b\u044f\u0445 \u0438 \u0442\u0435\u043a\u0441\u0442\u0435 \u0437\u0430\u043f\u0440\u043e\u0441\u0430 \u0441\u0438\u0442\u0430\u044e \u0445\u0435\u0448 \u0438 \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u044e \u0435\u0433\u043e \u043d\u0430 \u0434\u0443\u0431\u043b\u0438\u043a\u0430\u0442. \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u043b\u0438\u0431\u043e \u0432\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u044b\u0439 <strong>DistributedMapCacheServer <\/strong>\u0438\u043b\u0438 <strong>Redis<\/strong>.<\/p>\n<figure class=\"full-width\"><figcaption><\/figcaption><\/figure>\n<p>\u0415\u0441\u043b\u0438 \u0434\u0443\u0431\u043b\u0438\u043a\u0430\u0442\u043e\u0432 \u043d\u0435\u0442, \u0442\u043e \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u0438\u043c \u043a \u0437\u0430\u043f\u0440\u043e\u0441\u0430\u043c \u043a \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u0443. \u0415\u0441\u043b\u0438 \u0437\u0430\u0434\u0430\u043d\u0430 \u0441\u0445\u0435\u043c\u0430, \u0442\u043e \u0437\u0430\u043f\u0440\u043e\u0441 \u0438\u0434\u0435\u0442 \u0447\u0435\u0440\u0435\u0437 <strong>ExecuteSQLRecord<\/strong>, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c Writer \u0441\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d \u043d\u0430 \u0441\u0445\u0435\u043c\u0443 \u0432 \u0430\u0442\u0440\u0438\u0431\u0443\u0442\u0435.<\/p>\n<figure class=\"full-width\"><figcaption><\/figcaption><\/figure>\n<p>\u041f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b ExecuteSql:<\/p>\n<figure class=\"full-width\"><figcaption><\/figcaption><\/figure>\n<p>\u0412 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0430\u0445 \u044f \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u044e:<\/p>\n<ol>\n<li>\n<p><strong>Max Rows Per Flow File<\/strong> &#8212;   e\u0441\u043b\u0438 \u043d\u0430\u0434\u043e \u0441\u043e\u0445\u0440\u0430\u043d\u044f\u0442\u044c \u0444\u0430\u0439\u043b \u0434\u043b\u044f Clickhouse (\u0442\u0430\u043a \u0433\u0440\u0443\u0437\u0438\u043c \u0441\u043b\u043e\u0432\u0430\u0440\u0438), \u0442\u043e \u0432\u044b\u0433\u0440\u0443\u0437\u043a\u0443 \u043d\u0435 \u0440\u0430\u0437\u0431\u0438\u0432\u0430\u0442\u044c, \u0432 \u043f\u0440\u043e\u0442\u0438\u0432\u043d\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u0437\u0430\u0434\u0430\u044e \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0438\u0437 \u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u043e\u0439 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0439.<\/p>\n<\/li>\n<li>\n<p><strong>Output Batch Size<\/strong> &#8212;  \u0435\u0441\u043b\u0438 \u0437\u0430\u0434\u0430\u043d \u0437\u0430\u043f\u0440\u043e\u0441, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043d\u0430\u0434\u043e \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u044c \u0432 \u043a\u043e\u043d\u0446\u0435 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438, \u0442\u043e \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0442\u044c \u0431\u0430\u0442\u0447\u0435\u0432\u0443\u044e \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0443, \u0438\u043d\u0430\u0447\u0435 \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u0442\u044c \u043d\u0430 \u0432\u044b\u0445\u043e\u0434 \u043f\u043e \u043f\u044f\u0442\u044c \u0444\u0430\u0439\u043b\u043e\u0432. \u0411\u0430\u0442\u0447\u0435\u0432\u0430\u044f \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u043f\u043e\u0437\u0432\u043e\u043b\u0438\u0442 \u043e\u0442\u0441\u043b\u0435\u0434\u0438\u0442\u044c \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0444\u0440\u0430\u0433\u043c\u0435\u043d\u0442\u043e\u0432 \u0432 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0435 \u0437\u0430\u043f\u0440\u043e\u0441\u0430.<\/p>\n<\/li>\n<li>\n<p><strong>Fetch Size<\/strong> &#8212;   \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0434\u0440\u0430\u0439\u0432\u0435\u0440\u044b \u0443\u043c\u0435\u044e\u0442 \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u0442\u044c \u044d\u0442\u043e\u0442 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440: \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0437\u0430\u043f\u0438\u0441\u0435\u0439, \u043f\u0435\u0440\u0435\u0434\u0430\u0432\u0430\u0435\u043c\u044b\u0445 \u0432 \u043f\u0430\u043a\u0435\u0442\u0435.<\/p>\n<\/li>\n<\/ol>\n<p><a class=\"anchor\" name=\"serviceable\" id=\"serviceable\"><\/a><\/p>\n<p>\u041d\u0430 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u043c \u044d\u0442\u0430\u043f\u0435 \u044f \u0432\u043d\u043e\u0448\u0443 \u0432 \u0441\u043b\u0443\u0447\u0430\u0435 \u0431\u0430\u0442\u0447\u0435\u0432\u043e\u0439 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u0432\u0441\u0435 \u0444\u0440\u0430\u0433\u043c\u0435\u043d\u0442\u044b \u0432 \u0441\u043b\u0443\u0436\u0435\u0431\u043d\u0443\u044e \u0442\u0430\u0431\u043b\u0438\u0446\u0443. \u041d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u044c \u044d\u0442\u043e\u0433\u043e \u0448\u0430\u0433\u0430 \u044f \u043f\u043e\u044f\u0441\u043d\u044e \u043f\u043e\u0437\u0436\u0435, \u0432 \u0440\u0430\u0437\u0434\u0435\u043b\u0435 \u041f\u043e\u0441\u0442\u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438.<\/p>\n<figure class=\"full-width\"><figcaption>\u0412\u043d\u043e\u0441\u0438\u043c \u0438\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440 \u0444\u0440\u0430\u0433\u043c\u0435\u043d\u0442\u0430 \u0432 \u0441\u043b\u0443\u0436\u0435\u0431\u043d\u0443\u044e \u0442\u0430\u0431\u043b\u0438\u0446\u0443<\/figcaption><\/figure>\n<h3>\u0422\u0440\u0430\u043d\u0441\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f (Trasnform)<\/h3>\n<p>\u0412 \u0434\u0430\u043d\u043d\u044b\u0439 \u043c\u043e\u043c\u0435\u043d\u0442 \u0443 \u043d\u0430\u0441 \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u0435\u0442\u0441\u044f \u043e\u0434\u043d\u0430 \u0442\u0440\u0430\u043d\u0441\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f &#8212; \u044d\u0442\u043e \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043f\u043e\u043b\u0435\u0439  Starge \u0441\u043b\u043e\u044f. \u042d\u0442\u0438 \u043f\u043e\u043b\u044f \u0438 \u0443\u0436\u0435 \u043e\u043f\u0438\u0441\u044b\u0432\u0430\u043b \u0432 \u043f\u0435\u0440\u0432\u043e\u0439 \u0438 \u0432\u0442\u043e\u0440\u043e\u0439 \u0447\u0430\u0441\u0442\u0438, \u043f\u043e\u043a\u0430\u0436\u0443 \u043b\u0438\u0448\u044c \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u0443\u044e \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0430\u0446\u0438\u044e.<\/p>\n<figure class=\"full-width\"><figcaption>\u0412\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0435 \u0445\u0435\u0448\u0430 \u0437\u0430\u043f\u0438\u0441\u0438<\/figcaption><\/figure>\n<p>\u0421\u043d\u0430\u0447\u0430\u043b\u0430 \u0438\u0437\u0432\u043b\u0435\u043a\u0430\u0435\u0442\u0441\u044f \u0430\u0432\u0442\u043e-\u0441\u0445\u0435\u043c\u0430 \u0432 \u0430\u0442\u0440\u0438\u0431\u0443\u0442 ${avro.schema}, \u0434\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0435\u0441\u0442\u044c \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440 <strong>ExtractAvroMetadata. <\/strong>\u0414\u0430\u043b\u0435\u0435 \u0444\u043e\u0440\u043c\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u043f\u0440\u0430\u0432\u0438\u043b\u043e \u043a\u043e\u043d\u043a\u0430\u0442\u0435\u043d\u0430\u0446\u0438\u0438 \u043f\u043e\u043b\u0435\u0439:<\/p>\n<pre><code>${avro.schema:jsonPath(\"$.fields..name\"):replace('[',''): replace(']',''):replace('\"',''):replace(',',',\/'):replace('\\r',''): replace('\\n',''):replace(' ',''):prepend('\/')}<\/code><\/pre>\n<p>\u0418 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u0430 <strong>UpdateRecord<\/strong> \u0432\u044b\u0447\u0438\u0441\u043b\u044f\u0435\u0442\u0441\u044f \u0445\u0435\u0448 \u0437\u0430\u043f\u0438\u0441\u0438, \u043f\u0440\u0435\u0434\u0432\u0430\u0440\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0441\u0445\u0435\u043c\u0430 \u043c\u043e\u0434\u0438\u0444\u0438\u0446\u0438\u0440\u0443\u0435\u0442\u0441\u044f:<\/p>\n<figure class=\"full-width\"><figcaption>\u0412\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0435 \u0445\u0435\u0448\u0430 \u0437\u0430\u043f\u0438\u0441\u0438 \u043f\u043e \u0437\u0430\u0440\u0430\u043d\u0435\u0435 \u0441\u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u043c\u0443 \u043f\u0440\u0430\u0432\u0438\u043b\u0443<\/figcaption><\/figure>\n<h3>\u0417\u0430\u0433\u0440\u0443\u0437\u043a\u0430 (Load)<\/h3>\n<p>\u0414\u043b\u044f \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u0435\u0442\u0441\u044f \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440 PutData\u0432aseRecord, \u043f\u0440\u0435\u0434\u0432\u0430\u0440\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0432 \u0430\u0442\u0440\u0438\u0431\u0443\u0442 ${database.name} \u043f\u043e\u043c\u0435\u0449\u0430\u0435\u0442\u0441\u044f \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0438\u0437 ${tgt.erp}. \u0418\u0437\u043d\u0430\u0447\u0430\u043b\u044c\u043d\u043e \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u043b\u0441\u044f \u043e\u0434\u0438\u043d \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440, \u043d\u043e \u0432 \u043f\u043e\u0441\u043b\u0435\u0434\u0441\u0442\u0432\u0438\u0438 \u0432 \u0446\u0435\u043b\u044f\u0445 \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u0438 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u0438 \u0440\u0430\u0437\u0434\u0435\u043b\u0435\u043d\u0438\u044f \u0440\u0435\u0430\u043b\u0442\u0430\u0439\u043c\u043e\u0432\u0441\u043a\u0438\u0445 \u043f\u043e\u0442\u043e\u043a\u043e\u0432 \u043e\u0442 \u0438\u043d\u0442\u0435\u0440\u0432\u0430\u043b\u044c\u043d\u044b\u0445, \u043f\u0440\u0435\u0434\u0432\u0430\u0440\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u0442\u0441\u044f \u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f. <\/p>\n<figure class=\"full-width\"><figcaption>\u0420\u0430\u0437\u0434\u0435\u043b\u0435\u043d\u0438\u0435 \u043f\u043e\u0442\u043e\u043a\u043e\u0432 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u043f\u043e \u0441\u0438\u0441\u0442\u0435\u043c\u0430\u043c<\/figcaption><\/figure>\n<p>\u0422\u0430\u043a\u0436\u0435 \u0435\u0441\u0442\u044c \u0433\u0440\u0443\u043f\u043f\u0430, \u0433\u0434\u0435 \u043f\u043e\u0442\u043e\u043a\u0438 \u0441\u043e\u0445\u0440\u0430\u043d\u044f\u044e\u0442\u0441\u044f \u0432 \u0432\u0438\u0434\u0435 \u0444\u0430\u0439\u043b\u043e\u0432. \u0412 \u043d\u0435\u0439 \u043e\u0431\u043d\u043e\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u0430\u0442\u0440\u0438\u0431\u0443\u0442\u044b ${filename}, \u043a\u043e\u043d\u0432\u0435\u0440\u0442\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u0444\u043e\u0440\u043c\u0430\u0442 \u0432 Parquet \u0438 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442\u0441\u044f \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435 \u0432 \u0441\u043c\u043e\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u0443\u044e NFS \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u044e. \u0414\u0430\u043b\u0435\u0435 \u043d\u0430 \u0441\u0435\u0440\u0432\u0435\u0440\u0435 Clickhouse \u044d\u0442\u0438 \u0444\u0430\u0439\u043b\u044b \u043f\u043e\u0434\u0442\u044f\u0433\u0438\u0432\u0430\u044e\u0442\u0441\u044f \u043a\u0430\u043a \u0441\u043b\u043e\u0432\u0430\u0440\u0438.<\/p>\n<h3>\u041f\u043e\u0441\u0442\u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0430 (Postload)<\/h3>\n<p>\u041d\u0430 \u0442\u0435\u043a\u0443\u0449\u0435\u043c \u044d\u0442\u0430\u043f\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u044e\u0442\u0441\u044f \u0434\u0432\u0430 \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0445 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430. \u042d\u0442\u043e \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0435 \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0438\u043d\u043a\u0440\u0435\u043c\u0435\u043d\u0442\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u043a\u043b\u044e\u0447\u0430, \u0438 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u0437\u0430\u043f\u0440\u043e\u0441\u0430 \u043f\u043e \u043e\u043a\u043e\u043d\u0447\u0430\u043d\u0438\u044e \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438.<\/p>\n<figure class=\"full-width\"><figcaption>  \u041f\u043e\u043b\u0443\u0447\u0430\u0435\u043c \u043c\u0430\u043a\u0441\u0438\u043c\u0443\u043c \u043d\u0430 \u043a\u0430\u0436\u0434\u044b\u0439 \u0444\u0430\u0439\u043b \u0438 \u043e\u0431\u043d\u043e\u0432\u043b\u044f\u0435\u043c \u0411\u0414<\/figcaption><\/figure>\n<p>\u0421\u043d\u0430\u0447\u0430\u043b\u0430 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0441\u044f \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0435 \u043c\u0430\u043a\u0441\u0438\u043c\u0443\u043c\u0430. \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u0435\u0442\u0441\u044f \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440 <strong>QueryRecord<\/strong>, \u0437\u0430\u043f\u0440\u043e\u0441 \u0438\u043c\u0435\u0435\u0442 \u0432\u0438\u0434:<\/p>\n<pre><code class=\"sql\">SELECT MAX(${src.incrementkey}) as MaxValue FROM FLOWFILE<\/code><\/pre>\n<p>\u0414\u0430\u043b\u0435\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0438\u0437\u0432\u043b\u0435\u043a\u0430\u0435\u0442\u0441\u044f \u0432 \u0430\u0442\u0440\u0438\u0431\u0443\u0442 \u0438 \u0432\u043d\u043e\u0441\u0438\u0442\u0441\u044f \u0432 \u0411\u0414. \u0422\u0430\u043a \u043a\u0430\u043a \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u0434\u0430\u043d\u043d\u044b\u0445 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043c\u043d\u043e\u0433\u043e\u043f\u043e\u0442\u043e\u0447\u043d\u043e\u0439, \u043d\u0435 \u0444\u0430\u043a\u0442, \u0447\u0442\u043e \u0444\u0440\u0430\u0433\u043c\u0435\u043d\u0442 \u0441 \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u044b\u043c \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435\u043c \u043f\u0440\u0438\u0434\u0435\u0442 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u043c. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u0432\u043d\u0435\u0441\u0435\u043d\u0438\u0435 \u0432 \u0411\u0414 \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u043e \u0441\u043a\u0440\u0438\u043f\u0442\u043e\u043c &#8212; \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u043d\u0430 \u0442\u0435\u043a\u0443\u0449\u0435\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0432 \u0411\u0414, \u0441\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435 \u0441 \u043f\u043e\u0441\u0442\u0443\u043f\u0438\u0432\u0448\u0438\u043c, \u0438, \u043f\u0440\u0438 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u0438, \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435. <\/p>\n<p>\u0418 \u0432\u0442\u043e\u0440\u0430\u044f \u0432\u0430\u0436\u043d\u0430\u044f \u0432\u0435\u0449\u044c &#8212; \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u0437\u0430\u043f\u0440\u043e\u0441\u0430 \u043a \u0446\u0435\u043b\u0435\u0432\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u0435 \u043f\u043e\u0441\u043b\u0435 \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u044f \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u0432 \u0441\u043b\u0443\u0447\u0430\u0435 \u0431\u0430\u0442\u0447\u0430. \u0421\u043d\u0430\u0447\u0430\u043b\u0430 \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438, \u0447\u0442\u043e \u0442\u0435\u043a\u0443\u0449\u0438\u0439 \u0444\u0440\u0430\u0433\u043c\u0435\u043d\u0442 \u0437\u0430\u0433\u0440\u0443\u0436\u0435\u043d. \u041e\u0431\u043d\u043e\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0442\u0430 \u0436\u0435 \u0441\u043b\u0443\u0436\u0435\u0431\u043d\u0430\u044f <a href=\"#servicenable\" rel=\"noopener noreferrer nofollow\">\u0442\u0430\u0431\u043b\u0438\u0446\u0430<\/a>, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0437\u0430\u043f\u043e\u043b\u043d\u044f\u0435\u0442\u0441\u044f \u043d\u0430 \u044d\u0442\u0430\u043f\u0435 \u0432\u044b\u0433\u0440\u0443\u0437\u043a\u0438. \u0414\u0430\u043b\u0435\u0435 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0441\u044f \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 &#8212; \u0432\u0441\u0435 \u043b\u0438 \u0444\u0440\u0430\u0433\u043c\u0435\u043d\u0442\u044b \u0431\u0430\u0442\u0447\u0430 \u0437\u0430\u043d\u0435\u0441\u043b\u0438\u0441\u044c \u0432 \u0446\u0435\u043b\u0435\u0432\u0443\u044e \u0441\u0438\u0441\u0442\u0435\u043c\u0443, \u0438 \u0432 \u0441\u043b\u0443\u0447\u0430\u0435 \u0443\u0441\u043f\u0435\u0445\u0430 \u043e\u0447\u0438\u0449\u0430\u0435\u0442\u0441\u044f \u0441\u043b\u0443\u0436\u0435\u0431\u043d\u0430\u044f \u0442\u0430\u0431\u043b\u0438\u0446\u0430.<\/p>\n<figure class=\"full-width\"><figcaption><\/figcaption><\/figure>\n<p>\u041f\u043e\u0441\u043b\u0435 \u044d\u0442\u043e\u0433\u043e \u043c\u043e\u0436\u043d\u043e \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0442\u044c \u0437\u0430\u043f\u0440\u043e\u0441 \u043a \u0446\u0435\u043b\u0435\u0432\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u0435, \u0442\u0430\u043a \u043a\u0430\u043a \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0430 \u0433\u0430\u0440\u0430\u043d\u0442\u0438\u044f \u0442\u043e\u0433\u043e, \u0447\u0442\u043e \u0431\u0430\u0442\u0447 \u043f\u043e\u043b\u043d\u043e\u0441\u0442\u044c\u044e \u0437\u0430\u0433\u0440\u0443\u0436\u0435\u043d.<\/p>\n<p>\u0414\u0430\u043b\u044c\u043d\u0435\u0439\u0448\u0438\u0435 \u0448\u0430\u0433\u0438 \u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u0441\u043b\u0443\u0436\u0435\u0431\u043d\u044b\u043c\u0438 &#8212; \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043b\u043e\u0433\u0430, \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u0443\u0432\u0435\u0434\u043e\u043c\u043b\u0435\u043d\u0438\u0439 \u0432 \u043a\u0430\u043d\u0430\u043b Slack \u0438 \u0442\u0430\u043a \u0434\u0430\u043b\u0435\u0435. <\/p>\n<h2>\u0417\u0430\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435<\/h2>\n<p>\u042f \u043f\u043e\u0441\u0442\u0430\u0440\u0430\u043b\u0441\u044f \u043e\u043f\u0438\u0441\u0430\u0442\u044c<\/p>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\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-330927","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/330927","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=330927"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/330927\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=330927"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=330927"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=330927"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}