ΠžΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΡ Π½Π° Π½Π°Ρ‚ΠΎΠ²Π°Ρ€Π²Π°Π½Π΅Ρ‚ΠΎ Π² Highload ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° ElasticSearch

Π—Π΄Ρ€Π°Π²Π΅ΠΉ, Π₯Π°Π±Ρ€! Казвам сС Максим Π’Π°ΡΠΈΠ»ΡŒΠ΅Π², работя ΠΊΠ°Ρ‚ΠΎ Π°Π½Π°Π»ΠΈΠ·Π°Ρ‚ΠΎΡ€ ΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅Π½ ΠΌΠ΅Π½ΠΈΠ΄ΠΆΡŠΡ€ Π² FINCH. ДнСс Π±ΠΈΡ… искал Π΄Π° Ρ€Π°Π·ΠΊΠ°ΠΆΠ° ΠΊΠ°ΠΊ с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° ElasticSearch успяхмС Π΄Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΈΠΌ 15 ΠΌΠΈΠ»ΠΈΠΎΠ½Π° запитвания Π·Π° 6 ΠΌΠΈΠ½ΡƒΡ‚ΠΈ ΠΈ Π΄Π° ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€Π°ΠΌΠ΅ СТСднСвния Ρ‚Ρ€Π°Ρ„ΠΈΠΊ Π½Π° сайта Π½Π° Π΅Π΄ΠΈΠ½ ΠΎΡ‚ Π½Π°ΡˆΠΈΡ‚Π΅ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΈ. Π—Π° съТалСниС, Ρ‰Π΅ трябва Π΄Π° сС Π·Π°ΠΎΠ±ΠΈΠΊΠΎΠ»ΠΈΠΌ Π±Π΅Π· ΠΈΠΌΠ΅Π½Π°, Ρ‚ΡŠΠΉ ΠΊΠ°Ρ‚ΠΎ ΠΈΠΌΠ°ΠΌΠ΅ NDA, надявамС сС Ρ‡Π΅ ΡΡŠΠ΄ΡŠΡ€ΠΆΠ°Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° статията няма Π΄Π° пострада. Π”Π° Π·Π°ΠΏΠΎΡ‡Π²Π°ΠΌΠ΅.

Как Π΅ ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΈΡ€Π°Π½ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΡŠΡ‚

На нашия Π±Π΅ΠΊΠ΅Π½Π΄ създавамС услуги, ΠΊΠΎΠΈΡ‚ΠΎ осигуряват работоспособността Π½Π° сайтовСтС ΠΈ ΠΌΠΎΠ±ΠΈΠ»Π½ΠΎΡ‚ΠΎ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π° нашия ΠΊΠ»ΠΈΠ΅Π½Ρ‚. ΠžΠ±Ρ‰Π°Ρ‚Π° структура ΠΌΠΎΠΆΠ΅ Π΄Π° сС Π²ΠΈΠ΄ΠΈ Π½Π° схСмата:

ΠžΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΡ Π½Π° Π½Π°Ρ‚ΠΎΠ²Π°Ρ€Π²Π°Π½Π΅Ρ‚ΠΎ Π² Highload ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° ElasticSearch

Π’ процСса Π½Π° Ρ€Π°Π±ΠΎΡ‚Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π²Π°ΠΌΠ΅ голямо количСство Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ: ΠΏΠΎΠΊΡƒΠΏΠΊΠΈ, плащания, ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ с баланси Π½Π° ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»ΠΈ, Π·Π° ΠΊΠΎΠΈΡ‚ΠΎ ΡΡŠΡ…Ρ€Π°Π½ΡΠ²Π°ΠΌΠ΅ ΠΌΠ½ΠΎΠ³ΠΎ ΠΆΡƒΡ€Π½Π°Π»ΠΈ, Π° ΡΡŠΡ‰ΠΎ Ρ‚Π°ΠΊΠ° ΠΈΠΌΠΏΠΎΡ€Ρ‚ΠΈΡ€Π°ΠΌΠ΅ ΠΈ СкспортирамС Ρ‚Π΅Π·ΠΈ Π΄Π°Π½Π½ΠΈ във външни систСми.

Π‘ΡŠΡ‰Π΅ΡΡ‚Π²ΡƒΠ²Π°Ρ‚ ΠΈ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΈ процСси, ΠΊΠΎΠ³Π°Ρ‚ΠΎ ΠΏΠΎΠ»ΡƒΡ‡Π°Π²Π°ΠΌΠ΅ Π΄Π°Π½Π½ΠΈ ΠΎΡ‚ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° ΠΈ Π³ΠΈ ΠΏΡ€Π΅Π΄Π°Π²Π°ΠΌΠ΅ Π½Π° ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»ΠΈΡ‚Π΅. ОсвСн Ρ‚ΠΎΠ²Π°, всС ΠΎΡ‰Π΅ ΡΡŠΡ‰Π΅ΡΡ‚Π²ΡƒΠ²Π°Ρ‚ процСси, ΡΠ²ΡŠΡ€Π·Π°Π½ΠΈ с плащанията ΠΈ бонуснитС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈ.

ΠšΡ€Π°Ρ‚ΠΊΠ° прСдистория

ΠŸΡŠΡ€Π²ΠΎΠ½Π°Ρ‡Π°Π»Π½ΠΎ ΠΊΠ°Ρ‚ΠΎ СдинствСно Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ…ΠΌΠ΅ PostgreSQL. НСговитС стандартни прСдимства Π·Π° Π‘Π£Π‘Π”: Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ Π½Π° Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ, Ρ€Π°Π·Π²ΠΈΡ‚ Π΅Π·ΠΈΠΊ Π·Π° ΠΈΠ·Π²Π»ΠΈΡ‡Π°Π½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ, ΡˆΠΈΡ€ΠΎΠΊ Π½Π°Π±ΠΎΡ€ ΠΎΡ‚ инструмСнти Π·Π° интСграция; Π² ΡΡŠΡ‡Π΅Ρ‚Π°Π½ΠΈΠ΅ с Π΄ΠΎΠ±Ρ€Π° производитСлност ΠΏΡ€ΠΎΠ΄ΡŠΠ»ΠΆΠΈΡ‚Π΅Π»Π½ΠΎ задоволяваха Π½Π°ΡˆΠΈΡ‚Π΅ Π½ΡƒΠΆΠ΄ΠΈ.

Π‘ΡŠΡ…Ρ€Π°Π½ΡΠ²Π°Ρ…ΠΌΠ΅ Π² Postgres Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎ всички Π΄Π°Π½Π½ΠΈ: ΠΎΡ‚ Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ Π΄ΠΎ Π½ΠΎΠ²ΠΈΠ½ΠΈ. Но с ΡƒΠ²Π΅Π»ΠΈΡ‡Π°Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»ΠΈΡ‚Π΅, ΡƒΠ²Π΅Π»ΠΈΡ‡Π°Π²Π°ΡˆΠ΅ сС ΠΈ броят Π½Π° запитванията.

Π—Π° Π΄Π° сС Ρ€Π°Π·Π±Π΅Ρ€Π΅, Π³ΠΎΠ΄ΠΈΡˆΠ½ΠΎΡ‚ΠΎ количСство сСсии ΠΏΡ€Π΅Π· 2017 Π³ΠΎΠ΄ΠΈΠ½Π° само Π½Π° дСсктоп сайта β€” 131 ΠΌΠΈΠ»ΠΈΠΎΠ½Π°. ΠŸΡ€Π΅Π· 2018 β€” 125 ΠΌΠΈΠ»ΠΈΠΎΠ½Π°. ΠŸΡ€Π΅Π· 2019 ΠΎΡ‚Π½ΠΎΠ²ΠΎ 130 ΠΌΠΈΠ»ΠΈΠΎΠ½Π°. Π”ΠΎΠ±Π°Π²Π΅Ρ‚Π΅ ΠΎΡ‰Π΅ 100-200 ΠΌΠΈΠ»ΠΈΠΎΠ½Π° ΠΎΡ‚ ΠΌΠΎΠ±ΠΈΠ»Π½Π°Ρ‚Π° вСрсия Π½Π° сайта ΠΈ ΠΌΠΎΠ±ΠΈΠ»Π½ΠΎΡ‚ΠΎ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π°Π²Π°Ρ‚Π΅ колосалното количСство запитвания.

Π‘ Ρ€ΡŠΡΡ‚Π° Π½Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°, Postgres Π²Π΅Ρ‡Π΅ Π½Π΅ ΡƒΡΠΏΡΠ²Π°ΡˆΠ΅ Π΄Π° сС справя с Π½Π°Ρ‚ΠΎΠ²Π°Ρ€Π²Π°Π½Π΅Ρ‚ΠΎ, Π½Π΅ успявахмС β€” появи сС голямо количСство Ρ€Π°Π·Π½ΠΎΠΎΠ±Ρ€Π°Π·Π½ΠΈ запитвания, Π·Π° ΠΊΠΎΠΈΡ‚ΠΎ Π½Π΅ ΠΌΠΎΠΆΠ°Ρ…ΠΌΠ΅ Π΄Π° създадСм Π΄ΠΎΡΡ‚Π°Ρ‚ΡŠΡ‡Π½ΠΎ индСкси.

Π Π°Π·Π±ΠΈΡ€Π°Ρ…ΠΌΠ΅, Ρ‡Π΅ Π΅ нСобходимост ΠΎΡ‚ Π΄Ρ€ΡƒΠ³ΠΈ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π° Π½Π° Π΄Π°Π½Π½ΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ Π΄Π° осигурят Π½Π°ΡˆΠΈΡ‚Π΅ Π½ΡƒΠΆΠ΄ΠΈ ΠΈ Π΄Π° ΠΎΠ±Π»Π΅ΠΊΡ‡Π°Ρ‚ Π½Π°Ρ‚ΠΎΠ²Π°Ρ€Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° PostgreSQL. ΠšΠ°Ρ‚ΠΎ възмоТни Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΈ Ρ€Π°Π·Π³Π»Π΅ΠΆΠ΄Π°Ρ…ΠΌΠ΅ Elasticsearch ΠΈ MongoDB. ΠŸΠΎΡΠ»Π΅Π΄Π½ΠΈΡΡ‚ Π³ΡƒΠ±Π΅ΡˆΠ΅ ΠΏΠΎ слСднитС Ρ‚ΠΎΡ‡ΠΊΠΈ:

  1. Π‘Π°Π²Π½Π° индСксация ΠΏΡ€ΠΈ ΡƒΠ²Π΅Π»ΠΈΡ‡Π΅Π½ΠΈΠΈ объСма Π΄Π°Π½Π½ΠΈ Π² индСкситС. ΠŸΡ€ΠΈ Elastic скоростта Π½Π΅ зависи ΠΎΡ‚ ΠΎΠ±Π΅ΠΌΠ° Π΄Π°Π½Π½ΠΈ.
  2. Няма ΠΏΡŠΠ»Π½ΠΎΡ‚Π΅ΠΊΡΡ‚ΠΎΠ²ΠΎ Ρ‚ΡŠΡ€ΡΠ΅Π½Π΅

Π’Π°ΠΊΠ° ΠΈΠ·Π±Ρ€Π°Ρ…ΠΌΠ΅ Elastic ΠΈ сС ΠΏΠΎΠ΄Π³ΠΎΡ‚Π²ΠΈΡ…ΠΌΠ΅ Π·Π° миграцията.

ΠœΠΈΠ³Ρ€Π°Ρ†ΠΈΡ към Elastic

1. Π—Π°ΠΏΠΎΡ‡Π½Π°Ρ…ΠΌΠ΅ миграцията с услугата Π·Π° Ρ‚ΡŠΡ€ΡΠ΅Π½Π΅ Π½Π° Ρ‚ΡŠΡ€Π³ΠΎΠ²ΡΠΊΠΈ Ρ‚ΠΎΡ‡ΠΊΠΈ. ΠΠ°ΡˆΠΈΡΡ‚ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ ΠΈΠΌΠ° ΠΎΠ±Ρ‰ΠΎ ΠΎΠΊΠΎΠ»ΠΎ 70 000 Ρ‚ΡŠΡ€Π³ΠΎΠ²ΡΠΊΠΈ Ρ‚ΠΎΡ‡ΠΊΠΈ ΠΈ Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ Π²ΠΈΠ΄ΠΎΠ²Π΅ Ρ‚ΡŠΡ€ΡΠ΅Π½Π΅ Π½Π° сайта ΠΈ Π² ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ:

  • ВСкстово Ρ‚ΡŠΡ€ΡΠ΅Π½Π΅ ΠΏΠΎ ΠΈΠΌΠ΅ Π½Π° насСлСно място
  • Π“Π΅ΠΎΡ‚ΡŠΡ€ΡΠ΅Π½Π΅ Π² Π·Π°Π΄Π°Π΄Π΅Π½ радиус ΠΎΡ‚ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π° Ρ‚ΠΎΡ‡ΠΊΠ°. НапримСр, Π°ΠΊΠΎ потрСбитСлят иска Π΄Π° Π²ΠΈΠ΄ΠΈ ΠΊΠΎΠΈ Ρ‚ΡŠΡ€Π³ΠΎΠ²ΡΠΊΠΈ Ρ‚ΠΎΡ‡ΠΊΠΈ са Π½Π°ΠΉ-Π±Π»ΠΈΠ·ΠΎ Π΄ΠΎ Π΄ΠΎΠΌΠ° ΠΌΡƒ.
  • Π’ΡŠΡ€ΡΠ΅Π½Π΅ Π² Π·Π°Π΄Π°Π΄Π΅Π½ ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚ – потрСбитСлят ΠΎΡ‡Π΅Ρ€Ρ‚Π°Π²Π° ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚ Π½Π° ΠΊΠ°Ρ€Ρ‚Π°Ρ‚Π° ΠΈ ΠΌΡƒ сС ΠΏΠΎΠΊΠ°Π·Π²Π°Ρ‚ всички Ρ‚ΠΎΡ‡ΠΊΠΈ Π² Ρ‚ΠΎΠ·ΠΈ радиус.
  • Π’ΡŠΡ€ΡΠ΅Π½Π΅ ΠΏΠΎ Π΄ΠΎΠΏΡŠΠ»Π½ΠΈΡ‚Π΅Π»Π½ΠΈ Ρ„ΠΈΠ»Ρ‚Ρ€ΠΈ. Π’ΡŠΡ€Π³ΠΎΠ²ΡΠΊΠΈΡ‚Π΅ Ρ‚ΠΎΡ‡ΠΊΠΈ сС Ρ€Π°Π·Π»ΠΈΡ‡Π°Π²Π°Ρ‚ ΠΏΠΎΠΌΠ΅ΠΆΠ΄Ρƒ си ΠΏΠΎ асортимСнт.

Π©ΠΎ сС отнася Π΄ΠΎ организацията, Π² Postgres ΠΈΠΌΠ°ΠΌΠ΅ ΠΈΠ·Ρ‚ΠΎΡ‡Π½ΠΈΠΊ Π½Π° Π΄Π°Π½Π½ΠΈ ΠΊΠ°ΠΊΡ‚ΠΎ Π·Π° ΠΊΠ°Ρ€Ρ‚ΠΈΡ‚Π΅, Ρ‚Π°ΠΊΠ° ΠΈ Π·Π° Π½ΠΎΠ²ΠΈΠ½ΠΈΡ‚Π΅, Π° Π² Elastic сС правят Snapshot’и Π½Π° ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»Π½ΠΈΡ‚Π΅ Π΄Π°Π½Π½ΠΈ. Π€Π°ΠΊΡ‚ Π΅, Ρ‡Π΅ ΠΏΡŠΡ€Π²ΠΎΠ½Π°Ρ‡Π°Π»Π½ΠΎ Postgres Π½Π΅ смогвашС Π΄Π° сС справи с Ρ‚ΡŠΡ€ΡΠ΅Π½Π΅Ρ‚ΠΎ ΠΏΠΎ всички ΠΊΡ€ΠΈΡ‚Π΅Ρ€ΠΈΠΈ. ОсвСн Ρ‚ΠΎΠ²Π° имашС ΠΌΠ½ΠΎΠ³ΠΎ индСкси, ΠΊΠΎΠΈΡ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ…Π° Π΄Π° сС прСсичат, Π·Π°Ρ‚ΠΎΠ²Π° ΠΏΠ»Π°Π½ΠΈΡ€ΠΎΠ²Ρ‡ΠΈΠΊΡŠΡ‚ Π½Π° Postgres сС Π·Π°Π³ΡƒΠ±Π²Π°ΡˆΠ΅ ΠΈ Π½Π΅ знаСшС ΠΊΠΎΠΉ индСкс Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°.

2. Π‘Π»Π΅Π΄Π²Π°Ρ‰Π°Ρ‚Π° Π½Π° Ρ€Π΅Π΄ бСшС Ρ€Π°Π·Π΄Π΅Π»Π° Π·Π° Π½ΠΎΠ²ΠΈΠ½ΠΈ. На сайта Π΅ΠΆΠ΅Π΄Π½Π΅Π²Π½ΠΎ сС появяват ΠΏΡƒΠ±Π»ΠΈΠΊΠ°Ρ†ΠΈΠΈ, Π·Π° Π΄Π° Π½Π΅ сС ΠΈΠ·Π³ΡƒΠ±ΠΈ потрСбитСлят Π² ΠΏΠΎΡ‚ΠΎΠΊΠ° ΠΎΡ‚ информация, Π΄Π°Π½Π½ΠΈΡ‚Π΅ трябва Π΄Π° сС сортират ΠΏΡ€Π΅Π΄ΠΈ ΠΈΠ·Π΄Π°Π²Π°Π½Π΅Ρ‚ΠΎ. Π—Π° Ρ‚ΠΎΠ²Π° Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Ρ‚ΡŠΡ€ΡΠ΅Π½Π΅Ρ‚ΠΎ: Π½Π° сайта ΠΌΠΎΠΆΠ΅ Π΄Π° сС Ρ‚ΡŠΡ€ΡΠΈ ΠΏΠΎ тСкстово съвпадСниС, Π° ΡΡŠΡ‰ΠΎ Ρ‚Π°ΠΊΠ° ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° сС Π²ΠΊΠ»ΡŽΡ‡Π²Π°Ρ‚ Π΄ΠΎΠΏΡŠΠ»Π½ΠΈΡ‚Π΅Π»Π½ΠΈ Ρ„ΠΈΠ»Ρ‚Ρ€ΠΈ, Ρ‚ΡŠΠΉ ΠΊΠ°Ρ‚ΠΎ Ρ‚Π΅ ΡΡŠΡ‰ΠΎ са Π½Π°ΠΏΡ€Π°Π²Π΅Π½ΠΈ Ρ‡Ρ€Π΅Π· Elastic.

3. Π‘Π»Π΅Π΄ Ρ‚ΠΎΠ²Π° прСмСстихмС ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°Ρ‚Π° Π½Π° Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ. ΠŸΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»ΠΈΡ‚Π΅ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° ΠΊΡƒΠΏΡƒΠ²Π°Ρ‚ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ Π½Π° сайта ΠΈ Π΄Π° участват Π² Ρ‚ΠΎΠΌΠ±ΠΎΠ»ΠΈ. Π‘Π»Π΅Π΄ Ρ‚Π°ΠΊΠΈΠ²Π° ΠΏΠΎΠΊΡƒΠΏΠΊΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π²Π°ΠΌΠ΅ голямо количСство Π΄Π°Π½Π½ΠΈ, особСно ΠΏΡ€Π΅Π· ΡƒΠΈΠΊΠ΅Π½Π΄ΠΈ ΠΈ ΠΏΡ€Π°Π·Π½ΠΈΡ†ΠΈ. Π—Π° сравнСниС, Π°ΠΊΠΎ ΠΏΡ€Π΅Π· ΠΎΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΡ‚Π΅ Π΄Π½ΠΈ броят Π½Π° ΠΏΠΎΠΊΡƒΠΏΠΊΠΈΡ‚Π΅ Π΅ ΠΎΠΊΠΎΠ»ΠΎ 1,5-2 ΠΌΠ»Π½, ΠΏΠΎ ΠΏΡ€Π°Π·Π½ΠΈΡ†ΠΈΡ‚Π΅ Ρ†ΠΈΡ„Ρ€Π°Ρ‚Π° ΠΌΠΎΠΆΠ΅ Π΄Π° достигнС 53 ΠΌΠ»Π½.

ΠŸΡ€ΠΈ Ρ‚ΠΎΠ²Π°, Π΄Π°Π½Π½ΠΈΡ‚Π΅ трябва Π΄Π° сС обработят Π·Π° ΠΌΠΈΠ½ΠΈΠΌΠ°Π»Π½ΠΎ Π²Ρ€Π΅ΠΌΠ΅ β€” ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»ΠΈΡ‚Π΅ Π½Π΅ ΠΎΠ±ΠΈΡ‡Π°Ρ‚ Π΄Π° Ρ‡Π°ΠΊΠ°Ρ‚ Ρ€Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚ΠΈ няколко Π΄Π½ΠΈ. ΠŸΡ€Π΅Π· Postgres Π½Π΅ ΠΌΠΎΠΆΠ΅ Π΄Π° сС постигнС Ρ‚Π°ΠΊΡŠΠ² срок β€” чСсто ΠΏΠΎΠ»ΡƒΡ‡Π°Π²Π°Ρ…ΠΌΠ΅ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠΈ ΠΈ Π΄ΠΎΠΊΠ°Ρ‚ΠΎ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π²Π°Ρ…ΠΌΠ΅ всички заявки, ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»ΠΈΡ‚Π΅ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ…Π° Π΄Π° провСрят Π΄Π°Π»ΠΈ са спСчСлили Π½Π°Π³Ρ€Π°Π΄ΠΈ ΠΈΠ»ΠΈ Π½Π΅. Π’ΠΎΠ²Π° Π½Π΅ Π΅ ΠΌΠ½ΠΎΠ³ΠΎ приятно Π·Π° бизнСса, Π·Π°Ρ‚ΠΎΠ²Π° прСмСстихмС ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°Ρ‚Π° Π² Elasticsearch.

ЧСстота

Π’ ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° обновлСния са настроСни Π½Π° ΡΡŠΠ±ΠΈΡ‚ΠΈΡ ΠΏΡ€ΠΈ слСднитС условия:

  1. Π’ΠΎΡ‡ΠΊΠΈ Π½Π° ΠΏΡ€ΠΎΠ΄Π°ΠΆΠ±Π°. Π’Π΅Π΄Π½Π°Π³Π° слСд ΠΊΠ°Ρ‚ΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ Π΄Π°Π½Π½ΠΈ ΠΎΡ‚ външСн ΠΈΠ·Ρ‚ΠΎΡ‡Π½ΠΈΠΊ, стартирамС ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅Ρ‚ΠΎ.
  2. Новини. Π’Π΅Π΄Π½Π°Π³Π° слСд Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€Π°Π½Π΅ Π½Π° Π½ΠΎΠ²ΠΈΠ½Π° Π½Π° сайта, тя Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΡ‡Π½ΠΎ сС ΠΈΠ·ΠΏΡ€Π°Ρ‰Π° Π² Elastic.

Π’ΡƒΠΊ ΠΎΡ‚Π½ΠΎΠ²ΠΎ трябва Π΄Π° спомСнСм прСдимствата Π½Π° Elastic. Π’ Postgres, ΠΊΠΎΠ³Π°Ρ‚ΠΎ сС ΠΈΠ·ΠΏΡ€Π°Ρ‰Π° заявка, трябва Π΄Π° ΠΈΠ·Ρ‡Π°ΠΊΠ°ΠΌΠ΅, Π΄ΠΎΠΊΠ°Ρ‚ΠΎ ΠΊΠΎΡ€Π΅ΠΊΡ‚Π½ΠΎ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΈ всички записи. Π’ Elastic ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° ΠΈΠ·ΠΏΡ€Π°Ρ‚ΠΈΠΌ 10 000 записа ΠΈ Π²Π΅Π΄Π½Π°Π³Π° Π΄Π° Π·Π°ΠΏΠΎΡ‡Π½Π΅ΠΌ Ρ€Π°Π±ΠΎΡ‚Π°, Π±Π΅Π· Π΄Π° Ρ‡Π°ΠΊΠ°ΠΌΠ΅, Π΄ΠΎΠΊΠ°Ρ‚ΠΎ Π΄Π°Π½Π½ΠΈΡ‚Π΅ сС разпространят ΠΏΠΎ всички Shards. Π Π°Π·Π±ΠΈΡ€Π° сС, някой Shard ΠΈΠ»ΠΈ Replica ΠΌΠΎΠΆΠ΅ Π΄Π° Π½Π΅ видят Π΄Π°Π½Π½ΠΈΡ‚Π΅ Π²Π΅Π΄Π½Π°Π³Π°, Π½ΠΎ ΠΌΠ½ΠΎΠ³ΠΎ скоро всичко Ρ‰Π΅ бъдС Π΄ΠΎΡΡ‚ΡŠΠΏΠ½ΠΎ.

Начини Π½Π° интСграция

Има 2 Π½Π°Ρ‡ΠΈΠ½Π° Π·Π° интСграция с Elastic:

  1. Π§Ρ€Π΅Π· нативния ΠΊΠ»ΠΈΠ΅Π½Ρ‚ ΠΏΠΎ TCP. Нативният Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ постСпСнно ΡƒΠΌΠΈΡ€Π°: спира Π΄Π° сС ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ° ΠΈ ΡΠΈΠ½Ρ‚Π°ΠΊΡΠΈΡΡŠΡ‚ ΠΌΡƒ Π΅ ΠΌΠ½ΠΎΠ³ΠΎ Π½Π΅ΡƒΠ΄ΠΎΠ±Π΅Π½. Π—Π°Ρ‚ΠΎΠ²Π° практичСски Π½Π΅ Π³ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ ΠΈ сС ΠΎΠΏΠΈΡ‚Π²Π°ΠΌΠ΅ Π΄Π° сС ΠΎΡ‚ΠΊΠ°ΠΆΠ΅ΠΌ ΠΎΡ‚ Π½Π΅Π³ΠΎ напълно.
  2. Π§Ρ€Π΅Π· HTTP интСрфСйс, Π² ΠΊΠΎΠΉΡ‚ΠΎ ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ ΠΊΠ°ΠΊΡ‚ΠΎ JSON заявки, Ρ‚Π°ΠΊΠ° ΠΈ синтаксиса Π½Π° Lucene. ΠŸΠΎΡΠ»Π΅Π΄Π½ΠΎΡ‚ΠΎ Π΅ тСкстовият Π΄Π²ΠΈΠ³Π°Ρ‚Π΅Π», ΠΊΠΎΠΉΡ‚ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Elastic. Π’ Ρ‚Π°ΠΊΡŠΠ² Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ ΠΏΠΎΠ»ΡƒΡ‡Π°Π²Π°ΠΌΠ΅ Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ Π·Π° Batch Ρ‡Ρ€Π΅Π· JSON заявки ΠΏΠΎ HTTP. ИмСнно Ρ‚ΠΎΠ·ΠΈ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ сС ΠΎΠΏΠΈΡ‚Π²Π°ΠΌΠ΅ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅.

Π‘Π»Π°Π³ΠΎΠ΄Π°Ρ€Π΅Π½ΠΈΠ΅ Π½Π° HTTP интСрфСйса ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ прСдоставят асинхронна рСализация Π½Π° HTTP ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. МоТСм Π΄Π° сС възползвамС ΠΎΡ‚ Batch ΠΈ асинхронния API, ΠΊΠΎΠ΅Ρ‚ΠΎ накрая Π΄Π°Π²Π° висока производитСлност, която Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»Π½ΠΎ ΠΏΠΎΠΌΠΎΠ³Π½Π° Π² Π΄Π½ΠΈΡ‚Π΅ Π½Π° голямата акция (ΠΏΠΎ-Π΄ΠΎΠ»Ρƒ Π·Π° Ρ‚ΠΎΠ²Π°)

Някои Ρ†ΠΈΡ„Ρ€ΠΈ Π·Π° сравнСниС:

  • Π—Π°ΠΏΠ°Π·Π²Π°Π½Π΅ Π½Π° ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»ΠΈ, ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΈ Π½Π°Π³Ρ€Π°Π΄ΠΈ Π² Postgres Π² 20 ΠΏΠΎΡ‚ΠΎΠΊΠ° Π±Π΅Π· Π°Π³Ρ€Π΅Π³ΠΈΡ€Π°Π½Π΅: 460713 записа Π·Π° 42 сСкунди
  • Elastic + Ρ€Π΅Π°ΠΊΡ‚ΠΈΠ²Π΅Π½ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ Π½Π° 10 ΠΏΠΎΡ‚ΠΎΠΊΠ° + batch Π½Π° 1000 Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚Π°: 596749 записа Π·Π° 11 сСкунди
  • Elastic + Ρ€Π΅Π°ΠΊΡ‚ΠΈΠ²Π΅Π½ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ Π½Π° 10 ΠΏΠΎΡ‚ΠΎΠΊΠ° + batch Π½Π° 1000 Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚Π°: 23801684 записа Π·Π° 4 ΠΌΠΈΠ½ΡƒΡ‚ΠΈ

Π’ ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° смС написали HTTP ΠΌΠ΅Π½ΠΈΠ΄ΠΆΡŠΡ€ Π½Π° заявки, ΠΊΠΎΠΉΡ‚ΠΎ ΠΈΠ·Π³Ρ€Π°ΠΆΠ΄Π° JSON, ΠΊΠ°Ρ‚ΠΎ Batch/Π½Π΅ Batch ΠΈ ΠΈΠ·ΠΏΡ€Π°Ρ‰Π° ΠΏΡ€Π΅Π· всСки HTTP ΠΊΠ»ΠΈΠ΅Π½Ρ‚ нСзависимо ΠΎΡ‚ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°Ρ‚Π°. Π‘ΡŠΡ‰ΠΎ Ρ‚Π°ΠΊΠ° ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° ΠΈΠ·Π±ΠΈΡ€Π°ΠΌΠ΅ синхронно ΠΈΠ»ΠΈ асинхронно ΠΈΠ·ΠΏΡ€Π°Ρ‰Π°Π½Π΅ Π½Π° заявки.

Π’ някои ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ всС ΠΎΡ‰Π΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ официалния транспортСн ΠΊΠ»ΠΈΠ΅Π½Ρ‚, Π½ΠΎ Ρ‚ΠΎΠ²Π° Π΅ просто Π²ΡŠΠΏΡ€ΠΎΡ Π½Π° прСдстояща Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³. Π—Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° собствСн ΠΊΠ»ΠΈΠ΅Π½Ρ‚, построСн Π½Π° Π±Π°Π·Π° Spring WebClient.

ΠžΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΡ Π½Π° Π½Π°Ρ‚ΠΎΠ²Π°Ρ€Π²Π°Π½Π΅Ρ‚ΠΎ Π² Highload ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° ElasticSearch

Голяма акция

Π’Π΅Π΄Π½ΡŠΠΆ годишно Π½Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° сС ΠΏΡ€ΠΎΠ²Π΅ΠΆΠ΄Π° голямо ΡΡŠΠ±ΠΈΡ‚ΠΈΠ΅ Π·Π° ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»ΠΈΡ‚Π΅ β€” Ρ‚ΠΎΡ‡Π½ΠΎ Ρ‚ΠΎΠ²Π° Π΅ Highload, Ρ‚ΡŠΠΉ ΠΊΠ°Ρ‚ΠΎ ΠΏΠΎ Ρ‚ΠΎΠ²Π° Π²Ρ€Π΅ΠΌΠ΅ Ρ€Π°Π±ΠΎΡ‚ΠΈΠΌ с дСсСтки ΠΌΠΈΠ»ΠΈΠΎΠ½ΠΈ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»ΠΈ Π΅Π΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ.

ОбикновСно ΠΏΠΈΠΊΠΎΠ²Π΅Ρ‚Π΅ Π½Π° Π½Π°Ρ‚ΠΎΠ²Π°Ρ€Π²Π°Π½Π΅Ρ‚ΠΎ сС случват Π² ΠΏΡ€Π°Π·Π½ΠΈΡ‡Π½ΠΈ Π΄Π½ΠΈ, Π½ΠΎ Ρ‚ΠΎΠ²Π° ΡΡŠΠ±ΠΈΡ‚ΠΈΠ΅ Π΅ Π½Π° съвсСм Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΎ Π½ΠΈΠ²ΠΎ. ΠŸΡ€Π΅Π΄ΠΈ Π΄Π²Π΅ Π³ΠΎΠ΄ΠΈΠ½ΠΈ Π½Π° дСня Π½Π° ΡΡŠΠ±ΠΈΡ‚ΠΈΠ΅Ρ‚ΠΎ ΠΏΡ€ΠΎΠ΄Π°Π΄ΠΎΡ…ΠΌΠ΅ 27 580 890 Π΅Π΄ΠΈΠ½ΠΈΡ†ΠΈ стока. Π”Π°Π½Π½ΠΈΡ‚Π΅ сС ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π²Π°Ρ…Π° ΠΏΠΎΠ²Π΅Ρ‡Π΅ ΠΎΡ‚ ΠΏΠΎΠ»ΠΎΠ²ΠΈΠ½ час, ΠΊΠΎΠ΅Ρ‚ΠΎ създавашС нСудобства Π·Π° ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»ΠΈΡ‚Π΅. ΠŸΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»ΠΈΡ‚Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ…Π° Π½Π°Π³Ρ€Π°Π΄ΠΈ Π·Π° участиСто си, Π½ΠΎ стана ясно, Ρ‡Π΅ ΠΏΡ€ΠΎΡ†Π΅ΡΡŠΡ‚ трябва Π΄Π° сС ускори.

Π’ Π½Π°Ρ‡Π°Π»ΠΎΡ‚ΠΎ Π½Π° 2019 Π³ΠΎΠ΄ΠΈΠ½Π° Ρ€Π΅ΡˆΠΈΡ…ΠΌΠ΅, Ρ‡Π΅ Π½ΠΈ Π΅ Π½ΡƒΠΆΠ΅Π½ ElasticSearch. Цяла Π³ΠΎΠ΄ΠΈΠ½Π° ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΈΡ€Π°Ρ…ΠΌΠ΅ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°Ρ‚Π° Π½Π° ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΡ‚Π΅ Π΄Π°Π½Π½ΠΈ Π² Elastic ΠΈ тяхното ΠΈΠ·Π²Π΅ΠΆΠ΄Π°Π½Π΅ Π² API Π½Π° ΠΌΠΎΠ±ΠΈΠ»Π½ΠΎΡ‚ΠΎ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈ сайта. Π’ ΠΊΡ€Π°ΠΉΠ½Π° смСтка, Π½Π° слСдващата Π³ΠΎΠ΄ΠΈΠ½Π° ΠΏΠΎ Π²Ρ€Π΅ΠΌΠ΅ Π½Π° ΡΡŠΠ±ΠΈΡ‚ΠΈΠ΅Ρ‚ΠΎ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΈΡ…ΠΌΠ΅ 15 131 783 записа Π·Π° 6 ΠΌΠΈΠ½ΡƒΡ‚ΠΈ.

Въй ΠΊΠ°Ρ‚ΠΎ ΠΈΠΌΠ°ΠΌΠ΅ ΠΌΠ½ΠΎΠ³ΠΎ ΠΆΠ΅Π»Π°Π΅Ρ‰ΠΈ Π΄Π° купят стока ΠΈ Π΄Π° участват Π² Ρ‚ΠΎΠΌΠ±ΠΎΠ»Π°Ρ‚Π° Π·Π° Π½Π°Π³Ρ€Π°Π΄ΠΈ, Ρ‚ΠΎΠ²Π° Π΅ Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅. Π’ ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° ΠΈΠ·ΠΏΡ€Π°Ρ‰Π°ΠΌΠ΅ Π°ΠΊΡ‚ΡƒΠ°Π»Π½Π° информация Π² Elastic, Π½ΠΎ Π² Π±ΡŠΠ΄Π΅Ρ‰Π΅ ΠΏΠ»Π°Π½ΠΈΡ€Π°ΠΌΠ΅ Π°Ρ€Ρ…ΠΈΠ²Π½Π°Ρ‚Π° информация ΠΎΡ‚ ΠΏΡ€Π΅Π΄ΠΈΡˆΠ½ΠΈΡ‚Π΅ мСсСци Π΄Π° сС ΠΏΡ€Π΅Ρ…Π²ΡŠΡ€Π»Ρ Π² Postgres, ΠΊΠ°Ρ‚ΠΎ ΠΏΠ΅Ρ€ΠΌΠ°Π½Π΅Π½Ρ‚Π½ΠΎ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅. Π—Π° Π΄Π° Π½Π΅ Π·Π°ΠΌΡŠΡ€ΡΡΠ²Π°ΠΌΠ΅ индСкса Π½Π° Elastic, ΠΊΠΎΠΉΡ‚ΠΎ ΡΡŠΡ‰ΠΎ ΠΈΠΌΠ° своитС ограничСния.

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅/ΠΈΠ·Π²ΠΎΠ΄ΠΈ

Π’ ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° смС ΠΏΡ€Π΅Ρ…Π²ΡŠΡ€Π»ΠΈΠ»ΠΈ Π² Elastic всички услуги, ΠΊΠΎΠΈΡ‚ΠΎ искахмС, ΠΈ Π·Π° сСга смС Π½Π°ΠΏΡ€Π°Π²ΠΈΠ»ΠΈ ΠΏΠ°ΡƒΠ·Π°. Π‘Π΅Π³Π° ΠΈΠ·Π³Ρ€Π°ΠΆΠ΄Π°ΠΌΠ΅ индСкс Π² Elastic Π²ΡŠΡ€Ρ…Ρƒ основното пСрсистСнтно Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ Π² Postgres, ΠΊΠΎΠΉΡ‚ΠΎ ΠΏΠΎΠ΅ΠΌΠ° потрСбитСлското Π½Π°Ρ‚ΠΎΠ²Π°Ρ€Π²Π°Π½Π΅.

Π’ Π±ΡŠΠ΄Π΅Ρ‰Π΅ ΠΏΠ»Π°Π½ΠΈΡ€Π°ΠΌΠ΅ Π΄Π° ΠΏΡ€Π΅Ρ…Π²ΡŠΡ€Π»ΠΈΠΌ услуги, Π°ΠΊΠΎ Ρ€Π°Π·Π±Π΅Ρ€Π΅ΠΌ, Ρ‡Π΅ заявкитС Π·Π° Π΄Π°Π½Π½ΠΈ стават Ρ‚Π²ΡŠΡ€Π΄Π΅ ΠΌΠ½ΠΎΠ³ΠΎΠΎΠ±Ρ€Π°Π·Π½ΠΈ ΠΈ сС Ρ‚ΡŠΡ€ΡΡΡ‚ ΠΏΠΎ Π½Π΅ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ Π±Ρ€ΠΎΠΉ ΠΊΠΎΠ»ΠΎΠ½ΠΈ. Π’ΠΎΠ²Π° Π²Π΅Ρ‡Π΅ Π΅ Π·Π°Π΄Π°Ρ‡Π° Π½Π΅ Π·Π° Postgres.

Ако Π½ΠΈ Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌ ΠΏΡŠΠ»Π½ΠΎΡ‚Π΅ΠΊΡΡ‚ΠΎΠ² Ρ‚ΡŠΡ€ΡΠ΅Π½Π΅ функционалност ΠΈΠ»ΠΈ Π°ΠΊΠΎ ΠΈΠΌΠ°ΠΌΠ΅ ΠΌΠ½ΠΎΠ³ΠΎ Ρ€Π°Π·Π½ΠΎΠΎΠ±Ρ€Π°Π·Π½ΠΈ ΠΊΡ€ΠΈΡ‚Π΅Ρ€ΠΈΠΈ Π·Π° Ρ‚ΡŠΡ€ΡΠ΅Π½Π΅, Π²Π΅Ρ‡Π΅ Π·Π½Π°Π΅ΠΌ, Ρ‡Π΅ трябва Π΄Π° Π³ΠΎ ΠΏΡ€Π΅Ρ…Π²ΡŠΡ€Π»ΠΈΠΌ Π² Elastic.

⌘⌘⌘

Благодаря, Ρ‡Π΅ ΠΏΡ€ΠΎΡ‡Π΅Ρ‚ΠΎΡ…Ρ‚Π΅. Ако Π² компанията Π²ΠΈ ΡΡŠΡ‰ΠΎ сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ElasticSearch ΠΈ ΠΈΠΌΠ°Ρ‚Π΅ собствСни случаи Π½Π° Ρ€Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π°Π½Π΅, сподСлСтС. Π©Π΅ бъдС интСрСсно Π΄Π° Ρ€Π°Π·Π±Π΅Ρ€Π΅ΠΌ ΠΊΠ°ΠΊ работят Π΄Ρ€ΡƒΠ³ΠΈΡ‚Π΅ πŸ™‚

Π˜Π·Ρ‚ΠΎΡ‡Π½ΠΈΠΊ: habr.com

ΠšΡƒΠΏΠ΅Ρ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ΄Π΅Π½ хостинг Π·Π° сайтовС с Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ DDoS, VPS VDS ΡΡŠΡ€Π²ΡŠΡ€ΠΈ πŸ”₯ ΠšΡƒΠΏΠ΅Ρ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ΄Π΅Π½ хостинг Π·Π° сайтовС с Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ DDoS, VPS VDS ΡΡŠΡ€Π²ΡŠΡ€ΠΈ | ProHoster