簡體   English   中英

Cassandra批量查詢與單插入性能

[英]Cassandra batch query vs single insert performance

我使用Cassandra java driver

我每秒收到150k請求,我將其插入到具有不同分區鍵的8個表中。

我的問題是哪種方式更好:

  • 批量插入這些表
  • 一個接一個地插入

我問這個問題是因為,考慮到我的請求大小(150k),批處理聽起來像是更好的選項,但因為所有表都有不同的分區鍵,批處理看起來很昂貴。

請從以下鏈接查看我的答案:

Cassandra批處理查詢具有不同分區鍵的表的性能

批次不是為了提高性能。 它們用於確保原子性和隔離。

批處理對單個分區寫操作有效。 但批量經常被錯誤地用於嘗試優化性能。 根據批量操作,性能可能實際上惡化。

https://docs.datastax.com/en/cql/3.3/cql/cql_using/useBatch.html

如果這些表之間不需要數據一致性,則使用單個插入。 單個請求在節點之間正確分布或傳播(取決於負載平衡策略)。 如果您擔心請求處理和使用批處理,批處理將在協調器節點上負擔如此多的額外工作,這將是無效的我想:)

批次對性能產生巨大影響。 根據我的理解,最適合您的溶劑分為每個分區鍵的不同列表,然后使用批處理語句。 您將看到對性能的巨大影響。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM