4

私はウェブサーバーに取り組んでいます。複数のトランザクションでデータをコンパイルするエンドポイント、または単一のトランザクションですべてをコンパイルするエンドポイントを持つことができます。どちらが速いですか?/ より良いですか?

4

1 に答える 1

2

答え: データベースが返すと予想されるデータの量によって異なります。

A: 大量のデータが返されます (数千、数百万): 次の Facebook を行っているとします。本当に膨大な量のデータ (200 万件の電子メール アドレス) を取得しようとしている場合は、ある種の「ページネーション」を使用して、数秒または数分ごとにクエリを実行する方がよいでしょう。結果を取得してサーバー全体をビジー状態に保つために、10 分間待機するクエリは必要ありません。

B: 少量または中程度の量のデータが返される または、中程度の量のデータ (300 の都市、523 人の従業員、43 の電話) をフェッチしようとしている場合、都市に対して別の SQL クエリを実行してトランザクション時間を無駄にしたくないでしょう。 、従業員、電話など、別々のクエリをできるだけ少なく使用するようにします。これは、おそらく多くの JOIN を使用することを意味します。

于 2014-07-31T12:25:51.700 に答える