2016-08-01 27 views
0

Ich möchte die Indizierung in Solr mit CSV-Datei durchführen. Solr gibt einen Fehler aus, wenn es sogar eine einzelne Zeile gibt, die ein leeres Pflichtfeld hat, es stoppt die ganze Indizierung, da ich keine Zeilen indiziert bekomme. Ich möchte wissen, wie ich solche Zeilen ohne erforderliche Felder ignorieren und Indexierung nur für Zeilen mit erforderlichen Feldern durchführen kann. Im Folgenden finden Sie den Eintrag für die Spalte in schema.xml:Solr: Ignoriere Zeilen, die kein Feld benötigen, während ich mit CSV indexiert

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

Vielen Dank im Voraus.

Antwort

2

Sie haben ein paar Optionen:

  1. Sie Standardwert für das Feld in the schema definition
  2. liefern können Sie Standardwert für das Feld in der benutzerdefinierten Aktualisierungsanforderung Prozessor Kette zur Verfügung stellen können (DefaultValueUpdateProcessorFactory)
  3. Mit Solr 6.1 können Sie die Aufzeichnung ignorieren, die einen Fehler verursacht, auch in der benutzerdefinierten URP Kette (TolerantUpdateProcessorFactory)
+0

Interessant ... ich habe nicht bekannt, dass ein Standardwertfeldparameter in der Schemadefinition vorhanden ist. Ich werde meine Antwort entfernen :) – freedev