ugrás a tartalomhoz

Solr Séma - Kérdés

coolpix · 2015. Jún. 3. (Sze), 11.07
szisztok,

Van egy nekem bonyolult kérdésem:
Solr-al szeretném megoldani a keresést, viszont több fajta adatszerkezetem lenne.
Mondjuk autók, és ingatlanok. Ilyenkor a SOLR szerveren több sémát kell létrehoznom, és mindig az adottba kell keresgélnem? Vagy több példányba, külön porton futtatni a solrt?
 
1

Csak hogy értsem

Hidvégi Gábor · 2015. Jún. 3. (Sze), 14.40
El tudnád mondani nekem, hogy miért szeretnél solr-t használni? Hisz van már egy létező adatbázisod az ingatlanokkal, azok adataival, a solr ezt tükrözi le, és utána ő a sajátjában keres.

A keresésnél vannak a bejövő adatok (alapterület, szintek száma stb.), amiket hozzá kell rendelned php-ban egy solr API kéréshez, amit utána eleresztesz, és a kapott sorokból HTML-t generálsz. Nem ugyanott vagy, ha ezekből az adatokból generálsz egy lekérdezést, de megspóroltál egy függőséget a szoftveredben és egy csomó erőforrást?
2

Bonyolultabb

Poetro · 2015. Jún. 3. (Sze), 14.47
A dolog kicsit szerintem bonyolultabb. A Solr sokkal gyorsabban tud válaszolni összetett keresésekre mint a MySQL mivel a kereséseknek megfelelően indexeli a tartalmat, míg egy RDBM-ben fel kell oldani a struktúrát minden egyes lekérdezés esetén, ha több mint egy táblából történik a lekérdezés. Simán előfordulhat, hogy egy lekérdezés MySQL-ben 1 másodperc alatt fut le, ugyanaz pedig 10ms alatt megvan Solr esetén.

A kérdésre is válaszolva, én mindenképpen több sémát használnák, semmiképp sem több Solr szervert futtatnék. Felesleges erőforráspazarlás (memória, tárhely), valamint bonyoltabbá válhat a logika is.
3

Minimum

Hidvégi Gábor · 2015. Jún. 3. (Sze), 16.48
Készséggel elhiszem, hogy van olyan projekt, ahol már megéri solr-rel keresni, a kérdés az, hogy mi ennek a mérete? Feltételezem, hogy nem zéró az erőforrásigénye a keresőnek, akár külön szerver is szükséges hozzá, különben nyilvánvalóan mindenki ezt használná.
4

Hoszting

Poetro · 2015. Jún. 3. (Sze), 17.12
Mivel telepíteni kell egy Java szervert, aminek folyamatosan futnia kell, nem fogja mindenki használni. A legtöbb weboldal megosztott hosztingon fut általában PHP / HTML alapokon így a "mindenki ezt használná" erősen kizárt. Az erőforrás igénye nem jelentős. Leginkább az indexelés erőforrásigényes és ez megoldható a tartalom felvitele során. A keresés nem túl erőforrásigényes, természetesen jól skálázódik, ha az alkalmazást több szerveren futtatod, de nem sok weboldal fut több szerveren, így ezt is kivehetjük a "mindenki ezt használná" kategóriából. Viszont maga a szerver futhat ugyanazon a gépen, ahol a weboldal is, ahogy legtöbb esetben a RDBM is ugyanazon a szerveren fut (pedig annak is jót tesz, ha dedikált szervert kap).

Én mondjuk régen használtam Solr-t, mostanában ElasticSearch-öt használok, ami azonos alapon nyugszik (mindkettő Lucene-t használ az indexelésre). Ott mi viszonylag sok adattal dolgozunk (több gigabájt), itt mindenképpen megéri egy hasonló rendszert használni.
5

Én mondjuk régen használtam

Joó Ádám · 2015. Jún. 4. (Cs), 02.59
Én mondjuk régen használtam Solr-t, mostanában ElasticSearch-öt használok


Mi volt az oka a váltásnak?
6

Nem volt váltás

Poetro · 2015. Jún. 4. (Cs), 08.50
Nem volt váltás. Solr-t használtam 2 projekthez 4-6 éve, utána pedig tavaly óta teljesen más környezetben pedig ES-t.