1

CSV または mySql のいずれかでデータを読み取る 2 つのオプションがあります。データが大きすぎます。つまり、30000 行あります。時間に基づいてどちらが最適か教えてください。私は言語PHPを使用しています。時間とデータサイズで比較してベストを教えてください。すなわち。

行数 : mysql の読み込みにかかった時間 : CSV の読み込みにかかった時間

1000 : 0.07 秒: 0.6 秒

30000 : .123 秒: 30

行数に応じてどちらが最適かを判断するのに役立つ人がいますか。

ありがとう

4

5 に答える 5

2

データセットが非常に大きい場合は、インデックスが正しく配置された MySQL ベースのテーブルをお勧めします。フェッチ時間を大幅に高速化します。

于 2012-05-03T10:14:43.220 に答える
1

後でデータを使って何か他のことをしたいという利点がたくさんあるので、私はmysqlを使います...そして、PHPによって読み取られた大きなファイルはメモリ内で終わる可能性があるため、実際にはあなたが望むものではありません...

于 2012-05-03T10:16:13.153 に答える
1

それは完全にデータに依存します。データにリレーションがある場合、MySQL のパフォーマンスが向上します。また、冗長データを保存する必要はありません。データに関係がない場合は、csv を使用できます。

いずれの場合も MySQL を使用することをお勧めします。より高速な検索やその他の最適化が提供されるためです。データが csv に適している場合でも、MySQL には csv データを保存できる csv エンジンがあります。

于 2012-05-03T10:17:35.340 に答える
1

ただの提案: 私は番号を持っていません.

常に行のブロック全体を読み取るため、結果セットから一部の行を除外する必要がない場合は、行を csv ファイルから直接読み取ることをお勧めします。

ファイルシステムのみにアクセスします。

デシベル付き。tcp/ip 経由でクエリを DBMS に送信すると、DBMS はファイルシステムにアクセスし、結果を tcp/ip 経由で再度送信します...

于 2012-05-03T10:17:53.360 に答える
0

php を使用する場合は、常に mysql の方が優れています。データベースのサポートまたはその他の形式に関しては、より適しています。したがって、mysql を使用する必要があります。

于 2012-05-03T10:17:45.297 に答える