MonogoDBにデータを保存したい。したがって、1つのmongo、3つのconfigserver、および2つのレプリカセット(それぞれがprim./sec./arbiterを持つ)で構成されるシャーディングセットがあります。
私は2つの問題があります
1)すべてのデータを保存するために必要な時間を測定するための最良の方法は何ですか?
今では、mongosを介して「timemongo 141.100.55.72:25001 / mydb --quiet /data/javascript/insert.js」を実行しています(insert.jsは後で説明するjavascriptです)
複数の操作を測定したい-各出力をファイルに保存するための良い方法は何ですか(ubuntuサーバーで動作しています)
2)測定時間は本当に遅いです-例:実行には約5分かかります。100.000データオブジェクトの場合。
どうすればパフォーマンスを高速化できますか?
javascriptは次のようになります:(私はtestdataを作成しています;シャーディングキーはテストのためだけの反復です(key:x)-それはパフォーマンスの低下を引き起こす可能性がありますか?)
var amount = 100000/4;
var x=1;
var doc= "";
for (i=0; i<amount; i++)
{
doc = { datetime: '1119528044', att2: '...', key: x,...} //14 attributes
db.mycol.insert(doc);
x=x + 1
}
for (i=0; i<amount; i++)
{
doc = { datetime: '1219268044', att2: '...', key: x,...} //14 attributes
db.mycol.insert(doc);
x=x + 1
}
for (i=0; i<amount; i++)
{
doc ={ datetime: '1355851700', att2: '...', key: x,...} //14 attributes
db.mycol.insert(doc);
x=x + 1
}
for (i=0; i<amount; i++)
{
doc = { datetime: '1444851704', att2: '...' key: x,...} //14 attributes
db.mycol.insert(doc);
x=x + 1
}
さらに、データが両方のレプリカセットにあるかどうかを確認する方法がわかりません-それを確認するための最良の方法は何でしょうか?
よろしくお願いします