• 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30

This article was migrated from http://rails.office.drecom.jp/takiuchi/archive/178

HyperEstraier は、全文検索エンジンです。Ruby on Railsから利用する場合は、acts_as_searchableを利用すると、非常に簡単にWebサービスに検索機能を追加することができます。

今回は、HyperEstraierのP2P連携機能を使ってクラスタリングを行う手順を紹介します。

まず、クラスタリングを行う全てのPCに、 通常の手順でHyperEstraierをインストール します。パッケージマネージャを使う事もできますが、今回はソースからインストールする事にします。

インストールが済んだら、HyperEstraierを初期化して起動します。以下では、/usr/local/hyperestraier以下に環境を構築しています。

   1  # estmaster init /usr/local/hyperestraier
   2  # estmaster start -bg /usr/local/hyperestraier

起動したら、ポート1978にアクセスし、動いていることを確認します。 続いてWebインターフェイスからノード間のリンクを作成します(もちろん、あらかじめノードを作成しておく必要があります。)

リンクの作成は、ノード編集画面から行います。

例)
http://search-1.com:1978/master_ui?action=10&name=nodename

ノード編集画面の一番下のlist of linksに以下のように、「{{!}}」で区切って別なサーバのノードを登録します。

http://search-2.com:1978/node/nodename{{!}}label{{!}}1000

上記は、search-2.com上のnodenameというノードに対して、labelというラベルでリンクを作成しています。1000というのは信頼度で、検索結果の順位に影響します。1台目から2台目へのlinkの設定が済んだら、2台目から1台目に逆方向にリンクを張ります。

以上でクラスタリングは完了です。 実際に検索を行うときは、メタ検索のdepthを1以上に指定する必要があります。

This article was migrated from http://rails.office.drecom.jp/takiuchi/archive/178

posted by Png genki on Wed 11 Apr 2007 at 02:25

Comments:

or Preview
Social Bookmarks
  • Delicious
  • B_entry122
  • Clip_16_12_w
Services from s21g
twpro(ツイプロ)
Twitterプロフィールを快適検索
地価2009
土地の値段を調べてみよう
MyRestaurant
自分だけのレストラン手帳
Formula
ブログに数式を埋め込める数式コミュニティ