2012-03-07 82 views
1

我面臨一個問題,Cassandra沒有存儲數據,但其他commit-log正在工作。我看到了配置文件.yaml。我已檢查過該文件夾,Cassandra已在MYKEYSPACENAME中創建了一個文件夾,但數據並未存儲在那裏。cassandra中的數據存儲問題

有什麼我需要存儲的數據?我使用Cassandra 1.0.7版本。

+0

爲什麼你認爲數據不存儲在那裏? – Jasonw 2012-03-07 11:42:54

+0

該文件夾爲空。 – KATy 2012-03-07 12:06:14

回答

2

聽起來好像一切正​​常。當Cassandra接收到要寫入的數據時,它首先寫入提交日誌和內存數據結構(稱爲Memtable)。一旦Memtable已滿,Cassandra會將其刷新到磁盤上的SSTable。您可以強制使用卡桑德拉nodetool刷新其Memtables:

nodetool flush [keyspace] [cfnames] 

這不是你需要的卡桑德拉環的正常運行做一些事情。 Cassandra最終會將Memtables刷新到磁盤。如果由於某種原因您的Cassandra機器中有一臺出現故障,重新啓動時它將重放提交日誌,因此您不會丟失之前收到的任何寫入。

The Cassandra wiki has more information on Memtables and SSTables