我有两个客户端(单独的 docker 容器)都写入 Cassandra 集群。
第一个是写入实时数据,以集群可以处理的速度摄取,尽管备用容量很少。这被视为高优先级数据,我们不想丢弃任何数据。摄取率每分钟变化很大。有时数据会在客户端读取的队列中备份,有时客户端已清除队列并(短暂地)等待更多数据。
第二个是来自在线商店的批量数据转储。我们希望以尽可能快的速度将其写入 Cassandra,以吸收写入实时数据后的任何空闲容量,但不会导致集群开始发出超时。
使用 DataStax Python 驱动程序并保持两个客户端分开(即它们不应该相互了解或交互),我如何限制来自第二个客户端的写入,以便在不影响的约束下最大化写入吞吐量第一个客户端的写入吞吐量?