2017-12-08 15 views
0

私はSolr7.1(SolrCloudモード)を使用していますが、ドキュメントの一意性を強制する必要はありません。 したがって、required="false"としてidフィールド(一意のキーとして指定)をスキーマにマークしました。Apache Solr - ドキュメントが不足していますuniqueKeyフィールド:id

<field name="id" type="string" indexed="true" stored="false" required="false" multiValued="false" />

<uniqueKey>id</uniqueKey>

そして私はSolrの管理UIを使用してインデックスにいくつかの書類をしようとしていますし、私は'id'フィールドを指定せずにしようとしています。

{ "cat": "books", "name": "JayStore" } 私は正常にインデックスにそれを期待していたが、Solrには私が間違ってやっている

いくつかのいずれかが私を導くでした「必須一意のキーフィールドIDが欠落している」というエラーを投げています。

uniqueKey
+0

それがこの@suvartheec – suvartheec

+0

を何が起こっているかについての正確な情報を提供するかもしれないような完全なエラーログを投稿してください「更新」RESTのAPI ' { 「responseHeader」からの応答です。 { "ステータス":400、 "QTIME":2}、 "エラー":{ "メタデータ":[ "エラー・クラス"、 "org.apache.solr.common.SolrException"、 「ルート-error-class "、" org.apache.solr.common.SolrExce ption "]、 "MSG":" ドキュメントは必須UNIQUEKEYフィールドが欠落している:ID」、 "コード":400}} ' 、これは、管理UIに表示されるメッセージである。 '文献は必須UNIQUEKEYが欠落していますフィールド:id' –

答えて

1

フィールドは、cursorMark使用などの特定の機能のためのSolrによって内部的に必要とされる - UNIQUEKEY として定義されているフィールドがが必要であることを意味します。 SolrCloud内でのルーティング(デフォルトではIIRC)にも使用されます。存在しない場合、Solrはドキュメントを正しく分割できません。スキーマで必須ではないと設定しても、その要件は緩和されません。

しかし、これを回避するには、UUIDフィールドとusing a UUID Update Processor as described in the old wikiを定義します。これは、索引付けするときに各文書に固有のUUIDを生成します。つまり、各文書にデフォルトで固有の識別子が付けられます。

UUIDはUniversal Unique IDentifierの略です。 UUID標準RFC-4122には、さまざまな入力形式のいくつかのタイプのUUIDが含まれています。

<fieldType name="uuid" class="solr.UUIDField" indexed="true" />

がSolrの4において、このフィールドはSolrのを経由して移入されなければならない。4.フィールドを有するschema.xmlファイルで定義されているバージョンを実装Solrの1.4(UUIDField呼ばれる)UUIDフィールドタイプがあります。 UUIDUpdateProcessorFactory。

<field name="id" type="uuid" indexed="true" stored="true" required="true"/> <updateRequestProcessorChain name="uuid"> <processor class="solr.UUIDUpdateProcessorFactory"> <str name="fieldName">id</str> </processor> <processor class="solr.RunUpdateProcessorFactory"/ </updateRequestProcessorChain>

+0

が意味を持ちます。しかし、 '' xml要素のドキュメントは多少混乱します。以下のようになります: '<! - 文書の一意性を判定して実施するために使用するフィールドです。 このフィールドにrequired = "false"とマークされていない場合、必須フィールドになります - > id ' –

関連する問題