Кассандра, почему количество SSTABLE равно 3 для 1 семейства столбцов (таблица)

Я новичок в cassandra, 1) почему в семействе с одним столбцом есть 3 sstable. 2) хранится ли каждый столбец таблицы (семейства столбцов) в разных узлах кольца? или полностью семейство столбцов, хранящееся в одном узле (если я не установил коэффициент репликации).

пример: Таблица: сообщение1

Количество SSTable: 3

    Space used (live), bytes: 221521
    Space used (total), bytes: 226349
    SSTable Compression Ratio: 0.2548965072049006
    Number of keys (estimate): 384
    Memtable cell count: 7817866
    Memtable data size, bytes: 38797312
    Memtable switch count: 51
    Local read count: 0
    Local read latency: 0.000 ms
    Local write count: 26539152
    Local write latency: 0.000 ms
    Pending tasks: 0
    Bloom filter false positives: 0

3)

commitlog_sync: периодический commitlog_sync_period_in_ms: 10000

Commitlog Sync составляет 10 секунд. Но данные не передаются и не сбрасываются на диск ?. Размер данных Memtable, байты: 38797312


person user3661080    schedule 31.05.2014    source источник


Ответы (3)


SSTable является неизменным, поэтому, когда когда-либо происходят вставки / обновления, вместо перезаписи строк Cassandra записывает новую версию вставленных или обновленных данных с меткой времени в другой SSTable. Выполняя сжатие, вы можете объединить все SStable в одну SSTable.

Сжатие объединяет данные в каждом файле SSTable по ключу раздела, выбирая самые свежие данные для хранения на основе их отметки времени.

http://www.datastax.com/documentation/cassandra/2.0/cassandra/dml/dml_write_path_c.html

person Yasmeen    schedule 29.01.2015

1) почему в одноколонном семействе 3 стабильных?

Новый SSTABLE создается всякий раз, когда memtable сбрасывается на диск. когда происходит это смывание? Когда memtable заполнена или журнал фиксации заполнен, или запускается ручная очистка. Существует ограничение на количество SSTABLE в узле, этот предел настраивается (min_threshold, т.е. максимальное количество sstables может присутствовать в узле одновременно). Когда этот предел нарушается, запускается сжатие, которое объединяет SSTABLES и создает новый SSTABLE с последними данными с отметками времени из всех SSTABLES по ключу раздела.

2) это каждый столбец таблицы?

Нет 1-1 маппинга ч / б столбцов семейства и стабильного. Новый SSTABLE создается всякий раз, когда memtable сбрасывается на диск.

person Shivanshu Goyal    schedule 28.12.2019

Вам следует изучить it.

Насколько я знаю, Кассандра создает три файла для SSTable: один для данных, другой для фильтра цветения и третий для индексов.

Думаю, это вам поможет.

person kkmishra    schedule 03.06.2014