mixi での Solr の利用

第8回 Solr勉強会

株式会社ミクシィ

システム本部技術部研究開発グループ

春山 征吾(@haruyama)

日本語 / English

自己紹介

mixi での Solr の利用シーン

mixi の全文検索

2011年以前は以下のソリューションを採用していた.

2011年以降はSolr を利用して, 新規案件の検索システムの構築や既存案件の検索システムの置換を行なっている.

Anuenue

ミクシィで作成したオープンソース製品(Apache Licence 2.0)

Master-Slave構成の全文検索システムを構築できる Solr の ラッパー

Anuenue : 論理的な構成

Anuenue の進化

現在 mixi 内で利用しているのは 0.7系.

Anuenue を利用している mixi の検索

他に 内部用の全文検索システムでも採用している.

Anuenue in mixi : 物理的な構成

たいがいのシステムでは, 1 Master, 2 Slave(兼Marger)構成.

mixi の典型的なシステムは以下のような特徴.

さらに, 2〜3個の検索システムを 物理サーバに相乗りさせている

より大きいシステム(インデックスサイズ100GB超)を複数今後構築する予定.

物理的な構成 : 図

今後やりたいこと

外部ストレージを参照するカスタム関数クエリ

カスタム関数クエリ: イメージ

カスタム関数クエリ: デモ

手元の環境でのデモ

テキストマイニング

mixiボイスの投稿数

600GB のSSD に 102日分保持するようにした.

利用ソフトウェア

Solrに入れているデータ

集計サンプル: 5月の投稿数

集計サンプル: 5月の女性の投稿数

集計サンプル: 5月の男性の投稿数

集計サンプル: 5月の女性 年代別

集計サンプル: 5月の男性 年代別

5月の女性 年代別 「AKB」

5月の男性 年代別 「AKB」

構成

なぜ 1日分のインデックスを別にしているか

拡張

ポジネガ分析

ポジネガ分析: スコアランキング

バーストキーワード

バーストキーワード: 3/23

バーストキーワード: 5/21

やりたいこと

全体のまとめ

Lucene ソースコードリーディング会