Лучший способ получить статую таблицы, такую ​​как общее количество строк и текущую рабочую нагрузку, например, операции Кассандры? - PullRequest
0 голосов
/ 10 июля 2019

Я пробую две вещи в нашем приложении на основе Cassandra, которое не позволяет остановить все службы для целей тестирования:

  1. Проверьте производительность, такую ​​как операционная система и задержка 99,9%, с помощью драйвера python. Чтобы получить более точный результат, мы хотим знать текущую рабочую нагрузку, такую ​​как операции чтения и записи Cassandra.
  2. Получите некоторую информацию, такую ​​как общее количество строк в таблице (на данный момент в нашей таблице содержится почти 8 миллиардов записей) и сколько записей вставлено в каждую неделю (есть некоторый источник данных, который мы не можем контролировать, поэтому эту информацию трудно получить непосредственно из скрипта вставки).

Я попробовал несколько методов для этих двух проблем:

  1. Обновлено в комментариях.

  2. select count(*) from xxx не работает вообще, и это слишком медленно. Я попытался получить некоторую информацию, используя nodetool tablestats, например system_distributed:

Keyspace : system_distributed
    Read Count: 0
    Read Latency: NaN ms
    Write Count: 0
    Write Latency: NaN ms
    Pending Flushes: 0
        Table: parent_repair_history
        SSTable count: 0
        Space used (live): 0
        Space used (total): 0
        Space used by snapshots (total): 0
        Off heap memory used (total): 0
        SSTable Compression Ratio: -1.0
        Number of partitions (estimate): 0
        Memtable cell count: 0
        Memtable data size: 0
        Memtable off heap memory used: 0
        Memtable switch count: 0
        Local read count: 0
        Local read latency: NaN ms
        Local write count: 0
        Local write latency: NaN ms
        Pending flushes: 0
        Percent repaired: 100.0
        Bloom filter false positives: 0
        Bloom filter false ratio: 0.00000
        Bloom filter space used: 0
        Bloom filter off heap memory used: 0
        Index summary off heap memory used: 0
        Compression metadata off heap memory used: 0
        Compacted partition minimum bytes: 0
        Compacted partition maximum bytes: 0
        Compacted partition mean bytes: 0
        Average live cells per slice (last five minutes): NaN
        Maximum live cells per slice (last five minutes): 0
        Average tombstones per slice (last five minutes): NaN
        Maximum tombstones per slice (last five minutes): 0
        Dropped Mutations: 0
        Table: repair_history
        SSTable count: 0
        Space used (live): 0
        Space used (total): 0
        Space used by snapshots (total): 0
        Off heap memory used (total): 0
        SSTable Compression Ratio: -1.0
        Number of partitions (estimate): 0
        Memtable cell count: 0
        Memtable data size: 0
        Memtable off heap memory used: 0
        Memtable switch count: 0
        Local read count: 0
        Local read latency: NaN ms
        Local write count: 0
        Local write latency: NaN ms
        Pending flushes: 0
        Percent repaired: 100.0
        Bloom filter false positives: 0
        Bloom filter false ratio: 0.00000
        Bloom filter space used: 0
        Bloom filter off heap memory used: 0
        Index summary off heap memory used: 0
        Compression metadata off heap memory used: 0
        Compacted partition minimum bytes: 0
        Compacted partition maximum bytes: 0
        Compacted partition mean bytes: 0
        Average live cells per slice (last five minutes): NaN
        Maximum live cells per slice (last five minutes): 0
        Average tombstones per slice (last five minutes): NaN
        Maximum tombstones per slice (last five minutes): 0
        Dropped Mutations: 0
        Table: view_build_status
        SSTable count: 0
        Space used (live): 0
        Space used (total): 0
        Space used by snapshots (total): 0
        Off heap memory used (total): 0
        SSTable Compression Ratio: -1.0
        Number of partitions (estimate): 0
        Memtable cell count: 0
        Memtable data size: 0
        Memtable off heap memory used: 0
        Memtable switch count: 0
        Local read count: 0
        Local read latency: NaN ms
        Local write count: 0
        Local write latency: NaN ms
        Pending flushes: 0
        Percent repaired: 100.0
        Bloom filter false positives: 0
        Bloom filter false ratio: 0.00000
        Bloom filter space used: 0
        Bloom filter off heap memory used: 0
        Index summary off heap memory used: 0
        Compression metadata off heap memory used: 0
        Compacted partition minimum bytes: 0
        Compacted partition maximum bytes: 0
        Compacted partition mean bytes: 0
        Average live cells per slice (last five minutes): NaN
        Maximum live cells per slice (last five minutes): 0
        Average tombstones per slice (last five minutes): NaN
        Maximum tombstones per slice (last five minutes): 0
        Dropped Mutations: 0

У них есть некоторые параметры, которые я не могу понять:

1025 * * а. Что означает локальный счет записи? Если у меня есть таблица, распределенная по разным узлам и имеющая несколько реплик, как рассчитать, сколько строк в этой таблице?

б. Описывают ли первые 5 строк (счетчик чтения, счетчик записи) информацию об этом пространстве ключей (system_distributed)?

с. Все ли задержки здесь означают среднюю задержку?

Ценю, если вы, ребята, могли бы дать мне любое предложение.

Jiashi

...