Комментарии 30
Полезно, но сумбурно.
Если scylla можно сравнивать с cassandra (по факту они совместимы даже на протокольном уровне)
db-engines.com/en/system/Cassandra%3BScyllaDB,
то похоже что aerospike это вообще из другой оперы
db-engines.com/en/system/Aerospike%3BCassandra
Спасибо, материала по aerospike и Scylla очень мало, видимо мало кто рискует их пихать в продакшен.
Про aerospike не в курсе, а вот scylla много кто использует в проде, потому что оно позволяет решить проблемы с производительностью кассандры в некоторых случаях практически без ломающих изменений.
Судя по тому что Scylla до сих пор не начали особо себя монетизировать и по отсутствию ее в рейтинге g2, а также по отсутствию в https://www.datanyze.com/market-share/databases--272, не сильно много кто использует.
На dbengines стабильно в районе 100-110 места.
А на ту мысль, что сейчас не особо монетизируется, наводит тот факт, что никаких ограничений по функциональности в бесплатной версии нет (возможно есть, но я их не увидел, если так прошу указать, где их можно посмотреть). Что в свою очередь резко снижает количество желающих(=нуждающихся) заплатить. Что равно формулировке «не особо монетизируется».
Конечно какая-то отдельная большая компания может решить платить просто за поддержку 24/7, но это явно не будет столько же стоить сколько можно брать за включение того или иного функционала (число серверов, объем данных, консистентность и т.д.).
Разница как раз есть, все описано в таблице тут www.scylladb.com/product/scylla-enterprise
Плюс есть DBaaS который очень популярен, и есть Managed Service который тоже неплохо идет. И Scylla Manager который не работает с опенсорсом в кластерах больше 5 нод.
Ничего более конкретного я сказать не могу, помимо того что когда я оттуда увольнялся, я не пожалел несколько тысяч долларов и выкупил все свои опционы.
В отличие от Aerospike, где я на бесплатной версии могу только 600 ГБ поставить. Тут уже понятно что серьезному бизнесу с объемами придется платить за entreprise по любому.
Значит все таки есть?
> я имел в виду, что они не выглядят как строго обязательные, без которых невозможно нормально работать.
Что будет платным и что нет решалось не от фонаря. Да, работать можно и без них, так же как и кассандра прекрасно работает без фишек от датастакс, но почему-то клиенты платят, и неплохо платят. Команда scylladb — выходцы из red hat, а не злостные проприетарщики, опенсорс сообщество очень многое дает фирме а не только берет. Не зря эта модель настолько успешна. Плюс опять же — managed services и DBaaS для тех кто вообще не хочет иметь дело с администрированием сложной системы, и готов платить.
> В отличие от Aerospike, где я на бесплатной версии могу только 600 ГБ поставить. Тут уже понятно что серьезному бизнесу с объемами придется платить за entreprise по любому.
так они от этого еще и страдают — ни один начинающий проект не будет смотреть на них всерьез потому что дорого, а на Scylla OSS — запросто. Зато когда подрастут и увидят необходимость в дополнительных фичах или просто в хорошей поддержке — начнут с радостью выписывать чеки
Спасибо. Так как redis, memcached и tarantul относятся скорее к классу in-memory, поэтому до них руки вряд ли дойдут. Сейчас меня интересуют решения для BigData, есть в планах протестировать в первую очередь самые популярные из этого класса.
На современных SSD и NVME Сцилла ведёт себя просто отлично — огромная производительность вставок, хорошая скорость чтений, если вам нужно просто большое хранилище для большого объёма данных выбор достаточно очевидный. Даже mail.ru использует Сциллу, несмотря на то что в Тарантуле есть Винил: www.scylladb.com/presentations/high-load-storage-of-users-actions-with-scylladb-and-hdds
При этом в Aerospike и особенно в Tarantool гораздо больше возможностей. В Тарантуле есть такие фишки как функциональные, частичные индексы, индексы по json, транзакции, встроенный сервер приложений. То есть получается что это инструменты для разных задач и с разными требованиями к железу (самая дешёвая стоимость хранения единицы информации в Сцилла, самая высокая — в Тарантул, Аэроспайк посередине), и сравнивать их по производительности в общем-то не очень корректно.
По субъективной оценке, операции по добавлению и удалению узлов, ребалансировке данных и т.д. наиболее зрелые в Сцилле.
«Так и задумывалось?» Или мне не по глазам возможность скачать ту самую версию без SMS регистрации?
Любят они все собирать почтовые ящики, есть такое) Однако можно скачать community (и даже enterprise) без смс например под CentOS через wget по прямой ссылке:
https://www.aerospike.com/download/server/latest/artifact/el8
Другие варианты тут:
https://www.aerospike.com/docs/operations/install/linux/index.html
То есть нужно некриво покопаться, чтобы таки найти ту бесплатную версию. Но это ладно, кто захочет — покопается. Но вот зачем ссылка якобы на бесплатную версию (Community edition) вот тут
www.aerospike.com/download
ведёт на тот же триал?
Задал вопрос их тех.поддержке — посмотрю, будет ли ответ.
Ну и дали рабочую ссылку:
www.aerospike.com/lp/aerospike-community-edition
В проде (адекватном конечно) так тоже не бывает — БД не бежит там же где поды со спарком например.
Scylla(клиент+сервер) = CpuUsage_A -> OperationsPerSecond_X
Aerospike(клиент+сервер) = CpuUsage_B -> OperationsPerSecond_Y
Где OperationsPerSecond_X < OperationsPerSecond_Y
Иными словами клиенты и база совместно более требовательны к ресурсам что при прочих равных ведет к меньшей производительности.
В нашем случае клиенты как правило на тех же нодах что и инстансы БД, поэтому особенно интересна именно такая комбинация.
Но минус этого всего в том что софт четко привязанный к конкретным ресурсам железа будет очень чувствительным к любым нагрузкам которые пытаются это самое железо отобрать, что мы как раз тут и имеем. Сама Scylla при установке изолирует выделенные под себя ядра и забирает определенный процент памяти, оставив один-два ядра свободными и цепляя на них такие задачи как обработка IRQ например.
Данный бенчмарк это явный антипаттерн для Scylla, и я бы не стал считать это честным сравнением, тем более что в реальных проектах, клиенты к БД не бегут там же где и сама БД (это тоже собственно антипаттерн).
Если очень хочется гонять все именно так, можно просто выделить Scylla мЕньший набор ядер и процент памяти (это все настраивается если надо), и запинить процессы нагрузки на свободные ядра через taskset или isolcpus
«On Red Hat / CentOS edit /etc/sysconfig/scylla-server, and add --smp 2 --overprovisioned to restrict Scylla to 2 logical cores.»
docs.scylladb.com/getting-started/scylla_in_a_shared_environment
- В прошлый раз обсуждение битвы тяжеловесов Cassandra VS HBase вызвало весьма бурную дискуссию,
- В моем тесте оптимизированная версия HBase (далее HB) работает с CS на равных,
В первом случае вывод был таков: "В целом получается такой вывод — в заданных условиях имеет место существенное преимущество HBase".
Не совсем понятен смысл упоминания этих двух результатов в контексте статьи, можете пояснить?
Новая схватка двух якодзун или Scylla vs Aerospike (+ HBase для массовки)