xmlから解析された配列内に何千ものデータがあります。私の懸念事項はスクリプトの処理時間です。私は10万レコードあるのでスクリプトの処理時間に影響しますか?データベースに挿入するには?私はバッチでデータベースへのデータの挿入を処理する方法がありますか?PHPを使用した配列のバッチ処理
答えて
これはSQLファイルのためである - しかし、あなたは(それを使用しない場合)、それはモデルです従うことができます間隔< 1秒以上1分以上。
大きなファイルが小さなインサートに分割され、この方法は、等
これは、バイパスは、PHPサーバーの構成を編集し、このようなスクリプトの実行時間等のメモリの制限等の心配を助けます。
新規ユーザーがGoogle検索「SQL大きなダンプ」またはもしこれが五島に動作しますので、リンクを挿入することはできません。 WWW [ドット] ozerov [ドット]デ[スラッシュ] bigdump [ドット] PHP
だからできました上記のスクリプトを理論的に変更しても、配列をSQlファイルではなくデータソースとして受け入れることさえできます。明らかにいくつかの変更が必要です。
希望します。
処理時間にはほとんど影響しませんが、DBのトランザクションログが100k行のロールバックセグメントを構築するのに十分な大きさであることを確認する必要があります。
構文は次のとおりです。
INSERT INTO tablename (fld1, fld2) VALUES (val1, val2), (val3, val4)... ;
ですから、なめらかに書くことができます。この(ダミー例)のように:
foreach ($data AS $key=>$value)
{
$data[$key] = "($value[0], $value[1])";
}
$query = "INSERT INTO tablename (fld1, fld2) VALUES ".implode(',', $data);
これは、巨大なデータセットではかなり速いイベントを動作し、データセットがメモリに収まる場合は、パフォーマンスを心配しないでください。その後、
それはあなたが指定することができ部分にファイルを分割、3000本のラインが言うと、時限にそれらを挿入します -
またはADOdbのラッパー(http://adodb.sourceforge.net/)と-R:
// assuming you have your data in a form like this:
$params = array(
array("key1","val1"),
array("key2","val2"),
array("key3","val3"),
// etc...
);
// you can do this:
$sql = "INSERT INTO `tablename` (`key`,`val`) VALUES (?, ?)";
$db->Execute($sql, $params);
はあなたがarray_chunk考えたことはありますか?それは別のプロジェクトで私のために働いた http://www.php.net/manual/en/function.array-chunk.php
- 1. PHPを使用した多次元JSON配列の処理
- 2. バッチ処理phpのfgetcsv
- 3. 分散並列バッチ処理
- 4. BASH /スクリプト言語/を使用したJSONファイルのバッチ処理ディレクトリ
- 5. SQL:バウンド変数を使用したバッチ処理
- 6. XSLTバッチ処理
- 7. バッチ処理ループ
- 8. PHPの配列処理質問
- 9. バッチ画像処理cronjob in PHP
- 10. PHPのDynamoDBを使用したバッチput_item
- 11. Scalaのバッチ処理
- 12. バッチを使用したバッチ
- 13. 10スレッドを使用して配列を処理する
- 14. チェックボックスを使用したPHPフォーム配列
- 15. SQLバッチ処理の削除
- 16. バッチ処理のパンデック変換
- 17. Symfony2の - doctrine2バッチ処理
- 18. QuickCheck 2バッチ処理QuickCheckの
- 19. Facebookのバッチ処理エラー
- 20. symfonyのバッチ処理セキュリティ
- 21. Oracle SOAでのバッチ処理
- 22. バッチ処理用ツールEPS to JPG
- 23. Informixデータベース用NHibernateでバッチ処理
- 24. PHPなどのRequest.Formを使用したHTML入力要素の配列の処理
- 25. MSBUILDバッチ処理タスクは、バッチ内の各ステートメントを実行し
- 26. 同じ配列キー名を使用したphp配列
- 27. SVCUtilまたはWSDLバッチ処理
- 28. PHPで配列を処理していますか?
- 29. PGMファイルと多次元配列を使用したJavaイメージ処理
- 30. Matlab配列の処理
あなたの助言に感謝の皆!私は本当に感謝します、私は大きなダンプと同じコンセプトをコードにしようとするか、それを変更してください。 もう一度ありがとう! – text