Apache Solr

Sissejuhatus Apache Solrisse. 3. osa PostgreSQL-iga ühendamine

Sissejuhatus Apache Solrisse. 3. osa PostgreSQL-iga ühendamine
Apache Solr [1] on Java-s kirjutatud otsingumootori raamistik, mis põhineb Lucene otsingukogul [6]. Kahes eelmises artiklis seadistasime Apache Solri peagi ilmuvale Debiani GNU / Linux 11-le, algatasime ühe andmesüdamiku, laadisime üles näiteandmed, näitasime, kuidas väljundandmeid erinevatel viisidel pärida ja järeltöödelda seda.

See on jätkuprogramm kahele eelmisele [2,3]. Siiani laadisime indekseeritud andmed Apache Solri salvestusruumi ja küsisime selle kohta andmeid. Nüüd saate teada, kuidas relatsiooniandmebaasi haldussüsteemi PostgreSQL [4] Apache Solriga ühendada ja selles Solri võimalusi kasutades otsinguid teha. Seetõttu on vaja teha mitu allpool kirjeldatud toimingut üksikasjalikumalt - seadistada PostgreSQL, koostada PostgreSQL andmebaasis andmestruktuur ja ühendada PostgreSQL Apache Solriga ning teha meie otsing.

1. samm: PostgreSQL-i seadistamine

PostgreSQL-i kohta - lühike teave

PostgreSQL on leidlik objektide-relatsioonide andmebaaside haldussüsteem. See on olnud kasutamiseks saadaval ja seda on aktiivselt arendatud juba üle 30 aasta. See pärineb California ülikoolist, kus seda peetakse Ingresi järeltulijaks [7].

Algusest peale on see saadaval avatud lähtekoodiga (GPL), tasuta kasutamiseks, muutmiseks ja levitamiseks. See on tööstuses laialdaselt kasutatav ja väga populaarne. PostgreSQL oli algselt mõeldud töötama ainult UNIX / Linuxi süsteemides ja hiljem töötati teistes süsteemides nagu Microsoft Windows, Solaris ja BSD. PostgreSQLi praegust arendamist teevad kogu maailmas arvukad vabatahtlikud.

PostgreSQLi seadistamine

Kui see pole veel tehtud, installige PostgreSQL server ja klient kohapeal, näiteks Debiani GNU / Linuxi, nagu allpool kirjeldatud, kasutades apt. PostgreSQL-i käsitleb kaks artiklit - Yunis Saidi artikkel [5] käsitleb Ubuntu seadistamist. Sellegipoolest kriimustab ta ainult pinda, samal ajal kui minu eelmine artikkel keskendub PostgreSQL-i ja GIS-laienduse PostGIS kombinatsioonile [6]. Siinne kirjeldus võtab kokku kõik selle konkreetse seadistuse jaoks vajalikud toimingud.

# apt install postgresql-13 postgresql-klient-13

Järgmisena kontrollige käsu pg_isready abil, kas PostgreSQL töötab. See on utiliit, mis on osa PostgreSQL-i paketist.

# pg_valmis
/ var / run / postgresql: 5432 - ühendused on lubatud

Ülaltoodud väljund näitab, et PostgreSQL on valmis ja ootab sissetulevaid ühendusi pordil 5432. Kui pole määratud teisiti, on see standardkonfiguratsioon. Järgmine samm on UNIX-i kasutaja Postgres parooli määramine:

# passwd Postgres

Pidage meeles, et PostgreSQL-il on oma kasutajate andmebaas, samas kui PostgreSQL-i administraatori kasutajal Postgres pole veel parooli. Eelmine samm tuleb teha ka PostgreSQL-i kasutaja Postgres puhul:

# su - Postgres
$ psql -c "ALTER USER Postgres WITH PASSWORD 'parool';"

Lihtsuse huvides on valitud parool lihtsalt parool ja see tuleks asendada turvalisema paroolilausega muudes süsteemides peale testimise. Ülaltoodud käsk muudab PostgreSQL-i sisemist kasutajatabelit. Olge teadlik erinevatest jutumärkidest - parool ühes jutumärgis ja SQL-päring topelt jutumärkides, et vältida shellitõlgi käsu valesti hindamist. Samuti lisage semikoolon pärast SQL-i päringut käsu lõpus olevate jutumärkide ette.

Järgmisena ühendage administratiivsetel põhjustel PostgreSQL-iga kasutaja Postgres kasutajana varem loodud parooliga. Käsku nimetatakse psql:

$ psql

Apache Solrist ühenduse loomine PostgreSQL andmebaasiga toimub kasutaja solrina. Lisame siis PostgreSQL-i kasutaja solr ja määrame talle vastava parooli solr ühe korraga:

$ CREATE USER solr WITH PASSWD 'solr';

Lihtsuse huvides on valitud parool lihtsalt solr ja see tuleks tootmises olevate süsteemide puhul asendada turvalisema paroolifraasiga.

2. samm: andmestruktuuri ettevalmistamine

Andmete salvestamiseks ja hankimiseks on vaja vastavat andmebaasi. Allolev käsk loob autode andmebaasi, mis kuulub kasutaja solrile ja mida kasutatakse hiljem.

$ LOO ANDMEBAASI OMANIKUGA autod = solr;

Seejärel ühendage kasutaja loodud solaarina vastloodud andmebaasi autodega. Valik -d (lühivalik -dbnimi jaoks) määrab andmebaasi nime ja -U (lühike suvand -kasutajanimi) PostgreSQL-i kasutaja nime.

$ psql -d autod -U solr

Tühi andmebaas pole kasulik, kuid sisustatud struktureeritud tabelid seda teevad. Looge lauaautode struktuur järgmiselt:

$ CREATE TABLE autod (
id int,
tee varcharit (100),
mudel varchar (100),
kirjeldus varchar (100),
värvi varchar (50),
hind int
);

Lauavagunid sisaldavad kuut andmevälja - id (täisarv), mark (string pikkusega 100), mudel (string pikkusega 100), kirjeldus (string pikkusega 100), värv (string pikkusega 50) ja hind (täisarv). Näidisandmete saamiseks lisage tabelautodele SQL-lausetena järgmised väärtused:

$ INSERT INTO autod (id, mark, mudel, kirjeldus, värv, hind)
VÄÄRTUSED (1, 'BMW', 'X5', 'Lahe auto', 'hall', 45000);
$ INSERT INTO autod (id, mark, mudel, kirjeldus, värv, hind)
VÄÄRTUSED (2, 'Audi', 'Quattro', 'võidusõiduauto', 'valge', 30000);

Tulemuseks on kaks kirjet, mis tähistavad halli BMW X5, mis maksab 45000 USD, mida kirjeldatakse kui lahedat autot, ja valget võistlusautot Audi Quattro, mis maksab 30000 USD.

Järgmisena väljuge PostgreSQL-i konsoolilt \ q abil või sulgege.

$ \ q

3. samm: PostgreSQL-i ühendamine Apache Solriga

PostgreSQL ja Apache Solri ühendus põhineb kahel tarkvaral - Java draiver PostgreSQL jaoks nimega Java Database Connectivity (JDBC) draiver ja Solri serveri konfiguratsiooni laiendus. JDBC-draiver lisab PostgreSQL-ile Java-liidese ja Solri konfiguratsiooni lisakirje annab Solrile teada, kuidas JDBC-draiveri abil PostgreSQL-iga ühenduda.

JDBC-draiveri lisamine toimub kasutajajuurena järgmiselt ja see installib JDBC-draiveri Debiani paketihoidlast:

# apt-get install libpostgresql-jdbc-java

Apache Solri poolel peab olemas olema ka vastav sõlm. Kui seda pole veel tehtud, looge UNIX-i kasutajana solmeautod järgmiselt:

$ bin / solr loovad -c autosid

Järgmisena laiendage vastloodud sõlme Solri konfiguratsiooni. Lisage allolevad read faili / var / solr / data / cars / conf / solrconfig.xml:

db-data-config.xml

Lisaks looge fail / var / solr / data / cars / conf / data-config.xml ja salvestage sinna järgmine sisu:

Ülaltoodud read vastavad eelmistele sätetele ja määratlevad JDBC draiveri, määrake port 5432 PostgreSQL DBMS-iga ühenduse loomiseks vastava parooliga kasutajana ja määrake SQL-päring, mis käivitatakse PostgreSQL-ist. Lihtsuse huvides on see SELECT-lause, mis haarab kogu tabeli sisu.

Järgmisena taaskäivitage Solri server muudatuste aktiveerimiseks. Kasutajajuurena käivitage järgmine käsk:

# systemctl taaskäivitage solr

Viimane samm on andmete importimine, näiteks Solri veebiliidese abil. Sõlmevalikukast valib sõlmpunkti autod, seejärel menüüst Sõlm all kirje Dataimport, millele järgneb täieliku impordi valik menüüst Käsu. Lõpuks vajutage nuppu Execute. Allolevalt jooniselt on näha, et Solr on andmed edukalt indekseerinud.

4. samm: andmete pärimine DBMS-ist

Eelmises artiklis [3] käsitletakse andmete päringuid üksikasjalikult, tulemuse hankimist ja soovitud väljundvormingu valimist - CSV, XML või JSON. Andmete pärimine toimub sarnaselt varem õpitule ja kasutajale pole mingit erinevust näha. Solr teeb kogu töö kulisside taga ja suhtleb PostgreSQL DBMS-iga ühendatud, nagu on määratletud valitud Solri tuumas või klastris.

Solri kasutamine ei muutu ja päringuid saab esitada Solri administraatori liidese kaudu või käsureal curl või wget abil. Saate konkreetse URL-iga Get-päringu Solr-serverile (päring, värskendamine või kustutamine). Solr töötleb päringut DBMS-i abil mäluüksusena ja tagastab päringu tulemuse. Järgmisena töötlege vastus lokaalselt.

Allpool toodud näide näitab päringu „/ select?q = *. * ”JSON-vormingus Solri administraatori liideses. Andmed saadakse meie loodud andmebaasiautodest.

Järeldus

See artikkel näitab, kuidas PostgreSQL-i andmebaasi päringuid teha Apache Solrilt, ja selgitab vastavat seadistust. Selle seeria järgmises osas saate teada, kuidas ühendada mitu Solri sõlme Solri klastriks.

Autorite kohta

Jacqui Kabeta on keskkonnakaitsja, innukas uurija, koolitaja ja mentor. Mitmes Aafrika riigis on ta töötanud IT-tööstuses ja vabaühenduste keskkonnas.

Frank Hofmann on IT-arendaja, koolitaja ja autor ning eelistab töötada Berliinist, Genfist ja Kaplinnast. Debiani paketihalduse raamatu kaasautor, mis on saadaval veebisaidilt dpmb.org

Lingid ja viited

Kuidas muuta hiire vasakut ja paremat nuppu Windows 10 PC-s
On üsna tavaline, et kõik arvutihiirte seadmed on ergonoomiliselt mõeldud parempoolsete kasutajate jaoks. Kuid on olemas hiire seadmeid, mis on spetsi...
Jäljendage hiireklikke, hõljutades hiirega klõpsutut hiirt Windows 10-s
Hiire või klaviatuuri kasutamine liigses kasutamises vales asendis võib põhjustada palju terviseprobleeme, sealhulgas tüve, karpaalkanali sündroom ja ...
Nende tasuta tööriistade abil lisage Windows 10-le hiire liigutused
Viimastel aastatel on arvutid ja operatsioonisüsteemid palju arenenud. Oli aeg, mil kasutajad pidid failihaldurites navigeerimiseks kasutama käske. Na...