- Payloads機能:任意のバイナリデータをインデックスのどの項目にも関連付けることができる
- 関数クエリ:ドキュメントのスコアの算出方法についてより制御することができる(Solrから組み込まれた)
- NFS経由での「ある時点をとらえる("Point-in-time)」検索:NFSにスナップショットのような機能を提供
- 新たなPre-analyzed Field API:ダミーのアナライザーコードなしでDocumentのPre-analyzed Fieldを扱える
- Maven(サイト・英語)での一般リリース:すべてのLuceneモジュールの最新リリースが、Mavenレポジトリを介して入手可能
InfoQは、Luceneプロジェクトのコミッターであり、プロジェクト管理委員会(PMC)のメンバー(source)であるGrant Ingersoll氏(source)にインタビューし、今回のリリースについて詳細を尋ねた。インタビューの中で、Ingersoll氏は、自分の見解・意見はあくまで個人のものであり、Lucene PMCの公式見解ではないことを明確にするようInfoQに要請してきた。
InfoQは、Luceneの2.2リリースでより短い四半期ごとのリリースサイクルへと変わったと確認した。Ingersoll氏によると、このようにリリースの頻度が上がったことで、バグ修正および新機能がより迅速にコミュニティに提供できるといった、いくつかの利点があるとのことである。またリリースのプロセスもMavenのサポートが向上したことで合理化されており、今後のリリースはMavenユーザーにより早く提供されるようである。
InfoQはIngersoll氏に、Payloads機能について尋ねたところ、次のような答えが返ってきた。
Payloadsという新機能により、 項目ごとにインデックスにある情報を保管することができます。例えば、Webページにインデックスをつける場合、関連URLまたはテキスト解析に基づいた重み係数などの追加情報を格納すると有益である場合があります。より高度なアプリケーションの場合、あるスピーチの中で名詞が他の部分よりも重要だとしてスコア付けするため、ある言葉のスピーチを格納すると有益であることもあります。今年ApacheCon Europeで行った私の講演(PDFファイル・英語)で使ったPayloadsのスライドの中に、関連する部分が載っています。さらにIngersoll氏は、またSolrから始まった新しいFunctionクエリについて、次のように説明した。
新しい検索関数パッケージ(org.apache.lucene.search.function (source)) により、開発者はドキュメントをスコア付けするのにフィールドの実際のコンテンツを使うことができます。例えば、あるドキュメント内のフィールドに緯度・経度情報を格納していれば、これらのフィールド内の情報を使ってドキュメントのランク付けに影響を及ぼすことができます。つまり、Starbucksの検索をしている場合、検索結果においてユーザーに近い場所にある店舗をより遠方の店舗よりも高くランク付けすることができるのです。他には、価格または利幅の情報を使ってランク付けに影響を及ぼす(つまり皆さんの会社にとってより大きな利幅を持つ製品を高くスコア付けする)といった例もあります。倫理的に私がこれに賛同していると言っているわけではなく、こういうことができるということです。)
次にLuceneの次のリリースでユーザーは何を期待できるかという質問に対し、Ingersoll氏は、Michael McCandless氏が主導している新しいメモリ管理技術(source)のおかげでインデックス作成のパフォーマンスに著しい改善が見られるとしている。また同氏は、Luceneの最新リリースでは多数のパフォーマンス強化が見られ、ユーザーは自身でそれを試してみたくなるだろうと述べている。最後にIngersoll氏はJava 5のサポートおよびインデックス作成プロセスにおけるより高い柔軟性が、Luceneの今後のリリースで見られる可能性があると語った。
今回のリリースに盛り込まれたすべてのバグ修正、機能、最適化を列挙した完全なchangelog(txtファイル)が入手可能である。Luceneの前回までのリリースと同様、2.2はLuceneの前回までのバージョンからインデックスを読み込み、インポートすることが可能である。ただしインデックスが変換されてしまったら、Luceneの前のバージョン(例:2.1)でもう読み込むことはできないが。
原文はこちらです:http://www.infoq.com/news/2007/07/lucene22(原文は2007年7月6日にリリースされました)