GNU/Linux >> LINUX-Kenntnisse >  >> Linux

So importieren Sie Daten in Apache Solr

Kürzlich habe ich Sie durch den Prozess der Bereitstellung der Suchplattform für Unternehmen, Apache Solr, geführt. Mit diesem Tool können Sie riesige Datenmengen verwenden und leistungsstarke Suchanfragen mit Trefferhervorhebung, Echtzeit-Indizierung, dynamischem Clustering und mehr ausführen.

Sobald Sie Apache Solr bereitgestellt haben, müssen Sie in der Lage sein, Ihre Daten zu einer Sammlung hinzuzufügen, damit sie durchsucht werden können. Hier importieren wir eine CSV-Datenliste (die beliebig groß sein kann) in eine neue Sammlung und führen dann eine Abfrage für die neuen Daten aus.

Was Sie brauchen

Dazu benötigen Sie eine laufende Instanz von Apache Solr (mit den Anmeldeinformationen des Solr-Benutzers) und eine CSV-Datendatei. Ich erstelle eine Beispiel-CSV-Datendatei, die Sie als Vorlage verwenden können.

So erstellen Sie eine CSV-Datei für den Import

Als erstes müssen Sie sich bei dem Server anmelden, auf dem Apache Solr gehostet wird, entweder über SSH oder ein lokales Login. Sobald Sie angemeldet sind, erstellen Sie die neue Datei mit dem Befehl:

nano ~/solrdata.csv

Sie können diese Datei beliebig benennen und in einem beliebigen Verzeichnis unterbringen. Erstellen Sie eine obere Zeile, die die Namen für jede Spalte enthält:Ich werde es mit einer CSV-Datei demonstrieren, die Länder definiert. Die oberste Zeile definiert mehrere Elemente (z. B. Ländercode, Region und Unterregion) und sieht folgendermaßen aus:

Open Source:Unbedingt lesen

name,alpha-2,alpha-3,country-code,iso_3166-2,region,sub-region,intermediate-region,region-code,sub-region-code,intermediate-region-code

Der Rest der Datei enthält Einträge wie diese:

Afghanistan,AF,AFG,004,ISO 3166-2:AF,Asia,Southern Asia,"",142,034,""

Åland Islands,AX,ALA,248,ISO 3166-2:AX,Europe,Northern Europe,"",150,154,""

Albania,AL,ALB,008,ISO 3166-2:AL,Europe,Southern Europe,"",150,039,""

Algeria,DZ,DZA,012,ISO 3166-2:DZ,Africa,Northern Africa,"",002,015,""

American Samoa,AS,ASM,016,ISO 3166-2:AS,Oceania,Polynesia,"",009,061,""

Andorra,AD,AND,020,ISO 3166-2:AD,Europe,Southern Europe,"",150,039,""

Angola,AO,AGO,024,ISO 3166-2:AO,Africa,Sub-Saharan Africa,Middle Africa,002,202,017

Sie können die gesamte Beispieldatei country.csv mit dem folgenden Befehl herunterladen:

wget https://cdn.wsform.com/wp-content/uploads/2018/09/country.csv

Speichern Sie diese Datei auf dem lokalen Laufwerk des Apache Solr-Hosting-Rechners.

So erstellen Sie eine neue Sammlung

Lassen Sie uns jetzt eine neue Sammlung erstellen, um unsere Länderdaten aufzunehmen. Wir nennen diese Sammlung „country_data“ und erstellen sie mit dem Befehl:

su - solr -c "/opt/solr/bin/solr create -c country_data -n data_driven_schema_configs"

Sie werden nach dem Solr-Benutzerkennwort gefragt. Sobald Sie sich erfolgreich authentifiziert haben, wird die Sammlung erstellt und Sie können fortfahren.

So importieren Sie die Daten

Wechseln Sie in das Verzeichnis, in dem sich Solr befindet, mit dem Befehl:

cd /opt/solr

Wir können die Daten dann mit dem Befehl importieren:

./bin/post -c country_data /path/to/country.csv

Wobei /path/to ist der genaue Pfad zu dem Verzeichnis, in dem sich die neu heruntergeladene country.csv-Datei befindet.

Sie sollten eine Ausgabe ähnlich der folgenden sehen:

Posting files to [base] url http://localhost:8983/solr/country_data/update...

Entering auto mode. File endings considered are xml,json,jsonl,csv,pdf,doc,docx,ppt,pptx,xls,xlsx,odt,odp,ods,ott,otp,ots,rtf,htm,html,txt,log

POSTing file country.csv (text/csv) to [base]

1 files indexed.

COMMITting Solr index changes to http://localhost:8983/solr/country_data/update...

Time spent: 0:00:02.674

So zeigen Sie die neuen Daten an

Melden Sie sich bei der Apache Solr-Weboberfläche an, indem Sie in einem Browser auf http://SERVER:8983 zeigen (wobei SERVER ist die IP-Adresse des Hosting-Servers). Wählen Sie country_data aus dem Drop-down-Menü für neue Daten im linken Navigationsbereich aus. Im resultierenden Fenster (Abbildung A ), klicken Sie auf Abfrage.

Abbildung A

Klicken Sie im daraufhin angezeigten Fenster auf Abfrage ausführen, ohne etwas zu ändern, und das gesamte importierte Dokument wird aufgelistet (Abbildung B ).

Abbildung B

Angenommen, Sie möchten nach Irland suchen. Geben Sie „Ireland“ in den Abschnitt q (unter Common) ein und klicken Sie auf Execute Query. Das Ergebnis enthält nur den Eintrag für, Sie haben es erraten, Irland (Abbildung C ).

Abbildung C

Ein noch einfacherer Weg, CSV-Daten zu importieren

Es gibt sogar eine einfachere Möglichkeit, CSV-Daten in Apache Solr zu importieren.

Angenommen, Sie haben eine neue Sammlung mit dem Namen datacollection erstellt und möchten die Datei country.csv von der webbasierten Oberfläche importieren. Melden Sie sich bei Apache Solr an, wählen Sie Datensammlung aus der Dropdown-Liste aus und klicken Sie dann im linken Navigationsbereich auf Dokumente. Wählen Sie im daraufhin angezeigten Fenster CSV aus der Dropdown-Liste Dokumenttyp aus und kopieren Sie dann den gesamten Inhalt der Datei country.csv und fügen Sie ihn in den Abschnitt Dokumente ein (Abbildung D ).

Abbildung D

Klicken Sie auf Dokument senden und Sie sollten schließlich (im rechten Bereich) die folgende Ausgabe sehen:

Status: success

Response:

{

"responseHeader": {

"status": 0,

"QTime": 3533

}

}

Sie sollten Ihre importierten Daten jetzt auf die gleiche Weise wie zuvor abfragen können.

Und das ist alles, um CSV-formatierte Daten in Apache Solr zu importieren. Dies ist ein sehr leistungsfähiges Tool, das das Durchsuchen riesiger Datensammlungen sehr einfach macht. Wenn Ihr Unternehmen auf Daten angewiesen ist, ist dies möglicherweise eines der vielen Tools, die Sie benötigen.


Linux
  1. So installieren Sie Apache Solr auf AlmaLinux 8

  2. Wie schreibe ich eine Datei in eine andere?

  3. Wie füge ich CSV-Daten über eine Shell-Pipe in eine Sqlite-Tabelle ein?

  4. So importieren Sie E-Mail-Konten mit einer CSV- oder Excel-Datei

  5. Wie parse ich eine CSV-Datei in Bash?

So installieren Sie Apache Solr unter Debian 11

So schreiben Sie Daten in eine Datei unter Linux

So installieren Sie Apache Solr 8.9 auf Ubuntu 20.04

So installieren Sie Apache Solr 8.9 auf Ubuntu 18.04

So installieren Sie Apache Solr unter Oracle Linux 8

Wie Echo in Datei