我有3个数据中心Cassandra 3.11设置,DC1 = 3个节点,DC2 = 1节点,DC3 = 1节点。 每个数据中心位于不同的国家/地区。
复制设置为:
{'class' : 'NetworkTopologyStrategy', 'DC01' : 3, 'DC02': 1, 'DC03': 1}
表的设计如下:
create table mediastorage.buckets (id text, numBuckets int, numChunks int, filesize int, primary key (id));
create table mediastorage.media (id text, bucket int, chunk int, data blob, primary key ((id, bucket), chunk));
我正在将大型文件写入此密钥库:1MB-1GB。 这些文件将以每条记录1 MB的形式进行分块,并将记录存储在25MB的分区中。
写入数据(CONSISTENCY_ALL)之后,本地DC中的所有节点都以全带宽同步,直到节点具有完整副本。
远程DC中的节点以全带宽获得初始数据推送,但未完全同步。他们会及时维修,但再也不会尝试全频处理。因此,一个1GB的文件需要一个小时左右。
DC之间的链接全为100 / 100mbit。在它们之间WGET文件显示没有带宽问题。