Увеличение скорости записи Influxdb на AWS экземплярах - PullRequest
0 голосов
/ 02 мая 2020

Мой AWS экземпляр прослушивает подключение к веб-сокету в качестве клиента и записывает данные, которые он получает, в локальную базу данных influenxdb. Данные отправляются в виде небольшого JSON и хранятся в буфере, пока они не будут записаны в базу данных infxdb. Сервер веб-сокетов может отправлять до 400 JSON в секунду (промежуток между JSON 2,5 мс), хотя иногда этот разрыв может быть больше в зависимости от внешних факторов.

Мне нужно иметь возможность обрабатывать и записывать каждое измерение со скоростью, превышающей скорость, с которой сервер веб-сокетов может отправлять данные. Я должен также упомянуть, что я не смог бы записать измерения в большом количестве (?), Так как они должны быть записаны в БД, как только они будут получены экземпляром AWS.

В настоящее время с SSD, который я выбрал, макс. IOPS составляет 10000 (io1), а процентиль производительности составляет

0.1     15.4874
0.2     18.5304
0.3     21.6218
0.4     25.2372
0.5     30.0340
0.6     36.5352
0.7     50.9232
0.8     89.5916
0.9    221.9764
Name: insertDuration, dtype: float64

Произошло значительное улучшение при переходе со 100 IOPS до 4000 IOPS SSD. Но теперь, как вы можете видеть, цель 90-го процентиля должна быть меньше 2,5 мс, но она на порядок выше!

Насколько я понимаю, IOPS можно увеличить до 32 000, что я могу попробовать, но Я не ожидаю впечатляющего улучшения от одного только этого, учитывая, что не было большого улучшения от 4000 до 10000 IOPS.

Могу ли я попытаться ускорить время записи?

Стоит ли помнить о том, что influenxb это плохой выбор для этого варианта использования?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...