我們有來自Cassandra的100萬張唱片。為了減少處理時間,我們希望并行處理記錄。因此,工作流就像將 100 萬條記錄劃分為 100 個不相交集,每個工作線程處理一組記錄。我們選擇的語言是Golang。實現(xiàn)該目的的相關(guān)框架/實現(xiàn)是什么?
1 回答

慕娘9325324
TA貢獻1783條經(jīng)驗 獲得超4個贊
我在ScyllaDB工作 - Scylla是一個與Cassandra兼容的數(shù)據(jù)庫。
我們有以下博客文章,說明如何在整個集群中有效地運行完全掃描
https://www.scylladb.com/2017/02/13/efficient-full-table-scans-with-scylla-1-6/
詳細說明應(yīng)如何進行高效掃描背后的理論(如果您想獲得最佳性能):
根據(jù) vnode 分配(節(jié)點的令牌分配)拆分范圍
同時運行多個查詢
添加一些隨機性以確保查詢分布在集群中
后續(xù)工作
https://www.scylladb.com/2017/03/28/parallel-efficient-full-table-scan-scylla/
有一個用Go編寫的代碼示例來實現(xiàn)這一點,并針對Scylla進行了測試,并且應(yīng)該與Cassandra一起使用,因為它們與CQL二進制協(xié)議兼容。
PS:我預(yù)計可能還會有一個Cassandra的例子。
- 1 回答
- 0 關(guān)注
- 78 瀏覽
添加回答
舉報
0/150
提交
取消