Я использую cassandra 2.1.12 в кластере из трех машин, каждая из которых имеет 32 ГБ ОЗУ и 4 ядра (на Amazon AWS).
Я использую всю конфигурацию cassandra по умолчанию.
Я использую его для анализа событий на своем веб-сайте (данные временных рядов), имея ежедневные данные около 1 ГБ с коэффициентом репликации 3.
Мои данные выросли примерно до 85 ГБ на каждой машине, теперь задержка чтения составляет около 4.5 s (4000 ms)
.
Мои строки редко обновляются. Итак, я не использую уплотнение LevelOrder. И мои записи работают хорошо с задержкой около .03ms
Отредактировано:
Вот определение ColumnFamily:
CREATE TABLE TimeSeriesData(
logyear int,
logmonth int,
logdate int,
logdatetime timestamp,
cookie text,
sessionid text,
...
PRIMARY KEY (logyear, logmonth, logdate, logdatetime, cookie)
) WITH CLUSTERING ORDER BY (logmonth ASC, logdate ASC, logdatetime ASC, cookie ASC)
AND bloom_filter_fp_chance = 0.01
AND caching = '{"keys":"ALL", "rows_per_partition":"NONE"}'
AND comment = ''
AND compaction = {'class': 'org.apache.cassandra.db.compaction.SizeTieredCompactionStrategy'}
AND compression = {'sstable_compression': 'org.apache.cassandra.io.compress.LZ4Compressor'}
AND dclocal_read_repair_chance = 0.1
AND default_time_to_live = 0
AND gc_grace_seconds = 864000
AND max_index_interval = 2048
AND memtable_flush_period_in_ms = 0
AND min_index_interval = 128
AND read_repair_chance = 0.0
AND speculative_retry = '99.0PERCENTILE';
Идя по моему ключу раздела, который в настоящее время является logyear. Итак, все мои данные будут в одном разделе. Сказав, что разделитель отвечает за распределение групп строк (по ключу раздела) между узлами в кластере.
В этом случае это будет один единственный узел или нет?
Кроме того, почему задержка чтения была очень низкой, несмотря на чтение данных из одного раздела?
Может ли один SSTable иметь несколько разделов и наоборот?
Я использую org.apache.cassandra.dht.RandomPartitioner
.
Кроме того, каким должен быть ключ незанятого раздела для семейства столбцов, как указано выше, с инкрементными данными 1 ГБ в день.