ケース(ランダムセレクション) あなたはweb広告を表示するアプリケーションの担当者だ。 広告は適当なテーブルからランダムに選ばれる仕組みだ。 ある日webサイトが日に日に重くなるインシデントが起票され、その原因があなたが担当するアプリケーションにあることがわかった サンプル行をフェッチする目的をどのように達成すれば良いか... アンチパターン:データをランダムにソートする 次の方法はランダムにソートを行い、最初の行を選択する方法。 SELECT * FROM Bugs ORDER BY RAND() LIMIT 1; これはわかりやすく実装も簡単だが、データが増えるとともに弱点が出てくる。 …