「ランダムで何かの要素を表示したい」という要件を見かける。難易度は低い。すぐ実装できる。が、それなりにスケールする実装は簡単ではない。 カウンター、ランキングなど、「コンピュータだとすぐできそうじゃん」と思えるようなことを、スケールする実装に仕上げるのは難しい。 — グニャラくん (@gunyarakun) April 23, 2013 MediaWikiというソフトウェアがある。Wikipediaで使われているWikiソフトウェアだ。Wikipediaにも「おまかせ表示」という機能がある。記事をランダムに1つ表示してくれる機能だ。さすがにWikipediaで使われている機能なので、スケールする実装になっているだろう。 MediaWikiのレポジトリのmaintenance/tables.sqlにテーブル定義がある。ここで着目するのは、pageテーブルのpage_randomというカラムで