Beide obigen Antworten sind großartig!
Ich füge ein Beispiel für mehrere Typen in einen Index ein. Angenommen, Sie entwickeln eine App für die Suche nach Büchern in einer Bibliothek. Es gibt nur wenige Fragen an den Bibliotheksinhaber.
Fragen:
Wie viele Bücher planen Sie aufzubewahren?
Welche Art von Büchern werden Sie in der Bibliothek aufbewahren?
Wie wirst du nach Büchern suchen?
Antworten:
Ich plane, 50.000 bis 70.000 Bücher (ungefähr) aufzubewahren.
Ich werde 15 k -20 k technologiebezogene Bücher (Informatik, Maschinenbau, Chemieingenieurwesen usw.), 15 k historische Bücher, 10 k medizinwissenschaftliche Bücher haben. 10 k sprachbezogene Bücher (Englisch, Spanisch usw.)
Suche nach Vorname des Autors, Nachname des Autors, Erscheinungsjahr, Name des Herausgebers. (Dies gibt Ihnen eine Vorstellung davon, welche Informationen Sie im Index speichern sollten.)
Aus den obigen Antworten können wir sagen, dass das Schema in unserem Index ungefähr so aussehen sollte.
// Dies ist nicht die genaue Zuordnung, nur für das Beispiel
"yearOfPublish":{
"type": "integer"
},
"author":{
"type": "object",
"properties": {
"firstName":{
"type": "string"
},
"lastName":{
"type": "string"
}
}
},
"publisherName":{
"type": "string"
}
}
Um dies zu erreichen, können wir einen Index namens Bücher erstellen und verschiedene Typen haben.
Index: Buch
Arten: Wissenschaft, Kunst
(Oder Sie können viele Arten wie Technologie, Medizin, Geschichte, Sprache erstellen, wenn Sie viel mehr Bücher haben)
Wichtig hierbei ist, dass das Schema ähnlich ist, die Daten jedoch nicht identisch sind. Und die andere wichtige Sache sind die Gesamtdaten, die Sie speichern.
Hoffe, dass das oben Genannte hilft, wenn Sie verschiedene Typen in einem Index auswählen. Wenn Sie ein anderes Schema haben, sollten Sie einen anderen Index in Betracht ziehen. Kleiner Index für weniger Daten. Big Index für Big Data :-)