2017-04-09 3 views
1

Ich habe ein verschachteltes Objekt in Solr und ich verwende Schema in verwalten Schemadatei. Aber Solr Speichern des verschachtelten Objekts in flacher Weise.Solr Nested Object Parse Fehler

Beispiel: -

{ "id": 1234, 
    "name":{ 
      "fname":"Random", 
      "lastName":"Name" 
      } 
} 

verwalten-Schemadatei

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

Wenn Insert Beispieldaten in Solr es Daten, da diese

{"id":1234, 
"name.fName":"Random", 
"name.lastName":"Name" 
} 

Speichern Also, wenn ich die Daten bekommen von Solr und versuchen, zu meinem Klassenobjekt zu konvertieren, dann gibt es mir Parse-Fehler no value for key fName

Bitte helfen Dank

Antwort

0

Es gibt 2 mögliche Ansätze bei der Modellierung/verschachtelten Objekten in Solr Abfrage: Index Zeit Mitglied werden

  • Bedeuten eine sehr spezifische Indexierungsstrategie, müssen Sie Index ein ganzer Block (Kinder + Eltern)

  • recht schnell

Abfragezeit Registriert

  • Sie benötigen keine besondere Indizierung Strategie zu folgen, eveything zum Zeitpunkt der Abfrage passieren wird.
  • ‚langsam‘

In diesen beiden Szenarien, die Sie brauchen keine Lust Möglichkeit, Ihre Felder im Schema der Namensgebung (die verschachtelte Objekt-Funktionalität hat nichts mit Feld Namensgebung zu tun).

[1] https://cwiki.apache.org/confluence/display/solr/Uploading+Data+with+Index+Handlers#UploadingDatawithIndexHandlers-NestedChildDocuments