INFORMATION
テクノロジ

Apache Solr 9.0.0が公開されました!

Apache Solr 9.0.0 が 2022 年 5 月 12 日に公開されました。

Solr は Apache Solr プロジェクトが生み出した、人気があり、極めて高速なオープンソースの NoSQL 検索プラットフォームです。その主な機能は強力な全文検索、ヒットハイライト、ファセット検索、動的クラスタリング、データベース統合、高機能な文書ハンドリング、そして地理検索です。Solr はとてもスケーラブルで、耐障害性が高い分散検索とインデクシングを備え、世界中の巨大なインターネットサイトの検索とナビゲーション機能を牽引しています。

Solr 9.0.0 は下記より今すぐダウンロード可能です。

https://solr.apache.org/downloads.html

今回は重大な変更を伴うメジャーバージョンのリリースとなります。下記に示す項目は一部の抜粋であり、全て網羅していません。バージョンアップの場合は下記の “Solr Upgrade Notes” を参照の上アップグレード計画の立案をお願いします。

https://solr.apache.org/guide/solr/9_0/upgrade-notes/solr-upgrade-notes.html

Solr 9.0.0 リリースのハイライトは、以下の通りです。

  • Java 11 以上が必要です。
  • Lucene 9.0 により、たとえばインデックスサイズの低減など、多数の小さなものから大きな改善を享受できます。

検索とインデクシング

  • DenseVectorField フィールド型と K近傍法(KNN)クエリーパーサーによる密ベクトルニューラル検索。
  • 管理画面による SQL クエリサポート。
  • 新しいスノーボールステマー:Hindi, Indonesian, Nepali, Serbian, Tamil, Yiddish。
  • 新しい NorwegianNormalizationFilter。

セキュリティ

  • 証明書認証プラグインでユーザーをX509クライアント証明書で認証させる。
  • Zookeeper を 3.7 にアップグレード。これにより ZK コミュニケーションが TLS 保護となった。
  • 全リクエストハンドラーが認可のためのセキュリティパーミッションをサポート。
  • Solr はデフォルトで Java セキュリティマネージャーを有効化して実行される。
  • Solr が同梱する Zookeeper はデフォルトでローカルホストのみバインドする。
  • Solr が利用するライブラリーをアップグレードしたことによる Solr 本体のセキュリティ強化。

安定性と拡張性

  • レート制約による、利用状況の指標をベースにした更新と検索リクエストの抑制方法の提供。
  • タスク管理インタフェースにより、キャンセル可能/追跡可能なタスクとして宣言できる。
  • Solr 内のノードの役割(ロール)を記述可能。今回のリリースでは ‘Overseer’ と ‘Data’ ロールをサポート。
  • Overseer に依存することなく、クラスター状態更新とコレクションAPI呼び出しの分散処理をサポート。

ビルドと Docker

  • Solr は Apache Lucene プロジェクトから独立し、Solr 独自でビルドやリリースが行われる。
  • Ant + Ivy から Gradle を使ったビルドシステムに変更。
  • Docker イメージ生成は Apache Solr Github レポジトリの一部となった。
  • Docker イメージ文書はリファレンスガイドの一部となった。
  • 公式な Docker イメージは JDK17 を使うようにアップグレード(by Eclipse Temurin)。また、公式イメージと機能的に同等なローカルイメージが作成可能となった。

廃止または廃止予定の機能

  • Data Import Handler (DIH) は Solr の管理下から離れ、独立したプロジェクトとなった。
  • clusterstate.json と MIGRATESTATE API はサポートされなくなり削除された。もしコレクションが clusterstate.json を使っている場合、Upgrade Notes を参照のこと。
  • 自動拡張フレームワークは削除された。新しい Replica Placement プラグインを代替オプションとして検討のこと。
  • LegacyBM25SimilarityFactory は削除された。
  • VelocityResponseWriter は Solr の管理下から離れ独立したプロジェクトとなった。これには /browse と wt=velocity 例題も含む。
  • レガシーな SolrCache 実装(LRUCache, LFUCache, FastLRUCache)は削除となった。既存コンフィグは CaffeineCache を使うように修正が必要。
  • 交差データセンターレプリケーションは廃止。
  • HttpSolrClient や LBHttpSolrClient といった HTTP2 をサポートしていない SolrJ クライアントは deprecated(廃止予定)となった。旧 CloudSolrClient は CloudLegacySolrClient とリネームされ deprecated となった。
  • SimpleFSDirectoryFactory が削除され、代わりに NIOFSDirectoryFactory を利用のこと。

その他

  • Contrib モジュールは単に「モジュール」になった。モジュールは環境変数 SOLR_MODULES を通じて有効化する。
  • 次の機能は独立モジュールとなった:HDFS, Hadoop-Auth, SQL, Scripting, JWT-Auth。
  • リリースから “dist” がなくなった。モジュールの JAR はそれぞれのモジュールの lib/ フォルダーへ移動。
  • SolrJ のクラス CloudSolrClient は HTTP2 をサポート、新しい Builder を提供する。このクラスの 8.x バージョンのために、CloudLegacySolrClient を参照のこと。
  • デフォルトで Jetty リクエストログを有効化。つまり、毎リクエストが記録される。

全ての新機能、変更点、不具合改修点を見るには以下の CHANGES.txt をお読みください。

https://solr.apache.org/9_0_0/changes/Changes.html


KandaSearch

KandaSearch はクラウド型企業向け検索エンジンサービスです。
オープンAPIでカスタマイズが自由にできます。

  • セマンティックサーチ

    人間が理解するように検索エンジンがテキストや画像を理解して検索できます。

  • クローラー

    検索対象文書を収集するWebクローラーが使えます。

  • 簡単操作のUIと豊富なライブラリー

    検索や辞書UIに加え、定義済み専門用語辞書/類義語辞書やプラグインがあります。

  • ローコードで低コスト導入

    検索UIで使い勝手を調整した後、Webアプリケーションを自動生成できます。

セミナー

企業が検索エンジンを選定する際のポイントから、
実際の導入デモをお客様ご自身でご体験!