タグ

関連タグで絞り込む (0)

  • 関連タグはありません

タグの絞り込みを解除

laravelとdbに関するorenonihongogayabaiのブックマーク (1)

  • Laravelのcursorとchunkの違いとバッファクエリの対処法 - honeplusのメモ帳

    curosrまずcursorの方だが、戻り値がLazyCollectionで返ってくる(Laravel5の頃はIterator)ので、使う側からすると普通のgetと同じ用に使えて非常に使い易い。ただ、Eloquentのwithは使えない(エラーにはならないが取得もされない)ので、リレーションが欲しい場合は自分で別途loadとかする必要がある。 が、他に重大な問題が一つ。MySQLのデフォルトではバッファクエリにより、ほとんどメモリが節約されないのである(他のDBでどうなるかは未確認)。せっかく1件ずつ読み込んでメモリを節約しようとしているにも関わらず、PDO等のDBライブラリが最初に全件バッファに読み込んでしまいメモリを大量消費してしまう。一度に全部インスタンスにされるよりマシではあるが、これではcursorの存在意義の大半が失われてしまう。 後述のようにバッファクエリをOFFにすることは

  • 1