Cassandra multi-region settings / оптимизация - PullRequest
0 голосов
/ 25 мая 2018

Я настроил два DC с репликацией в двух регионах (NCSA и EMEA), используя Janusgraph (Gremlin / Cassandra / Elasticsearch).Репликация работает хорошо и все, однако производительность не так уж велика.

Я получаю время около 250 мс только для чтения на узле в NCSA (против 30 мс, когда у меня только один 1 узел DC / 1)и для записи это около 800 мс.

Я попытался изменить некоторые конфигурации:

  • storage.cassandra.replication-factor
  • storage.cassandra.read-уровень согласованности
  • storage.cassandra.write-уровень согласованности

Есть ли какие-либо другие параметры / конфигурации, которые я мог бы изменить, чтобы повысить производительность для установки в нескольких регионахили такого рода производительность ожидается с Janusgraph / Cassandra?

Спасибо


Самое низкое время, которое я смог получить, было с

  • storage.replication-strategy-class = org.apache.cassandra.locator.NetworkTopologyStrategy
  • storage.cassandra.replication-factor = 6
  • storage.cassandra.read-consistency-level = ONE
  • storage.cassandra.write-consiуровень stency = ОДИН
Datacenter: DC1
===============
Status=Up/Down
|/ State=Normal/Leaving/Joining/Moving
--  Address         Load       Tokens  Owns (effective)  Host ID                               Rack
UN  10.130.xxx.xxx  184.02 KB  256     100.0%            7c4c23f4-0112-4023-8af1-81a179f68973  RAC2
UN  10.130.xxx.xxx  540.67 KB  256     100.0%            193f0814-649f-4450-8b2e-85344f2c3cf2  RAC3
UN  10.130.xxx.xxx  187.47 KB  256     100.0%            fbbc42d6-a061-4604-935e-dbe1155d4017  RAC1
Datacenter: DC2
===============
Status=Up/Down
|/ State=Normal/Leaving/Joining/Moving
--  Address         Load       Tokens  Owns (effective)  Host ID                               Rack
UN  10.30.xxx.xxx    93.3 KB    256     100.0%            e7221808-ccb4-414a-b5b6-6e578ecb6f25  RAC3
UN  10.30.xxx.xxx    287.62 KB  256     100.0%            ca868262-4b5d-44d6-80f9-25439f8d2611  RAC2
UN  10.30.xxx.xxx    282.27 KB  256     100.0%            82d0f75d-635c-4016-84ca-ef9d1afda066  RAC1

1 Ответ

0 голосов
/ 29 мая 2018

Janusgraph поставляется с различными уровнями кэширования , активация некоторых из них может помочь.

О ConsistencyLevel, в конфигурации multi-dc значения LOCAL_xxx обеспечат лучшую производительность, но для безопасности я инициализируюназвание местного или ближайшего центра обработки данных Cassandra.(параметр конфигурации: storage.cassandra.astyanax.local-datacenter)

Вы можете сказать, на что тратится время (в слое Cassandra в слое JanusGraph)?Чтобы узнать время отклика Cassandra, вы можете запустить nodetool proxyhistograms, который показывает полную задержку запроса, записанную координатором.

...