{"id":36317,"date":"2019-10-31T22:10:55","date_gmt":"2019-10-31T19:10:55","guid":{"rendered":"https:\/\/prohoster.info\/blog\/balansirovka-zapisi-i-chteniya-v-baze-dannyh\/"},"modified":"2019-10-31T22:10:55","modified_gmt":"2019-10-31T19:10:55","slug":"balansirovka-zapisi-i-chteniya-v-baze-dannyh","status":"publish","type":"post","link":"https:\/\/prohoster.info\/de\/blog\/administrirovanie\/balansirovka-zapisi-i-chteniya-v-baze-dannyh","title":{"rendered":"Lastenausgleich von Lese- und Schreibvorg\u00e4ngen in der Datenbank","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" alt=\"\u0411\u0430\u043b\u0430\u043d\u0441\u0438\u0440\u043e\u0432\u043a\u0430 \u0437\u0430\u043f\u0438\u0441\u0438 \u0438 \u0447\u0442\u0435\u043d\u0438\u044f \u0432 \u0431\u0430\u0437\u0435 \u0434\u0430\u043d\u043d\u044b\u0445\" src=\"\/wp-content\/uploads\/2019\/07\/9f067df66bd3158da4f9a89fbd1c5374.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n\u0412 \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0435\u0439 <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/lsfusion\/blog\/458774\/\">\u0441\u0442\u0430\u0442\u044c\u0435<\/a><\/noindex> \u044f \u043e\u043f\u0438\u0441\u0430\u043b \u043a\u043e\u043d\u0446\u0435\u043f\u0446\u0438\u044e \u0438 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044e \u0431\u0430\u0437\u044b \u0434\u0430\u043d\u043d\u044b\u0445, \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u043e\u0435 \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0439, \u0430 \u043d\u0435 \u0442\u0430\u0431\u043b\u0438\u0446 \u0438 \u043f\u043e\u043b\u0435\u0439 \u043a\u0430\u043a \u0432 \u0440\u0435\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u044b\u0445 \u0431\u0430\u0437\u0430\u0445 \u0434\u0430\u043d\u043d\u044b\u0445. \u0412 \u043d\u0435\u0439 \u0431\u044b\u043b\u043e \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u043d\u043e \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e \u043f\u0440\u0438\u043c\u0435\u0440\u043e\u0432, \u043f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u044e\u0449\u0438\u0445 \u043f\u0440\u0435\u0438\u043c\u0443\u0449\u0435\u0441\u0442\u0432\u0430 \u0442\u0430\u043a\u043e\u0433\u043e \u043f\u043e\u0434\u0445\u043e\u0434\u0430 \u043f\u0435\u0440\u0435\u0434 \u043a\u043b\u0430\u0441\u0441\u0438\u0447\u0435\u0441\u043a\u0438\u043c. \u041c\u043d\u043e\u0433\u0438\u0435 \u0441\u043e\u0447\u043b\u0438 \u0438\u0445 \u043d\u0435\u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0443\u0431\u0435\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u043c\u0438.<\/p>\n<p>\u0412 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u044f \u043f\u043e\u043a\u0430\u0436\u0443, \u043a\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c \u0442\u0430\u043a\u0430\u044f \u043a\u043e\u043d\u0446\u0435\u043f\u0446\u0438\u044f \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0431\u044b\u0441\u0442\u0440\u043e \u0438 \u0443\u0434\u043e\u0431\u043d\u043e \u0431\u0430\u043b\u0430\u043d\u0441\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0437\u0430\u043f\u0438\u0441\u044c \u0438 \u0447\u0442\u0435\u043d\u0438\u0435 \u0432 \u0431\u0430\u0437\u0443 \u0434\u0430\u043d\u043d\u044b\u0445 \u0431\u0435\u0437 \u043a\u0430\u043a\u043e\u0433\u043e-\u043b\u0438\u0431\u043e \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u043b\u043e\u0433\u0438\u043a\u0438 \u0440\u0430\u0431\u043e\u0442\u044b. \u041f\u043e\u0445\u043e\u0436\u0438\u0439 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b \u043f\u043e\u043f\u044b\u0442\u0430\u043b\u0438\u0441\u044c \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u0432 \u0441\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445 \u043a\u043e\u043c\u043c\u0435\u0440\u0447\u0435\u0441\u043a\u0438\u0445 \u0421\u0423\u0411\u0414 (\u0432 \u0447\u0430\u0441\u0442\u043d\u043e\u0441\u0442\u0438, Oracle \u0438 Microsoft SQL Server). \u0412 \u043a\u043e\u043d\u0446\u0435 \u0441\u0442\u0430\u0442\u044c\u0438 \u044f \u043f\u043e\u043a\u0430\u0436\u0443, \u0447\u0442\u043e \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u043e\u0441\u044c \u0443 \u043d\u0438\u0445, \u043c\u044f\u0433\u043a\u043e \u0433\u043e\u0432\u043e\u0440\u044f, \u043d\u0435 \u043e\u0447\u0435\u043d\u044c.<br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h3>\u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435<\/h3>\n<p>\n\u041a\u0430\u043a \u0438 \u0440\u0430\u043d\u0435\u0435, \u0434\u043b\u044f \u043b\u0443\u0447\u0448\u0435\u0433\u043e \u043f\u043e\u043d\u0438\u043c\u0430\u043d\u0438\u044f \u044f \u043d\u0430\u0447\u043d\u0443 \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u043d\u0430 \u043f\u0440\u0438\u043c\u0435\u0440\u0430\u0445. \u041f\u0440\u0435\u0434\u043f\u043e\u043b\u043e\u0436\u0438\u043c, \u043d\u0430\u043c \u043d\u0443\u0436\u043d\u043e \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u043b\u043e\u0433\u0438\u043a\u0443, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0431\u0443\u0434\u0435\u0442 \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0442\u044c \u0441\u043f\u0438\u0441\u043e\u043a \u043e\u0442\u0434\u0435\u043b\u043e\u0432 \u0441 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e\u043c \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u043e\u0432 \u0432 \u043d\u0438\u0445 \u0438 \u0438\u0445 \u0441\u0443\u043c\u043c\u0430\u0440\u043d\u043e\u0439 \u0437\u0430\u0440\u043f\u043b\u0430\u0442\u043e\u0439.<\/p>\n<p>\u0412 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e\u0439 \u0431\u0430\u0437\u0435 \u0434\u0430\u043d\u043d\u044b\u0445 \u044d\u0442\u043e \u0431\u0443\u0434\u0435\u0442 \u0432\u044b\u0433\u043b\u044f\u0434\u0435\u0442\u044c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c:<\/p>\n<p><code>CLASS\u00a0Department\u00a0\u2018\u041e\u0442\u0434\u0435\u043b\u2019;<br \/>\nname\u00a0\u2018\u041d\u0430\u0438\u043c\u0435\u043d\u043e\u0432\u0430\u043d\u0438\u0435\u2019\u00a0=\u00a0DATA\u00a0STRING[100]\u00a0(Department);<\/p>\n<p>CLASS\u00a0Employee\u00a0\u2018\u0421\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u2019;<br \/>\ndepartment\u00a0\u2018\u041e\u0442\u0434\u0435\u043b\u2019\u00a0=\u00a0DATA\u00a0Department\u00a0(Employee);<br \/>\nsalary\u00a0\u2018\u0417\u0430\u0440\u043f\u043b\u0430\u0442\u0430\u2019\u00a0=\u00a0\u00a0DATA\u00a0NUMERIC[10,2]\u00a0(Employee);<\/p>\n<p>countEmployees\u00a0\u2018\u041a\u043e\u043b-\u0432\u043e\u00a0\u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u043e\u0432\u2019\u00a0(Department\u00a0d)\u00a0=\u00a0<br \/>\n\u00a0\u00a0\u00a0\u00a0GROUP\u00a0SUM\u00a01\u00a0IF\u00a0department(Employee\u00a0e)\u00a0=\u00a0d;<br \/>\nsalarySum\u00a0\u2018\u0421\u0443\u043c\u043c\u0430\u0440\u043d\u0430\u044f\u00a0\u0437\u0430\u0440\u043f\u043b\u0430\u0442\u0430\u2019\u00a0(Department\u00a0d)\u00a0=\u00a0<br \/>\n\u00a0\u00a0\u00a0\u00a0GROUP\u00a0SUM\u00a0salary(Employee\u00a0e)\u00a0IF\u00a0department(e)\u00a0=\u00a0d;<\/p>\n<p>SELECT\u00a0name(Department\u00a0d),\u00a0countEmployees(d),\u00a0salarySum(d);<br \/>\n<\/code><\/p>\n<p> \u0421\u043b\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u044d\u0442\u043e\u0433\u043e \u0437\u0430\u043f\u0440\u043e\u0441\u0430 \u0432 \u043b\u044e\u0431\u043e\u0439 \u0421\u0423\u0411\u0414 \u0431\u0443\u0434\u0435\u0442 \u044d\u043a\u0432\u0438\u0432\u0430\u043b\u0435\u043d\u0442\u043d\u0430 <i>O(\u043a\u043e\u043b-\u0432\u043e \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u043e\u0432)<\/i>, \u0442\u0430\u043a \u043a\u0430\u043a \u0434\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u044f \u043d\u0443\u0436\u043d\u043e \u043f\u0440\u043e\u0441\u043a\u0430\u043d\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0432\u0441\u044e \u0442\u0430\u0431\u043b\u0438\u0446\u0443 \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u043e\u0432, \u0430 \u0437\u0430\u0442\u0435\u043c \u0441\u0433\u0440\u0443\u043f\u043f\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0438\u0445 \u043f\u043e \u043e\u0442\u0434\u0435\u043b\u0443. \u0422\u0430\u043a\u0436\u0435 \u0431\u0443\u0434\u0435\u0442 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u0430\u044f \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u0430\u044f (\u0441\u0447\u0438\u0442\u0430\u0435\u043c, \u0447\u0442\u043e \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u043e\u0432 \u0433\u043e\u0440\u0430\u0437\u0434\u043e \u0431\u043e\u043b\u044c\u0448\u0435 \u0447\u0435\u043c \u043e\u0442\u0434\u0435\u043b\u043e\u0432) \u0434\u043e\u0431\u0430\u0432\u043a\u0430 \u0432 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043e\u0442 \u0432\u044b\u0431\u0440\u0430\u043d\u043d\u043e\u0433\u043e \u043f\u043b\u0430\u043d\u0430 <i>O(log \u043a\u043e\u043b-\u0432\u0430 \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u043e\u0432)<\/i> \u0438\u043b\u0438 <i>O(\u043a\u043e\u043b-\u0432\u043e \u043e\u0442\u0434\u0435\u043b\u043e\u0432)<\/i> \u043d\u0430 \u0433\u0440\u0443\u043f\u043f\u0438\u0440\u043e\u0432\u043a\u0443 \u0438 \u043f\u0440\u043e\u0447\u0435\u0435.<\/p>\n<p>\u041f\u043e\u043d\u044f\u0442\u043d\u043e, \u0447\u0442\u043e \u043d\u0430\u043a\u043b\u0430\u0434\u043d\u044b\u0435 \u0440\u0430\u0441\u0445\u043e\u0434\u044b \u043d\u0430 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u043c\u043e\u0433\u0443\u0442 \u0431\u044b\u0442\u044c \u0440\u0430\u0437\u043d\u044b\u043c\u0438 \u0432 \u0440\u0430\u0437\u043d\u044b\u0445 \u0421\u0423\u0411\u0414, \u043d\u043e \u0441\u043b\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u043d\u0435 \u0438\u0437\u043c\u0435\u043d\u0438\u0442\u0441\u044f \u043d\u0438\u043a\u0430\u043a.<\/p>\n<p>\u0412 \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d\u043d\u043e\u0439 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u0430\u044f \u0421\u0423\u0411\u0414 \u0441\u0444\u043e\u0440\u043c\u0438\u0440\u0443\u0435\u0442 \u043e\u0434\u0438\u043d \u043f\u043e\u0434\u0437\u0430\u043f\u0440\u043e\u0441, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0432\u044b\u0447\u0438\u0441\u043b\u0438\u0442 \u043d\u0443\u0436\u043d\u044b\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u043f\u043e \u043e\u0442\u0434\u0435\u043b\u0443, \u0430 \u0437\u0430\u0442\u0435\u043c \u0441\u0434\u0435\u043b\u0430\u0435\u0442 JOIN \u0441 \u0442\u0430\u0431\u043b\u0438\u0446\u0435\u0439 \u043e\u0442\u0434\u0435\u043b\u043e\u0432 \u0434\u043b\u044f \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u0438\u043c\u0435\u043d\u0438. \u041e\u0434\u043d\u0430\u043a\u043e, \u0434\u043b\u044f \u043a\u0430\u0436\u0434\u043e\u0439 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u043f\u0440\u0438 \u043e\u0431\u044a\u044f\u0432\u043b\u0435\u043d\u0438\u0438 \u0435\u0441\u0442\u044c \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u0437\u0430\u0434\u0430\u0442\u044c \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0439 \u043c\u0430\u0440\u043a\u0435\u0440 MATERIALIZED. \u0421\u0438\u0441\u0442\u0435\u043c\u0430 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0441\u043e\u0437\u0434\u0430\u0441\u0442 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0435\u0435 \u043f\u043e\u043b\u0435 \u043f\u043e\u0434 \u043a\u0430\u0436\u0434\u0443\u044e \u0442\u0430\u043a\u0443\u044e \u0444\u0443\u043d\u043a\u0446\u0438\u044e. \u041f\u0440\u0438 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0438 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u0431\u0443\u0434\u0435\u0442 \u0432 \u0442\u043e\u0439 \u0436\u0435 \u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u0438 \u0438\u0437\u043c\u0435\u043d\u044f\u0442\u044c\u0441\u044f \u0438 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u043f\u043e\u043b\u044f. \u041f\u0440\u0438 \u043e\u0431\u0440\u0430\u0449\u0435\u043d\u0438\u0438 \u043a \u044d\u0442\u043e\u0439 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u0431\u0443\u0434\u0435\u0442 \u0438\u0434\u0442\u0438 \u043e\u0431\u0440\u0430\u0449\u0435\u043d\u0438\u0435 \u0443\u0436\u0435 \u043a \u043f\u0440\u0435\u043f\u043e\u0434\u0441\u0447\u0438\u0442\u0430\u043d\u043d\u043e\u043c\u0443 \u043f\u043e\u043b\u044e.<\/p>\n<p>\u0412 \u0447\u0430\u0441\u0442\u043d\u043e\u0441\u0442\u0438, \u0435\u0441\u043b\u0438 \u043f\u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c MATERIALIZED \u0434\u043b\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u0439 <i>countEmployees<\/i> \u0438 <i>salarySum<\/i>, \u0442\u043e \u0432 \u0442\u0430\u0431\u043b\u0438\u0446\u0435 \u0441\u043e \u0441\u043f\u0438\u0441\u043a\u043e\u043c \u043e\u0442\u0434\u0435\u043b\u043e\u0432 \u0434\u043e\u0431\u0430\u0432\u044f\u0442\u0441\u044f \u0434\u0432\u0430 \u043f\u043e\u043b\u044f, \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0431\u0443\u0434\u0443\u0442 \u0445\u0440\u0430\u043d\u0438\u0442\u0441\u044f \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u043e\u0432 \u0438 \u0438\u0445 \u0441\u0443\u043c\u043c\u0430\u0440\u043d\u0430\u044f \u0437\u0430\u0440\u043f\u043b\u0430\u0442\u0430. \u041f\u0440\u0438 \u043b\u044e\u0431\u043e\u043c \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0438 \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u043e\u0432, \u0438\u0445 \u0437\u0430\u0440\u043f\u043b\u0430\u0442 \u0438\u043b\u0438 \u043f\u0440\u0438\u043d\u0430\u0434\u043b\u0435\u0436\u043d\u043e\u0441\u0442\u0438 \u043a \u043e\u0442\u0434\u0435\u043b\u0430\u043c \u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u0431\u0443\u0434\u0435\u0442 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0438\u0437\u043c\u0435\u043d\u044f\u0442\u044c \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u044d\u0442\u0438\u0445 \u043f\u043e\u043b\u0435\u0439. \u041f\u0440\u0438\u0432\u0435\u0434\u0435\u043d\u043d\u044b\u0439 \u0436\u0435 \u0432\u044b\u0448\u0435 \u0437\u0430\u043f\u0440\u043e\u0441 \u0441\u0442\u0430\u043d\u0435\u0442 \u043e\u0431\u0440\u0430\u0449\u0430\u0442\u044c\u0441\u044f \u043d\u0435\u043f\u043e\u0441\u0440\u0435\u0434\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u043a \u044d\u0442\u0438\u043c \u043f\u043e\u043b\u044f\u043c \u0438 \u0431\u0443\u0434\u0435\u0442 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d \u0437\u0430 <i>O(\u043a\u043e\u043b-\u0432\u043e \u043e\u0442\u0434\u0435\u043b\u043e\u0432)<\/i>.<\/p>\n<p>\u041a\u0430\u043a\u0438\u0435 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u044f? \u0422\u043e\u043b\u044c\u043a\u043e \u043e\u0434\u043d\u043e: \u0443 \u0442\u0430\u043a\u043e\u0439 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u0434\u043e\u043b\u0436\u043d\u043e \u0431\u044b\u0442\u044c \u043a\u043e\u043d\u0435\u0447\u043d\u043e\u0435 \u0447\u0438\u0441\u043b\u043e \u0432\u0445\u043e\u0434\u043d\u044b\u0445 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439, \u0434\u043b\u044f \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0435\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043e. \u0418\u043d\u0430\u0447\u0435 \u0431\u0443\u0434\u0435\u0442 \u043d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u043f\u043e\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u0442\u0430\u0431\u043b\u0438\u0446\u0443, \u0445\u0440\u0430\u043d\u044f\u0449\u0443\u044e \u0432\u0441\u0435 \u0435\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f, \u0442\u0430\u043a \u043a\u0430\u043a \u043d\u0435 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u0442\u0430\u0431\u043b\u0438\u0446\u044b \u0441 \u0431\u0435\u0441\u043a\u043e\u043d\u0435\u0447\u043d\u044b\u043c \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e\u043c \u0440\u044f\u0434\u043e\u0432. <\/p>\n<p>\u041f\u0440\u0438\u043c\u0435\u0440:<\/p>\n<p><code>employeesCount\u00a0\u2018\u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e\u00a0\u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u043e\u0432\u00a0\u0441\u00a0\u0437\u0430\u0440\u043f\u043b\u0430\u0442\u043e\u0439\u00a0&gt;\u00a0N\u2019\u00a0(Department\u00a0d,\u00a0NUMERIC[10,2]\u00a0N)\u00a0=\u00a0<br \/>\n\u00a0\u00a0\u00a0\u00a0GROUP\u00a0SUM\u00a0salary(Employee\u00a0e)\u00a0IF\u00a0department(e)\u00a0=\u00a0d\u00a0AND\u00a0salary(e)\u00a0&gt;\u00a0N;<br \/>\n<\/code><\/p>\n<p> \u042d\u0442\u0430 \u0444\u0443\u043d\u043a\u0446\u0438\u044f \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0430 \u0434\u043b\u044f \u0431\u0435\u0441\u043a\u043e\u043d\u0435\u0447\u043d\u043e\u0433\u043e \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u0430 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439 \u0447\u0438\u0441\u043b\u0430 N (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043f\u043e\u0434\u0445\u043e\u0434\u0438\u0442 \u043b\u044e\u0431\u043e\u0435 \u043e\u0442\u0440\u0438\u0446\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435). \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u043d\u0430 \u043d\u0435\u0435 \u043d\u0435\u043b\u044c\u0437\u044f \u043f\u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c MATERIALIZED. \u0422\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c, \u044d\u0442\u043e \u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u043e\u0435, \u0430 \u043d\u0435 \u0442\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u0435 (\u0442\u043e \u0435\u0441\u0442\u044c \u043d\u0435 \u043f\u043e\u0442\u043e\u043c\u0443, \u0447\u0442\u043e \u043c\u044b \u043d\u0435 \u0441\u043c\u043e\u0433\u043b\u0438 \u044d\u0442\u043e \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c). \u0412 \u043e\u0441\u0442\u0430\u043b\u044c\u043d\u043e\u043c \u2014 \u043d\u0438\u043a\u0430\u043a\u0438\u0445 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u0439. \u041c\u043e\u0436\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0433\u0440\u0443\u043f\u043f\u0438\u0440\u043e\u0432\u043a\u0438, \u0441\u043e\u0440\u0442\u0438\u0440\u043e\u0432\u043a\u0438, AND \u0438 OR, PARTITION, \u0440\u0435\u043a\u0443\u0440\u0441\u0438\u0438 \u0438 \u0442.\u0434.<\/p>\n<p>\u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0432 \u0437\u0430\u0434\u0430\u0447\u0435 2.2 \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0435\u0439 \u0441\u0442\u0430\u0442\u044c\u0438 \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c MATERIALIZED \u043d\u0430 \u043e\u0431\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0438:<\/p>\n<p><code>bought\u00a0'\u041a\u0443\u043f\u0438\u043b'\u00a0(Customer\u00a0c,\u00a0Product\u00a0p,\u00a0INTEGER\u00a0y)\u00a0=\u00a0<br \/>\n\u00a0\u00a0\u00a0\u00a0GROUP\u00a0SUM\u00a0sum(Detail\u00a0d)\u00a0IF\u00a0<br \/>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0customer(order(d))\u00a0=\u00a0c\u00a0AND\u00a0<br \/>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0product(d)\u00a0=\u00a0p\u00a0AND\u00a0<br \/>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0extractYear(date(order(d)))\u00a0=\u00a0y\u00a0MATERIALIZED;<br \/>\nrating\u00a0'\u0420\u0435\u0439\u0442\u0438\u043d\u0433'\u00a0(Customer\u00a0c,\u00a0Product\u00a0p,\u00a0INTEGER\u00a0y)\u00a0=\u00a0<br \/>\n\u00a0\u00a0\u00a0\u00a0PARTITION\u00a0SUM\u00a01\u00a0ORDER\u00a0DESC\u00a0bought(c,\u00a0p,\u00a0y),\u00a0p\u00a0BY\u00a0c,\u00a0y\u00a0MATERIALIZED;<br \/>\nSELECT\u00a0contactName(Customer\u00a0c),\u00a0name(Product\u00a0p)\u00a0WHERE\u00a0rating(c,\u00a0p,\u00a01997)\u00a0&lt;\u00a03;<br \/>\n<\/code><\/p>\n<p> \u0421\u0438\u0441\u0442\u0435\u043c\u0430 \u0441\u0430\u043c\u0430 \u0441\u043e\u0437\u0434\u0430\u0441\u0442 \u043e\u0434\u043d\u0443 \u0442\u0430\u0431\u043b\u0438\u0446\u0443 \u0441 \u043a\u043b\u044e\u0447\u0430\u043c\u0438 \u0442\u0438\u043f\u043e\u0432 <i>Customer<\/i>, <i>Product<\/i> \u0438 <i>INTEGER<\/i>, \u0434\u043e\u0431\u0430\u0432\u0438\u0442 \u0432 \u043d\u0435\u0435 \u0434\u0432\u0430 \u043f\u043e\u043b\u044f \u0438 \u0431\u0443\u0434\u0435\u0442 \u043e\u0431\u043d\u043e\u0432\u043b\u044f\u0442\u044c \u0432 \u043d\u0438\u0445 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u043f\u043e\u043b\u0435\u0439 \u043f\u0440\u0438 \u043b\u044e\u0431\u044b\u0445 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f\u0445. \u041f\u0440\u0438 \u0434\u0430\u043b\u044c\u043d\u0435\u0439\u0448\u0438\u0445 \u043e\u0431\u0440\u0430\u0449\u0435\u043d\u0438\u044f\u0445 \u043a \u044d\u0442\u0438\u043c \u0444\u0443\u043d\u043a\u0446\u0438\u044f\u043c \u043d\u0435 \u0431\u0443\u0434\u0435\u0442 \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442\u044c \u0438\u0445 \u0440\u0430\u0441\u0447\u0435\u0442, \u0430 \u0431\u0443\u0434\u0443\u0442 \u0441\u0447\u0438\u0442\u044b\u0432\u0430\u0442\u044c\u0441\u044f \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0438\u0437 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0445 \u043f\u043e\u043b\u0435\u0439.<\/p>\n<p>\u041f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 \u044d\u0442\u043e\u0433\u043e \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c\u0430 \u043c\u043e\u0436\u043d\u043e, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0438\u0437\u0431\u0430\u0432\u043b\u044f\u0442\u044c\u0441\u044f \u043e\u0442 \u0432 \u0440\u0435\u043a\u0443\u0440\u0441\u0438\u0439 (CTE) \u0432 \u0437\u0430\u043f\u0440\u043e\u0441\u0430\u0445. \u0412 \u0447\u0430\u0441\u0442\u043d\u043e\u0441\u0442\u0438, \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u0433\u0440\u0443\u043f\u043f\u044b, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043e\u0431\u0440\u0430\u0437\u0443\u044e\u0442 \u0434\u0435\u0440\u0435\u0432\u043e \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 \u043e\u0442\u043d\u043e\u0448\u0435\u043d\u0438\u044f child\/parent (\u0443 \u043a\u0430\u0436\u0434\u043e\u0439 \u0433\u0440\u0443\u043f\u043f\u044b \u0435\u0441\u0442\u044c \u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u0441\u0432\u043e\u0435\u0433\u043e \u0440\u043e\u0434\u0438\u0442\u0435\u043b\u044f):<\/p>\n<p><code>parent\u00a0=\u00a0DATA\u00a0Group\u00a0(Group);<br \/>\n<\/code><\/p>\n<p> \u0412 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e\u0439 \u0431\u0430\u0437\u0435 \u0434\u0430\u043d\u043d\u044b\u0445 \u043b\u043e\u0433\u0438\u043a\u0443 \u0440\u0435\u043a\u0443\u0440\u0441\u0438\u0439 \u043c\u043e\u0436\u043d\u043e \u0437\u0430\u0434\u0430\u0442\u044c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c:<\/p>\n<p><code>level\u00a0(Group\u00a0child,\u00a0Group\u00a0parent)\u00a0=\u00a0RECURSION\u00a01l\u00a0IF\u00a0child\u00a0IS\u00a0Group\u00a0AND\u00a0parent\u00a0==\u00a0child<br \/>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0STEP\u00a02l\u00a0IF\u00a0parent\u00a0==\u00a0parent($parent);<br \/>\nisParent\u00a0(Group\u00a0child,\u00a0Group\u00a0parent)\u00a0=\u00a0TRUE\u00a0IF\u00a0level(child,\u00a0parent)\u00a0MATERIALIZED;<br \/>\n<\/code><\/p>\n<p> \u0422\u0430\u043a \u043a\u0430\u043a \u0434\u043b\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u0438 <i>isParent<\/i> \u043f\u0440\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d MATERIALIZED, \u0442\u043e \u043f\u043e\u0434 \u043d\u0435\u0435 \u0431\u0443\u0434\u0435\u0442 \u0441\u043e\u0437\u0434\u0430\u043d\u0430 \u0442\u0430\u0431\u043b\u0438\u0446\u0430 \u0441 \u0434\u0432\u0443\u043c\u044f \u043a\u043b\u044e\u0447\u0430\u043c\u0438 (\u0433\u0440\u0443\u043f\u043f\u0430\u043c\u0438), \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u043f\u043e\u043b\u0435 <i>isParent<\/i> \u0431\u0443\u0434\u0435\u0442 \u0438\u0441\u0442\u0438\u043d\u043d\u044b\u043c \u0442\u043e\u043b\u044c\u043a\u043e, \u0435\u0441\u043b\u0438 \u043f\u0435\u0440\u0432\u044b\u0439 \u043a\u043b\u044e\u0447 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043f\u043e\u0442\u043e\u043c\u043a\u043e\u043c \u0432\u0442\u043e\u0440\u043e\u0433\u043e. \u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0437\u0430\u043f\u0438\u0441\u0435\u0439 \u0432 \u044d\u0442\u043e\u0439 \u0442\u0430\u0431\u043b\u0438\u0446\u0435 \u0431\u0443\u0434\u0435\u0442 \u0440\u0430\u0432\u043d\u043e \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u0443 \u0433\u0440\u0443\u043f\u043f, \u0443\u043c\u043d\u043e\u0436\u0435\u043d\u043d\u043e\u043c\u0443 \u043d\u0430 \u0441\u0440\u0435\u0434\u043d\u044e\u044e \u0433\u043b\u0443\u0431\u0438\u043d\u0443 \u0434\u0435\u0440\u0435\u0432\u0430. \u0415\u0441\u043b\u0438 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043f\u043e\u0441\u0447\u0438\u0442\u0430\u0442\u044c \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u043f\u043e\u0442\u043e\u043c\u043a\u043e\u0432 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u043e\u0439 \u0433\u0440\u0443\u043f\u043f\u044b, \u0442\u043e \u043c\u043e\u0436\u043d\u043e \u043e\u0431\u0440\u0430\u0449\u0430\u0442\u044c\u0441\u044f \u043a \u044d\u0442\u043e\u0439 \u0444\u0443\u043d\u043a\u0446\u0438\u0438:<\/p>\n<p><code>childrenCount\u00a0(Group\u00a0g)\u00a0=\u00a0GROUP\u00a0SUM\u00a01\u00a0IF\u00a0isParent(Group\u00a0child,\u00a0g);<br \/>\n<\/code><\/p>\n<p> \u041d\u0438\u043a\u0430\u043a\u043e\u0433\u043e CTE \u0432 SQL \u0437\u0430\u043f\u0440\u043e\u0441\u0435 \u043f\u0440\u0438 \u044d\u0442\u043e\u043c \u043d\u0435 \u0431\u0443\u0434\u0435\u0442. \u0412\u043c\u0435\u0441\u0442\u043e \u044d\u0442\u043e\u0433\u043e \u0431\u0443\u0434\u0435\u0442 \u043f\u0440\u043e\u0441\u0442\u043e\u0439 GROUP BY.<\/p>\n<p>\u041f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 \u044d\u0442\u043e\u0433\u043e \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c\u0430 \u043c\u043e\u0436\u043d\u043e \u0442\u0430\u043a\u0436\u0435 \u043b\u0435\u0433\u043a\u043e \u0434\u0435\u043b\u0430\u0442\u044c \u0434\u0435\u043d\u043e\u0440\u043c\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044e \u0431\u0430\u0437\u044b \u0434\u0430\u043d\u043d\u044b\u0445 \u043f\u0440\u0438 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u0438:<\/p>\n<p><code>CLASS\u00a0Order\u00a0'\u0417\u0430\u043a\u0430\u0437';<br \/>\ndate\u00a0'\u0414\u0430\u0442\u0430'\u00a0=\u00a0DATA\u00a0DATE\u00a0(Order);<\/p>\n<p>CLASS\u00a0OrderDetail\u00a0'\u0421\u0442\u0440\u043e\u043a\u0430\u00a0\u0437\u0430\u043a\u0430\u0437\u0430';<br \/>\norder\u00a0'\u0417\u0430\u043a\u0430\u0437'\u00a0=\u00a0DATA\u00a0Order\u00a0(OrderDetail);<br \/>\ndate\u00a0'\u0414\u0430\u0442\u0430'\u00a0(OrderDetail\u00a0d)\u00a0=\u00a0date(order(d))\u00a0MATERIALIZED\u00a0INDEXED;<br \/>\n<\/code><\/p>\n<p> \u041f\u0440\u0438 \u043e\u0431\u0440\u0430\u0449\u0435\u043d\u0438\u0438 \u043a \u0444\u0443\u043d\u043a\u0446\u0438\u0438 <i>date<\/i> \u0434\u043b\u044f \u0441\u0442\u0440\u043e\u043a\u0438 \u0437\u0430\u043a\u0430\u0437\u0430 \u0431\u0443\u0434\u0435\u0442 \u0438\u0434\u0442\u0438 \u0447\u0442\u0435\u043d\u0438\u0435 \u0438\u0437 \u0442\u0430\u0431\u043b\u0438\u0446\u044b \u0441\u043e \u0441\u0442\u0440\u043e\u043a\u0430\u043c\u0438 \u0437\u0430\u043a\u0430\u0437\u043e\u0432 \u043f\u043e\u043b\u044f, \u043f\u043e \u043a\u043e\u0442\u043e\u0440\u043e\u043c\u0443 \u0435\u0441\u0442\u044c \u0438\u043d\u0434\u0435\u043a\u0441. \u041f\u0440\u0438 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0438 \u0434\u0430\u0442\u044b \u0437\u0430\u043a\u0430\u0437\u0430 \u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u0431\u0443\u0434\u0435\u0442 \u0441\u0430\u043c\u0430 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u043f\u0435\u0440\u0435\u0441\u0447\u0438\u0442\u044b\u0432\u0430\u0442\u044c \u0434\u0435\u043d\u043e\u0440\u043c\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u0443\u044e \u0434\u0430\u0442\u0443 \u0432 \u0441\u0442\u0440\u043e\u043a\u0435.<\/p>\n<h3>\u041f\u0440\u0435\u0438\u043c\u0443\u0449\u0435\u0441\u0442\u0432\u0430<\/h3>\n<p>\n\u0414\u043b\u044f \u0447\u0435\u0433\u043e \u0432\u0435\u0441\u044c \u044d\u0442\u043e\u0442 \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c \u043d\u0443\u0436\u0435\u043d? \u0412 \u043a\u043b\u0430\u0441\u0441\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0421\u0423\u0411\u0414, \u0431\u0435\u0437 \u043f\u0435\u0440\u0435\u043f\u0438\u0441\u044b\u0432\u0430\u043d\u0438\u044f \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432, \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a \u0438\u043b\u0438 DBA \u043c\u043e\u0433\u0443\u0442 \u043b\u0438\u0448\u044c \u0438\u0437\u043c\u0435\u043d\u044f\u0442\u044c \u0438\u043d\u0434\u0435\u043a\u0441\u044b, \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0442\u044c \u0441\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u043a\u0443 \u0438 \u043f\u043e\u0434\u0441\u043a\u0430\u0437\u044b\u0432\u0430\u0442\u044c \u043f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0449\u0438\u043a\u0443 \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432, \u043a\u0430\u043a \u0438\u0445 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0442\u044c (\u043f\u0440\u0438\u0447\u0435\u043c HINT&#8217;\u044b \u0435\u0441\u0442\u044c \u0442\u043e\u043b\u044c\u043a\u043e \u0432 \u043a\u043e\u043c\u043c\u0435\u0440\u0447\u0435\u0441\u043a\u0438\u0445 \u0421\u0423\u0411\u0414). \u041a\u0430\u043a \u0431\u044b \u043e\u043d\u0438 \u043d\u0435 \u0441\u0442\u0430\u0440\u0430\u043b\u0438\u0441\u044c, \u043e\u043d\u0438 \u043d\u0435 \u0441\u043c\u043e\u0433\u0443\u0442 \u043f\u0435\u0440\u0432\u044b\u0439 \u0437\u0430\u043f\u0440\u043e\u0441 \u0432 \u0441\u0442\u0430\u0442\u044c\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u044c \u0437\u0430 <i>\u041e (\u043a\u043e\u043b-\u0432\u043e \u043e\u0442\u0434\u0435\u043b\u043e\u0432)<\/i> \u0431\u0435\u0437 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432 \u0438 \u0434\u043e\u043f\u0438\u0441\u044b\u0432\u0430\u043d\u0438\u044f \u0442\u0440\u0438\u0433\u0433\u0435\u0440\u043e\u0432. \u0412 \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d\u043d\u043e\u0439 \u0436\u0435 \u0441\u0445\u0435\u043c\u0435, \u043d\u0430 \u044d\u0442\u0430\u043f\u0435 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043c\u043e\u0436\u043d\u043e \u043d\u0435 \u0437\u0430\u0434\u0443\u043c\u044b\u0432\u0430\u0442\u044c\u0441\u044f \u043e \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0435 \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u0434\u0430\u043d\u043d\u044b\u0445 \u0438 \u043e \u0442\u043e\u043c, \u043a\u0430\u043a\u0438\u0435 \u0430\u0433\u0440\u0435\u0433\u0430\u0446\u0438\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c. \u042d\u0442\u043e \u0432\u0441\u0435 \u043c\u043e\u0436\u043d\u043e \u0441\u043f\u043e\u043a\u043e\u0439\u043d\u043e \u043c\u0435\u043d\u044f\u0442\u044c \u043d\u0430 \u043b\u0435\u0442\u0443 \u0443\u0436\u0435 \u043d\u0435\u043f\u043e\u0441\u0440\u0435\u0434\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u0432 \u044d\u043a\u0441\u043f\u043b\u0443\u0430\u0442\u0430\u0446\u0438\u0438.<\/p>\n<p>\u041d\u0430 \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0435 \u044d\u0442\u043e \u0432\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c. \u041d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043b\u044e\u0434\u0438 \u0440\u0430\u0437\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u044e\u0442 \u043d\u0435\u043f\u043e\u0441\u0440\u0435\u0434\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u043b\u043e\u0433\u0438\u043a\u0443 \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u043f\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u043d\u043e\u0439 \u0437\u0430\u0434\u0430\u0447\u0438. \u041e\u043d\u0438 \u043d\u0435 \u0440\u0430\u0437\u0431\u0438\u0440\u0430\u044e\u0442\u0441\u044f \u043d\u0438 \u0432 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0430\u0445 \u0438 \u0438\u0445 \u0441\u043b\u043e\u0436\u043d\u043e\u0441\u0442\u0438, \u043d\u0438 \u0432 \u043f\u043b\u0430\u043d\u0430\u0445 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f, \u043d\u0438 \u0432 \u0442\u0438\u043f\u0430\u0445 join\u2019\u043e\u0432, \u043d\u0438 \u0432 \u043b\u044e\u0431\u043e\u0439 \u0434\u0440\u0443\u0433\u043e\u0439 \u0442\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u0441\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u044e\u0449\u0435\u0439. \u042d\u0442\u0438 \u043b\u044e\u0434\u0438 \u2014 \u0441\u043a\u043e\u0440\u0435\u0435 \u0431\u0438\u0437\u043d\u0435\u0441-\u0430\u043d\u0430\u043b\u0438\u0442\u0438\u043a\u0438, \u0447\u0435\u043c \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438. \u0417\u0430\u0442\u0435\u043c, \u0432\u0441\u0435 \u044d\u0442\u043e \u0438\u0434\u0435\u0442 \u0432 \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0438\u043b\u0438 \u044d\u043a\u0441\u043f\u043b\u0443\u0430\u0442\u0430\u0446\u0438\u044e. \u0412\u043a\u043b\u044e\u0447\u0430\u0435\u0442\u0441\u044f \u043b\u043e\u0433\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0434\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432. \u041a\u043e\u0433\u0434\u0430 \u043e\u0431\u043d\u0430\u0440\u0443\u0436\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u0434\u043e\u043b\u0433\u0438\u0439 \u0437\u0430\u043f\u0440\u043e\u0441, \u0442\u043e \u0443\u0436\u0435 \u0434\u0440\u0443\u0433\u0438\u043c\u0438 \u043b\u044e\u0434\u044c\u043c\u0438 (\u0431\u043e\u043b\u0435\u0435 \u0442\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u0438\u043c\u0438 \u2014 \u043f\u043e \u0441\u0443\u0442\u0438 DBA) \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u0435\u0442\u0441\u044f \u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u043e \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0438 MATERIALIZED \u043d\u0430 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u043f\u0440\u043e\u043c\u0435\u0436\u0443\u0442\u043e\u0447\u043d\u043e\u0439 \u0444\u0443\u043d\u043a\u0446\u0438\u0438. \u0422\u0435\u043c \u0441\u0430\u043c\u044b\u043c \u043d\u0435\u043c\u043d\u043e\u0433\u043e \u0437\u0430\u043c\u0435\u0434\u043b\u044f\u0435\u0442\u0441\u044f \u0437\u0430\u043f\u0438\u0441\u044c (\u0442\u0430\u043a \u043a\u0430\u043a \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435 \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u043e\u043b\u044f \u0432 \u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u0438). \u041e\u0434\u043d\u0430\u043a\u043e, \u0437\u043d\u0430\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0443\u0441\u043a\u043e\u0440\u044f\u0435\u0442\u0441\u044f \u043d\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u044d\u0442\u043e\u0442 \u0437\u0430\u043f\u0440\u043e\u0441, \u043d\u043e \u0438 \u0432\u0441\u0435 \u0434\u0440\u0443\u0433\u0438\u0435, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0442 \u044d\u0442\u0443 \u0444\u0443\u043d\u043a\u0446\u0438\u044e. \u041f\u0440\u0438 \u044d\u0442\u043e\u043c \u043f\u0440\u0438\u043d\u044f\u0442\u0438\u0435 \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u043e \u0442\u043e\u043c, \u043a\u0430\u043a\u0443\u044e \u0438\u043c\u0435\u043d\u043d\u043e \u0444\u0443\u043d\u043a\u0446\u0438\u044e \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u0435\u0442\u0441\u044f \u043e\u0442\u043d\u043e\u0441\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u043d\u0435\u0441\u043b\u043e\u0436\u043d\u043e. \u0414\u0432\u0430 \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0445 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0430: \u043a\u043e\u043b-\u0432\u043e \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u044b\u0445 \u0432\u0445\u043e\u0434\u043d\u044b\u0445 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439 (\u0438\u043c\u0435\u043d\u043d\u043e \u0441\u0442\u043e\u043b\u044c\u043a\u043e \u0437\u0430\u043f\u0438\u0441\u0435\u0439 \u0431\u0443\u0434\u0435\u0442 \u0432 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0435\u0439 \u0442\u0430\u0431\u043b\u0438\u0446\u0435), \u0438 \u043d\u0430\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0447\u0430\u0441\u0442\u043e \u043e\u043d\u0430 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0432 \u0434\u0440\u0443\u0433\u0438\u0445 \u0444\u0443\u043d\u043a\u0446\u0438\u044f\u0445.<\/p>\n<h3>\u0410\u043d\u0430\u043b\u043e\u0433\u0438<\/h3>\n<p>\n\u0412 \u0441\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445 \u043a\u043e\u043c\u043c\u0435\u0440\u0447\u0435\u0441\u043a\u0438\u0445 \u0421\u0423\u0411\u0414 \u0435\u0441\u0442\u044c \u0441\u0445\u043e\u0436\u0438\u0435 \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c\u044b: MATERIALIZED VIEW \u0441 FAST REFRESH (Oracle) \u0438 INDEXED VIEW (Microsoft SQL Server). \u0412 PostgreSQL MATERIALIZED VIEW \u043d\u0435 \u0443\u043c\u0435\u0435\u0442 \u043e\u0431\u043d\u043e\u0432\u043b\u044f\u0442\u044c\u0441\u044f \u0432 \u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u0438, \u0430 \u0442\u043e\u043b\u044c\u043a\u043e \u043f\u043e \u0437\u0430\u043f\u0440\u043e\u0441\u0443 (\u0434\u0430 \u0435\u0449\u0435 \u0441 \u0441\u043e\u0432\u0441\u0435\u043c \u0436\u0435\u0441\u0442\u043a\u0438\u043c\u0438 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u044f\u043c\u0438), \u0442\u0430\u043a \u0447\u0442\u043e \u0435\u0433\u043e \u043d\u0435 \u0440\u0430\u0441\u0441\u043c\u0430\u0442\u0440\u0438\u0432\u0430\u0435\u043c. \u041d\u043e \u0443 \u043d\u0438\u0445 \u0435\u0441\u0442\u044c \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043f\u0440\u043e\u0431\u043b\u0435\u043c, \u0447\u0442\u043e \u0437\u043d\u0430\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0438\u0432\u0430\u0435\u0442 \u0438\u0445 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435.<\/p>\n<p>\u0412\u043e-\u043f\u0435\u0440\u0432\u044b\u0445, \u043c\u043e\u0436\u043d\u043e \u0432\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044e \u0442\u043e\u043b\u044c\u043a\u043e, \u0435\u0441\u043b\u0438 \u0443 \u0432\u0430\u0441 \u0443\u0436\u0435 \u0431\u044b\u043b \u0441\u043e\u0437\u0434\u0430\u043d \u043e\u0431\u044b\u0447\u043d\u044b\u0439 VIEW. \u0418\u043d\u0430\u0447\u0435 \u043f\u0440\u0438\u0434\u0435\u0442\u0441\u044f \u043f\u0435\u0440\u0435\u043f\u0438\u0441\u044b\u0432\u0430\u0442\u044c \u043e\u0441\u0442\u0430\u043b\u044c\u043d\u044b\u0435 \u0437\u0430\u043f\u0440\u043e\u0441\u044b \u043d\u0430 \u043e\u0431\u0440\u0430\u0449\u0435\u043d\u0438\u0435 \u043a \u0432\u043d\u043e\u0432\u044c \u0441\u043e\u0437\u0434\u0430\u043d\u043d\u043e\u043c\u0443 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044e, \u0447\u0442\u043e\u0431\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u044d\u0442\u0443 \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044e. \u0418\u043b\u0438 \u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0432\u0441\u0435 \u043a\u0430\u043a \u0435\u0441\u0442\u044c, \u043d\u043e \u0431\u0443\u0434\u0435\u0442 \u043a\u0430\u043a \u043c\u0438\u043d\u0438\u043c\u0443\u043c \u043d\u0435\u044d\u0444\u0444\u0435\u043a\u0442\u0438\u0432\u043d\u043e, \u0435\u0441\u043b\u0438 \u0435\u0441\u0442\u044c \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u0435 \u0443\u0436\u0435 \u043f\u0440\u0435\u043f\u043e\u0434\u0441\u0447\u0438\u0442\u0430\u043d\u043d\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435, \u043d\u043e \u043c\u043d\u043e\u0433\u0438\u0435 \u0437\u0430\u043f\u0440\u043e\u0441\u044b \u0438\u0445 \u043d\u0435 \u0432\u0441\u0435\u0433\u0434\u0430 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0442, \u0430 \u0432\u044b\u0441\u0447\u0438\u0442\u044b\u0432\u0430\u044e\u0442 \u0437\u0430\u043d\u043e\u0432\u043e.<\/p>\n<p>\u0412\u043e-\u0432\u0442\u043e\u0440\u044b\u0445, \u0443 \u043d\u0438\u0445 \u0435\u0441\u0442\u044c \u043e\u0433\u0440\u043e\u043c\u043d\u043e\u0435 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u0439:<\/p>\n<p><b class=\"spoiler_title\">Oracle<\/b><\/p>\n<blockquote>\n<h5>5.3.8.4 General Restrictions on Fast Refresh<\/h5>\n<p>\n The defining query of the materialized view is restricted as follows:<\/p>\n<ul>\n<li>The materialized view must not contain references to non-repeating expressions like <code>SYSDATE<\/code> and <code>ROWNUM<\/code>.<\/li>\n<li>The materialized view must not contain references to <code>RAW<\/code> or <code>LONG<\/code> <code>RAW<\/code> data types.<\/li>\n<li>It cannot contain a <code>SELECT<\/code> list subquery.<\/li>\n<li>It cannot contain analytic functions (for example, <code>RANK<\/code>) in the <code>SELECT<\/code> clause.<\/li>\n<li>It cannot reference a table on which an <code>XMLIndex<\/code> index is defined. <\/li>\n<li>It cannot contain a <code>MODEL<\/code> clause. <\/li>\n<li>It cannot contain a <code>HAVING<\/code> clause with a subquery. <\/li>\n<li>It cannot contain nested queries that have <code>ANY<\/code>, <code>ALL<\/code>, or <code>NOT<\/code> <code>EXISTS<\/code>.<\/li>\n<li>It cannot contain a <code>[START WITH \u2026] CONNECT BY<\/code> clause.<\/li>\n<li>It cannot contain multiple detail tables at different sites.<\/li>\n<li><code>ON<\/code> <code>COMMIT<\/code> materialized views cannot have remote detail tables.<\/li>\n<li>Nested materialized views must have a join or aggregate.<\/li>\n<li>Materialized join views and materialized aggregate views with a <code>GROUP<\/code> <code>BY<\/code> clause cannot select from an index-organized table.<\/li>\n<\/ul>\n<p><\/p>\n<h5>5.3.8.5 Restrictions on Fast Refresh on Materialized Views with Joins Only<\/h5>\n<p>\n Defining queries for materialized views with joins only and no aggregates have the following restrictions on fast refresh:<\/p>\n<ul>\n<li>All restrictions from &#171;<noindex><a rel=\"nofollow\" href=\"http:\/\/basic-materialized-views.html#GUID-505C24CF-5D56-4820-88AA-2221410950E7\">General Restrictions on Fast Refresh<\/a><\/noindex>&#171;.<\/li>\n<li>They cannot have <code>GROUP<\/code> <code>BY<\/code> clauses or aggregates.<\/li>\n<li>Rowids of all the tables in the <code>FROM<\/code> list must appear in the <code>SELECT<\/code> list of the query.<\/li>\n<li>Materialized view logs must exist with rowids for all the base tables in the <code>FROM<\/code> list of the query.<\/li>\n<li>You cannot create a fast refreshable materialized view from multiple tables with simple joins that include an object type column in the <code>SELECT<\/code> statement.<\/li>\n<\/ul>\n<p>\n Also, the refresh method you choose will not be optimally efficient if:<\/p>\n<ul>\n<li>The defining query uses an outer join that behaves like an inner join. If the defining query contains such a join, consider rewriting the defining query to contain an inner join.<\/li>\n<li>The <code>SELECT<\/code> list of the materialized view contains expressions on columns from multiple tables.<\/li>\n<\/ul>\n<p><\/p>\n<h5>5.3.8.6 Restrictions on Fast Refresh on Materialized Views with Aggregates<\/h5>\n<p>\n Defining queries for materialized views with aggregates or joins have the following restrictions on fast refresh:<\/p>\n<ul>\n<li>All restrictions from &#171;<noindex><a rel=\"nofollow\" href=\"http:\/\/basic-materialized-views.html#GUID-505C24CF-5D56-4820-88AA-2221410950E7\">General Restrictions on Fast Refresh<\/a><\/noindex>&#171;.<\/li>\n<\/ul>\n<p>\n Fast refresh is supported for both <code>ON<\/code> <code>COMMIT<\/code> and <code>ON<\/code> <code>DEMAND<\/code> materialized views, however the following restrictions apply:<\/p>\n<ul>\n<li>All tables in the materialized view must have materialized view logs, and the materialized view logs must:\n<ul>\n<li>Contain all columns from the table referenced in the materialized view. <\/li>\n<li>Specify with <code>ROWID<\/code> and <code>INCLUDING<\/code> <code>NEW<\/code> <code>VALUES<\/code>.<\/li>\n<li>Specify the <code>SEQUENCE<\/code> clause if the table is expected to have a mix of inserts\/direct-loads, deletes, and updates.<\/li>\n<\/ul>\n<p>\n <\/li>\n<li>Only <code>SUM<\/code>, <code>COUNT<\/code>, <code>AVG<\/code>, <code>STDDEV<\/code>, <code>VARIANCE<\/code>, <code>MIN<\/code> and <code>MAX<\/code> are supported for fast refresh.<\/li>\n<li><code>COUNT(*)<\/code> must be specified.<\/li>\n<li>Aggregate functions must occur only as the outermost part of the expression. That is, aggregates such as <code>AVG(AVG(x))<\/code> or <code>AVG(x)<\/code>+ <code>AVG(x)<\/code> are not allowed.<\/li>\n<li>For each aggregate such as <code>AVG(expr)<\/code>, the corresponding <code>COUNT(expr)<\/code> must be present. Oracle recommends that <code>SUM(expr)<\/code> be specified.<\/li>\n<li>If <code>VARIANCE(expr)<\/code> or <code>STDDEV(expr<\/code>) is specified, <code>COUNT(expr)<\/code> and <code>SUM(expr)<\/code> must be specified. Oracle recommends that <code>SUM(expr *expr)<\/code> be specified.<\/li>\n<li>The <code>SELECT<\/code> column in the defining query cannot be a complex expression with columns from multiple base tables. A possible workaround to this is to use a nested materialized view.<\/li>\n<li>The <code>SELECT<\/code> list must contain all <code>GROUP<\/code> <code>BY<\/code> columns.<\/li>\n<li>The materialized view is not based on one or more remote tables.<\/li>\n<li>If you use a <code>CHAR<\/code> data type in the filter columns of a materialized view log, the character sets of the master site and the materialized view must be the same.<\/li>\n<li>If the materialized view has one of the following, then fast refresh is supported only on conventional DML inserts and direct loads.\n<ul>\n<li>Materialized views with <code>MIN<\/code> or <code>MAX<\/code> aggregates<\/li>\n<li>Materialized views which have <code>SUM(expr)<\/code> but no <code>COUNT(expr)<\/code><\/li>\n<li>Materialized views without <code>COUNT(*)<\/code><\/li>\n<\/ul>\n<p>\n Such a materialized view is called an insert-only materialized view.<\/li>\n<li>A materialized view with <code>MAX<\/code> or <code>MIN<\/code> is fast refreshable after delete or mixed DML statements if it does not have a <code>WHERE<\/code> clause.<br \/>\n The max\/min fast refresh after delete or mixed DML does not have the same behavior as the insert-only case. It deletes and recomputes the max\/min values for the affected groups. You need to be aware of its performance impact.<\/li>\n<li>Materialized views with named views or subqueries in the <code>FROM<\/code> clause can be fast refreshed provided the views can be completely merged. For information on which views will merge, see <noindex><a rel=\"nofollow\" href=\"https:\/\/www.oracle.com\/pls\/topic\/lookup?ctx=en\/database\/oracle\/oracle-database\/19\/dwhsg&amp;amp;id=TGSQL591\">Oracle Database SQL Language Reference<\/a><\/noindex>.<\/li>\n<li>If there are no outer joins, you may have arbitrary selections and joins in the <code>WHERE<\/code> clause.<\/li>\n<li>Materialized aggregate views with outer joins are fast refreshable after conventional DML and direct loads, provided only the outer table has been modified. Also, unique constraints must exist on the join columns of the inner join table. If there are outer joins, all the joins must be connected by <code>AND<\/code>s and must use the equality (<code>=<\/code>) operator.<\/li>\n<li>For materialized views with <code>CUBE<\/code>, <code>ROLLUP<\/code>, grouping sets, or concatenation of them, the following restrictions apply:\n<ul>\n<li>The <code>SELECT<\/code> list should contain grouping distinguisher that can either be a <code>GROUPING_ID<\/code> function on all <code>GROUP<\/code> <code>BY<\/code> expressions or <code>GROUPING<\/code> functions one for each <code>GROUP<\/code> <code>BY<\/code> expression. For example, if the <code>GROUP<\/code> <code>BY<\/code> clause of the materialized view is &#171;<code>GROUP<\/code> <code>BY<\/code> <code>CUBE(a, b)<\/code>&#171;, then the <code>SELECT<\/code> list should contain either &#171;<code>GROUPING_ID(a, b)<\/code>&#187; or &#171;<code>GROUPING(a)<\/code> <code>AND<\/code> <code>GROUPING(b)<\/code>&#187; for the materialized view to be fast refreshable.<\/li>\n<li><code>GROUP<\/code> <code>BY<\/code> should not result in any duplicate groupings. For example, &#171;<code>GROUP BY a, ROLLUP(a, b)<\/code>&#187; is not fast refreshable because it results in duplicate groupings &#171;<code>(a), (a, b), AND (a)<\/code>&#171;.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p><\/p>\n<h5>5.3.8.7 Restrictions on Fast Refresh on Materialized Views with UNION ALL<\/h5>\n<p>\n Materialized views with the <code>UNION<\/code> <code>ALL<\/code> set operator support the <code>REFRESH<\/code> <code>FAST<\/code> option if the following conditions are satisfied:<\/p>\n<ul>\n<li>The defining query must have the <code>UNION<\/code> <code>ALL<\/code> operator at the top level.\n<p> The <code>UNION<\/code> <code>ALL<\/code> operator cannot be embedded inside a subquery, with one exception: The <code>UNION<\/code> <code>ALL<\/code> can be in a subquery in the <code>FROM<\/code> clause provided the defining query is of the form <code>SELECT * FROM<\/code> (view or subquery with <code>UNION<\/code> <code>ALL<\/code>) as in the following example:<\/p>\n<pre>CREATE VIEW view_with_unionall AS\n(SELECT c.rowid crid, c.cust_id, 2 umarker\n FROM customers c WHERE c.cust_last_name = 'Smith'\n UNION ALL\n SELECT c.rowid crid, c.cust_id, 3 umarker\n FROM customers c WHERE c.cust_last_name = 'Jones');\n\nCREATE MATERIALIZED VIEW unionall_inside_view_mv\nREFRESH FAST ON DEMAND AS\nSELECT * FROM view_with_unionall;\n<\/pre>\n<p>Note that the view <code>view_with_unionall<\/code> satisfies the requirements for fast refresh.<\/li>\n<li>Each query block in the <code>UNION<\/code> <code>ALL<\/code> query must satisfy the requirements of a fast refreshable materialized view with aggregates or a fast refreshable materialized view with joins.\n<p> The appropriate materialized view logs must be created on the tables as required for the corresponding type of fast refreshable materialized view.<br \/>\n Note that the Oracle Database also allows the special case of a single table materialized view with joins only provided the <code>ROWID<\/code> column has been included in the <code>SELECT<\/code> list and in the materialized view log. This is shown in the defining query of the view <code>view_with_unionall<\/code>.<\/li>\n<li>The <code>SELECT<\/code> list of each query must include a <code>UNION<\/code> <code>ALL<\/code> marker, and the <code>UNION<\/code> <code>ALL<\/code> column must have a distinct constant numeric or string value in each <code>UNION<\/code> <code>ALL<\/code> branch. Further, the marker column must appear in the same ordinal position in the <code>SELECT<\/code> list of each query block. See &#171;<noindex><a rel=\"nofollow\" href=\"http:\/\/advanced-query-rewrite-materialized-views.html#GUID-26E9AF20-AE8E-4D6E-9AF0-E5C9679A09F6\">UNION ALL Marker and Query Rewrite<\/a><\/noindex>&#187; for more information regarding <code>UNION<\/code> <code>ALL<\/code> markers.<\/li>\n<li>Some features such as outer joins, insert-only aggregate materialized view queries and remote tables are not supported for materialized views with <code>UNION<\/code> <code>ALL<\/code>. Note, however, that materialized views used in replication, which do not contain joins or aggregates, can be fast refreshed when <code>UNION<\/code> <code>ALL<\/code> or remote tables are used.<\/li>\n<li>The compatibility initialization parameter must be set to 9.2.0 or higher to create a fast refreshable materialized view with <code>UNION<\/code> <code>ALL<\/code>.<\/li>\n<\/ul>\n<\/blockquote>\n<p>\n\u041d\u0435 \u0445\u043e\u0447\u0443 \u043e\u0431\u0438\u0434\u0435\u0442\u044c \u043f\u043e\u043a\u043b\u043e\u043d\u043d\u0438\u043a\u043e\u0432 Oracle, \u043d\u043e \u0441\u0443\u0434\u044f \u043f\u043e \u0438\u0445 \u0441\u043f\u0438\u0441\u043a\u0443 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u0439, \u0441\u043e\u0437\u0434\u0430\u0435\u0442\u0441\u044f \u0432\u043f\u0435\u0447\u0430\u0442\u043b\u0435\u043d\u0438\u0435, \u0447\u0442\u043e \u044d\u0442\u043e\u0442 \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c \u043f\u0438\u0441\u0430\u043b\u0438 \u043d\u0435 \u0432 \u043e\u0431\u0449\u0435\u043c \u0441\u043b\u0443\u0447\u0430\u0435, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u043a\u0430\u043a\u0443\u044e-\u0442\u043e \u043c\u043e\u0434\u0435\u043b\u044c, \u0430 \u0442\u044b\u0441\u044f\u0447\u0438 \u0438\u043d\u0434\u0443\u0441\u043e\u0432, \u0433\u0434\u0435 \u043a\u0430\u0436\u0434\u043e\u043c\u0443 \u0434\u0430\u043b\u0438 \u043f\u0438\u0441\u0430\u0442\u044c \u0441\u0432\u043e\u044e \u0432\u0435\u0442\u043a\u0443, \u0438 \u043a\u0430\u0436\u0434\u044b\u0439 \u0438\u0437 \u043d\u0438\u0445 \u0447\u0442\u043e \u0441\u043c\u043e\u0433, \u0442\u043e \u0438 \u0441\u0434\u0435\u043b\u0430\u043b. \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u044d\u0442\u043e\u0433\u043e \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c\u0430 \u0434\u043b\u044f \u0440\u0435\u0430\u043b\u044c\u043d\u043e\u0439 \u043b\u043e\u0433\u0438\u043a\u0438 \u2014 \u044d\u0442\u043e \u043a\u0430\u043a \u0445\u043e\u0436\u0434\u0435\u043d\u0438\u0435 \u043f\u043e \u043c\u0438\u043d\u043d\u043e\u043c\u0443 \u043f\u043e\u043b\u044e. \u0412 \u043b\u044e\u0431\u043e\u0439 \u043c\u043e\u043c\u0435\u043d\u0442 \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u043c\u0438\u043d\u0443, \u043f\u043e\u043f\u0430\u0432 \u043d\u0430 \u043e\u0434\u043d\u043e \u0438\u0437 \u043d\u0435 \u043e\u0447\u0435\u0432\u0438\u0434\u043d\u044b\u0445 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u0439. \u041a\u0430\u043a \u044d\u0442\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u2014 \u0442\u043e\u0436\u0435 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0439 \u0432\u043e\u043f\u0440\u043e\u0441, \u043d\u043e \u043e\u043d \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u0432\u043d\u0435 \u0440\u0430\u043c\u043e\u043a \u0434\u0430\u043d\u043d\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0438.<\/p>\n<p><b class=\"spoiler_title\">Microsoft SQL Server<\/b><\/p>\n<blockquote>\n<h3>Additional Requirements<\/h3>\n<p>\nIn addition to the SET options and deterministic function requirements, the following requirements must be met:<\/p>\n<ul>\n<li>The user that executes <code>CREATE INDEX<\/code> must be the owner of the view.<\/li>\n<li>When you create the index, the <code>IGNORE_DUP_KEY<\/code> option must be set to OFF (the default setting).<\/li>\n<li>Tables must be referenced by two-part names, <em>schema<\/em><strong>.<\/strong><em>tablename<\/em> in the view definition.<\/li>\n<li>User-defined functions referenced in the view must be created by using the <code>WITH SCHEMABINDING<\/code> option.<\/li>\n<li>Any user-defined functions referenced in the view must be referenced by two-part names, <em>&lt;schema&gt;<\/em><strong>.<\/strong><em>&lt;function&gt;<\/em>.<\/li>\n<li>The data access property of a user-defined function must be <code>NO SQL<\/code>, and external access property must be <code>NO<\/code>.<\/li>\n<li>Common language runtime (CLR) functions can appear in the select list of the view, but cannot be part of the definition of the clustered index key. CLR functions cannot appear in the WHERE clause of the view or the ON clause of a JOIN operation in the view.<\/li>\n<li>CLR functions and methods of CLR user-defined types used in the view definition must have the properties set as shown in the following table.\n<p>Property<br \/>\nNote<\/p>\n<p>DETERMINISTIC = TRUE<br \/>\nMust be declared explicitly as an attribute of the Microsoft .NET Framework method.<\/p>\n<p>PRECISE = TRUE<br \/>\nMust be declared explicitly as an attribute of the .NET Framework method.<\/p>\n<p>DATA ACCESS = NO SQL<br \/>\nDetermined by setting DataAccess attribute to DataAccessKind.None and SystemDataAccess attribute to SystemDataAccessKind.None.<\/p>\n<p>EXTERNAL ACCESS = NO<br \/>\nThis property defaults to NO for CLR routines.<\/p>\n<\/li>\n<li>The view must be created by using the <code>WITH SCHEMABINDING<\/code> option.<\/li>\n<li>The view must reference only base tables that are in the same database as the view. The view cannot reference other views.<\/li>\n<li>The SELECT statement in the view definition must not contain the following Transact-SQL elements:\n<p><code>COUNT<\/code><br \/>\nROWSET functions (<code>OPENDATASOURCE<\/code>, <code>OPENQUERY<\/code>, <code>OPENROWSET<\/code>, AND <code>OPENXML<\/code>)<br \/>\n<code>OUTER<\/code> joins (<code>LEFT<\/code>, <code>RIGHT<\/code>, or <code>FULL<\/code>)<\/p>\n<p>Derived table (defined by specifying a <code>SELECT<\/code> statement in the <code>FROM<\/code> clause)<br \/>\nSelf-joins<br \/>\nSpecifying columns by using <code>SELECT *<\/code> or <code>SELECT &lt;table_name&gt;.*<\/code><\/p>\n<p><code>DISTINCT<\/code><br \/>\n<code>STDEV<\/code>, <code>STDEVP<\/code>, <code>VAR<\/code>, <code>VARP<\/code>, or <code>AVG<\/code><br \/>\nCommon table expression (CTE)<\/p>\n<p><strong>float<\/strong>1, <strong>text<\/strong>, <strong>ntext<\/strong>, <strong>image<\/strong>, <strong>XML<\/strong>, or <strong>filestream<\/strong> columns<br \/>\nSubquery<br \/>\n<code>OVER<\/code> clause, which includes ranking or aggregate window functions<\/p>\n<p>Full-text predicates (<code>CONTAINS<\/code>, <code>FREETEXT<\/code>)<br \/>\n<code>SUM<\/code> function that references a nullable expression<br \/>\n<code>ORDER BY<\/code><\/p>\n<p>CLR user-defined aggregate function<br \/>\n<code>TOP<\/code><br \/>\n<code>CUBE<\/code>, <code>ROLLUP<\/code>, or <code>GROUPING SETS<\/code> operators<\/p>\n<p><code>MIN<\/code>, <code>MAX<\/code><br \/>\n<code>UNION<\/code>, <code>EXCEPT<\/code>, or <code>INTERSECT<\/code> operators<br \/>\n<code>TABLESAMPLE<\/code><\/p>\n<p>Table variables<br \/>\n<code>OUTER APPLY<\/code> or <code>CROSS APPLY<\/code><br \/>\n<code>PIVOT<\/code>, <code>UNPIVOT<\/code><\/p>\n<p>Sparse column sets<br \/>\nInline (TVF) or multi-statement table-valued functions (MSTVF)<br \/>\n<code>OFFSET<\/code><\/p>\n<p><code>CHECKSUM_AGG<\/code><\/p>\n<p>\n1 The indexed view can contain <strong>float<\/strong> columns; however, such columns cannot be included in the clustered index key.<\/li>\n<li>If <code>GROUP BY<\/code> is present, the VIEW definition must contain <code>COUNT_BIG(*)<\/code> and must not contain <code>HAVING<\/code>. These <code>GROUP BY<\/code> restrictions are applicable only to the indexed view definition. A query can use an indexed view in its execution plan even if it does not satisfy these <code>GROUP BY<\/code> restrictions.<\/li>\n<li>If the view definition contains a <code>GROUP BY<\/code> clause, the key of the unique clustered index can reference only the columns specified in the <code>GROUP BY<\/code> clause.<\/li>\n<\/ul>\n<\/blockquote>\n<p>\n\u0417\u0434\u0435\u0441\u044c \u0432\u0438\u0434\u043d\u043e, \u0447\u0442\u043e \u0438\u043d\u0434\u0443\u0441\u043e\u0432 \u043d\u0435 \u043f\u0440\u0438\u0432\u043b\u0435\u043a\u0430\u043b\u0438, \u0442\u0430\u043a \u043a\u0430\u043a \u043e\u043d\u0438 \u0440\u0435\u0448\u0438\u043b\u0438 \u0434\u0435\u043b\u0430\u0442\u044c \u043f\u043e \u0441\u0445\u0435\u043c\u0435 \u201c\u0441\u0434\u0435\u043b\u0430\u0435\u043c \u043c\u0430\u043b\u043e, \u043d\u043e \u0445\u043e\u0440\u043e\u0448\u043e\u201d. \u0422\u043e \u0435\u0441\u0442\u044c \u0443 \u043d\u0438\u0445 \u043c\u0438\u043d \u043d\u0430 \u043f\u043e\u043b\u0435 \u043f\u043e\u0431\u043e\u043b\u044c\u0448\u0435, \u043d\u043e \u0438\u0445 \u0440\u0430\u0441\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u043f\u0440\u043e\u0437\u0440\u0430\u0447\u043d\u0435\u0435. \u0411\u043e\u043b\u044c\u0448\u0435 \u0432\u0441\u0435\u0433\u043e \u043e\u0433\u043e\u0440\u0447\u0430\u0435\u0442 \u0432\u043e\u0442 \u044d\u0442\u043e \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u0435:<\/p>\n<blockquote><p>The view must reference only base tables that are in the same database as the view. The view cannot reference other views.<\/p><\/blockquote>\n<p>\n\u0412 \u043d\u0430\u0448\u0435\u0439 \u0442\u0435\u0440\u043c\u0438\u043d\u043e\u043b\u043e\u0433\u0438\u0438 \u044d\u0442\u043e \u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442, \u0447\u0442\u043e \u0444\u0443\u043d\u043a\u0446\u0438\u044f \u043d\u0435 \u043c\u043e\u0436\u0435\u0442 \u043e\u0431\u0440\u0430\u0449\u0430\u0442\u044c\u0441\u044f \u043a \u0434\u0440\u0443\u0433\u043e\u0439 \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u043d\u043e\u0439 \u0444\u0443\u043d\u043a\u0446\u0438\u0438. \u042d\u0442\u043e \u0440\u0443\u0431\u0438\u0442 \u0432\u0441\u044e \u0438\u0434\u0435\u043e\u043b\u043e\u0433\u0438\u044e \u043d\u0430 \u043a\u043e\u0440\u043d\u044e.<br \/>\n\u0422\u0430\u043a\u0436\u0435 \u0432\u043e\u0442 \u044d\u0442\u043e \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u0435 (\u0438 \u0434\u0430\u043b\u044c\u0448\u0435 \u043f\u043e \u0442\u0435\u043a\u0441\u0442\u0443) \u043e\u0447\u0435\u043d\u044c \u0441\u0438\u043b\u044c\u043d\u043e \u0443\u043c\u0435\u043d\u044c\u0448\u0430\u0435\u0442 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f:<\/p>\n<blockquote><p>The SELECT statement in the view definition must not contain the following Transact-SQL elements:<\/p>\n<p><code>COUNT<\/code><br \/>\nROWSET functions (<code>OPENDATASOURCE<\/code>, <code>OPENQUERY<\/code>, <code>OPENROWSET<\/code>, AND <code>OPENXML<\/code>)<br \/>\n<code>OUTER<\/code> joins (<code>LEFT<\/code>, <code>RIGHT<\/code>, or <code>FULL<\/code>)<\/p>\n<p>Derived table (defined by specifying a <code>SELECT<\/code> statement in the <code>FROM<\/code> clause)<br \/>\nSelf-joins<br \/>\nSpecifying columns by using <code>SELECT *<\/code> or <code>SELECT &lt;table_name&gt;.*<\/code><\/p>\n<p><code>DISTINCT<\/code><br \/>\n<code>STDEV<\/code>, <code>STDEVP<\/code>, <code>VAR<\/code>, <code>VARP<\/code>, or <code>AVG<\/code><br \/>\nCommon table expression (CTE)<\/p>\n<p><strong>float<\/strong>1, <strong>text<\/strong>, <strong>ntext<\/strong>, <strong>image<\/strong>, <strong>XML<\/strong>, or <strong>filestream<\/strong> columns<br \/>\nSubquery<br \/>\n<code>OVER<\/code> clause, which includes ranking or aggregate window functions<\/p>\n<p>Full-text predicates (<code>CONTAINS<\/code>, <code>FREETEXT<\/code>)<br \/>\n<code>SUM<\/code> function that references a nullable expression<br \/>\n<code>ORDER BY<\/code><\/p>\n<p>CLR user-defined aggregate function<br \/>\n<code>TOP<\/code><br \/>\n<code>CUBE<\/code>, <code>ROLLUP<\/code>, or <code>GROUPING SETS<\/code> operators<\/p>\n<p><code>MIN<\/code>, <code>MAX<\/code><br \/>\n<code>UNION<\/code>, <code>EXCEPT<\/code>, or <code>INTERSECT<\/code> operators<br \/>\n<code>TABLESAMPLE<\/code><\/p>\n<p>Table variables<br \/>\n<code>OUTER APPLY<\/code> or <code>CROSS APPLY<\/code><br \/>\n<code>PIVOT<\/code>, <code>UNPIVOT<\/code><\/p>\n<p>Sparse column sets<br \/>\nInline (TVF) or multi-statement table-valued functions (MSTVF)<br \/>\n<code>OFFSET<\/code><\/p>\n<p><code>CHECKSUM_AGG<\/code><\/p>\n<\/blockquote>\n<p>\n\u0417\u0430\u043f\u0440\u0435\u0449\u0435\u043d\u044b OUTER JOINS, UNION, ORDER BY \u0438 \u043f\u0440\u043e\u0447\u0438\u0435. \u0412\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u043f\u0440\u043e\u0449\u0435 \u0431\u044b\u043b\u043e \u0443\u043a\u0430\u0437\u0430\u0442\u044c, \u0447\u0442\u043e \u043c\u043e\u0436\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c, \u0447\u0435\u043c \u0442\u043e, \u0447\u0442\u043e \u043d\u0435\u043b\u044c\u0437\u044f. \u0421\u043f\u0438\u0441\u043e\u043a \u0432\u0435\u0440\u043e\u044f\u0442\u043d\u043e \u0431\u044b\u043b \u0431\u044b \u0433\u043e\u0440\u0430\u0437\u0434\u043e \u043c\u0435\u043d\u044c\u0448\u0435.<\/p>\n<p>\u041f\u043e\u0434\u0432\u043e\u0434\u044f \u0438\u0442\u043e\u0433: \u043e\u0433\u0440\u043e\u043c\u043d\u044b\u0439 \u043d\u0430\u0431\u043e\u0440 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u0439 \u0432 \u043a\u0430\u0436\u0434\u043e\u0439 (\u0437\u0430\u043c\u0435\u0447\u0443 \u043a\u043e\u043c\u043c\u0435\u0440\u0447\u0435\u0441\u043a\u043e\u0439) \u0421\u0423\u0411\u0414 vs \u043d\u0438\u043a\u0430\u043a\u0438\u0445 (\u0437\u0430 \u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435\u043c \u043e\u0434\u043d\u043e\u0433\u043e \u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e, \u0430 \u043d\u0435 \u0442\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e) \u0432 LGPL \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u0438. \u041e\u0434\u043d\u0430\u043a\u043e \u0441\u043b\u0435\u0434\u0443\u0435\u0442 \u043e\u0442\u043c\u0435\u0442\u0438\u0442\u044c, \u0447\u0442\u043e \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u044d\u0442\u043e\u0442 \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c \u0432 \u0440\u0435\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u043e\u0439 \u043b\u043e\u0433\u0438\u043a\u0435 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0441\u043b\u043e\u0436\u043d\u0435\u0435, \u0447\u0435\u043c \u0432 \u043e\u043f\u0438\u0441\u0430\u043d\u043d\u043e\u0439 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e\u0439.<\/p>\n<h3>\u0420\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f<\/h3>\n<p>\n\u041a\u0430\u043a \u044d\u0442\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442? \u0412 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u00ab\u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u043e\u0439 \u043c\u0430\u0448\u0438\u043d\u044b\u00bb \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f PostgreSQL. \u0412\u043d\u0443\u0442\u0440\u0438 \u0435\u0441\u0442\u044c \u0441\u043b\u043e\u0436\u043d\u044b\u0439 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0437\u0430\u043d\u0438\u043c\u0430\u0435\u0442\u0441\u044f \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u0435\u043c \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432. \u0412\u043e\u0442 <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/lsfusion\/platform\">\u0438\u0441\u0445\u043e\u0434\u043d\u044b\u0439 \u043a\u043e\u0434<\/a><\/noindex>. \u0418 \u0442\u0430\u043c \u043d\u0435 \u043f\u0440\u043e\u0441\u0442\u043e \u0431\u043e\u043b\u044c\u0448\u043e\u0439 \u043d\u0430\u0431\u043e\u0440 \u044d\u0432\u0440\u0438\u0441\u0442\u0438\u043a \u0441 \u043a\u0443\u0447\u0435\u0439 if\u2019\u043e\u0432. \u0422\u0430\u043a \u0447\u0442\u043e, \u0435\u0441\u043b\u0438 \u0435\u0441\u0442\u044c \u043f\u0430\u0440\u0443 \u043c\u0435\u0441\u044f\u0446\u0435\u0432 \u043d\u0430 \u0438\u0437\u0443\u0447\u0435\u043d\u0438\u0435, \u0442\u043e \u043c\u043e\u0436\u0435\u0442\u0435 \u043f\u043e\u043f\u0440\u043e\u0431\u043e\u0432\u0430\u0442\u044c \u0440\u0430\u0437\u043e\u0431\u0440\u0430\u0442\u044c\u0441\u044f \u0432 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0435. <\/p>\n<p>\u0420\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u043b\u0438 \u044d\u0442\u043e \u044d\u0444\u0444\u0435\u043a\u0442\u0438\u0432\u043d\u043e? \u0414\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u044d\u0444\u0444\u0435\u043a\u0442\u0438\u0432\u043d\u043e. \u041a \u0441\u043e\u0436\u0430\u043b\u0435\u043d\u0438\u044e, \u0434\u043e\u043a\u0430\u0437\u0430\u0442\u044c \u044d\u0442\u043e \u0442\u044f\u0436\u0435\u043b\u043e. \u041c\u043e\u0433\u0443 \u043b\u0438\u0448\u044c \u0441\u043a\u0430\u0437\u0430\u0442\u044c, \u0447\u0442\u043e \u0435\u0441\u043b\u0438 \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u0442\u044b\u0441\u044f\u0447\u0438 \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0435\u0441\u0442\u044c \u0432 \u0431\u043e\u043b\u044c\u0448\u0438\u0445 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f\u0445, \u0442\u043e \u0432 \u0441\u0440\u0435\u0434\u043d\u0435\u043c \u043e\u043d\u0438 \u044d\u0444\u0444\u0435\u043a\u0442\u0438\u0432\u043d\u0435\u0435, \u0447\u0435\u043c \u0443 \u0445\u043e\u0440\u043e\u0448\u0435\u0433\u043e \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430. \u041e\u0442\u043b\u0438\u0447\u043d\u044b\u0439 SQL-\u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0441\u0442 \u043c\u043e\u0436\u0435\u0442 \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u043b\u044e\u0431\u043e\u0439 \u0437\u0430\u043f\u0440\u043e\u0441 \u044d\u0444\u0444\u0435\u043a\u0442\u0438\u0432\u043d\u0435\u0435, \u043d\u043e \u043d\u0430 \u0442\u044b\u0441\u044f\u0447\u0435 \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432 \u0443 \u043d\u0435\u0433\u043e \u043f\u0440\u043e\u0441\u0442\u043e \u043d\u0435 \u0431\u0443\u0434\u0435\u0442 \u043d\u0438 \u043c\u043e\u0442\u0438\u0432\u0430\u0446\u0438\u0438, \u043d\u0438 \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u044d\u0442\u043e \u0434\u0435\u043b\u0430\u0442\u044c. \u0415\u0434\u0438\u043d\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0435, \u0447\u0442\u043e \u044f \u043c\u043e\u0433\u0443 \u0441\u0435\u0439\u0447\u0430\u0441 \u043f\u0440\u0438\u0432\u0435\u0441\u0442\u0438 \u043a\u0430\u043a \u0434\u043e\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044c\u0441\u0442\u0432\u043e \u044d\u0444\u0444\u0435\u043a\u0442\u0438\u0432\u043d\u043e\u0441\u0442\u0438 \u2014 \u044d\u0442\u043e \u0442\u043e, \u0447\u0442\u043e \u043d\u0430 \u0431\u0430\u0437\u0435 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u044b, \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u043e\u0439 \u043d\u0430 \u044d\u0442\u043e\u0439 \u0421\u0423\u0411\u0414 \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0442 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043f\u0440\u043e\u0435\u043a\u0442\u043e\u0432 <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/lsfusion-solutions\/erp\">ERP-\u0441\u0438\u0441\u0442\u0435\u043c\u044b<\/a><\/noindex>, \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0435\u0441\u0442\u044c \u0442\u044b\u0441\u044f\u0447\u0438 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0445 MATERIALIZED \u0444\u0443\u043d\u043a\u0446\u0438\u0439, \u0441 \u0442\u044b\u0441\u044f\u0447\u0435\u0439 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439 \u0438 \u0442\u0435\u0440\u0440\u0430\u0431\u0430\u0439\u0442\u043d\u044b\u043c\u0438 \u0431\u0430\u0437\u0430\u043c\u0438 \u0441 \u0441\u043e\u0442\u043d\u044f\u043c\u0438 \u043c\u0438\u043b\u043b\u0438\u043e\u043d\u043e\u0432 \u0437\u0430\u043f\u0438\u0441\u0435\u0439, \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0449\u0438\u0445 \u043d\u0430 \u043e\u0431\u044b\u0447\u043d\u043e\u043c \u0434\u0432\u0443\u0445-\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u043d\u043e\u043c \u0441\u0435\u0440\u0432\u0435\u0440\u0435. \u0412\u043f\u0440\u043e\u0447\u0435\u043c, \u043b\u044e\u0431\u043e\u0439 \u0436\u0435\u043b\u0430\u044e\u0449\u0438\u0439 \u043c\u043e\u0436\u0435\u0442 \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c\/\u043e\u043f\u0440\u043e\u0432\u0435\u0440\u0433\u043d\u0443\u0442\u044c \u044d\u0444\u0444\u0435\u043a\u0442\u0438\u0432\u043d\u043e\u0441\u0442\u044c, \u0441\u043a\u0430\u0447\u0430\u0432 <noindex><a rel=\"nofollow\" href=\"https:\/\/lsfusion.org\/\">\u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0443<\/a><\/noindex> \u0438 PostgreSQL, <noindex><a rel=\"nofollow\" href=\"https:\/\/tableplus.io\/blog\/2018\/10\/how-to-show-queries-log-in-postgresql.html\">\u0432\u043a\u043b\u044e\u0447\u0438\u0432<\/a><\/noindex> \u043b\u043e\u0433\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 SQL-\u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432 \u0438 \u043f\u043e\u043f\u0440\u043e\u0431\u043e\u0432\u0430\u0432 \u0438\u0437\u043c\u0435\u043d\u044f\u0442\u044c \u0442\u0430\u043c \u043b\u043e\u0433\u0438\u043a\u0443 \u0438 \u0434\u0430\u043d\u043d\u044b\u0435.<\/p>\n<p>\u0412 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0445 \u0441\u0442\u0430\u0442\u044c\u044f\u0445, \u044f \u0442\u0430\u043a\u0436\u0435 \u0440\u0430\u0441\u0441\u043a\u0430\u0436\u0443 \u043f\u0440\u043e \u0442\u043e, \u043a\u0430\u043a \u043c\u043e\u0436\u043d\u043e \u0432\u0435\u0448\u0430\u0442\u044c \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u044f \u043d\u0430 \u0444\u0443\u043d\u043a\u0446\u0438\u0438, \u0440\u0430\u0431\u043e\u0442\u0443 \u0441 \u0441\u0435\u0441\u0441\u0438\u044f\u043c\u0438 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0439 \u0438 \u043c\u043d\u043e\u0433\u043e\u0435 \u0434\u0440\u0443\u0433\u043e\u0435.<br \/>\n<br \/>\u0418\u0441\u0442\u043e\u0447\u043d\u0438\u043a: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/lsfusion\/blog\/459066\/\">habr.com<\/a><\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0412 \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0435\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u044f \u043e\u043f\u0438\u0441\u0430\u043b \u043a\u043e\u043d\u0446\u0435\u043f\u0446\u0438\u044e \u0438 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044e \u0431\u0430\u0437\u044b \u0434\u0430\u043d\u043d\u044b\u0445, \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u043e\u0435 \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0439, \u0430 \u043d\u0435 \u0442\u0430\u0431\u043b\u0438\u0446 \u0438 \u043f\u043e\u043b\u0435\u0439 \u043a\u0430\u043a \u0432 \u0440\u0435\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u044b\u0445 \u0431\u0430\u0437\u0430\u0445 \u0434\u0430\u043d\u043d\u044b\u0445. \u0412 \u043d\u0435\u0439 \u0431\u044b\u043b\u043e \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u043d\u043e \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e \u043f\u0440\u0438\u043c\u0435\u0440\u043e\u0432, \u043f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u044e\u0449\u0438\u0445 \u043f\u0440\u0435\u0438\u043c\u0443\u0449\u0435\u0441\u0442\u0432\u0430 \u0442\u0430\u043a\u043e\u0433\u043e \u043f\u043e\u0434\u0445\u043e\u0434\u0430 \u043f\u0435\u0440\u0435\u0434 \u043a\u043b\u0430\u0441\u0441\u0438\u0447\u0435\u0441\u043a\u0438\u043c. \u041c\u043d\u043e\u0433\u0438\u0435 \u0441\u043e\u0447\u043b\u0438 \u0438\u0445 \u043d\u0435\u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0443\u0431\u0435\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u043c\u0438. \u0412 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u044f \u043f\u043e\u043a\u0430\u0436\u0443, \u043a\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c \u0442\u0430\u043a\u0430\u044f \u043a\u043e\u043d\u0446\u0435\u043f\u0446\u0438\u044f \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0431\u044b\u0441\u0442\u0440\u043e \u0438 \u0443\u0434\u043e\u0431\u043d\u043e \u0431\u0430\u043b\u0430\u043d\u0441\u0438\u0440\u043e\u0432\u0430\u0442\u044c [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":27168,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-36317","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 4.9.10 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0412 \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0435\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u044f \u043e\u043f\u0438\u0441\u0430\u043b \u043a\u043e\u043d\u0446\u0435\u043f\u0446\u0438\u044e \u0438 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044e \u0431\u0430\u0437\u044b \u0434\u0430\u043d\u043d\u044b\u0445, \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u043e\u0435 \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0439, \u0430 \u043d\u0435 \u0442\u0430\u0431\u043b\u0438\u0446 \u0438 \u043f\u043e\u043b\u0435\u0439 \u043a\u0430\u043a \u0432 \u0440\u0435\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u044b\u0445 \u0431\u0430\u0437\u0430\u0445 \u0434\u0430\u043d\u043d\u044b\u0445. \u0412 \u043d\u0435\u0439 \u0431\u044b\u043b\u043e \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u043d\u043e \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e \u043f\u0440\u0438\u043c\u0435\u0440\u043e\u0432, \u043f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u044e\u0449\u0438\u0445 \u043f\u0440\u0435\u0438\u043c\u0443\u0449\u0435\u0441\u0442\u0432\u0430 \u0442\u0430\u043a\u043e\u0433\u043e \u043f\u043e\u0434\u0445\u043e\u0434\u0430 \u043f\u0435\u0440\u0435\u0434 \u043a\u043b\u0430\u0441\u0441\u0438\u0447\u0435\u0441\u043a\u0438\u043c. \u041c\u043d\u043e\u0433\u0438\u0435 \u0441\u043e\u0447\u043b\u0438 \u0438\u0445 \u043d\u0435\u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0443\u0431\u0435\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u043c\u0438. \u0412 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u044f \u043f\u043e\u043a\u0430\u0436\u0443, \u043a\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c \u0442\u0430\u043a\u0430\u044f \u043a\u043e\u043d\u0446\u0435\u043f\u0446\u0438\u044f \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0431\u044b\u0441\u0442\u0440\u043e \u0438 \u0443\u0434\u043e\u0431\u043d\u043e \u0431\u0430\u043b\u0430\u043d\u0441\u0438\u0440\u043e\u0432\u0430\u0442\u044c\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/de\/blog\/administrirovanie\/balansirovka-zapisi-i-chteniya-v-baze-dannyh\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 4.9.10\" \/>\n\t\t<meta property=\"og:locale\" content=\"de_DE\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0411\u0430\u043b\u0430\u043d\u0441\u0438\u0440\u043e\u0432\u043a\u0430 \u0437\u0430\u043f\u0438\u0441\u0438 \u0438 \u0447\u0442\u0435\u043d\u0438\u044f \u0432 \u0431\u0430\u0437\u0435 \u0434\u0430\u043d\u043d\u044b\u0445 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0412 \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0435\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u044f \u043e\u043f\u0438\u0441\u0430\u043b \u043a\u043e\u043d\u0446\u0435\u043f\u0446\u0438\u044e \u0438 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044e \u0431\u0430\u0437\u044b \u0434\u0430\u043d\u043d\u044b\u0445, \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u043e\u0435 \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0439, \u0430 \u043d\u0435 \u0442\u0430\u0431\u043b\u0438\u0446 \u0438 \u043f\u043e\u043b\u0435\u0439 \u043a\u0430\u043a \u0432 \u0440\u0435\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u044b\u0445 \u0431\u0430\u0437\u0430\u0445 \u0434\u0430\u043d\u043d\u044b\u0445. \u0412 \u043d\u0435\u0439 \u0431\u044b\u043b\u043e \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u043d\u043e \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e \u043f\u0440\u0438\u043c\u0435\u0440\u043e\u0432, \u043f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u044e\u0449\u0438\u0445 \u043f\u0440\u0435\u0438\u043c\u0443\u0449\u0435\u0441\u0442\u0432\u0430 \u0442\u0430\u043a\u043e\u0433\u043e \u043f\u043e\u0434\u0445\u043e\u0434\u0430 \u043f\u0435\u0440\u0435\u0434 \u043a\u043b\u0430\u0441\u0441\u0438\u0447\u0435\u0441\u043a\u0438\u043c. \u041c\u043d\u043e\u0433\u0438\u0435 \u0441\u043e\u0447\u043b\u0438 \u0438\u0445 \u043d\u0435\u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0443\u0431\u0435\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u043c\u0438. \u0412 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u044f \u043f\u043e\u043a\u0430\u0436\u0443, \u043a\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c \u0442\u0430\u043a\u0430\u044f \u043a\u043e\u043d\u0446\u0435\u043f\u0446\u0438\u044f \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0431\u044b\u0441\u0442\u0440\u043e \u0438 \u0443\u0434\u043e\u0431\u043d\u043e \u0431\u0430\u043b\u0430\u043d\u0441\u0438\u0440\u043e\u0432\u0430\u0442\u044c\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/de\/blog\/administrirovanie\/balansirovka-zapisi-i-chteniya-v-baze-dannyh\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-10-31T19:10:55+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T19:10:55+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47 Lastenausgleich von Lese- und Schreiboperationen in Datenbanken | ProHoster","description":"Im vorherigen Artikel habe ich das Konzept und die Implementierung einer Datenbank beschrieben, die auf Funktionen basiert, statt wie in relationalen Datenbanken auf Tabellen und Feldern. Es wurden zahlreiche Beispiele angef\u00fchrt, die die Vorteile eines solchen Ansatzes im Vergleich zur klassischen Methodik zeigen. Viele hielten diese Beispiele f\u00fcr nicht \u00fcberzeugend genug. In diesem Artikel zeige ich, wie dieses Konzept eine schnelle und bequeme Balance erm\u00f6glicht.","canonical_url":"https:\/\/prohoster.info\/de\/blog\/administrirovanie\/balansirovka-zapisi-i-chteniya-v-baze-dannyh","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"de_DE","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0411\u0430\u043b\u0430\u043d\u0441\u0438\u0440\u043e\u0432\u043a\u0430 \u0437\u0430\u043f\u0438\u0441\u0438 \u0438 \u0447\u0442\u0435\u043d\u0438\u044f \u0432 \u0431\u0430\u0437\u0435 \u0434\u0430\u043d\u043d\u044b\u0445 | ProHoster","og:description":"\u0412 \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0435\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u044f \u043e\u043f\u0438\u0441\u0430\u043b \u043a\u043e\u043d\u0446\u0435\u043f\u0446\u0438\u044e \u0438 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044e \u0431\u0430\u0437\u044b \u0434\u0430\u043d\u043d\u044b\u0445, \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u043e\u0435 \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0439, \u0430 \u043d\u0435 \u0442\u0430\u0431\u043b\u0438\u0446 \u0438 \u043f\u043e\u043b\u0435\u0439 \u043a\u0430\u043a \u0432 \u0440\u0435\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u044b\u0445 \u0431\u0430\u0437\u0430\u0445 \u0434\u0430\u043d\u043d\u044b\u0445. \u0412 \u043d\u0435\u0439 \u0431\u044b\u043b\u043e \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u043d\u043e \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e \u043f\u0440\u0438\u043c\u0435\u0440\u043e\u0432, \u043f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u044e\u0449\u0438\u0445 \u043f\u0440\u0435\u0438\u043c\u0443\u0449\u0435\u0441\u0442\u0432\u0430 \u0442\u0430\u043a\u043e\u0433\u043e \u043f\u043e\u0434\u0445\u043e\u0434\u0430 \u043f\u0435\u0440\u0435\u0434 \u043a\u043b\u0430\u0441\u0441\u0438\u0447\u0435\u0441\u043a\u0438\u043c. \u041c\u043d\u043e\u0433\u0438\u0435 \u0441\u043e\u0447\u043b\u0438 \u0438\u0445 \u043d\u0435\u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0443\u0431\u0435\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u043c\u0438. \u0412 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u044f \u043f\u043e\u043a\u0430\u0436\u0443, \u043a\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c \u0442\u0430\u043a\u0430\u044f \u043a\u043e\u043d\u0446\u0435\u043f\u0446\u0438\u044f \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0431\u044b\u0441\u0442\u0440\u043e \u0438 \u0443\u0434\u043e\u0431\u043d\u043e \u0431\u0430\u043b\u0430\u043d\u0441\u0438\u0440\u043e\u0432\u0430\u0442\u044c","og:url":"https:\/\/prohoster.info\/de\/blog\/administrirovanie\/balansirovka-zapisi-i-chteniya-v-baze-dannyh","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-10-31T19:10:55+00:00","article:modified_time":"2019-10-31T19:10:55+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"36317","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-22 02:51:19","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 01:47:34","updated":"2026-01-22 02:51:19"},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/posts\/36317","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/comments?post=36317"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/posts\/36317\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/media\/27168"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/media?parent=36317"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/categories?post=36317"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/tags?post=36317"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}