laravelアプリケーションが必要ですinsert/update
毎秒数千レコードのfor loop
。私の問題は私のデータベースinsert/update
レートは、1秒あたりの書き込み数100-150です。 RAMの量を増やしましたが、うまくいきませんでした。
mysqlの書き込み速度を毎秒数千レコードに増やす方法はありますか?構成を教えてください。
私のストレージエンジンはInnoDBです
InnodbストレージはACIDトランザクションに注意を払っており、データ(挿入/更新)がディスクに確実にコミットされるようにします。
auto-commit=0
。butサーバーがクラッシュしたり、何かが落ちた場合は、良くありません。例:
UPDATE TEST SET NAME='XXXX' WHERE (subquery).
INSERTs
-つまり、1つのINSERT
を最大100行で実行します。BEGIN; do several things; COMMIT;
innodb_flush_log_at_trx_commit=2
(速度とセキュリティのトレードオフについては、ドキュメントを参照してください。)さらにディスカッションが必要な場合は、SHOW CREATE TABLE
および関連するクエリの一部。