2017-01-02 10 views
2

最新のカサンドラドッカーを使用しています。 私は複数のコンテナを実行しています。それぞれは独立したカサンドラインスタンスを実行しています。 各インスタンスには、データを格納し、ログをコミットするためのローカルnvme SSDがあります。 私はパフォーマンス・ワークロード(100%レコードを50%読み込み50%読み込む)をテストするためにYCSBと協力しています。 1つのホスト上の2つのコンテナについて〜23KのTPSを得ています。カサンドラ読み取り/書き込み帯域幅

nvme ssdのパフォーマンスはわかりません: 各ssdで安定した〜2GB/sの読み取り帯域幅があり、〜20MB/sの書き込みしかありません。書き込みは短時間の間しか行われません。ほとんどの場合、ディスクへの書き込みがなく、しばらくの間に300MB /秒の書き込みがピークに達します。

は、カッサンドラの期待された動作ですか?ディスクの読み込みと書き込みの速度が非常に大きいのですか?

(ホストが65ギガバイトのメモリを持っている)

よろしく、

デビッド

+0

ストレージドライバは何ですか?見つけ出すためにhttps://docs.docker.com/engine/userguide/storagedriver/selectadriver/を参照してください。 – user2915097

答えて

0

はい、右の私には聞こえます。読み込みはより高価で、書き込みは安いです。結合を行うことはできないので、各問合せを1つのパーティションからのみ読み取るようにします。あなたはこれを、一度ではなく、何度も非正規化して書きます。

memtableがフラッシュすると、書き込みトラフィックが多く発生します。これは、大きなスパイクを引き起こす可能性が高いためです。読み込みは大量のディスクにぶつかり、圧縮戦略に応じて多くのIOが必要になることがあります。コミットログに書き込むと、さらに安定します(ただし、バースト的ですが、10秒ごとに)。 write pathのドキュメントをチェックアウトするか、readwriteパスの紹介をご覧ください。あなたがそれを探してもこれについての他の多くのオンライン参考文献があります。