2016-07-05 9 views
0

Ich habe zwei json-Dokumente in Solr indiziert, und wenn ich die Antwort bekomme, empfange ich beide Dokumente - wie man die zwei Dokumente unterscheidet und die Dokumente getrennt speichert?Wie extrahiert man zwei json-indizierte Dokumente mit solrj oder QueryResponse

+0

hat Ihre Frage nicht vollständig verstanden! Handelt es sich um irgendeinen Zusammenhang mit der Einzigartigkeit von Dokumenten, die ich hier schon beantwortet habe? Http://stackoverflow.com/questions/38090847/reindexing-json-object-into-solr-by-adding-only-unique-elements/ 38091229 # 38091229 Können Sie es ausarbeiten? –

+0

Wie bekomme ich alle indizierten Dokumente als resultSet wie wir in jdbc bekommen, wenn wir eine SQL-Abfrage ausführen .. als ich die Felder zu Datatable als Reihe weise hinzufügen müssen .. ich hoffe, Sie haben es –

+1

bitte re-phrase Ihre Frage richtig, da es dir hilft, mehr gute Antworten zu finden, übrigens habe ich meine Antwort unten gepostet. –

Antwort

0

Sie müssen beim Indexieren der JSON-Dokumente einen (eindeutigen) Schlüssel definieren - dieser Schlüssel ist obligatorisch oder nicht. Dies könnte in schema.xml oder in managed-schema geschehen, falls dies noch nicht geschehen ist. Dann müssten Sie in der Abfrage nach diesem Schlüssel suchen, um das gewünschte Dokument abzurufen.

Dies kann mit der Abfrage nach einem eindeutigen Primärschlüssel in SQL und traditionellen Datenbanken verglichen werden. Ein Tupel/Datensatz, der durch den Primärschlüssel eindeutig definiert ist, würde in diesem Szenario den JSON-Dokumenten entsprechen.

Angenommen, zwei Dokumente mit der jeweiligen eindeutigen ID 1 und 2 - können Sie Dokument 1 abrufen, indem Sie in Solr Admin-UI nach q=id:1 suchen - wenn Sie das Dokument mit der ID 1 möchten. Ich fürchte, ich weiß nicht wie Dies zu tun ist Solrj oder durch QueryResponse.

Die Verwaltung, wo Dokumente in Solr gespeichert werden, wird nicht unterstützt - es ist mehr oder weniger schwarz-boxed. Dies sollte jedoch in Anbetracht Ihrer Situation kein Problem darstellen, solange Sie die Abfrage korrekt angeben.

+0

Wie bekomme ich alle indizierten Dokumente als resultSet, wie wir in jdbc bekommen, wenn wir eine SQL-Abfrage ausführen .. als ich die Felder zu Datatable als Reihe weise hinzufügen müssen..ich hoffe, Sie haben es - –

0

Suchen Sie hier nach einem Link, der beschreibt, wie Solr 6 als JDBC-Datenquelle verwendet wird. Besser, wenn Sie Solr 6 verwenden, wenn Sie Solr eher als Datenquelle als als Indexquelle verwenden möchten, da es erweiterte SQL-Level-Funktionen bietet und somit den besten Zweck erfüllt. Hier ist der Link https://sematext.com/blog/2016/04/26/solr-6-as-jdbc-data-source/. Lass es mich wissen, wenn dir das hilft :).

Verwandte Themen