さまざまな CSV フィードを介して大量のデータを更新するためのシステムを構築しています。通常、フィードの各行をループし、選択クエリを実行してアイテムが既に存在するかどうかを確認し、存在するかどうかに応じてアイテムを挿入/更新します。
この方法はあまりスケーラブルではなく、より大きなフィードでサーバーに打撃を与える可能性があると思います。私の解決策は、アイテムを通常どおりループしてメモリに保存することです。次に、約 100 個のアイテムごとに、それらの 100 個のアイテムを選択し、一致するデータベース内の既存のアイテムのリストを取得します。次に、insert/update ステートメントを連結してデータベースに実行します。これにより、基本的にデータベースへの移動が削減されます。
これは十分にスケーラブルなソリューションですか? また、大規模なフィードを生産環境にインポートするためのサンプル チュートリアルはありますか?
ありがとう