ElasticSearch рдХреЛ рд╕рд╛рде рд╣рд╛рдЗрд▓реЛрдб рдкреНрд░реЛрдЬреЗрдХреНрдЯрдорд╛ рд▓реЛрдб рдЕрдкреНрдЯрд┐рдорд╛рдЗрдЬреЗрд╕рди

рд╣реЗ рд╣рд╛рдмрд░! рдореЗрд░реЛ рдирд╛рдо Maxim Vasiliev рд╣реЛ, рдо FINCH рдорд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдХ рд░ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдкреНрд░рдмрдиреНрдзрдХрдХреЛ рд░реВрдкрдорд╛ рдХрд╛рдо рдЧрд░реНрдЫреБред рдЖрдЬ рдо рддрдкрд╛рдИрдВрд▓рд╛рдИ рдмрддрд╛рдЙрди рдЪрд╛рд╣рдиреНрдЫреБ рдХрд┐ рдХрд╕рд░реА, ElasticSearch рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрд░, рд╣рд╛рдореАрд▓реЗ 15 рдорд┐рдиреЗрдЯрдорд╛ 6 рдорд┐рд▓рд┐рдпрди рдЕрдиреБрд░реЛрдзрд╣рд░реВ рдкреНрд░рд╢реЛрдзрди рдЧрд░реНрди рд░ рд╣рд╛рдореНрд░рд╛ рдЧреНрд░рд╛рд╣рдХрд╣рд░реВ рдордзреНрдпреЗ рдПрдХрдХреЛ рд╕рд╛рдЗрдЯрдорд╛ рджреИрдирд┐рдХ рд▓реЛрдбрд╣рд░реВ рдЕрдиреБрдХреВрд▓рди рдЧрд░реНрди рд╕рдХреНрд╖рдо рднрдпреМрдВред рджреБрд░реНрднрд╛рдЧреНрдпрд╡рд╢, рд╣рд╛рдореАрд▓реЗ рдирд╛рдо рдмрд┐рдирд╛ рдиреИ рдЧрд░реНрдиреБрдкрд░реНрдиреЗрдЫ, рдХрд┐рдирдХрд┐ рд╣рд╛рдореАрд╕рдБрдЧ рдПрдирдбреАрдП рдЫ, рд╣рд╛рдореА рдЖрд╢рд╛ рдЧрд░реНрдЫреМрдВ рдХрд┐ рд▓реЗрдЦрдХреЛ рд╕рд╛рдордЧреНрд░реА рдпрд╕рдмрд╛рдЯ рдкреАрдбрд┐рдд рд╣реБрдиреЗрдЫреИрдиред рдЬрд╛рдФрдВред

рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╕рд░реА рдХрд╛рдо рдЧрд░реНрджрдЫ

рд╣рд╛рдореНрд░реЛ рдмреНрдпрд╛рдХрдПрдиреНрдбрдорд╛, рд╣рд╛рдореА рд╕реЗрд╡рд╛рд╣рд░реВ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрдЫреМрдВ рдЬрд╕рд▓реЗ рд╣рд╛рдореНрд░реЛ рдЧреНрд░рд╛рд╣рдХрдХреЛ рд╡реЗрдмрд╕рд╛рдЗрдЯ рд░ рдореЛрдмрд╛рдЗрд▓ рдЕрдиреБрдкреНрд░рдпреЛрдЧрдХреЛ рдкреНрд░рджрд░реНрд╢рди рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдЧрд░реНрджрдЫред рд╕рд╛рдорд╛рдиреНрдп рд╕рдВрд░рдЪрдирд╛ рд░реЗрдЦрд╛рдЪрд┐рддреНрд░рдорд╛ рджреЗрдЦреНрди рд╕рдХрд┐рдиреНрдЫ:

ElasticSearch рдХреЛ рд╕рд╛рде рд╣рд╛рдЗрд▓реЛрдб рдкреНрд░реЛрдЬреЗрдХреНрдЯрдорд╛ рд▓реЛрдб рдЕрдкреНрдЯрд┐рдорд╛рдЗрдЬреЗрд╕рди

рдХрд╛рдордХреЛ рдкреНрд░рдХреНрд░рд┐рдпрд╛рдорд╛, рд╣рд╛рдореА рд▓реЗрдирджреЗрдирдХреЛ рдареВрд▓реЛ рд╕рдВрдЦреНрдпрд╛рдорд╛ рдкреНрд░рд╢реЛрдзрди рдЧрд░реНрдЫреМрдВ: рдЦрд░рд┐рджрд╣рд░реВ, рднреБрдХреНрддрд╛рдиреАрд╣рд░реВ, рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛ рдмреНрдпрд╛рд▓реЗрдиреНрд╕рдХреЛ рд╕рд╛рде рд╕рдЮреНрдЪрд╛рд▓рдирд╣рд░реВ, рдЬрд╕рдХреЛ рд▓рд╛рдЧрд┐ рд╣рд╛рдореА рдзреЗрд░реИ рд▓рдЧрд╣рд░реВ рднрдгреНрдбрд╛рд░рдг рдЧрд░реНрдЫреМрдВ, рд╕рд╛рдереИ рдпреЛ рдбреЗрдЯрд╛ рдмрд╛рд╣реНрдп рдкреНрд░рдгрд╛рд▓реАрд╣рд░реВрдорд╛ рдЖрдпрд╛рдд рд░ рдирд┐рд░реНрдпрд╛рдд рдЧрд░реНрдЫреМрдВред

рддреНрдпрд╣рд╛рдБ рд░рд┐рднрд░реНрд╕ рдкреНрд░рдХреНрд░рд┐рдпрд╛рд╣рд░реВ рдкрдирд┐ рдЫрдиреН рдЬрдм рд╣рд╛рдореА рдЧреНрд░рд╛рд╣рдХрдмрд╛рдЯ рдбрд╛рдЯрд╛ рдкреНрд░рд╛рдкреНрдд рдЧрд░реНрдЫреМрдВ рд░ рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛рд▓рд╛рдИ рд╣рд╕реНрддрд╛рдиреНрддрд░рдг рдЧрд░реНрдЫреМрдВред рдердк рд░реВрдкрдорд╛, рднреБрдХреНрддрд╛рдиреА рд░ рдмреЛрдирд╕ рдХрд╛рд░реНрдпрдХреНрд░рдорд╣рд░реВрд╕рдБрдЧ рдХрд╛рдо рдЧрд░реНрдиреЗ рдкреНрд░рдХреНрд░рд┐рдпрд╛рд╣рд░реВ рдЕрдЭреИ рдЫрдиреНред

рд╕рдВрдХреНрд╖рд┐рдкреНрдд рдкреГрд╖реНрдарднреВрдорд┐

рд╕реБрд░реБрдорд╛, рд╣рд╛рдореАрд▓реЗ PostgreSQL рд▓рд╛рдИ рдорд╛рддреНрд░ рдбрд╛рдЯрд╛ рд╕реНрдЯреЛрд░рдХреЛ рд░реВрдкрдорд╛ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдпреМрдВред DBMS рдХреЛ рд▓рд╛рдЧрд┐ рдпрд╕рдХреЛ рдорд╛рдирдХ рдлрд╛рдЗрджрд╛рд╣рд░реВ: рд▓реЗрдирджреЗрдирдХреЛ рдЙрдкрд╕реНрдерд┐рддрд┐, рдПрдХ рд╡рд┐рдХрд╕рд┐рдд рдбрд╛рдЯрд╛ рдирдореВрдирд╛ рднрд╛рд╖рд╛, рдПрдХреАрдХрд░рдгрдХреЛ рд▓рд╛рдЧрд┐ рдЙрдкрдХрд░рдгрд╣рд░реВрдХреЛ рд╡рд┐рд╕реНрддреГрдд рд╢реНрд░реГрдВрдЦрд▓рд╛; рд░рд╛рдореНрд░реЛ рдкреНрд░рджрд░реНрд╢рди рд╕рдВрдЧ рд╕рдВрдпреБрдХреНрдд рдзреЗрд░реИ рд▓рд╛рдореЛ рд╕рдордп рдХреЛ рд▓рд╛рдЧреА рд╣рд╛рдореНрд░реЛ рдЖрд╡рд╢реНрдпрдХрддрд╛рд╣рд░реБ рд╕рдиреНрддреБрд╖реНрдЯред

рд╣рд╛рдореАрд▓реЗ Postgres рдорд╛ рдмрд┐рд▓реНрдХреБрд▓ рд╕рдмреИ рдбрд╛рдЯрд╛ рднрдгреНрдбрд╛рд░рдг рдЧрд░реНрдпреМрдВ: рд▓реЗрдирджреЗрди рджреЗрдЦрд┐ рд╕рдорд╛рдЪрд╛рд░ рд╕рдореНрдоред рддрд░ рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛рд╣рд░реВрдХреЛ рд╕рдВрдЦреНрдпрд╛ рдмрдвреНрдпреЛ, рд░ рдпрд╕рдХреЛ рд╕рд╛рде рдЕрдиреБрд░реЛрдзрд╣рд░реВрдХреЛ рд╕рдВрдЦреНрдпрд╛ред

рдмреБрдЭреНрдирдХреЛ рд▓рд╛рдЧрд┐, 2017 рдорд╛ рдХреЗрд╡рд▓ рдбреЗрд╕реНрдХрдЯрдк рд╕рд╛рдЗрдЯрдорд╛ рд╕рддреНрд░рд╣рд░реВрдХреЛ рд╡рд╛рд░реНрд╖рд┐рдХ рд╕рдВрдЦреНрдпрд╛ 131 рдорд┐рд▓рд┐рдпрди рд╣реЛред 2018 рдорд╛ - 125 рдорд┐рд▓рд┐рдпрдиред 2019 рдлреЗрд░рд┐ 130 рдорд┐рд▓рд┐рдпрдиред рд╕рд╛рдЗрдЯрдХреЛ рдореЛрдмрд╛рдЗрд▓ рд╕рдВрд╕реНрдХрд░рдг рд░ рдореЛрдмрд╛рдЗрд▓ рдЕрдиреБрдкреНрд░рдпреЛрдЧрдмрд╛рдЯ рдЕрд░реНрдХреЛ 100-200 рдорд┐рд▓рд┐рдпрди рдердкреНрдиреБрд╣реЛрд╕реН, рд░ рддрдкрд╛рдИрдВ рдЕрдиреБрд░реЛрдзрд╣рд░реВрдХреЛ рдареВрд▓реЛ рд╕рдВрдЦреНрдпрд╛ рдкреНрд░рд╛рдкреНрдд рд╣реБрдиреЗрдЫред

рдкрд░рд┐рдпреЛрдЬрдирд╛рдХреЛ рдмреГрджреНрдзрд┐рд╕рдБрдЧреИ, рдкреЛрд╕реНрдЯрдЧреНрд░реЗрд╕рд▓реЗ рд▓реЛрдбрдХреЛ рд╕рд╛рдордирд╛ рдЧрд░реНрди рдмрдиреНрдж рдЧрд░реНрдпреЛ, рд╣рд╛рдореАрд╕рдБрдЧ рд╕рдордп рдерд┐рдПрди - рд╡рд┐рднрд┐рдиреНрди рдкреНрд░рд╢реНрдирд╣рд░реВрдХреЛ рдареВрд▓реЛ рд╕рдВрдЦреНрдпрд╛ рджреЗрдЦрд╛ рдкрд░реНтАНрдпреЛ, рдЬрд╕рдХреЛ рд▓рд╛рдЧрд┐ рд╣рд╛рдореАрд▓реЗ рдкрд░реНрдпрд╛рдкреНрдд рд╕рдВрдЦреНрдпрд╛рдорд╛ рдЕрдиреБрдХреНрд░рдордгрд┐рдХрд╛рд╣рд░реВ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрди рд╕рдХреЗрдиреМрдВред

рд╣рд╛рдореАрд▓реЗ рдмреБрдЭреНрдпреМрдВ рдХрд┐ рддреНрдпрд╣рд╛рдБ рдЕрдиреНрдп рдбрд╛рдЯрд╛ рд╕реНрдЯреЛрд░рд╣рд░реВрдХреЛ рдЖрд╡рд╢реНрдпрдХрддрд╛ рдерд┐рдпреЛ рдЬрд╕рд▓реЗ рд╣рд╛рдореНрд░рд╛ рдЖрд╡рд╢реНрдпрдХрддрд╛рд╣рд░реВ рдкреНрд░рджрд╛рди рдЧрд░реНрджрдЫ рд░ PostgreSQL рд▓рд╛рдИ рд▓реЛрдб рдЧрд░реНрди рд╕рдХреНрдЫред Elasticsearch рд░ MongoDB рд▓рд╛рдИ рд╕рдореНрднрд╛рд╡рд┐рдд рд╡рд┐рдХрд▓реНрдкрд╣рд░реВрдХреЛ рд░реВрдкрдорд╛ рд╡рд┐рдЪрд╛рд░ рдЧрд░рд┐рдпреЛред рдкрдЫрд┐рд▓реНрд▓рд╛ рдирд┐рдореНрди рдмрд┐рдиреНрджреБрд╣рд░реВрдорд╛ рд╣рд╛рд░реНрдпреЛ:

  1. рдЕрдиреБрдХреНрд░рдордгрд┐рдХрд╛рдорд╛ рдбрд╛рдЯрд╛рдХреЛ рдорд╛рддреНрд░рд╛ рдмрдвреНрджреИ рдЬрд╛рдБрджрд╛ рдЕрдиреБрдХреНрд░рдордгрд┐рдХрд╛ рдЧрддрд┐ рд╕реБрд╕реНрдд рд╣реБрдиреНрдЫред рд▓реЛрдЪрджрд╛рд░ рд╕рдВрдЧ, рдЧрддрд┐ рдбрд╛рдЯрд╛ рдХреЛ рдорд╛рддреНрд░рд╛ рдорд╛ рдирд┐рд░реНрднрд░ рдЧрд░реНрджреИрдиред
  2. рдкреВрд░реНрдг рдкрд╛рда рдЦреЛрдЬреА рдЫреИрди

рддреНрдпрд╕реИрд▓реЗ рд╣рд╛рдореАрд▓реЗ рдЖрдлреНрдиреЛ рд▓рд╛рдЧрд┐ рдЗрд▓рд╛рд╕реНрдЯрд┐рдХ рд░реЛрдЬреНрдпреМрдВ рд░ рд╕рдВрдХреНрд░рдордгрдХреЛ рд▓рд╛рдЧрд┐ рддрдпрд╛рд░ рднрдпреМрдВред

рд▓реЛрдЪрджрд╛рд░ рдорд╛ рд╕рдВрдХреНрд░рдордг

1. рд╣рд╛рдореАрд▓реЗ рдмрд┐рдХреНрд░реА рдЦреЛрдЬ рд╕реЗрд╡рд╛рдХреЛ рдмрд┐рдиреНрджреБрдмрд╛рдЯ рд╕рдВрдХреНрд░рдордг рд╕реБрд░реБ рдЧрд░реНрдпреМрдВред рд╣рд╛рдореНрд░реЛ рдХреНрд▓рд╛рдЗрдиреНрдЯрд╕рдБрдЧ рдХреБрд▓ рдмрд┐рдХреНрд░реАрдХреЛ рд▓рдЧрднрдЧ 70 рдмрд┐рдиреНрджреБрд╣рд░реВ рдЫрдиреН, рд░ рдпрд╕рдХрд╛ рд▓рд╛рдЧрд┐ рд╕рд╛рдЗрдЯ рд░ рдЕрдиреБрдкреНрд░рдпреЛрдЧрдорд╛ рдзреЗрд░реИ рдкреНрд░рдХрд╛рд░рдХрд╛ рдЦреЛрдЬрд╣рд░реВ рдЖрд╡рд╢реНрдпрдХ рдкрд░реНрджрдЫ:

  • рд╕рд╣рд░рдХреЛ рдирд╛рдорджреНрд╡рд╛рд░рд╛ рдкрд╛рда рдЦреЛрдЬреНрдиреБрд╣реЛрд╕реН
  • рдХреБрдиреИ рдмрд┐рдиреНрджреБрдмрд╛рдЯ рджрд┐рдЗрдПрдХреЛ рддреНрд░рд┐рдЬреНрдпрд╛ рднрд┐рддреНрд░ рдЬрд┐рдпреЛрд╕рд░реНрдЪред рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐, рдпрджрд┐ рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛рд▓реЗ рдЖрдлреНрдиреЛ рдШрд░рдХреЛ рд╕рдмреИрднрдиреНрджрд╛ рдирдЬрд┐рдХрдХреЛ рдмрд┐рдХреНрд░реА рдмрд┐рдиреНрджреБрд╣рд░реВ рд╣реЗрд░реНрди рдЪрд╛рд╣рдиреНрдЫ рднрдиреЗред
  • рджрд┐рдЗрдПрдХреЛ рд╡рд░реНрдЧрджреНрд╡рд╛рд░рд╛ рдЦреЛрдЬреНрдиреБрд╣реЛрд╕реН - рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛рд▓реЗ рдирдХреНрд╕рд╛рдорд╛ рд╡рд░реНрдЧрд╛рдХрд╛рд░ рдХреЛрд░реНрдЫ, рд░ рдпреЛ рддреНрд░рд┐рдЬреНрдпрд╛рдХрд╛ рд╕рдмреИ рдмрд┐рдиреНрджреБрд╣рд░реВ рдЙрд╣рд╛рдБрд▓рд╛рдИ рджреЗрдЦрд╛рдЗрдиреНрдЫред
  • рдердк рдлрд┐рд▓реНрдЯрд░рд╣рд░реВ рджреНрд╡рд╛рд░рд╛ рдЦреЛрдЬреНрдиреБрд╣реЛрд╕реНред рдмрд┐рдХреНрд░реАрдХреЛ рдЕрдВрдХ рд╡рд░реНрдЧреАрдХрд░рдгрдорд╛ рдПрдХ рдЕрд░реНрдХрд╛рдмрд╛рдЯ рдлрд░рдХ рдЫ

рдпрджрд┐ рд╣рд╛рдореА рд╕рдВрдЧрдардирдХреЛ рдмрд╛рд░реЗрдорд╛ рдХреБрд░рд╛ рдЧрд░реНрдЫреМрдВ рднрдиреЗ, рдкреЛрд╕реНрдЯрдЧреНрд░реЗрд╕рдорд╛ рд╣рд╛рдореАрд╕рдБрдЧ рдирдХреНрд╕рд╛ рд░ рд╕рдорд╛рдЪрд╛рд░ рджреБрд╡реИрдХреЛ рд▓рд╛рдЧрд┐ рдбрд╛рдЯрд╛ рд╕реНрд░реЛрдд рдЫ, рд░ рдЗрд▓рд╛рд╕реНрдЯрд┐рдХ рд╕реНрдиреНрдпрд╛рдкрд╢рдЯрд╣рд░реВ рдореВрд▓ рдбрд╛рдЯрд╛рдмрд╛рдЯ рд▓рд┐рдЗрдиреНрдЫред рддрдереНрдп рдпреЛ рд╣реЛ рдХрд┐ рд╕реБрд░реБрдорд╛ Postgres рд╕рдмреИ рдорд╛рдкрджрдгреНрдб рджреНрд╡рд╛рд░рд╛ рдЦреЛрдЬ рд╕рдВрдЧ рд╕рд╛рдордирд╛ рдЧрд░реНрди рд╕рдХреЗрдиред рддреНрдпрд╣рд╛рдБ рдзреЗрд░реИ рдЕрдиреБрдХреНрд░рдордгрд┐рдХрд╛рд╣рд░реВ рдорд╛рддреНрд░ рдерд┐рдПрдирдиреН, рддрд┐рдиреАрд╣рд░реВ рдкрдирд┐ рдУрднрд░рд▓реНрдпрд╛рдк рдЧрд░реНрди рд╕рдХреНрдереЗ, рддреНрдпрд╕реИрд▓реЗ рдкреЛрд╕реНрдЯрдЧреНрд░реЗрд╕ рдЕрдиреБрд╕реВрдЪрдХ рд╣рд░рд╛рдпреЛ рд░ рдХреБрди рдЕрдиреБрдХреНрд░рдордгрд┐рдХрд╛ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреЗ рдмреБрдЭрд┐рдПрдиред

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

3. рддреНрдпрд╕рдкрдЫрд┐ рд╣рд╛рдореАрд▓реЗ рд▓реЗрдирджреЗрди рдкреНрд░рд╢реЛрдзрдирд▓рд╛рдИ рд╕рд╛рд░рд┐рдпреЛред рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛рд╣рд░реВрд▓реЗ рд╕рд╛рдЗрдЯрдорд╛ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рдЙрддреНрдкрд╛рджрди рдХрд┐рдиреНрди рд░ рдкреБрд░рд╕реНрдХрд╛рд░ рдбреНрд░рдорд╛ рднрд╛рдЧ рд▓рд┐рди рд╕рдХреНрдЫрдиреНред рддреНрдпрд╕реНрддрд╛ рдЦрд░рд┐рджрд╣рд░реВ рдкрдЫрд┐, рд╣рд╛рдореА рд╡рд┐рд╢реЗрд╖ рдЧрд░реА рд╕рдкреНрддрд╛рд╣рдиреНрдд рд░ рдмрд┐рджрд╛рд╣рд░реВрдорд╛ рдареВрд▓реЛ рдорд╛рддреНрд░рд╛рдорд╛ рдбреЗрдЯрд╛ рдкреНрд░рд╢реЛрдзрди рдЧрд░реНрдЫреМрдВред рддреБрд▓рдирд╛рдХреЛ рд▓рд╛рдЧрд┐, рдпрджрд┐ рд╕рд╛рдорд╛рдиреНрдп рджрд┐рдирд╣рд░реВрдорд╛ рдЦрд░рд┐рджрд╣рд░реВрдХреЛ рд╕рдВрдЦреНрдпрд╛ 1,5-2 рдорд┐рд▓рд┐рдпрди рдмреАрдЪрдорд╛ рд╣реБрдиреНрдЫ рднрдиреЗ, рдЫреБрдЯреНрдЯреАрд╣рд░реВрдорд╛ рдпреЛ рд╕рдВрдЦреНрдпрд╛ 53 рдорд┐рд▓рд┐рдпрди рдкреБрдЧреНрди рд╕рдХреНрдЫред

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

рдЖрд╡рдзрд┐рдХрддрд╛

рдЕрдм рдЕрджреНрдпрд╛рд╡рдзрд┐рдХрд╣рд░реВ рдирд┐рдореНрди рд╕рд░реНрддрд╣рд░реВ рдЕрдиреБрд╕рд╛рд░ рдШрдЯрдирд╛-рдЖрдзрд╛рд░рд┐рдд рдХрдиреНрдлрд┐рдЧрд░ рдЧрд░рд┐рдПрдХрд╛ рдЫрдиреН:

  1. рдмрд┐рдХреНрд░реА рдЕрдВрдХред рд╣рд╛рдореАрд▓реЗ рдмрд╛рд╣реНрдп рд╕реНрд░реЛрддрдмрд╛рдЯ рдбрд╛рдЯрд╛ рдкреНрд░рд╛рдкреНрдд рдЧрд░реНрдиреЗ рдмрд┐рддреНрддрд┐рдХреИ, рд╣рд╛рдореА рддреБрд░реБрдиреНрддреИ рдЕрдкрдбреЗрдЯ рд╕реБрд░реБ рдЧрд░реНрдЫреМрдВред
  2. рд╕рдорд╛рдЪрд╛рд░ред рд╕рд╛рдЗрдЯрдорд╛ рдХреБрдиреИ рдкрдирд┐ рд╕рдорд╛рдЪрд╛рд░ рд╕рдореНрдкрд╛рджрди рд╣реБрдиреЗ рдмрд┐рддреНрддрд┐рдХреИ, рдпреЛ рд╕реНрд╡рддрдГ рдЗрд▓рд╛рд╕реНрдЯрд┐рдХрдорд╛ рдкрдард╛рдЗрдиреНрдЫред

рдпрд╣рд╛рдБ рдлреЗрд░рд┐ рдпреЛ рд▓реЛрдЪрджрд╛рд░ рдХреЛ рдлрд╛рдЗрджрд╛рд╣рд░реБ рдЙрд▓реНрд▓реЗрдЦ рд▓рд╛рдпрдХ рдЫред Postgres рдорд╛, рдЕрдиреБрд░реЛрдз рдкрдард╛рдЙрдБрджрд╛, рддрдкрд╛рдИрдВрд▓реЗ рдЗрдорд╛рдирджрд╛рд░реАрдкреВрд░реНрд╡рдХ рд╕рдмреИ рд░реЗрдХрд░реНрдбрд╣рд░реВ рдкреНрд░рд╢реЛрдзрди рдирдЧрд░реЗрд╕рдореНрдо рдкрд░реНрдЦрдиреБ рдкрд░реНрдЫред рддрдкрд╛рдИрд▓реЗ 10 рд░реЗрдХрд░реНрдбрд╣рд░реВ рдЗрд▓рд╛рд╕реНрдЯрд┐рдХрдорд╛ рдкрдард╛рдЙрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ рд░ рддреБрд░реБрдиреНрддреИ рдХрд╛рдо рд╕реБрд░реБ рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ, рд░реЗрдХрд░реНрдбрд╣рд░реВ рд╕рдмреИ рд╢рд╛рд░реНрдбрд╣рд░реВрдорд╛ рд╡рд┐рддрд░рд┐рдд рд╣реБрдирдХреЛ рд▓рд╛рдЧрд┐ рдкреНрд░рддреАрдХреНрд╖рд╛ рдирдЧрд░реАред рдирд┐рд╕реНрд╕рдиреНрджреЗрд╣, рдХреЗрд╣рд┐ рд╢рд╛рд░реНрдб рд╡рд╛ рдкреНрд░рддрд┐рдХреГрддрд┐рд▓реЗ рддреБрд░реБрдиреНрддреИ рдбрд╛рдЯрд╛ рджреЗрдЦреНрди рд╕рдХреНрджреИрди, рддрд░ рд╕рдмреИ рдХреБрд░рд╛ рдЪрд╛рдБрдбреИ рдЙрдкрд▓рдмреНрдз рд╣реБрдиреЗрдЫред

рдПрдХреАрдХрд░рдг рд╡рд┐рдзрд┐рд╣рд░реВ

рддреНрдпрд╣рд╛рдБ рдЗрд▓рд╛рд╕реНрдЯрд┐рдХрд╕рдБрдЧ рдПрдХреАрдХреГрдд рдЧрд░реНрдиреЗ реи рддрд░рд┐рдХрд╛рд╣рд░реВ рдЫрдиреН:

  1. TCP рдорд╛ рдореВрд▓ рдЧреНрд░рд╛рд╣рдХ рдорд╛рд░реНрдлрддред рдиреЗрдЯрд┐рдн рдбреНрд░рд╛рдЗрднрд░ рдмрд┐рд╕реНрддрд╛рд░реИ рдорд░реНрджреИрдЫ: рдпреЛ рдЕрдм рд╕рдорд░реНрдерд┐рдд рдЫреИрди, рдпреЛ рдПрдХ рдзреЗрд░реИ рдЕрд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╡рд╛рдХреНрдп рд░рдЪрдирд╛ рдЫред рддреНрдпрд╕рдХрд╛рд░рдг, рд╣рд╛рдореА рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рд░реВрдкрдорд╛ рдпрд╕рд▓рд╛рдИ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрджреИрдиреМрдВ рд░ рдпрд╕рд▓рд╛рдИ рдкреВрд░реНрдг рд░реВрдкрдорд╛ рддреНрдпрд╛рдЧреНрди рдкреНрд░рдпрд╛рд╕ рдЧрд░реНрдЫреМрдВред
  2. HTTP рдЗрдиреНрдЯрд░рдлреЗрд╕ рдорд╛рд░реНрдлрдд рдЬрд╕рд▓реЗ JSON рдЕрдиреБрд░реЛрдзрд╣рд░реВ рд░ рд▓реБрд╕реЗрди рд╕рд┐рдиреНрдЯреНрдпрд╛рдХреНрд╕ рджреБрд╡реИ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди рд╕рдХреНрдЫред рдЕрдиреНрддрд┐рдо рдПрдЙрдЯрд╛ рдкрд╛рда рдЗрдиреНрдЬрд┐рди рд╣реЛ рдЬрд╕рд▓реЗ рдЗрд▓рд╛рд╕реНрдЯрд┐рдХ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрджрдЫред рдпрд╕ рд╕рдВрд╕реНрдХрд░рдгрдорд╛, рд╣рд╛рдореАрд▓реЗ HTTP рдорд╛ JSON рдЕрдиреБрд░реЛрдзрд╣рд░реВ рдорд╛рд░реНрдлрдд рдмреНрдпрд╛рдЪ рдЧрд░реНрдиреЗ рдХреНрд╖рдорддрд╛ рдкрд╛рдЙрдБрдЫреМрдВред рдпреЛ рд╣рд╛рдореАрд▓реЗ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди рдЦреЛрдЬреЗрдХреЛ рд╡рд┐рдХрд▓реНрдк рд╣реЛред

HTTP рдЗрдиреНрдЯрд░рдлреЗрд╕рдХреЛ рд▓рд╛рдЧрд┐ рдзрдиреНрдпрд╡рд╛рдж, рд╣рд╛рдореА рдкреБрд╕реНрддрдХрд╛рд▓рдпрд╣рд░реВ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди рд╕рдХреНрдЫреМрдВ рдЬрд╕рд▓реЗ HTTP рдХреНрд▓рд╛рдЗрдиреНрдЯрдХреЛ рдПрд╕рд┐рдиреНрдХреНрд░реЛрдирд╕ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдкреНрд░рджрд╛рди рдЧрд░реНрджрдЫред рд╣рд╛рдореА рдмреНрдпрд╛рдЪ рд░ рдПрд╕рд┐рдиреНрдХреНрд░реЛрдирд╕ API рдХреЛ рдлрд╛рдЗрджрд╛ рд▓рд┐рди рд╕рдХреНрдЫреМрдВ, рдЬрд╕рд▓реЗ рдЙрдЪреНрдЪ рдкреНрд░рджрд░реНрд╢рдирдХреЛ рдкрд░рд┐рдгрд╛рдо рджрд┐рдиреНрдЫ, рдЬрд╕рд▓реЗ рдареВрд▓реЛ рдкрджреЛрдиреНрдирддрд┐рдХреЛ рджрд┐рдирд╣рд░реВрдорд╛ рдзреЗрд░реИ рдорджреНрджрдд рдЧрд░реНтАНрдпреЛ (рддрд▓рдХреЛ рдмрд╛рд░реЗрдорд╛ рдердк)

рддреБрд▓рдирд╛ рдХреЛ рд▓рд╛рдЧреА рдХреЗрд╣рд┐ рд╕рдВрдЦреНрдпрд╛рд╣рд░реБ:

  • рдкреЛрд╕реНрдЯрдЧреНрд░реЗрд╕ рдмрд╛рдЙрдиреНрдЯреА рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛рд╣рд░реВрд▓рд╛рдИ 20 рдереНрд░реЗрдбрд╣рд░реВрдорд╛ рд╕рдореВрд╣ рдмрд┐рдирд╛ рдмрдЪрдд рдЧрд░реНрджреИ: 460713 рд╕реЗрдХреЗрдиреНрдбрдорд╛ 42 рд░реЗрдХрд░реНрдбрд╣рд░реВ
  • 10 рдереНрд░реЗрдбрд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рд▓реЛрдЪрджрд╛рд░ + рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛рд╢реАрд▓ рдЧреНрд░рд╛рд╣рдХ + 1000 рддрддреНрд╡рд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рдмреНрдпрд╛рдЪ: 596749 рд╕реЗрдХреЗрдиреНрдбрдорд╛ 11 рд░реЗрдХрд░реНрдбрд╣рд░реВ
  • 10 рдереНрд░реЗрдбрд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рд▓реЛрдЪрджрд╛рд░ + рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛рд╢реАрд▓ рдЧреНрд░рд╛рд╣рдХ + 1000 рддрддреНрд╡рд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рдмреНрдпрд╛рдЪ: 23801684 рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐рд╣рд░реВ 4 рдорд┐рдиреЗрдЯрдорд╛

рдЕрдм рд╣рд╛рдореАрд▓реЗ рдПрдХ HTTP рдЕрдиреБрд░реЛрдз рдкреНрд░рдмрдиреНрдзрдХ рд▓реЗрдЦреЗрдХрд╛ рдЫреМрдВ рдЬрд╕рд▓реЗ JSON рд▓рд╛рдИ рдмреНрдпрд╛рдЪ/рдирдЯ рдмреНрдпрд╛рдЪрдХреЛ рд░реВрдкрдорд╛ рдмрдирд╛рдЙрдБрдЫ рд░ рдкреБрд╕реНрддрдХрд╛рд▓рдпрдХреЛ рдкрд░реНрд╡рд╛рд╣ рдирдЧрд░реА рдХреБрдиреИ рдкрдирд┐ HTTP рдХреНрд▓рд╛рдЗрдиреНрдЯ рдорд╛рд░реНрдлрдд рдкрдард╛рдЙрдБрдЫред рддрдкрд╛рдИрдВ рд╕рд┐рдВрдХреНрд░реЛрдирд╕ рд╡рд╛ рдПрд╕рд┐рдиреНрдХреНрд░реЛрдирд╕ рд░реВрдкрдорд╛ рдЕрдиреБрд░реЛрдзрд╣рд░реВ рдкрдард╛рдЙрди рдкрдирд┐ рдЫрдиреМрдЯ рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫред

рдХреЗрд╣реА рдПрдХреАрдХрд░рдгрд╣рд░реВрдорд╛, рд╣рд╛рдореА рдЕрдЭреИ рдкрдирд┐ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рдпрд╛рддрд╛рдпрд╛рдд рдЧреНрд░рд╛рд╣рдХ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдЫреМрдВ, рддрд░ рдпреЛ рдЕрд░реНрдХреЛ рд░рд┐рдлреНрдпрд╛рдХреНрдЯрд░рд┐рдВрдЧрдХреЛ рдХреБрд░рд╛ рдорд╛рддреНрд░ рд╣реЛред рдпрд╕ рдЕрд╡рд╕реНрдерд╛рдорд╛, рд╡рд╕рдиреНрдд WebClient рдХреЛ рдЖрдзрд╛рд░рдорд╛ рдирд┐рд░реНрдорд┐рдд рдХрд╕реНрдЯрдо рдХреНрд▓рд╛рдЗрдиреНрдЯ рдкреНрд░рд╢реЛрдзрди рдХреЛ рд▓рд╛рдЧреА рдкреНрд░рдпреЛрдЧ рдЧрд░рд┐рдиреНрдЫред

ElasticSearch рдХреЛ рд╕рд╛рде рд╣рд╛рдЗрд▓реЛрдб рдкреНрд░реЛрдЬреЗрдХреНрдЯрдорд╛ рд▓реЛрдб рдЕрдкреНрдЯрд┐рдорд╛рдЗрдЬреЗрд╕рди

рдареВрд▓реЛ рдкрджреЛрдиреНрдирддрд┐

рд╡рд░реНрд╖рдорд╛ рдПрдХ рдкрдЯрдХ, рдкрд░рд┐рдпреЛрдЬрдирд╛рд▓реЗ рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛рд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рдареВрд▓реЛ рдкрджреЛрдиреНрдирддрд┐ рд╣реЛрд╕реНрдЯ рдЧрд░реНрджрдЫ - рдпреЛ рдЙрд╣реА рд╣рд╛рдЗрд▓реЛрдб рд╣реЛ, рдХрд┐рдирдХрд┐ рдпрд╕ рд╕рдордпрдорд╛ рд╣рд╛рдореА рдПрдХреИ рд╕рдордпрдорд╛ рд▓рд╛рдЦреМрдВ рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛рд╣рд░реВрд╕рдБрдЧ рдХрд╛рдо рдЧрд░реНрдЫреМрдВред

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

2019 рдХреЛ рд╕реБрд░реБрдорд╛, рд╣рд╛рдореАрд▓реЗ рдирд┐рд░реНрдгрдп рдЧрд░реНрдпреМрдВ рдХрд┐ рд╣рд╛рдореАрд▓рд╛рдИ ElasticSearch рдЖрд╡рд╢реНрдпрдХ рдЫред рдкреВрд░реИ рд╡рд░реНрд╖рдХреЛ рд▓рд╛рдЧрд┐, рд╣рд╛рдореАрд▓реЗ рдЗрд▓рд╛рд╕реНрдЯрд┐рдХрдорд╛ рдкреНрд░рд╛рдкреНрдд рдбрд╛рдЯрд╛рдХреЛ рдкреНрд░рд╢реЛрдзрди рд░ рдореЛрдмрд╛рдЗрд▓ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рд░ рд╡реЗрдмрд╕рд╛рдЗрдЯрдХреЛ рдПрдкреАрдЖрдИрдорд╛ рдЬрд╛рд░реА рдЧрд░реНрдиреЗ рд╡реНрдпрд╡рд╕реНрдерд╛ рдЧрд░реНрдпреМрдВред рдлрд▓рд╕реНрд╡рд░реВрдк, рдЕрд░реНрдХреЛ рд╡рд░реНрд╖ рдЕрднрд┐рдпрд╛рдирдХреЛ рдХреНрд░рдордорд╛ рд╣рд╛рдореАрд▓реЗ рдкреНрд░рд╢реЛрдзрди рдЧрд░реНтАНрдпреМрдВ 15 рдорд┐рдиреЗрдЯрдорд╛ 131 рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐рд╣рд░реВред

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

рдирд┐рд╖реНрдХрд░реНрд╖/рдирд┐рд╖реНрдХрд░реНрд╖

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

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

рдпрджрд┐ рд╣рд╛рдореАрд▓рд╛рдИ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛рдорд╛ рдкреВрд░реНрдг-рдкрд╛рда рдЦреЛрдЬ рдЪрд╛рд╣рд┐рдиреНрдЫ рд╡рд╛ рдпрджрд┐ рд╣рд╛рдореАрд╕рдБрдЧ рдзреЗрд░реИ рдлрд░рдХ рдЦреЛрдЬ рдорд╛рдкрджрдгреНрдбрд╣рд░реВ рдЫрдиреН рднрдиреЗ, рд╣рд╛рдореАрд▓рд╛рдИ рдкрд╣рд┐рд▓реЗ рдиреИ рдерд╛рд╣рд╛ рдЫ рдХрд┐ рдпрд╕рд▓рд╛рдИ рдЗрд▓рд╛рд╕реНрдЯрд┐рдХрдорд╛ рдЕрдиреБрд╡рд╛рдж рдЧрд░реНрди рдЖрд╡рд╢реНрдпрдХ рдЫред

тМШтМШтМШ

рдкрдвреНрдиреБ рднрдПрдХреЛрдорд╛ рдзрдиреНрдпрд╡рд╛рджред рдпрджрд┐ рддрдкрд╛рдИрдВрдХреЛ рдХрдореНрдкрдиреАрд▓реЗ рдкрдирд┐ ElasticSearch рдкреНрд░рдпреЛрдЧ рдЧрд░реНрджрдЫ рд░ рдпрд╕рдХреЛ рдЖрдлреНрдиреИ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЗрд╕рд╣рд░реВ рдЫрдиреН рднрдиреЗ, рд╣рд╛рдореАрд▓рд╛рдИ рднрдиреНрдиреБрд╣реЛрд╕реНред рдЕрд░реВрд╣рд░реВ рдХрд╕реНрддреЛ рдЫрдиреН рднрдиреЗрд░ рдЬрд╛рдиреНрди рд░реЛрдЪрдХ рд╣реБрдиреЗрдЫ ЁЯЩВ

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

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