Cassandra具有行緩存以提高讀取性能。我有一個用例,其中一個表有20個字段,其中只有2個字段(f1和f2)更新/更改頻繁的任何給定的行,而其他字段非常靜態。cassandra和行緩存更新
如果行高速緩存最初包含特定主密鑰K1行值(整行),在閱讀本行(整個)將是快速的。後來如果我更新這一行的f1和f2字段(假設f1和f2的新值在memtable中 - 在內存中),那麼
1)將讀取此行(整行)同樣快,即將有任何磁盤訪問?
2)將讀取只是f1和f2字段(值memTable中),此行是快?
3)將讀取該行(除f1和f2其他的只是其他值 - 這並沒有改變/修改/更新的長,是行高速緩存)要快?
感謝您的快速反應。在上面的情況(1)中,沒有效率低下。 Cassandra可以將行的2個字段標記爲無效,並且當它必須返回一行時,它可以從memtable中獲取2個更改的字段,更新行緩存並返回行(將會很快) - 是否有任何計劃讓cassandra進行此優化。還有什麼意思呢 - 是幾微秒?慢的意思是 - 8ms到40ms? – sunillp
cassandra的正常讀取延遲可能是毫秒級的,只要您有一個合理調整的堆和小(高效)的分區大小。 –