CSV データをインポートする Web ページを作成する場合、データが数十、数百万ある場合、どのような解決策を使用する必要があるか、またどのような問題を考慮する必要がありますか?

WBOY
リリース: 2023-03-03 10:02:02
オリジナル
1446 人が閲覧しました

PHP を使用してタイトルのような Web ページを作成したいのですが、初心者には簡単なアップロードを行ったのですが、今では数百万個のデータを処理する必要があります。データのインポートの問題を解決するにはどうすればよいですか。 Python は知っていますが、Python は面倒なので PHP を使用する予定です。アドバイスをお願いします〜

返信内容:

PHP を使用してタイトルのような Web ページを作成したいのですが、初心者には簡単なアップロードを行ったのですが、今では数百万個のデータを処理する必要があります。データのインポートの問題を解決するにはどうすればよいですか。 Python は知っていますが、Python は面倒なので PHP を使用する予定です。アドバイスをお願いします〜

効率の問題の場合。文字列への結合は、>transaction>> のような insert into...value()、value() と似ています。注意すべき点は、一度に大量のデータを挿入することです。mysql またはその他のデータベースに一度に挿入できるデータの最大量の構成を変更する必要があります。試してみたところ、一度に 100,000 個の項目を挿入するのに約 4 秒かかります (フィールドが 5 つあるテーブルの場合)

データ量が比較的大きいため、ajax を使用してアップロード インターフェイスを繰り返しリクエストし、リクエストごとに異なるパラメーターを渡します。例:

www.xxx.com/upload.php?offset=0&length=1000

www.xxx.com/upload.php?offset=1000&length=1000

これによって PHP スクリプトが時間切れになることはありません。

挿入ステートメントの最適化とテーブル構造には大きな要件があり、そうでない場合は、データ + トランザクション + 順序付けされたデータをマージする方法の方が効率的になります。

まず CSV テーブルをサーバーにアップロードします。

次に、PHP は CSV テーブルを MySQL データベースにインポートします。

リーリー

非同期、何百万もの同期には耐えられません

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート