大量のデータを選択する必要がある状況(たとえば、1003レコードはID | {"points":"9","votes":"2","breakdown":"0,0,0,1,1"}
)をPHPで処理して戻す必要があります。問題はそれを効率的に取り戻すことです。私はINSERT ... ON DUPLICATE KEY UPDATE
を使って解決策を見ました。UPDATE
の解決策を見ました。これはCASE
です。他の解決策はありますか?巨大なデータ配列を更新する最も効率的な方法はどれでしょうか?大量のデータをMySQLで更新する
答えて
簡単なアップデートを使用しています。
挿入例外を使用してデータを挿入しようとすると、DBはさらに挿入作業、制約の検証、例外の発生、行の更新、制約の再検証を実行します。 43K行を持つテーブルに対してDUPLICATE KEY UPDATEおよびUPDATEステートメントONに...挿入のための私のローカルPC上の
更新
ファイル名を指定して実行をテストします。
最初のアプローチは40%高速です。
しかし、両方とも速く、その後1.5秒で動作しました。私は、あなたのPHPコードはあなたのアプローチのボトルネックとなり、あなたはMySQL文の速度について心配するべきではないと思います。もちろん、それはテーブルが巨大ではなく、数千万の行がない場合に機能します。
アップデート2
私のローカルPCには、デフォルト設定でのMySQL 5.6を使用しています。 CPU:8Gb
100kのUPDATEクエリがここでの最適な選択であるとは思っていません。tbh –
あなたのコンピュータの仕様やインスタンス変数を投稿していないので、ベンチマークは意味がありません。 – Mjh
- 1. 大量のドキュメントを更新する
- 2. 大量のデータをC++で大量に保存する方法
- 3. 膨大な量のデータから最新のデータを照会
- 4. mysqlテーブルのデータを更新する
- 5. 大量のデータを扱う
- 6. 大量のデータをキャッシュする
- 7. 大量のデータをレンダリングする
- 8. ディスクに大量のデータをキャッシュする
- 9. 大量のデータをグラフ化する
- 10. プロセスメモリに大量のデータをキャッシュする
- 11. テンポラリテーブルから大量のデータを取り込むテーブル--MySQL
- 12. 大量のデータをオフラインで保存し、それをバッチでSQLiteデータベースに更新する方法は?
- 13. 大量データをFirebaseにアップロード
- 14. PHPで大量のデータを暗号化
- 15. MySQLは大量のデータを扱うことができますか?
- 16. チェックボックスとテキストエリアのデータでMYSQL DBを更新する(PHPで)
- 17. 大容量データ検索
- 18. Javaネットワーク転送大量データ
- 19. 複数のpost_metaデータを1つのmySQLクエリで更新する
- 20. Androidのジンジャーブレッドでブルートゥースで大量のデータを転送する
- 21. MySQL 5.7.10でJSONデータ型の列を更新するには?
- 22. 膨大な量のデータを扱うデータベース
- 23. Linqと大量のデータを追加
- 24. IOS:大量のデータを持つアプリ
- 25. sqlite dbから大量のデータをロード
- 26. 大量のデータを扱うWebSocketとXHR
- 27. MongoDB大量のデータを並べ替え
- 28. 大量のデータをPostgres Hstoreにロード
- 29. 大量のデータをJ2MEで保存するためのベストプラクティス
- 30. MySQLトリガを使用してlast_modifiedデータでテーブルを更新する
どのようにユーザーの環境が提案されたソリューションに影響しますか? – Strawberry
あなたの質問は明らかではありません....ユーザーのサーバーはどういう意味ですか? –