BASE特性
1. Basically Available
システムの一部が落ちても、全体が動き続ける
2. Soft State
システムのデータが常に変化する
3. Eventual Consistency (結果整合性) 強い一貫性が求められる場合(ACID特性とか)は、 = writeをされた瞬間以降のreadは絶対更新されている Eventual Consisencyだと、そうはならない
writeのあとにreadの値が更新されるまでにラグがあってもOK
Write-Write競合(片方が潰される)や、Read-Write競合(間違ったデータが読まれる)を回避したい 複数のレプリカを同時にread/writeしてあげれば、安全になりやすい 具体的には
Write-Write競合回避: w > n/2
Read-Write競合回避: r> n-2
(n: 全体のレプリカ数, w:同時にwriteするレプリカ数, r: 同時にreadするレプリカ数)
などの条件がある