рдЕрд▓реНрдЫреАрдХрд╛ рд▓рд╛рдЧрд┐ рдЕрдкрдЧреНрд░реЗрдб рдЧрд░реНрдиреБрд╣реЛрд╕реН: рдХрд╕рд░реА PostgreSQL 12 рд▓реЗ рдкреНрд░рджрд░реНрд╢рди рд╕реБрдзрд╛рд░ рдЧрд░реНрджрдЫ

рдЕрд▓реНрдЫреАрдХрд╛ рд▓рд╛рдЧрд┐ рдЕрдкрдЧреНрд░реЗрдб рдЧрд░реНрдиреБрд╣реЛрд╕реН: рдХрд╕рд░реА PostgreSQL 12 рд▓реЗ рдкреНрд░рджрд░реНрд╢рди рд╕реБрдзрд╛рд░ рдЧрд░реНрджрдЫ

PostgreSQL .12 .рез, "рд╡рд┐рд╢реНрд╡рдХреЛ рд╕рдмреИрднрдиреНрджрд╛ рд░рд╛рдореНрд░реЛ рдЦреБрд▓рд╛ рд╕реНрд░реЛрдд рд░рд┐рд▓реЗрд╢рдирд▓ рдбрд╛рдЯрд╛рдмреЗрд╕" рдХреЛ рдирд╡реАрдирддрдо рд╕рдВрд╕реНрдХрд░рдг рдХреЗрд╣реА рд╣рдкреНрддрд╛рдорд╛ рдмрд╛рд╣рд┐рд░ рдЖрдЙрдБрджреИрдЫ (рдпрджрд┐ рд╕рдмреИ рдпреЛрдЬрдирд╛ рдЕрдиреБрд╕рд╛рд░ рдЬрд╛рдиреНрдЫ)ред рдпрд╕рд▓реЗ рд╡рд░реНрд╖рдорд╛ рдПрдХ рдкрдЯрдХ рдирдпрд╛рдБ рд╕реБрд╡рд┐рдзрд╛рд╣рд░реВрдХреЛ рдПрдХ рдЯрдирдХреЛ рд╕рд╛рде рдирдпрд╛рдБ рд╕рдВрд╕реНрдХрд░рдг рдЬрд╛рд░реА рдЧрд░реНрдиреЗ рд╕рд╛рдорд╛рдиреНрдп рддрд╛рд▓рд┐рдХрд╛рд▓рд╛рдИ рдкрдЫреНрдпрд╛рдЙрдБрдЫ, рд░ рд╕реНрдкрд╖реНрдЯ рд░реВрдкрдорд╛, рддреНрдпреЛ рдкреНрд░рднрд╛рд╡рд╢рд╛рд▓реА рдЫред рддреНрдпрд╕реИрд▓реЗ рдо PostgreSQL рд╕рдореБрджрд╛рдпрдХреЛ рд╕рдХреНрд░рд┐рдп рд╕рджрд╕реНрдп рдмрдиреЗрдХреЛ рдЫреБред

рдореЗрд░реЛ рд╡рд┐рдЪрд╛рд░рдорд╛, рдЕрдШрд┐рд▓реНрд▓реЛ рд╡рд┐рдореЛрдЪрдирд╣рд░реВрдХреЛ рд╡рд┐рдкрд░реАрдд, PostgreSQL 12 рд▓реЗ рдПрдХ рд╡рд╛ рджреБрдИрд╡рдЯрд╛ рдХреНрд░рд╛рдиреНрддрд┐рдХрд╛рд░реА рд╕реБрд╡рд┐рдзрд╛рд╣рд░реВ рд╕рдорд╛рд╡реЗрд╢ рдЧрд░реНрджреИрди (рдЬрд╕реНрддреИ рд╡рд┐рднрд╛рдЬрди рд╡рд╛ рдХреНрд╡реЗрд░реА рд╕рдорд╛рдирд╛рдиреНрддрд░)ред рдореИрд▓реЗ рдПрдХ рдкрдЯрдХ рдардЯреНрдЯрд╛ рдЧрд░реЗрдВ рдХрд┐ PostgreSQL 12 рдХреЛ рдореБрдЦреНрдп рд╡рд┐рд╢реЗрд╖рддрд╛ рдареВрд▓реЛ рд╕реНрдерд┐рд░рддрд╛ рд╣реЛред рддрдкрд╛рдИрд▓реЗ рдЖрдлреНрдиреЛ рд╡реНрдпрд╡рд╕рд╛рдпрдХреЛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдбреЗрдЯрд╛ рдкреНрд░рдмрдиреНрдз рдЧрд░реНрджрд╛ рддрдкрд╛рдИрд▓рд╛рдИ рдпреЛ рдЖрд╡рд╢реНрдпрдХ рдкрд░реНрджреИрди?

рддрд░ PostgreSQL 12 рддреНрдпрд╣рд╛рдБ рд░реЛрдХрд┐рджреИрди: рдирдпрд╛рдБ рд╕реБрд╡рд┐рдзрд╛рд╣рд░реВ рд░ рд╕реБрдзрд╛рд░рд╣рд░реВрдХреЛ рд╕рд╛рде, рдЕрдиреБрдкреНрд░рдпреЛрдЧрд╣рд░реВрд▓реЗ рд░рд╛рдореНрд░реЛ рдкреНрд░рджрд░реНрд╢рди рдЧрд░реНрдиреЗрдЫ, рд░ рддрдкрд╛рдИрд▓реЗ рдЧрд░реНрдиреБ рдкрд░реНрдиреЗ рднрдиреЗрдХреЛ рдЕрдкрдЧреНрд░реЗрдб рд╣реЛ!

(рдареАрдХ рдЫ, рд╣реБрдирд╕рдХреНрдЫ рдЕрдиреБрдХреНрд░рдордгрд┐рдХрд╛рд╣рд░реВ рдкреБрди: рдирд┐рд░реНрдорд╛рдг рдЧрд░реНрдиреБрд╣реЛрд╕реН, рддрд░ рдпрд╕ рд╡рд┐рдореЛрдЪрдирдорд╛ рдпреЛ рдбрд░рд▓рд╛рдЧреНрджреЛ рдЫреИрди рдЬрд╕реНрддреЛ рдХрд┐ рд╣рд╛рдореАрд▓реЗ рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрдХрд╛ рдЫреМрдВред)

PostgreSQL рдЕрдкрдЧреНрд░реЗрдб рдЧрд░реНрди рд░ рддреБрд░реБрдиреНрддреИ рдЕрдирд╛рд╡рд╢реНрдпрдХ рдЧрдбрдмрдб рдмрд┐рдирд╛ рдорд╣рддреНрддреНрд╡рдкреВрд░реНрдг рд╕реБрдзрд╛рд░рд╣рд░реВрдХреЛ рдЖрдирдиреНрдж рд▓рд┐рди рдпреЛ рдЙрддреНрдХреГрд╖реНрдЯ рд╣реБрдиреЗрдЫред рдХреЗрд╣рд┐ рд╡рд░реНрд╖ рдкрд╣рд┐рд▓реЗ, рдореИрд▓реЗ PostgreSQL 9.4 рдмрд╛рдЯ PostgreSQL 10 рдорд╛ рдЕрдкрдЧреНрд░реЗрдбрдХреЛ рд╕рдореАрдХреНрд╖рд╛ рдЧрд░реЗрдВ рд░ рдкреЛрд╕реНрдЯрдЧреНрд░реЗрдПрд╕рдХреНрдпреВрдПрд▓ 10 рдорд╛ рд╕реБрдзрд╛рд░рд┐рдПрдХреЛ рдХреНрд╡реЗрд░реА рд╕рдорд╛рдирд╛рдиреНрддрд░рдХреЛ рд▓рд╛рдЧрд┐ рдЕрдиреБрдкреНрд░рдпреЛрдЧрд▓реЗ рдХрд╕рд░реА рдЧрддрд┐ рд▓рд┐рдпреЛ рднрдиреЗрд░ рджреЗрдЦреЗред рд░, рд╕рдмреИрднрдиреНрджрд╛ рдорд╣рддреНрддреНрд╡рдкреВрд░реНрдг рдХреБрд░рд╛, рдордмрд╛рдЯ рд▓рдЧрднрдЧ рдХреЗрд╣рд┐ рдЖрд╡рд╢реНрдпрдХ рдерд┐рдПрди (рдХреЗрд╡рд▓ рдХрдиреНрдлрд┐рдЧрд░реЗрд╕рди рдкреНрдпрд╛рд░рд╛рдорд┐рдЯрд░ рд╕реЗрдЯ рдЧрд░реНрдиреБрд╣реЛрд╕реНред max_parallel_workers).

рд╕рд╣рдордд рд╣реБрдиреБрд╣реЛрд╕реН, рдЕрдкрдЧреНрд░реЗрдб рдкрдЫрд┐ рддреБрд░реБрдиреНрддреИ рдЕрдиреБрдкреНрд░рдпреЛрдЧрд╣рд░реВрд▓реЗ рд░рд╛рдореНрд░реЛрд╕рдБрдЧ рдХрд╛рдо рдЧрд░реНрджрд╛ рдпреЛ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реБрдиреНрдЫред рд░ рд╣рд╛рдореА рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛рд╣рд░реВрд▓рд╛рдИ рдЦреБрд╕реА рдкрд╛рд░реНрди рдзреЗрд░реИ рдкреНрд░рдпрд╛рд╕ рдЧрд░реНрдЫреМрдВ, рдХрд┐рдирдХрд┐ PostgreSQL рд╕рдБрдЧ рддрд┐рдиреАрд╣рд░реВрдордзреНрдпреЗ рдзреЗрд░реИ рдЫрдиреНред

рддреНрдпрд╕реЛрднрдП рдХрд╕рд░реА PostgreSQL 12 рдорд╛ рдПрдХ рд╕рд╛рдзрд╛рд░рдг рд╕реНрддрд░рд╡реГрджреНрдзрд┐рд▓реЗ рддрдкрд╛рдИрдВрд▓рд╛рдИ рдЦреБрд╢реА рдмрдирд╛рдЙрди рд╕рдХреНрдЫ? рдЕрдм рдо рднрдиреНрдЫреБред

рдкреНрд░рдореБрдЦ рдЕрдиреБрдХреНрд░рдордгрд┐рдХрд╛ рд╕реБрдзрд╛рд░рд╣рд░реВ

рдЕрдиреБрдХреНрд░рдордгрд┐рдХрд╛ рдмрд┐рдирд╛, рдбрд╛рдЯрд╛рдмреЗрд╕ рдЯрд╛рдврд╛ рдЬрд╛рди рд╕рдХреНрджреИрдиред рддрдкрд╛рдИрдВ рдХрд╕рд░реА рдЫрд┐рдЯреЛ рдЬрд╛рдирдХрд╛рд░реА рдкрд╛рдЙрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ? PostgreSQL рдХреЛ рдЖрдзрд╛рд░рднреВрдд рдЕрдиреБрдХреНрд░рдордгрд┐рдХрд╛ рдкреНрд░рдгрд╛рд▓реА рднрдирд┐рдиреНрдЫ B- рд░реБрдЦред рдпрд╕ рдкреНрд░рдХрд╛рд░рдХреЛ рд╕реВрдЪрдХрд╛рдВрдХ рднрдгреНрдбрд╛рд░рдг рдкреНрд░рдгрд╛рд▓реАрд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рдЕрдиреБрдХреВрд▓рд┐рдд рдЫред

рд╣рд╛рдореА рдХреЗрд╡рд▓ рдЕрдкрд░реЗрдЯрд░ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрджрдЫреМрдВ CREATE INDEX ON some_table (some_column), рд░ PostgreSQL рд▓реЗ рдЕрдиреБрдХреНрд░рдордгрд┐рдХрд╛рд▓рд╛рдИ рдЕрджреНрдпрд╛рд╡рдзрд┐рдХ рд░рд╛рдЦреНрдирдХреЛ рд▓рд╛рдЧрд┐ рдзреЗрд░реИ рдХрд╛рдо рдЧрд░реНрджрдЫ рдЬрдмрд╕рдореНрдо рд╣рд╛рдореА рдирд┐рд░рдиреНрддрд░ рдорд╛рдирд╣рд░реВ рд╕рдореНрдорд┐рд▓рд┐рдд, рдЕрджреНрдпрд╛рд╡рдзрд┐рдХ, рд░ рдореЗрдЯрд╛рдЙрдБрдЫреМрдВред рд╕рдмреИ рдХреБрд░рд╛ рдЖрдлреНрдиреИ рдорд╛ рдХрд╛рдо рдЧрд░реНрджрдЫ, рдЬрд╕реНрддреИ рдЬрд╛рджреВ рджреНрд╡рд╛рд░рд╛ред

рддрд░ PostgreSQL рдЕрдиреБрдХреНрд░рдордгрд┐рдХрд╛рд╣рд░реВрдорд╛ рдПрдЙрдЯрд╛ рд╕рдорд╕реНрдпрд╛ рдЫ - рддрд┐рдиреАрд╣рд░реВ рдлреБрд▓рд╛рдЗрдПрдХрд╛ рдЫрдиреН рд░ рдЕрддрд┐рд░рд┐рдХреНрдд рдбрд┐рд╕реНрдХ рд╕реНрдкреЗрд╕ рд▓рд┐рдиреБрд╣реЛрд╕реН рд░ рдбрд╛рдЯрд╛ рдкреБрди: рдкреНрд░рд╛рдкреНрддрд┐ рд░ рдЕрджреНрдпрд╛рд╡рдзрд┐рдХрдХреЛ рдХрд╛рд░реНрдпрд╕рдореНрдкрд╛рджрди рдШрдЯрд╛рдЙрдиреБрд╣реЛрд╕реНред "рдмреНрд▓реЛрдЯ" рджреНрд╡рд╛рд░рд╛ рдореЗрд░реЛ рдорддрд▓рдм рдкреНрд░рднрд╛рд╡рдХрд╛рд░реА рд░реВрдкрдорд╛ рд╕реВрдЪрдХрд╛рдВрдХ рд╕рдВрд░рдЪрдирд╛ рдХрд╛рдпрдо рд░рд╛рдЦреНрдиреБ рд╣реЛред рдпреЛ рд╣реБрди рд╕рдХреНрдЫ - рд╡рд╛ рдирд╣реБрди рд╕рдХреНрдЫ - рдпрд╕рд▓реЗ рд╣рдЯрд╛рдЙрдиреЗ рдлреЛрд╣реЛрд░ рдЯреБрдкрд▓рд╣рд░реВрд╕рдБрдЧ рд╕рдореНрдмрдиреНрдзрд┐рдд рд╣реБрди рд╕рдХреНрдЫ рднреНрдпрд╛рдХреНрдпреВрдо (рдЬрд╛рдирдХрд╛рд░реАрдХреЛ рд▓рд╛рдЧрд┐ рдкрд┐рдЯрд░ рдЧрдЧрдирд▓рд╛рдИ рдзрдиреНрдпрд╡рд╛рдж)рдкрд┐рдЯрд░ рдЬрд┐рдпреЛрдЧреЗрдЧрди))ред рдЕрдиреБрдХреНрд░рдордгрд┐рдХрд╛ рдмреНрд▓реЛрдЯ рд╡рд┐рд╢реЗрд╖ рдЧрд░реА рдХрд╛рд░реНрдпрднрд╛рд░рд╣рд░реВрдорд╛ рдЙрд▓реНрд▓реЗрдЦрдиреАрдп рдЫ рдЬрд╣рд╛рдБ рд╕реВрдЪрдХрд╛рдВрдХ рд╕рдХреНрд░рд┐рдп рд░реВрдкрдорд╛ рдкрд░рд┐рд╡рд░реНрддрди рднрдЗрд░рд╣реЗрдХреЛ рдЫред

PostgreSQL 12 рд▓реЗ B-tree indexes рдХреЛ рдХрд╛рд░реНрдпрд╕рдореНрдкрд╛рджрдирдорд╛ рдзреЗрд░реИ рд╕реБрдзрд╛рд░ рдЧрд░реНрдЫ, рд░ TPC-C рдЬрд╕реНрддрд╛ рдмреЗрдиреНрдЪрдорд╛рд░реНрдХрд╣рд░реВрдХрд╛ рдкреНрд░рдпреЛрдЧрд╣рд░реВрд▓реЗ рдФрд╕рддрдорд╛ 40% рдХрдо рдард╛рдЙрдБ рдкреНрд░рдпреЛрдЧ рднрдПрдХреЛ рджреЗрдЦрд╛рдПрдХреЛ рдЫред рдЕрдм рд╣рд╛рдореА B-tree рдЕрдиреБрдХреНрд░рдордгрд┐рдХрд╛рд╣рд░реВ (рдЕрд░реНрдерд╛рдд, рд▓реЗрдЦрди рдХрд╛рд░реНрдпрд╣рд░реВрдорд╛) рдХрд╛рдпрдо рд░рд╛рдЦреНрди рдорд╛рддреНрд░ рдирднрдИ рдбреЗрдЯрд╛ рдкреБрди: рдкреНрд░рд╛рдкреНрдд рдЧрд░реНрдирдорд╛ рдкрдирд┐ рдХрдо рд╕рдордп рдЦрд░реНрдЪ рдЧрд░реНрдЫреМрдВ, рдХрд┐рдирднрдиреЗ рдЕрдиреБрдХреНрд░рдордгрд┐рдХрд╛рд╣рд░реВ рдзреЗрд░реИ рд╕рд╛рдиреЛ рдЫрдиреНред

рдЕрдиреБрдкреНрд░рдпреЛрдЧрд╣рд░реВ рдЬрд╕рд▓реЗ рд╕рдХреНрд░рд┐рдп рд░реВрдкрдорд╛ рддрд┐рдиреАрд╣рд░реВрдХреЛ рддрд╛рд▓рд┐рдХрд╛рд╣рд░реВ рдЕрджреНрдпрд╛рд╡рдзрд┐рдХ рдЧрд░реНрджрдЫ - рд╕рд╛рдорд╛рдиреНрдпрддрдпрд╛ OLTP рдЕрдиреБрдкреНрд░рдпреЛрдЧрд╣рд░реВ (рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕рдордп рд▓реЗрдирджреЗрди рдкреНрд░рд╢реЛрдзрди) - рдзреЗрд░реИ рдХреБрд╢рд▓рддрд╛рдкреВрд░реНрд╡рдХ рдбрд┐рд╕реНрдХ рд░ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдЕрдиреБрд░реЛрдзрд╣рд░реВ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреЗрдЫред рдЬрддрд┐ рдзреЗрд░реИ рдбрд┐рд╕реНрдХ рд╕реНрдкреЗрд╕ рд╣реБрдиреНрдЫ, рдбрд╛рдЯрд╛рдмреЗрд╕рд▓реЗ рдкреВрд░реНрд╡рд╛рдзрд╛рд░рдХреЛ рд╕реНрддрд░рд╡реГрджреНрдзрд┐ рдирдЧрд░рд┐рдХрди рддреНрдпрддрд┐ рдиреИ рдмрдвреА рдард╛рдЙрдБ рдмрдврд╛рдЙрдиреБрдкрд░реНрдЫред

рдХреЗрд╣реА рд╕реНрддрд░рд╡реГрджреНрдзрд┐ рд░рдгрдиреАрддрд┐рд╣рд░реВрд▓реЗ рдпреА рдлрд╛рдЗрджрд╛рд╣рд░реВрдХреЛ рдлрд╛рдЗрджрд╛ рд▓рд┐рдирдХреЛ рд▓рд╛рдЧрд┐ B-рдЯреНрд░реА рдЕрдиреБрдХреНрд░рдордгрд┐рдХрд╛рд╣рд░реВ рдкреБрдирд░реНрдирд┐рд░реНрдорд╛рдг рдЧрд░реНрди рдЖрд╡рд╢реНрдпрдХ рдЫ (рдЬрд╕реНрддреИред pg_upgrade рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдкрдорд╛ рдЕрдиреБрдХреНрд░рдордгрд┐рдХрд╛рд╣рд░реВ рдкреБрди: рдирд┐рд░реНрдорд╛рдг рдЧрд░реНрджреИрди)ред PostgreSQL рдХреЛ рдЕрдШрд┐рд▓реНрд▓реЛ рд╕рдВрд╕реНрдХрд░рдгрд╣рд░реВрдорд╛, рдЯреЗрдмрд▓рд╣рд░реВрдорд╛ рдареВрд▓рд╛ рдЕрдиреБрдХреНрд░рдордгрд┐рдХрд╛рд╣рд░реВ рдкреБрди: рдирд┐рд░реНрдорд╛рдг рдЧрд░реНрджрд╛ рдорд╣рддреНрддреНрд╡рдкреВрд░реНрдг рдбрд╛рдЙрдирдЯрд╛рдЗрдордХреЛ рдкрд░рд┐рдгрд╛рдо рднрдпреЛ рдХрд┐рдирднрдиреЗ рдпрд╕ рдмреАрдЪрдорд╛ рдкрд░рд┐рд╡рд░реНрддрдирд╣рд░реВ рдЧрд░реНрди рд╕рдХрд┐рдПрдиред рддрд░ PostgreSQL 12 рдорд╛ рдЕрд░реНрдХреЛ рд░рд╛рдореНрд░реЛ рд╕реБрд╡рд┐рдзрд╛ рдЫ: рдЕрдм рддрдкрд╛рдЗрдБ рдЖрджреЗрд╢ рд╕рдВрдЧ рд╕рдорд╛рдирд╛рдВрддрд░ рдорд╛ рдЕрдиреБрдХреНрд░рдордгрд┐рдХрд╛ рдкреБрди: рдирд┐рд░реНрдорд╛рдг рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫред рдкреБрди: рдЕрдиреБрдХреНрд░рдордгрд┐рдХрд╛рдкреВрд░реНрдг рд░реВрдкрдорд╛ рдбрд╛рдЙрдирдЯрд╛рдЗрдордмрд╛рдЯ рдмрдЪреНрдиред

PostgreSQL 12 рдорд╛ рдЕрдиреБрдХреНрд░рдордгрд┐рдХрд╛ рдкреВрд░реНрд╡рд╛рдзрд╛рд░рдорд╛ рдЕрдиреНрдп рд╕реБрдзрд╛рд░рд╣рд░реВ рдЫрдиреНред рдЕрд░реНрдХреЛ рдХреБрд░рд╛ рдЬрд╣рд╛рдБ рдХреЗрд╣реА рдЬрд╛рджреВ рдерд┐рдпреЛ - рдЕрдЧрд╛рдбрд┐ рд▓реЗрдЦреНрдиреБрд╣реЛрд╕реН, рдЙрд░реНрдл тАЛтАЛWAL (рд▓реЗрдЦреНрди-рдЕрдЧрд╛рдбрд┐ рд▓рдЧ)ред рд▓реЗрдЦреНрдиреЗ-рдЕрдЧрд╛рдбрд┐ рд▓рдЧрд▓реЗ рдЕрд╕рдлрд▓рддрд╛ рд░ рдкреНрд░рддрд┐рдХреГрддрд┐рдХреЛ рдЕрд╡рд╕реНрдерд╛рдорд╛ PostgreSQL рдорд╛ рдкреНрд░рддреНрдпреЗрдХ рд▓реЗрдирджреЗрди рд░реЗрдХрд░реНрдб рдЧрд░реНрджрдЫред рдЕрдиреБрдкреНрд░рдпреЛрдЧрд╣рд░реВрд▓реЗ рдпрд╕рд▓рд╛рдИ рдЕрднрд┐рд▓реЗрдЦрдХреЛ рд▓рд╛рдЧрд┐ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрджрдЫ рд░ рдкреЛрдЗрдиреНрдЯ-рдЗрди-рдЯрд╛рдЗрдо рд░рд┐рдХрднрд░реАред рдЕрд╡рд╢реНрдп рдкрдирд┐, рд▓реЗрдЦрди-рдЕрдЧрд╛рдбрд┐ рд▓рдЧ рдбрд┐рд╕реНрдХрдорд╛ рд▓реЗрдЦрд┐рдПрдХреЛ рдЫ, рдЬрд╕рд▓реЗ рдХрд╛рд░реНрдпрд╕рдореНрдкрд╛рджрдирд▓рд╛рдИ рдЕрд╕рд░ рдЧрд░реНрди рд╕рдХреНрдЫред

PostgreSQL 12 рд▓реЗ рд╕реВрдЪрдХрд╛рдВрдХ рдирд┐рд░реНрдорд╛рдгрдХреЛ рдХреНрд░рдордорд╛ GiST, GIN, рд░ SP-GiST рдЕрдиреБрдХреНрд░рдордгрд┐рдХрд╛рд╣рд░реВрджреНрд╡рд╛рд░рд╛ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░рд┐рдПрдХрд╛ WAL рд░реЗрдХрд░реНрдбрд╣рд░реВрдХреЛ рдУрднрд░рд╣реЗрдб рдШрдЯрд╛рдПрдХреЛ рдЫред рдпрд╕рд▓реЗ рдзреЗрд░реИ рдареЛрд╕ рдлрд╛рдЗрджрд╛рд╣рд░реВ рдкреНрд░рджрд╛рди рдЧрд░реНрджрдЫ: WAL рд░реЗрдХрд░реНрдбрд╣рд░реВрд▓реЗ рдХрдо рдбрд┐рд╕реНрдХ рд╕реНрдкреЗрд╕ рд▓рд┐рдиреНрдЫрдиреН, рд░ рдбреЗрдЯрд╛ рдЫрд┐рдЯреЛ рд░рд┐рдкреНрд▓реЗ рд╣реБрдиреНрдЫ, рдЬрд╕реНрддреИ рд╡рд┐рдкрджреН рд░рд┐рдХрднрд░реА рд╡рд╛ рдкреЛрдЗрдиреНрдЯ-рдЗрди-рдЯрд╛рдЗрдо рд░рд┐рдХрднрд░реАред рдпрджрд┐ рддрдкрд╛рдЗрдБ рддрдкрд╛рдЗрдБрдХреЛ рдЕрдиреБрдкреНрд░рдпреЛрдЧрд╣рд░реВрдорд╛ рддреНрдпрд╕реНрддрд╛ рдЕрдиреБрдХреНрд░рдордгрд┐рдХрд╛рд╣рд░реВ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреБрд╣реБрдиреНрдЫ (рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐, PostGIS-рдЖрдзрд╛рд░рд┐рдд рднреВрд╕реНрдерд╛рдирд┐рдХ рдЕрдиреБрдкреНрд░рдпреЛрдЧрд╣рд░реВрд▓реЗ GiST рдЕрдиреБрдХреНрд░рдордгрд┐рдХрд╛ рдзреЗрд░реИ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрджрдЫ), рдпреЛ рдЕрд░реНрдХреЛ рд╡рд┐рд╢реЗрд╖рддрд╛ рд╣реЛ рдЬрд╕рд▓реЗ рддрдкрд╛рдЗрдБрдХреЛ рддрд░реНрдлрдмрд╛рдЯ рдХреБрдиреИ рдкреНрд░рдпрд╛рд╕ рдмрд┐рдирд╛ рдиреИ рдЕрдиреБрднрд╡рд▓рд╛рдИ рдЙрд▓реНрд▓реЗрдЦрдиреАрдп рд░реВрдкрдорд╛ рд╕реБрдзрд╛рд░ рдЧрд░реНрдиреЗрдЫред

рд╡рд┐рднрд╛рдЬрди - рдареВрд▓реЛ, рд░рд╛рдореНрд░реЛ, рдЫрд┐рдЯреЛ

PostgreSQL 10 рдкреЗрд╢ рдЧрд░рд┐рдпреЛ рдШреЛрд╖рдгрд╛рддреНрдордХ рд╡рд┐рднрд╛рдЬрдиред PostgreSQL 11 рдорд╛ рдпреЛ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди рдзреЗрд░реИ рд╕рдЬрд┐рд▓реЛ рднрдПрдХреЛ рдЫред PostgreSQL 12 рдорд╛ рддрдкрд╛рдИрд▓реЗ рдЦрдгреНрдбрд╣рд░реВрдХреЛ рд╕реНрдХреЗрд▓ рдкрд░рд┐рд╡рд░реНрддрди рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫред

PostgreSQL 12 рдорд╛, рд╡рд┐рднрд╛рдЬрди рдкреНрд░рдгрд╛рд▓реАрдХреЛ рдкреНрд░рджрд░реНрд╢рди рдЙрд▓реНрд▓реЗрдЦрдиреАрдп рд░реВрдкрдорд╛ рд░рд╛рдореНрд░реЛ рднрдПрдХреЛ рдЫ, рд╡рд┐рд╢реЗрд╖ рдЧрд░реА рдпрджрд┐ рддрд╛рд▓рд┐рдХрд╛рдорд╛ рд╣рдЬрд╛рд░реМрдВ рд╡рд┐рднрд╛рдЬрдирд╣рд░реВ рдЫрдиреНред рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐, рдпрджрд┐ рдХреНрд╡реЗрд░реАрд▓реЗ рд╣рдЬрд╛рд░реМрдВрдХреЛ рд╕рд╛рде рддрд╛рд▓рд┐рдХрд╛рдорд╛ рдХреЗрд╣реА рд╡рд┐рднрд╛рдЬрдирд╣рд░реВрд▓рд╛рдИ рдорд╛рддреНрд░ рдЕрд╕рд░ рдЧрд░реНрдЫ рднрдиреЗ, рдпрд╕рд▓реЗ рдзреЗрд░реИ рдЫрд┐рдЯреЛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдЧрд░реНрдиреЗрдЫред рдпреА рдкреНрд░рдХрд╛рд░рдХрд╛ рдкреНрд░рд╢реНрдирд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рдорд╛рддреНрд░ рдкреНрд░рджрд░реНрд╢рди рд╕реБрдзрд╛рд░рд┐рдПрдХреЛ рдЫреИрдиред рддрдкрд╛рдИрд▓реЗ рдпреЛ рдкрдирд┐ рдпрд╛рдж рдЧрд░реНрдиреБрд╣реБрдиреЗрдЫ рдХрд┐ INSERT рдЕрдкрд░реЗрд╕рдирд╣рд░реВ рдзреЗрд░реИ рд╡рд┐рднрд╛рдЬрдирд╣рд░реВ рднрдПрдХрд╛ рдЯреЗрдмрд▓рд╣рд░реВрдорд╛ рдХрддрд┐ рдЫрд┐рдЯреЛ рдЫрдиреНред

рд░реЗрдХрд░реНрдбрд┐рдЩ рдбрд╛рдЯрд╛ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрджреИ рдХрд╛рдкреА - рд╡реИрд╕реЗ, рдпреЛ рдПрдХ рд░рд╛рдореНрд░реЛ рддрд░рд┐рдХрд╛ рд╣реЛ рдмрд▓реНрдХ рдбрд╛рдЯрд╛ рдбрд╛рдЙрдирд▓реЛрдб рд░ рдпрд╣рд╛рдБ рдПрдЙрдЯрд╛ рдЙрджрд╛рд╣рд░рдг рд╣реЛ JSON рдкреНрд░рд╛рдкреНрдд рдЧрд░реНрджреИ тАФ PostgreSQL 12 рдорд╛ рд╡рд┐рднрд╛рдЬрди рдЧрд░рд┐рдПрдХреЛ рддрд╛рд▓рд┐рдХрд╛рд╣рд░реВ рдкрдирд┐ рдердк рдкреНрд░рднрд╛рд╡рдХрд╛рд░реА рднрдПрдХрд╛ рдЫрдиреНред COPY рдХреЛ рд╕рд╛рде рд╕рдмреИ рдХреБрд░рд╛ рдкрд╣рд┐рд▓реЗ рдиреИ рдЫрд┐рдЯреЛ рдерд┐рдпреЛ, рддрд░ PostgreSQL 12 рдорд╛ рдпреЛ рдмрд┐рд▓реНрдХреБрд▓ рдЙрдбреНрдЫред

рдпреА рдлрд╛рдЗрджрд╛рд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рдзрдиреНрдпрд╡рд╛рдж, PostgreSQL рд▓реЗ рддрдкрд╛рдИрдВрд▓рд╛рдИ рдЕрдЭ рдареВрд▓рд╛ рдбрд╛рдЯрд╛ рд╕реЗрдЯрд╣рд░реВ рднрдгреНрдбрд╛рд░рдг рдЧрд░реНрди рд░ рддрд┐рдиреАрд╣рд░реВрд▓рд╛рдИ рдкреБрди: рдкреНрд░рд╛рдкреНрдд рдЧрд░реНрди рд╕рдЬрд┐рд▓реЛ рдмрдирд╛рдЙрди рдЕрдиреБрдорддрд┐ рджрд┐рдиреНрдЫред рд░ рддрдкрд╛рдИрдВрдХреЛ рддрд░реНрдлрдмрд╛рдЯ рдХреБрдиреИ рдкреНрд░рдпрд╛рд╕ рдЫреИрдиред рдпрджрд┐ рдЕрдиреБрдкреНрд░рдпреЛрдЧрд╕рдБрдЧ рдзреЗрд░реИ рд╡рд┐рднрд╛рдЬрдирд╣рд░реВ рдЫрдиреН, рдЬрд╕реНрддреИ рд░реЗрдХрд░реНрдбрд┐рдЩ рд╕рдордп рд╢реНрд░реГрдВрдЦрд▓рд╛ рдбреЗрдЯрд╛, рдПрдХ рд╕рд╛рдзрд╛рд░рдг рдЕрдкрдЧреНрд░реЗрдбрд▓реЗ рдпрд╕рдХреЛ рдХрд╛рд░реНрдпрд╕рдореНрдкрд╛рджрдирдорд╛ рдЙрд▓реНрд▓реЗрдЦрдиреАрдп рд╕реБрдзрд╛рд░ рдЧрд░реНрдиреЗрдЫред

рдпрджреНрдпрдкрд┐ рдпреЛ рд╡рд╛рд╕реНрддрд╡рдорд╛ "рдЕрдкрдЧреНрд░реЗрдб рд░ рд░рдорд╛рдЗрд▓реЛ" рд╕реБрдзрд╛рд░ рд╣реЛрдЗрди, PostgreSQL 12 рд▓реЗ рддрдкрд╛рдИрдВрд▓рд╛рдИ рд╡рд┐рднрд╛рдЬрди рдЧрд░рд┐рдПрдХреЛ рддрд╛рд▓рд┐рдХрд╛рд╣рд░реВ рд╕рдиреНрджрд░реНрдн рдЧрд░реНрдиреЗ рд╡рд┐рджреЗрд╢реА рдХреБрдЮреНрдЬреАрд╣рд░реВ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрди рдЕрдиреБрдорддрд┐ рджрд┐рдиреНрдЫ, рд╡рд┐рднрд╛рдЬрдирд▓рд╛рдИ рдХрд╛рдо рдЧрд░реНрди рд░рдорд╛рдЗрд▓реЛ рдмрдирд╛рдЙрдБрдЫред

рдкреНрд░рд╢реНрдирд╣рд░реВрдХреЛ рд╕рд╛рде рдзреЗрд░реИ рд░рд╛рдореНрд░реЛ рднрдпреЛ

рдХрд╣рд┐рд▓реЗ рдПрдЙрдЯрд╛ рдкреНрдпрд╛рдЪ рдмрд┐рд▓реНрдЯ-рдЗрди рд╕рд╛рдЭрд╛ рддрд╛рд▓рд┐рдХрд╛ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рд▓рд╛рдЧреВ рдЧрд░рд┐рдПрдХреЛ рдерд┐рдпреЛ (рдЙрд░реНрдл CTE, aka WITH queries), рдо рдпрд╕ рдмрд╛рд░реЗ рд▓реЗрдЦ рд▓реЗрдЦреНрди рдкрд░реНрдЦрд┐рди рд╕рдХреНрджрд┐рди PostgreSQL рд╕рдБрдЧ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рд╡рд┐рдХрд╛рд╕рдХрд░реНрддрд╛рд╣рд░реВ рдХрддреНрддрд┐ рдЦреБрд╕реА рдерд┐рдПред рдпреЛ рддреА рд╕реБрд╡рд┐рдзрд╛рд╣рд░реВ рдордзреНрдпреЗ рдПрдХ рд╣реЛ рдЬрд╕рд▓реЗ рдЕрдиреБрдкреНрд░рдпреЛрдЧрд▓рд╛рдИ рдЧрддрд┐ рджрд┐рдиреНрдЫред рдЬрдмрд╕рдореНрдо, рдЕрд╡рд╢реНрдп рдкрдирд┐, рддрдкрд╛рдЗрдБ CTE рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреБрд╣реБрдиреНрдЫред

рдореИрд▓реЗ рдкреНрд░рд╛рдпрдГ SQL рдорд╛ рдирдпрд╛рдБ рд╡реНрдпрдХреНрддрд┐рд╣рд░реВрд▓рд╛рдИ CTEs рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди рдорди рдкрд░рд╛рдПрдХреЛ рдкрд╛рдЙрдБрдЫреБ; рдпрджрд┐ рддрдкрд╛рдИрдВрд▓реЗ рддрд┐рдиреАрд╣рд░реВрд▓рд╛рдИ рдХреБрдиреИ рдирд┐рд╢реНрдЪрд┐рдд рддрд░рд┐рдХрд╛рд▓реЗ рд▓реЗрдЦреНрдиреБрднрдпреЛ рднрдиреЗ, рдпреЛ рд╕рд╛рдБрдЪреНрдЪреИ рд▓рд╛рдЧреНрдЫ рдХрд┐ рддрдкрд╛рдИрдВрд▓реЗ рдПрдЙрдЯрд╛ рдЕрдирд┐рд╡рд╛рд░реНрдп рдХрд╛рд░реНрдпрдХреНрд░рдо рд▓реЗрдЦреНрджреИ рд╣реБрдиреБрд╣реБрдиреНрдЫред рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдкрдорд╛, рдорд▓рд╛рдИ рд╡рд░рд┐рдкрд░рд┐ рдкреНрд░рд╛рдкреНрдд рдЧрд░реНрди рдпреА рдкреНрд░рд╢реНрдирд╣рд░реВ рдкреБрди: рд▓реЗрдЦреНрди рдорди рдкрд░реНрдпреЛ рдмрд┐рдирд╛ CTE рд░ рдЙрддреНрдкрд╛рджрдХрддрд╛ рд╡реГрджреНрдзрд┐ред рдЕрдм рд╕рдмреИ рдХреБрд░рд╛ рдлрд░рдХ рдЫред

PostgreSQL 12 рд▓реЗ рддрдкрд╛рдЗрдБрд▓рд╛рдИ рд╕рд╛рдЗрдб рдЗрдлреЗрдХреНрдЯ рдмрд┐рдирд╛ рдПрдХ рд╡рд┐рд╢реЗрд╖ рдкреНрд░рдХрд╛рд░рдХреЛ CTE рдЗрдирд▓рд╛рдЗрди рдЧрд░реНрди рдЕрдиреБрдорддрд┐ рджрд┐рдиреНрдЫ (SELECT), рдЬреБрди рдЕрдиреБрд░реЛрдзрдХреЛ рдЕрдиреНрддреНрдпрдорд╛ рдПрдХ рдкрдЯрдХ рдорд╛рддреНрд░ рдкреНрд░рдпреЛрдЧ рдЧрд░рд┐рдиреНрдЫред рдпрджрд┐ рдореИрд▓реЗ рдкреБрди: рд▓реЗрдЦреЗрдХреЛ CTE рдкреНрд░рд╢реНрдирд╣рд░реВрдХреЛ рдЯреНрд░реНрдпрд╛рдХ рд░рд╛рдЦреЗрдВ рднрдиреЗ, рддреА рдордзреНрдпреЗ рдзреЗрд░реИ рдЬрд╕реЛ рдпрд╕ рд╢реНрд░реЗрдгреАрдорд╛ рдкрд░реНрдиреЗрдЫред рдпрд╕рд▓реЗ рд╡рд┐рдХрд╛рд╕рдХрд░реНрддрд╛рд╣рд░реВрд▓рд╛рдИ рд╕реНрдкрд╖реНрдЯ рдХреЛрдб рд▓реЗрдЦреНрди рдорджреНрджрдд рдЧрд░реНрджрдЫ рдЬреБрди рдЕрдм рдЫрд┐рдЯреЛ рдЪрд▓реНрдЫред

рдпрд╕рдмрд╛рд╣реЗрдХ, PostgreSQL 12 рд▓реЗ SQL рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдЖрдлреИрд▓рд╛рдИ рдЕрдиреБрдХреВрд▓рди рдЧрд░реНрджрдЫ, рддрдкрд╛рдИрд▓реЗ рдХреЗрд╣рд┐ рдирдЧрд░реА рдиреИред рд░ рдпрджреНрдпрдкрд┐ рдорд▓рд╛рдИ рдЕрдм рддреНрдпрд╕реНрддрд╛ рдкреНрд░рд╢реНрдирд╣рд░реВ рдЕрдкреНрдЯрд┐рдорд╛рдЗрдЬ рдЧрд░реНрди рдЖрд╡рд╢реНрдпрдХ рдкрд░реНрджреИрди, рдпреЛ рд░рд╛рдореНрд░реЛ рдЫ рдХрд┐ PostgreSQL рд▓реЗ рдХреНрд╡реЗрд░реА рдЕрдкреНрдЯрд┐рдорд╛рдЗрдЬреЗрд╕рдирдорд╛ рдХрд╛рдо рдЧрд░реНрди рдЬрд╛рд░реА рд░рд╛рдЦреНрдЫред

рдЬрд╕реНрдЯ-рдЗрди-рдЯрд╛рдЗрдо (JIT) - рдЕрдм рдкреВрд░реНрд╡рдирд┐рд░реНрдзрд╛рд░рд┐рдд

рд╕рдорд░реНрдердирдХреЛ рд╕рд╛рде PostgreSQL 12 рдкреНрд░рдгрд╛рд▓реАрд╣рд░реВрдорд╛ LLVM JIT рд╕рдВрдХрд▓рди рдкреВрд░реНрд╡рдирд┐рд░реНрдзрд╛рд░рд┐рдд рд░реВрдкрдорд╛ рд╕рдХреНрд╖рдо рдЫред рд╕рдмреИ рднрдиреНрджрд╛ рдкрд╣рд┐рд▓реЗ, рддрдкрд╛рдИрдВ рд╕рдорд░реНрдерди рдкреНрд░рд╛рдкреНрдд рдЧрд░реНрдиреБрд╣реЛрд╕реН JIT рдХреЗрд╣реА рдЖрдиреНрддрд░рд┐рдХ рдХрд╛рд░реНрдпрд╣рд░реВрдХрд╛ рд▓рд╛рдЧрд┐, рд░ рджреЛрд╕реНрд░реЛ, рдЪрдпрди рд╕реВрдЪреАрд╣рд░реВрдорд╛ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рд╣рд░реВ (рд╕рдмреИрднрдиреНрджрд╛ рд╕рд░рд▓ рдЙрджрд╛рд╣рд░рдг x + y рд╣реЛ) (рдЬрд╕рд▓рд╛рдИ рддрдкрд╛рдЗрдБрд╕рдБрдЧ SELECT рдкрдЫрд┐ рдЫ), рд╕рдореБрдЪреНрдЪрдп, WHERE рдЦрдгреНрдбрд╣рд░реВ рд╕рд╣рд┐рддрдХреЛ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рд╣рд░реВ рд░ рдЕрд░реВрд▓реЗ рдкреНрд░рджрд░реНрд╢рди рд╕реБрдзрд╛рд░ рдЧрд░реНрди JIT рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди рд╕рдХреНрдЫрдиреНред

PostgreSQL 12 рдорд╛ рдкреВрд░реНрд╡рдирд┐рд░реНрдзрд╛рд░рд┐рдд рд░реВрдкрдорд╛ JIT рд╕рдХреНрд╖рдо рднрдПрдХреЛ рд╣реБрдирд╛рд▓реЗ, рдХрд╛рд░реНрдпрд╕рдореНрдкрд╛рджрди рдЖрдлреИрдорд╛ рд╕реБрдзрд╛рд░ рд╣реБрдиреЗрдЫ, рддрд░ рдо рд╕реЛрдзреНрдЫреБ рдХрд┐ рдкреЛрд╕реНрдЯрдЧреНрд░реЗрдПрд╕рдХреНрдпреВрдПрд▓ 11 рдорд╛ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдкрд░реАрдХреНрд╖рдг рдЧрд░реНрдиреБрд╣реЛрд╕реН, рдЬрд╕рд▓реЗ JIT рдкреЗрд╢ рдЧрд░реНтАНрдпреЛ, рдХреНрд╡реЗрд░реА рдкреНрд░рджрд░реНрд╢рди рдорд╛рдкрди рдЧрд░реНрди рд░ рддрдкрд╛рдЗрдБрд▓рд╛рдИ рдХреЗрд╣рд┐ рдЯреНрдпреБрди рдЧрд░реНрди рдЖрд╡рд╢реНрдпрдХ рдЫ рдХрд┐ рдЫреИрди рд╣реЗрд░реНрдиреБрд╣реЛрд╕реНред

PostgreSQL 12 рдорд╛ рдмрд╛рдБрдХреА рдирдпрд╛рдБ рд╕реБрд╡рд┐рдзрд╛рд╣рд░реВрдХреЛ рдмрд╛рд░реЗрдорд╛ рдХреЗ рд╣реБрдиреНрдЫ?

PostgreSQL 12 рдорд╛ рдПрдХ рдЯрди рдЙрддреНрдХреГрд╖реНрдЯ рдирдпрд╛рдБ рд╕реБрд╡рд┐рдзрд╛рд╣рд░реВ рдЫрдиреН, рдорд╛рдирдХ SQL/JSON рдорд╛рд░реНрдЧ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рд╣рд░реВ рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрд░ JSON рдбреЗрдЯрд╛ рдЬрд╛рдБрдЪ рдЧрд░реНрдиреЗ рдХреНрд╖рдорддрд╛рджреЗрдЦрд┐ рд▓рд┐рдПрд░ рдкреНрдпрд╛рд░рд╛рдорд┐рдЯрд░рдХреЛ рд╕рд╛рде рдмрд╣реБ-рдХрд╛рд░рдХ рдкреНрд░рдорд╛рдгреАрдХрд░рдг рд╕рдореНрдоред clientcert=verify-full, рд╕реНрддрдореНрднрд╣рд░реВ рд░ рдЕрдзрд┐рдХ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░рд┐рдпреЛред рдПрдХ рдЕрд▓рдЧ рдкреЛрд╕реНрдЯ рдХреЛ рд▓рд╛рдЧреА рдкрд░реНрдпрд╛рдкреНрдд рдЫред

PostgreSQL 10 рдЬрд╕реНрддреИ, PostgreSQL 12 рд▓реЗ рдЕрдкрдЧреНрд░реЗрдб рдкрдЫрд┐ рддреБрд░реБрдиреНрддреИ рд╕рдордЧреНрд░ рдкреНрд░рджрд░реНрд╢рди рд╕реБрдзрд╛рд░ рдЧрд░реНрдиреЗрдЫред рдирд┐рд╕реНрд╕рдиреНрджреЗрд╣, рддрдкрд╛рдЗрдБрдХреЛ рдЖрдлреНрдиреИ рдорд╛рд░реНрдЧ рд╣реБрди рд╕рдХреНрдЫ - рд╕реБрдзрд╛рд░рд╣рд░реВ рд╕рдХреНрд╖рдо рдЧрд░реНрдиреБ рдЕрдШрд┐ рдЙрддреНрдкрд╛рджрди рдкреНрд░рдгрд╛рд▓реАрдорд╛ рд╕рдорд╛рди рдЕрд╡рд╕реНрдерд╛рд╣рд░реВрдорд╛ рдПрдкреНрд▓рд┐рдХреЗрд╕рдирдХреЛ рдкрд░реАрдХреНрд╖рдг рдЧрд░реНрдиреБрд╣реЛрд╕реН, рдЬрд╕реНрддреИ рдореИрд▓реЗ PostgreSQL 10 рд╕рдБрдЧ рдЧрд░реЗрдВред рдпрджрд┐ PostgreSQL 12 рдкрд╣рд┐рд▓реЗ рдиреИ рдореИрд▓реЗ рд╕реЛрдЪреЗ рднрдиреНрджрд╛ рдмрдвреА рд╕реНрдерд┐рд░ рдЫ рднрдиреЗ, рдкрд░реАрдХреНрд╖рдгрдорд╛ рдЕрд▓реНрдЫреА рдирдЧрд░реНрдиреБрд╣реЛрд╕реНред рдЙрддреНрдкрд╛рджрдирдорд╛ рд░рд┐рд▓рд┐рдЬ рдЧрд░реНрдиреБ рдЕрдШрд┐, рд░рд╛рдореНрд░рд░реА рдЕрдиреБрдкреНрд░рдпреЛрдЧрд╣рд░реВред

рд╕реНрд░реЛрдд: www.habr.com

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдердкреНрди