к этому, одному GCP persistent disk, и направить в них 100 000 RPM? С объемом от 1 до 500 000 000(у нас сейчас такие лимиты на чтение из Графита) datapoints?
не обязательно иметь один persistent disk - лучше диск на каждый шард. Шардирование в данном случае как раз и обеспечит горизонтальное скалирование. Независимо можно отскейлить и vm-select сервисы, что тоже улучшит скорость чтения данных
GCP persistent disk нельзя использовать с нескольких компов одновременно. Он подключается только к одному компу. Его производительность (bandwidth & iops) растет линейно с размерами этого диска. И этот диск можно динамически расширять до 257 терабайт без остановки операционной системы.
100K rpm - это 1.7K rps. Такую нагрузку может выдержать и single-node victoriametrics, если приходят "легкие" запросы по небольшому количеству уникальных временных рядов за небольшой интервал времени. См. https://medium.com/@valyala/measuring-vertical-scalability-for-time-series-databases-in-google-cloud-92550d78d8ae . Если же это тяжелые запросы по десяткам тысяч временных рядов с сотнями миллионов точек, то такой rps даже здоровенный кластер кликхаус не потянет :)
ВМ может просканировать 500М точек за 10 секунд на одном ядре. Скорость сканирования масштабируется линейно на имеющиеся ядра, как и у кликхауса. Поэтому на 20 ядрах запрос займет полсекунды.
Обсуждают сегодня