検索

ホームページ  >  に質問  >  本文

mysql - データベース最適化問題を変更するためのクエリ

数十万のデータを含むテーブルがあります。イベントがトリガーされるたびに、すべてのテーブルがクエリされます。条件が満たされると (ほとんどの条件が満たされます)、テーブル データの特定のフィールドがクエリされます。修正済み(それぞれ修正データが異なります) 初心者でよく分からないので効率の良いやり方を教えてください よろしくお願いします

漂亮男人漂亮男人2778日前720

全員に返信(2)返信します

  • 黄舟

    黄舟2017-05-18 10:48:43

    最初にクエリがあるため、クエリ条件は作成したインデックスが有効になる必要があります。
    2 番目の変更バッチでは、変更されたインデックスが有効になる必要があります。ただし、ほとんどのデータが条件を満たしている場合、インデックスが失敗する可能性が高くなります。そのため、一致するすべての ID 値を取得し、ID 値を通じてデータを更新することをお勧めします

    返事
    0
  • 怪我咯

    怪我咯2017-05-18 10:48:43

    イベントにより数十万回の UPDATE が発生する場合:

    1. 設計に問題があるかどうかを確認してください。

    2. 設計が正しい場合は、redis などのキャッシュ層を追加してから、メッセージ キューなどの非同期メソッドを使用してデータベース テーブルを更新してみてください。
    3. 返事
      1
  • キャンセル返事