Подтвердить что ты не робот

Почему бы вам не начать с "одиночного и малого" сервера Cassandra, как вы обычно это делаете с MySQL?

Для любого веб-сайта, который только начинается, загрузка первоначально минимальна и растет с медленным темпом изначально. Люди обычно начинают со своих сайтов на базе MySQL с одним сервером (*** это тоже VPS, а не выделенный сервер), работающий как на сервере приложений, так и на сервере БД, и обычно слишком затягивается с этой настройкой и только по мере того, как они чувствуют потребность они отделяют БД от сервера приложений, предоставляя ему отдельный сервер VPS. Это то, что начинается с ожиданий во время планирования закупок ресурсов.

Но пока что я видел, это нечто совсем другое с Кассандрой. Обычно люди рекомендуют начинать с по крайней мере кластера 3 node (на выделенных серверах) с большим количеством ОЗУ. 4 ГБ или 8 ГБ ОЗУ - это то, что они предлагают начать. Так что Cassandra требует больше аппаратных ресурсов по сравнению с MySQL, поскольку веб-сайт обеспечивает аналогичную производительность, обслуживает аналогичную нагрузку/трафик и тот же объем данных. Я понимаю о более высоких требованиях к хранению Cassandra из-за репликации, но как насчет других аппаратных ресурсов?

Не можем ли мы начать с приложений на базе Cassandra, как и MySQL. Начиная с 1 или 2 VPS и добавляя все, когда есть необходимость?

Изменить:

Я не хочу сравнивать яблоки с апельсинами. Я просто хочу знать, насколько опаснее ситуация, когда я начинаю работу с одной установки cassandra, основанной на node VPS, с одной установкой MySQL на базе node VPS. Разница между этими двумя ситуациями. Серверы cassandra более подвержены недоступности, чем серверы MySQL? Что плохо, если я ставлю tomcat вместе с Cassandra, поскольку люди используют стек LAMP на одном сервере.

4b9b3361

Ответ 1

TL; DR;
Вы даже можете начать с одного node, но вы потеряете высокодоступный коэффициент c *.

Cassandra построен для систем, которые обрабатывают огромные объемы данных, терабайты и в некоторых случаях петабайт. Многие пользователи обычно переключаются с MySQL (и множества других RDBMS) на Cassandra, когда обнаруживают, что их текущая система БД не может эффективно обрабатывать нагрузку данных (запросы медленнее, управление хранилищем становится сложным и т.д.).


Почему 4-8 ГБ ГБ RAM?

4-8 ГБ оперативной памяти - это использование JVM и размера бара при эффективной сборке мусора. Совет утверждает, что вы должны начинать с 8 ГБ, но шляпа вам не должно быть больше 8 ГБ

Это не означает, что вы не можете использовать Cassandra для запуска одного node на очень простой машине (у некоторых людей есть кассандра, работающая на малине pi).


Почему люди рекомендуют 3 узла?

Доступность - одна из основных точек продажи cassandra. Если у вас есть 2 узла с RF= 2, вы не можете выполнять записи, если один node спускается. Если у вас есть 3 узла, вы все равно можете выполнять как чтение, так и запись.

Ответ 2

Короткий ответ: вы абсолютно можете начинать с одного маленького node.

То, что я думаю, что другие люди получают, предлагая вам не делать этого, так это то, что вы изучаете разные вещи в зависимости от того, как вы настраиваете свою систему.

Единственный node не имеет высокой доступности, но если вы только начинаете экспериментировать с Cassandra, то это, вероятно, не проблема. Вы не получите много информации о том, как делать резервные копии, как настраивать вещи и, очевидно, как сбой... но в вашем случае вам, вероятно, все равно.

Вы будете иметь возможность узнать о кодировании с и для Cassandra, и если вы исходите из традиционной RDBMS, что намного больше и важнее препятствие.

Посмотрите, нравится ли вам модель данных. Посмотрите, нравится ли вам дизайн без схемы. Если вы преодолеете все, что вы можете, тогда подумайте о том, как увеличить масштаб.

WRT ваш другой вопрос: один кластер node Cassandra, даже работающий на небольшой машине, даже если его совместное использование этой машины с другими службами не должно быть более "опасным", чем запуск MySQL в аналогичной конфигурации.

Ответ 3

Обычно люди рекомендуют начинать с по крайней мере кластера 3 node (на выделенных серверах) с большим количеством ОЗУ. 4 ГБ или 8 ГБ ОЗУ - это то, что они предлагают начать.

Рекомендации по оборудованию Cassandra обычно для людей, у которых будет 100 ГБ данных. Вы можете избежать лишнего, если у вас нет большого количества данных. Вы можете настроить JVM до использования только кучи размером 512 МБ или 1 ГБ в файле cassandra-env.sh.

Не можем ли мы начать с приложений на базе Cassandra, как и MySQL. Начиная с 1 или 2 VPS и добавляя все, когда есть необходимость?

Да, вы можете. Но, если вы хотите получить максимальную отдачу от Cassandra, вы обязательно захотите начать работу с по крайней мере двумя серверами, три, если вам нужно будет использовать QUORUM для согласованности и по-прежнему поддерживать один node.

Хотя я никогда не запускал производственную систему на небольших серверах, я запускал постоянно доступный кластер QA на виртуальной машине с 4 ГБ оперативной памяти и 2 ядрами. И для небольших размеров данных я видел, как другие запускают кластеры всего на 2 ГБ ОЗУ.

Самое приятное в Cassandra заключается в том, что, когда вам нужно больше, очень легко добавлять новые узлы в кластер. И если вы хотите переместить свой кластер на более мощное оборудование, вместо добавления большего количества вы можете легко добавить новые большие коробки, а затем удалить старые.

Update:
Вот недавний пост в блоге о том, что Cassandra запускается с кучей 64 MB:

Ответ 4

В ответ на последнюю часть вашего вопроса

"Разве мы не можем начать с приложений на базе Cassandra, как MySQL. Начиная с 1 или 2 VPS и добавляя больше всякий раз, когда есть необходимость?"

Вы можете начать с написания приложений на Кассандре. Я построил банковское приложение поверх кассандры, и он работал хорошо. У меня был кластер 6 node и использовался Cassandra 1.1.Cassandra имеет настраиваемую согласованность данных, которая варьируется от очень сильной согласованности (поддержка транзакций) и возможной согласованности.

Вы могли бы начать с одного VPS и масштабироваться по мере необходимости. Cassandra масштабируется и добавление новых узлов приводит к линейному увеличению производительности.

Подробнее вы можете посмотреть это видео:

http://www.youtube.com/watch?v=5qEoEAfAer8

Полезные ссылки:

http://www.datastax.com/docs/1.1/initialize/cluster_init

http://www.datastax.com/2012/01/how-to-set-up-and-monitor-a-multi-node-cassandra-cluster-on-linux