こんにちは。アメーバで検索を担当しているYASUDAです。 今日は、アメーバで利用しているオープンソースの検索エンジンであるLucene/Solr の新機能の一つをご紹介します。いつもLucene/Solrの恩恵を受けているので、少しでも普及に繋がると嬉しいです。 紹介するのはLucene 3.2以降のバージョンで利用可能となるTieredMergePolicyです。 以下に、LuceneにおけるインデックスのSegment構成、MergePolicyの概要、TieredMergePolicyの特徴とアメーバの対応について記述します。 ■ Luceneにおける転置インデックスのSegment構成 Luceneの転置インデックスは、各々が独立したSegmentという単位で構成されており、ドキュメントの追加分をflushする際、新しい世代番号を付けたSegmentを生成していきます(図1)。
![『アメーバで利用しているLuceneのMergePolicyについて』](https://cdn-ak-scissors.b.st-hatena.com/image/square/b6426102b4477fae150aeabf0e66f0adf8ca4f29/height=288;version=1;width=512/https%3A%2F%2Fstat.profile.ameba.jp%2Fprofile_images%2F20151112%2F16%2Fe5%2FJE%2Fg%2Fo016001601447312149878.gif)