пятница, 26 апреля 2024 г.

Aerospike performance and consistency

       Я еще с лазадовских времен люблю Aerospike DB- за его довольно продуманную архитектуру, за быстроту и главное - предсказуемую производительность. Его время ответа практически не изменяется с увеличением нагрузки.  По сравнению с другими NoSQL базами которые хорошо работают только в безоблачную погоду - это прям очень ценное качество. Решил попробовать использовать ее в Zood для хранения продуктов. 
         По производительности - все как и 7-8 лет назад - топчик. Единственное - full scan медленный. Я понимаю что он в приципе должен быть медленный, но если сравнивать full scan в том же мускуле и full scan в Aerospike DB  - мускуль примерно раза в 2-3 быстрее перебирает. В общем умели деды в оптимизацию, ничего не скажешь. 

          Казалось бы все отлично, но пришла беда откуда не ждали. Во время тестов кластер пару раз развалился и начали вылезать уже удаленные записи. Начали ковырять и выяснилось что нужно включать strong consistency mode. А strong consistency - доступен только в Enterprise версии (то есть за очень большую денежку). И это прям засада. Почему они не сделали это доступным в Community Edition или хотябы в Standard? Consistency - это базовая вещь, без нее база вообще не может называться базой данных. Раньше в коммерческие версии входили разные свистоперделки улучшающие удобство использования или те что нужно только очень большим компаниям (типа кросс-датацентр репликации). Сейчас у них довольно странная ценовая политика https://aerospike.com/products/features-and-editions/ , если ты хочешь нормальную базу данных - то тебе обязательно нужен Enterprice. Все что ниже - просто удобный масштабируемый кэш и ничего больше. Community edition - кэш без удобств, Standard Edition - кэш с удобствами (operational features). 

          В общем вынужден констатировать что в очередной раз эффективные менеджеры и их неумная ценовая политика сгубили довольно хороший проект. При такой ценовой политике Aerospike годен разве что как замена Memcache/Redis, не более.

Комментариев нет:

Отправить комментарий