ニュースサイトのサイドメニューでよく見かける「アクセスの多かった記事」のようなランキングを Redis のデータ型 Sorted Set で実装する方法をメモ。 東洋経済の例 Redis の Sorted Set を使ったアクセスランクの表現 Redis のデータ型 sorted set は文字通り順序付けられた集合。 key 単位で集合を定義でき、各メンバーはスコアを持ち、スコアによって集合内で順位付けられる。 メンバーを記事、スコアをアクセス数とみなして、アクセスランクを表現する。 日別ランキングであれば下図のようになる。 週別ランキングであれば下図のようになる。 スコアの大きい順(=アクセスの多い順)に並べればアクセスランキングの完成となる。 Sorted Set の操作 次にアクセスされた時の Sorted Set の操作を考える。 キーは YYYYMMDD で持ち、アクセスされる