Ich verwende cassandra 2.1.12 auf einem Cluster von drei Maschinen mit jeweils 32 GB RAM und 4 Kern (auf Amazon AWS)Hohe Leselatenz in cassandra
verwende ich alle Standardkonfiguration von cassandra.
ich es für meine Website Ereignisanalyse verwenden (Zeitreihendaten) mit täglichen Daten von rund 1 GB einen replcation Faktor 3.
Meine Daten mit hat auf jede Maschine auf rund 85 GB gewachsen nun schenkt Lese-Latenz von etwa 4.5 s (4000 ms)
Meine Zeilen werden selten aktualisiert Also ich benutze LevelOrder Compaction nicht. Und meine schreibt eine gute Leistung mit Verzögerung von rund .03ms
Editiert:
Hier ist die Definition von ColumnFamily ist:
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';
durch meine Partitionsschlüssel gehen, die derzeit logyear wird. Also, meine ganzen Daten würden in einer einzigen Partition sein. Allerdings muss der Partitionierer Gruppen von Zeilen (nach Partitionsschlüssel) über die Knoten im Cluster verteilen.
In diesem Fall wäre es ein einziger Knoten oder nicht?
Warum war die Latenz trotz Lesen der Daten von einer einzelnen Partition sehr schlecht?
Kann eine einzelne SSTable mehrere Partitionen enthalten und umgekehrt?
Ich verwende org.apache.cassandra.dht.RandomPartitioner
.
Moverover, was sollte der Leerlauf Partition Schlüssel für Spaltenfamilie wie oben erwähnt mit einer inkrementellen Daten von 1 GB täglich.
fügen Sie Konsistenzlevel und Tracing Dump hinzu. Es könnte anderen helfen –
Ich habe weitere Details hinzugefügt. Könnten Sie sich das bitte anschauen? – deenbandhu