0

サーバー(数十または数百の外部サーバーで使用される)への単一のクエリを最適化して、プレーヤー(minecraft)の統計をリモートで挿入し、問題なく読み取ることができるようにしたいと考えています。

現在、私は以下を使用しています: INSERT DELAYED INTO servers_players (a,b,c) VALUES(1,2,3) ON DUPLICATE KEY UPDATE c=c+3, ...;

これはクエリを最適化するための最良の方法ですか、それともより良い方法がありますか?

ありがとうございました、

ビリー

4

1 に答える 1

2

http://dev.mysql.com/doc/refman/5.1/en/insert-on-duplicate.htmlのように、DELAYEDは機能しないことに注意してください。

ON DUPLICATE KEY UPDATEを使用する場合、DELAYEDオプションは無視されます。

最適化の方法については、一般的な個別のINSERT / UPDATEコンボと比較すると、すでにかなり最適です。ただし、正確な使用パターンが影響する可能性があります(たとえば、操作のVASTの大部分がUPDATE(新しく挿入された行が非常に少ない)の場合、最初にUPDATEを実行してから、UPDATEがゼロ行を更新する場合は挿入する方が効率的です。

于 2011-02-18T02:09:50.597 に答える