10 WebCenter Portal用のElasticsearchの構成
Elasticsearchを構成して、WebCenter Portalのオブジェクトの索引付けと検索を行います。
以前のリリースからアップグレードした場合には、「WebCenter PortalでのOracle SESによる検索の構成」で説明されているように、WebCenter PortalはOracle SESを使用するように構成できます。この章で説明しているように、WebCenter PortalでElasticsearchを使用することをお薦めします。
権限:
この章のタスクを実行するには、Oracle WebLogic Server管理コンソールでWebLogic ServerのAdmin
ロール、WebCenter Portal管理を使用して付与されるAdministrator
ロールが付与されている必要があります。
ロールと権限の詳細は、「管理操作、ロールおよびツールの理解」を参照してください。
トピック:
Elasticsearchでの検索の理解
Elasticsearchは高度にスケーラブルな検索エンジンです。大量のデータを迅速に保存、検索および分析でき、HTTP WebインタフェースとスキーマレスなJSONドキュメントを使用する分散型マルチテナント対応の全文検索エンジンを備えています。
Elasticsearchの利点
-
Elasticsearchは、Luceneに組み込まれている機能と同様の全文検索機能を備えています。
-
Elasticsearchはドキュメント指向型です。データを構造化されたJSONドキュメントとして保存し、すべてのフィールドがデフォルトで索引付けされるため、優れたパフォーマンスを実現します。
-
ElasticsearchはAPI指向であり、シンプルなRestful APIを使用して処理の実行が可能です。
-
Elasticsearchでは、テキストを直接検索するかわりに索引を検索するので、検索結果を高速に取得します。
WebCenter Portalでは、Elasticsearchを構成して次のリソースを検索できます。
-
ドキュメント(Wikiおよびブログを含む)
-
ポータル、ページ・メタデータ、リストおよびピープルの各リソース
-
お知らせおよびディスカッション(以前のリリースからアップグレードされたポータルでのみ使用可能)
WebCenter PortalでのElasticsearchの構成ロードマップ
表10-1 ロードマップ: WebCenter PortalでのElasticsearchの設定
担当者 | タスク |
---|---|
管理者 |
|
管理者 |
|
管理者 |
|
管理者 |
|
管理者 |
|
管理者 |
(オプション) Elasticsearchのカスタム検索属性の構成 |
管理者 |
(オプション) Elasticsearchのグローバル属性の変更 |
Elasticsearchの構成の前提条件
次の要件を確認してください。
-
Oracle WebCenter Portalがインストールされていること。
-
オプション検索にWebCenter Contentを使用する場合は、WebCenter Contentが構成され、必要なコンポーネントがすべて有効になっていることを確認してください。「Oracle WebCenter Content Serverへの接続の管理」を参照してください。
WebCenter Portalでのクロール管理ユーザーの作成
Elasticsearchを使用して検索するには、WebCenter Portalとバックエンドのアイデンティティ管理サーバーで、既存のユーザーをクロール管理に指定するか、クロール管理ユーザー(mycrawladmin
など)を作成します。クロール管理ユーザーは一度だけ作成する必要があります。
注意:
ユーザーの作成方法の詳細は、ご使用のアイデンティティ管理システムのドキュメントを参照してください。
次の例では、Oracle Directory Services Managerを使用してmycrawladmin
ユーザーを作成します。
Elasticsearchサーバーでのドキュメント・コンテンツのクロール・プラグインのデフォルト接続設定の変更
Elasticsearchをインストールしたら、構成ファイルを使用して、ドキュメント・コンテンツのクロール・プラグインのデフォルト接続設定を変更できます。
構成ファイル内の次の属性を指定できます。
-
es.wcc.connection.timeout: 接続タイムアウトまでの間隔(秒単位)。これは、ElasticsearchサーバーでWebCenter Contentサーバーへの接続が確立されるまで待機する時間です。デフォルト値は30秒です。
-
es.wcc.read.timeout: 読取りタイムアウトまでの間隔(秒単位)。ElasticsearchサーバーがWebCenter Contentサーバーに接続されると、この属性によってWebCenter Contentサーバーが特定のリクエストに応答するまでの許容時間が指定されます。デフォルト値は30秒です。
-
es.wcc.max.connection.attempts: WebCenter Contentサーバーにアクセスするための接続試行の最大数。デフォルト値は3です。
WebCenter Contentの検索の構成
このトピックでは、WebCenter Contentの検索を構成する方法を説明します。
注意:
次のトピックは、WebCenter Contentが構成されている場合にのみ適用されます。
WebCenter Contentでのクロール・ユーザーの作成
この手順では、WebCenter Contentでクロール・ユーザーを新規作成する方法について説明します。
adminロールを持つユーザーでクロールする場合、クロール・ユーザーとして管理ユーザー・アカウントを使用します。非管理ユーザーでクロールする場合は、新しいクロール・ユーザーを作成します。
- WebCenter Contentに管理者としてログオンします。
sescrawlerrole
ロールを作成するには、次を実行します。- ユーザー
sescrawler
を作成し、そのユーザーにsescrawlerrole
ロールを割り当てるには、次を実行します。 - WebCenter Contentホーム・ページで、「管理」→「管理サーバー」を開きます。「一般構成」を選択し、「追加の構成変数」セクションで
sceCrawlerRole=sescrawlerrole
エントリを追加します。 - WebCenter Contentを再起動します。
SESCrawlerExport
コンポーネントの構成
開始する前に、 SESCrawlerExport
コンポーネントが有効化されていることを確認してください。有効化されていない場合は、コンポーネントを有効にし(「WebCenterConfigureコンポーネントの有効化」を参照)、WebCenter Contentサーバーを再起動します。
SESCrawlerExport
コンポーネントを構成するには:
WebCenter Portalの検索の構成
WebCenter Portalの検索を構成するには、WebCenter PortalとElasticsearch間の接続を構成して、クロール管理ユーザーにクロール・アプリケーション・ロールを付与する必要があります。さらに、ElasticsearchでWebCenter Contentクロール・ユーザーを構成する必要があります。
注意:
存在できる検索接続は1つのみです。WLSTコマンドのcreateSearchConnection
を実行する前に、既存の検索接続をすべて削除してください。
WebCenter Portalでのユーザーの同期
ポータルのフル・クロールを実行する前に、LDAP同期WLSTコマンドを実行して、すべてのユーザーをポータルで使用できるようにしておくことをお薦めします。
検索クローラの構成
次のタイプのクローラを構成して、WebCenter Portalリソースを索引付けできます。
-
ポータル・クローラ: ポータル・クロール・ソースを使用して、リスト、ページ・メタデータ、ポータル、プロファイルなどの特定のオブジェクトをクロールします。
-
ドキュメント・クローラ: ドキュメント・クロール・ソースを使用して、Wikiやブログなどのドキュメントをクロールします。
-
ディスカッション・クローラ: ディスカッション・クロール・ソースを使用して、ディスカッション・フォーラムおよびお知らせをクロールします。このオプションは、ディスカッションが含まれている以前のリリースからアップグレードされたポータルに対してのみ使用できます。
次のトピックでは、WebCenter Portal管理の「スケジューラ」UIを使用して、様々なクロール・ソースを作成する方法を説明します。
Elasticsearchのグローバル属性の変更
WebCenter Portalでは、Elasticsearchを使用してオブジェクトの索引付けと検索を行います。wcESConnectionTimeoutPeriod
属性とwcESReadTimeoutPeriod
属性は、WebCenter PortalとElasticsearch間の相互作用を構成する場合に使用します。wcESDocumentsCrawlerThreads
属性は、ドキュメントのクロール処理に必要なスレッド数を構成する場合に使用します。
属性は次のとおりです。
-
wcESConnectionTimeoutPeriod: 接続タイムアウトまでの間隔(秒単位)。これは、WebCenter PortalでElasticsearchサーバーへの接続が確立されるまで待機する時間です。デフォルト値は30秒です。
-
wcESReadTimeoutPeriod: 読取りタイムアウトまでの間隔(秒単位)。WebCenter PortalがElasticsearchサーバーに接続されると、これによってElasticsearchサーバーが特定のリクエストに応答するまでの許容時間が指定されます。デフォルト値は30秒です。
-
wcESDocumentsCrawlerThreads: ドキュメントをクロールする検索のタスクはスレッドで処理されます。これは、固定数のスレッドを持つスレッド・プールを作成し、各スレッドでドキュメントのクロールを処理することによって実行されます。
wcESDocumentsCrawlerThreads
属性を使用すると、スレッド・プールの作成で使用するスレッド数を指定できます。デフォルト値は10です。クロール・タスク用に使用できるスレッドがないと、そのタスクはキューに入り、他のタスクが完了するまで待機します。
WebCenter Portal管理の「属性」ページでは、属性のデフォルト値を変更できます。値を変更したら、WebCenter Portalサーバーを再起動して、変更を有効にする必要があります。
Elasticsearchのカスタム検索属性の構成
WebCenter Portalを使用して検索すると、特定の事前定義済属性のみが検索結果に表示されます。WebCenter Portalでは、検索結果に追加属性を表示することができます。これを行うには、ポータル管理の「検索設定」ページを使用し、そのページの「カスタム属性」セクションで、検索結果に表示されるカスタム検索属性と、それらの属性の表示順序を選択できます。この「検索設定」ページ内のリストは、search-service-attributes.xml
によって決まります。これには、各サービスでクロールするすべての属性のリストが含まれます。Elasticsearchの索引のタイプは、このメタデータによって定義されます。search-service-attributes.xml
ファイルでは、新しいカスタム属性を追加することも、既存の属性を変更することも可能です。
次の手順では、ドキュメント・サービスを例として使用し、新しいカスタム検索属性を追加する方法について説明します。