Cassandra

Opscenter 的“寫入請求”計數顯示為 ops/sec 到底是什麼意思?

  • January 2, 2014

我最近開始了解並使用 cassandra。

我創建了兩個列族。對於 CF1,寫入是插入具有所有列值的唯一行。例如:插入操作的順序可能是這樣的:

     Key Col1  Col2   Col3
     k1  c11   c12   c13
     k2  c21   c22   c23

對於 CF2。寫入是插入行的時間戳列。例如:插入操作的順序可能是這樣的:

    Key  timeCol1  timeCol2
    k1   ct11
    k1   ct11        ct12
    k2   ct21
    k2   ct21        ct22

我正在使用 YCSB 並使用基於節儉的**client.batch_mutate()**呼叫。對於 CF1,我通過呼叫發送一行的所有列值。對於 CF2,我發送一行的新列 vals。

現在,當記錄計數為 10000 條記錄時,假設 opscenter 將“寫入請求”報告為 1000 次操作/秒。

從 opscenter 的角度來看,操作意味著什麼?這是否意味著所有列族中的唯一行插入?這是否意味著對每一行的每個突變進行計數?opscenter 如何辨識獨特的操作?從應用程序的角度來看,操作對兩個列族的意義不同。

有人可以指導我嗎?

謝謝,阿倫

“寫入請求”和“讀取請求”指標表示來自外部客戶端的操作數量,因此單個 batch_mutate 呼叫是 1 個請求,無論它包含多少突變。

“CF:Local Writes”和“CF:Local Reads”指標表示在本地節點接收到的操作數,通常來自協調節點。對於單個插入,“CF:本地寫入”的數量將等於該鍵空間的“寫入請求”x RF。對於 batch_mutate 呼叫,批處理中的每個突變都在“CF:本地寫入”級別單獨計算。

這些操作僅在行級別,沒有任何基於所涉及數據的智能處理/合併。例如,兩次執行相同的更新查詢將產生 2 次操作。

引用自:https://serverfault.com/questions/564107