データベース テーブルに更新する csv ファイルに多数のレコード (約 40,000) があります。
レコードを更新するコード (PHP) の書き方は知っていますが、大量のデータが心配です。
一度に多数のレコードを更新するにはどうすればよいですか?
これを使用できます。お役に立てるかもしれません
LOAD DATA INFILE 'data.csv' INTO TABLE my_table;
LOAD DATA INFILE 'data.txt' INTO TABLE table2
FIELDS TERMINATED BY '\t';
csv ファイルのすべての行をループします。各行をさまざまな変数に解析して、データベースを更新します。通常の SQL 呼び出しを使用します。
set_time_limit(0);
ファイルの一番上に追加する必要があるかもしれません。これにより、PHP のタイムアウトが防止されます。
ある種の分散処理フローに従います。配布スレッドと多数のワーカー スレッドを用意します。分散スレッドは、csv ファイルからデータを読み取り、ワーカー プール内の空いているワーカー スレッドに作業を割り当てることができます。スレッド プールのサイズを制限して、パフォーマンスとリソースの使用量のバランスをとることができます。そして、あなたは更新の方法を知っているとすでに言ったので、ワーカー スレッド コードは理解されます。:)これが役立つことを願っています