Cassandra Multi Lat Синхронизация данных дата задержки

Я настроил кластер Cassandra, охватывающий два центра обработки данных (AWS, us-east и us-west). Запись происходит только в кольцо восток-США, и я вижу, как данные синхронизируются с другим кольцом. Однако отставание велико.

On DC1
cqlsh:ks> select count(*) from cf1 limit 1000000;

 count
--------
 225568

On DC2
cqlsh:ks> select count(*) from cf1 limit 1000000;

 count
--------
 139964

-

  1. Почему это так и от чего это зависит?
  2. Есть ли способ увидеть отставание с помощью каких-либо инструментов? это доступно для просмотра в OpsCenter?

1 ответ

Поскольку ваши два DC находятся в разных регионах AWS, вы можете увидеть некоторое отставание между ними. Это зависит от объема данных, синхронизируемых между контроллерами домена. Если у вас большие семейства столбцов и / или высокий уровень записи, это будет означать, что будет синхронизировано больше данных. С помощью LOCAL_QUORUM это правильный выбор для хранения записей в местном DC. Вы можете использовать более низкий уровень согласованности, если хотите, вообще говоря, если согласованность данных важна, эмпирическое правило всегда должно писать на более высоком уровне согласованности, чем ваши чтения.

Помимо обычных инструментов на уровне ОС, Cassandra имеет nodetool полезность. Для мониторинга вы можете использовать следующие nodetool команды:

nodetool netstats - (показывает, что узел выполняет потоковую передачу данных) http://www.datastax.com/documentation/cassandra/2.0/cassandra/tools/toolsNetstats.html

nodetool cfstats - (показывает статистику семейства столбцов, полезную для задержки и т. д.) http://www.datastax.com/documentation/cassandra/2.0/cassandra/tools/toolsCFstats.html

nodetool proxyhistograms - (показывает статистику из узлов-координаторов) http://www.datastax.com/documentation/cassandra/2.0/cassandra/tools/toolsProxyHistograms.html

Есть также ряд других очень полезных команд nodetool, которые вы можете использовать:

http://www.datastax.com/documentation/cassandra/2.0/cassandra/tools/toolsNodetool_r.html

Я предполагаю, что вы используете Cassandra 2.0, но для других версий многие команды похожи для nodetool

В качестве примечания вы также можете использовать OpsCenter, который дает графическое представление кластера, для получения дополнительной информации см.: http://www.datastax.com/documentation/opscenter/5.0/opsc/about_c.html

Другие вопросы по тегам