2012-03-02 17 views
0

私はSOLR ..でドキュメントを作成していますか?


.. SOLRで文書を作成する方法を私のシナリオを勉強ApacheのSOLR..niに新しいです:私のRDBMSのデータベースでは、私は次のシナリオを持っている:

A "車」テーブル "jc_cars":ID、名前、

アン余分は " "" テーブル" jc_attributes属性:IDたattributeName

項目と自動車との間多to_manyテーブル: "jc_car_attributes":をattributeID carID

アン "記事" テーブル:jc_articlesid、タイトル、説明

多対多条と車の間にテーブル: "jc_car_articles":情報でarticleID、carID

今、私が欲しいものです:

  • を検索その属性を持つすべての車(価格など)
  • 私は次のクエリ作るとき

は、実際に私は結果をしたい、この車に関連件の

  • 検索全ての記事:価格と

    • 車を未満400000:万一車の詳細と 関連記事
    • 現代アクセント
    • 車詳細や関連記事を与えるべきであるというように.....

    は、どのように私は、対応する文書とのSchema.xmlを作成する必要があります。.. ??

  • 答えて

    1

    Solrにはフラットなインデックスがあります。したがって、複数の値を持つリレーションのリストは実際にはありません(属性などの名前と値の両方のリレーション)。

    記事については、複数の値を持つフィールドに関連する記事のIDを指定し、別のソルジャーコアのデータベース(b)のいずれか(a)を個別に検索することができます。

    属性の固定リストがある場合は、これらの属性をcarsに結合し、各属性をそれぞれのフィールドに読み込むことができます。あなたが属性の固定リストを持っていない場合は、別のコアに頼らざるを得なくなります。アトリビュートコアでルックアップを行い、車のコアから特定の車を検索します。

    +0

    私はSolrを初めて使っているので...しかし、私はあなたの答えをもっと理解しています...あなたが別のSolrコアを言いました。別の "要求ハンドラ"を意味しています.. –

    +0

    [Solrコア](http://wiki.apache.org/solr/CoreAdmin)は、同じ構造を持たないドキュメントの個別のインデックスです。あなたの例では、 'cars'と' attributes'と 'articles'です。 – beerbajay

    関連する問題