Mondrian vs Elasticsearch: ko izvēlēties

Izstrādātājiem un datu noliktavu arhitektiem ir izaicinājums atrast analītikas fona motoru jūsu biznesa lietojumprogrammai.

Jūsu izvēle vienmēr ir atkarīga no plaša spektra biznesa, lietojumprogrammu un aparatūras prasību, kas jāņem vērā programmatūras izstrādes dzīves cikla agrīnajos posmos.

Lai palīdzētu jums izdarīt pareizo izvēli attiecībā uz risinājumu, kas atbilst tālejošajiem jūsu projekta mērķiem, mēs esam nolēmuši uzmanības centrā ievietot divus jaudīgus (pēc būtības atšķirīgus pēc būtības) rīkus - Elasticsearch un Mondrian, īsi aprakstot to augsto līmeņa funkcijas un izpētīt meklētājprogrammas un OLAP servera galvenos mērķus.

Elastīgā meklēšana

Lielākie pasaules uzņēmumi dod priekšroku Elasticsearch. Tas nav pārsteigums - Elasticsearch vienlaikus iemieso labākās uz dokumentu orientētās datu glabāšanas, vairāku īrnieku meklēšanas un analītiskā dzinēja iespējas. Optimizēts meklēšanai un izguvei, tas nodrošina lietojumprogrammas ar modernākajām meklēšanas funkcijām. Tā vairāku gadu īre dod jums iespēju klasterā ietilpt tik daudz indeksu, cik jums nepieciešams.

Papildus meklēšanas iespējām tas atbalsta arī analītiku un piedāvā efektīvu apkopošanu, kas palīdz iegūt vērtību no jūsu datiem.

Kas atrodas zem pārsega?

Elasticsearch centrā ir Apache Lucene - viena no visiecienītākajām informācijas izguves bibliotēkām, kas pazīstama ar savu veiktspēju, mērogojamību un piemērotību.

Netālu no reāllaika

Elasticsearch tiek saukta par gandrīz reālā laika meklēšanas platformu, jo tā izmanto vieglu procesu, padarot jaunus dokumentus meklējamus, katru sekundi atsvaidzinot katru sirdi.

Izvietošana

Parasti Elasticsearch pievienošana jūsu arhitektūras dizainam ir nesāpīgs process - varat to palaist gan uz vietas, gan mākonī. Īstenošana prasa minimālas pūles, bet ilgtermiņā dod maksimālu rezultātu.

Veiktspēja un mērogojamība

Mērogojamība vienmēr ir problēma, kas rodas, bet Elasticsearch ir izkliedēts raksturs, kas nodrošina kopējo meklēšanas veiktspēju. Tas viegli izlīdzinās, sadalot katru indeksu vairākās daļās. Sharding ļauj paralizēt operācijas starp šķembām, un indeksa kopiju replicēšana nodrošina pieejamību viena vai vairāku mezglu kļūmes gadījumā. Turklāt pēc indeksa izveidošanas jūs varat dinamiski kontrolēt atkārtojumu skaitu, bet indeksa izveides laikā jādefinē šķembu skaits.

Elastība

Viena no Elasticsearch galvenajām īpatnībām ir tā, ka nav nepieciešams norādīt shēmu uzreiz. Elasticsearch pati veic dokumentu indeksēšanu un automātiski secina to veidus un laukus. Tādā veidā tas palīdz jums tieši pēc iespējas ātrāk izpētīt savus datus.

Drošība

Izmantojot X-Pack, jūs varat savā klasterī ieviest dažādus drošības pasākumus - Elastic Stack paplašinājumu (kas nodrošina arī brīdināšanu, uzraudzību, ziņošanu, mašīnmācīšanās funkcijas).

Parasti šādi pasākumi ietver privātu datu atklāšanas un dārgu pieprasījumu vai ārēja koda izpildes novēršanu, izmantojot dinamiskos skriptus. Varat arī noteikt ierobežojumus tiesību atjaunināšanai.

API

Visas Elasticsearch iespējas tiek atklātas, izmantojot RESTful saskarni.

Turklāt jūs varat mijiedarboties ar Elasticsearch jebkurā izvēlētā valodā. Valodu atbalsts ir plašs - Java, Python, Curl, PHP, SQL, JavaScript, Ruby un citas.

Kopiena

Elasticsearch ir atvērtā koda produkts, kuru atbalsta izstrādātāji no visas pasaules.

Mēģiniet apmeklēt Elastīgo forumu - tas radīs jums nesalīdzināmu piederības sajūtu starptautiskajai sabiedrībai.

Dokumentācija, izlaidumi un atjauninājumi

Pirmais, kas piesaista acis, ir tas, kā Elasticsearch dokumentācija ir labi sakārtota un atjaunināta.

Vēl viena lieta, kas jums varētu patikt, ir sadaļa ar lietošanas gadījumiem, kas palīdz atklāt, kā dažādas organizācijas risina meklēšanas un analītiskās problēmas, izmantojot Elasticsearch un citus ELK steka produktus.

Nelieli izlaidumi un labojumi notiek bieži. Liela apjoma izlaišana notiek arī bieži - reizi divos vai četros mēnešos.

Vai tas ir bez maksas?

Jā, tā ir bezmaksas meklētājprogramma, kas tiek izlaista kā atvērts avots saskaņā ar Apache 2.0 licenci.

Ko mēs domājam

Elastīgā meklēšana ir saistīta ar ātrumu un elastīgumu. Ja jums jāpārvalda sarežģītas datu plūsmas, tā ir labākā izvēle. Tas meklēšanas procesu padara nesāpīgu un efektīvu.

Elasticsearch varat izmantot gan kā galveno veikalu, gan kā meklētājprogrammu. Bet labākā prakse ir izmantot Elasticsearch papildus esošajai datu bāzei.

Un, lai jūsu lietojumprogrammu varētu palielināt, izmantojot biznesa izlūkošanas rīku, varat izmēģināt Flexmonster - tas palīdz pārveidot datus no jūsu indeksa ieskatos ar jaudīgām filtrēšanas, apkopošanas un šķirošanas funkcijām.

Lai praksē uzzinātu, kā izveidot pārskatu, pamatojoties uz Elasticsearch indeksa datiem, lūdzu, skatiet rakstu Pieslēgšanās Elasticsearch.

Tagad apskatīsim Mondrian pārskatu.

Mondrians

Mondrian ir atvērtā koda OLAP dzinējs, kas tika izlaists 2002. gadā. Tā izveidi galvenokārt iedvesmoja SSAS un vēlme pārvarēt laikietilpīgā ziņojuma izveides procesa problēmu.

Kā tas darbojas?

Pentaho arhitekti apvienoja labākās ROLAP (relāciju tiešsaistes analītiskā apstrāde), tās vienkāršotās struktūras un MOLAP (daudzdimensiju tiešsaistes analītiskā apstrāde) funkcijas.

Tehniski tas kalpo kā starpnieks starp datu noliktavu un analīzes rīkiem. Ar datu loģisku aprakstu un JDBC palīdzību dati tiek iegūti no datu bāzes, MDX vaicājumus pārveido par SQL vaicājumiem un nosūta OLAP kubus kā atbildi uz ziņošanas rīku. Mondrian galvenā iezīme ir tā, ka atmiņā tiek ievietoti kubi, lai varētu ātri atbildēt uz jautājumiem.

Ir arī svarīgi saprast Mondrijas shēmas konstrukcijas. Kubs ir dimensiju un izmēru kolekcija. Izmēri parāda atribūtus, pēc kuriem pasākumus vajadzētu sadalīt kategorijās. Šīs dimensijas un hierarhijas caur shēmu tiek kartētas tabulās no jūsu datu bāzes.

Netālu no reāllaika

Izmantojot Mondrian, varat sasniegt gandrīz reāllaika pieredzi, jo ROLAP dzinēji iepriekš neaprēķina dimensiju krustojumus, tas nozīmē, ka dati ir pieejami tiešajiem lietotājiem, tiklīdz tie tiek atjaunināti datu bāzē.

Tas ir tas, kas padara Mondrian par labu izvēli reālā laika sistēmām - jūs varat palaist daudzdimensionālus vaicājumus pastāvīgi mainīgā datu bāzē. Šim nolūkam varat izmantot tās kešatmiņas vadības API.

Izvietošana

Jūs varat palaist Mondrian tīmekļa konteinerā (Tomcat vai JBoss) vai iegult kā savas lietojumprogrammas daļu.

Veiktspēja un mērogojamība

Mondrians izmanto aprēķinu glabāšanu atmiņā, lai palielinātu ātrumu. Neskatoties uz pašas Mondrian efektivitāti, tā var palēnināt jūsu lietojumprogrammu, ja jūsu SQL vaicājumi nav optimizēti vai shēma ir slikti izstrādāta. Turklāt OLAP pakešu iestatīšana, uzturēšana un pārstrukturēšana var dārgi maksāt, ņemot vērā izstrādātāja laiku, kas bieži vien ir dārgāks resurss nekā enerģija un atmiņa. Tomēr, izmantojot pareizās konfigurācijas, jūs varat pielāgot Mondrian simtiem vai tūkstošiem lietotāju.

Elastība

Tas ir elastīgs tādā nozīmē, ka to var iegult dažādās vidēs un integrēt ar trešo pušu rīkiem. Bet Mondrian shēmu valoda uzliek noteiktus ierobežojumus, kurus var pārvarēt, lietojumprogrammai pievienojot pielāgotus spraudņus.

Drošība

Lai ierobežotu piekļuvi noteiktām OLAP kuba daļām, jūs varat definēt lietotāja lomas shēmas definīcijā, izmantojot lomu servera kartēšanu.

API

Mondrian nenodrošina REST API, bet jūs varat izmantot trešo pušu REST API, kas apvilkti ap Mondrian bibliotēku.

Kopiena

Mondrian ir arī atvērtā koda projekts, kurā ikviens var dot savu ieguldījumu. Jūsu rīcībā ir oficiālais Pentaho forums, ja jums jāuzdod jautājums, kas saistīts ar Mondrian funkcionalitāti. Tomēr šķiet, ka tas netiek aktīvi izmantots.

Dokumentācija, izlaidumi un atjauninājumi

Dokumentācija ir visaptveroša, bet nav pietiekami skimble. Diemžēl tas rada iespaidu par vienu garu dokumentu, kuru ritiniet uz leju, līdz atrodat nepieciešamo informāciju.

Jaunākā oficiālā stabilā versija 3.0 tika izlaista 2008. gadā. Kopš tā laika Mondrian galvenokārt atbalsta un atjaunina izstrādātāji.

Vai tas ir bez maksas?

Jā, Mondrian ir bezmaksas un atvērtā koda. Tas ir licencēts saskaņā ar ETL.

Ko mēs domājam

Kopumā Mondrian ir laba izvēle, ja jums kā krātuves slānim ir viena relāciju datu bāze, kas pilnībā neatbilst vajadzībām ātri iegūt meklēšanas rezultātus, izmantojot vaicājumus. Tas paplašina relāciju datu bāzes funkcionalitāti, nodrošinot datu, kešatmiņas un augstāka līmeņa aprēķinu dimensiju skatu.

Ja jūs nolēmāt to izmantot, jums noteikti ir nepieciešams uzlabots priekšpusē izveidots rīks, lai parādītu un analizētu datus no klucīšiem. Tas ir paredzēts Flexmonster. Varat izveidot savienojumu ar Mondrian, izmantojot XMLA vai Flexmonster Accelerator (īpašu servera puses utilītu ātrai datu pārsūtīšanai) un sākt izpētīt OLAP datus. Lai uzzinātu vairāk informācijas, lūdzu, skatiet rakstu Pieslēgšanās pie Pentaho Mondrian.

Saliekot to visu kopā

Gan Mondrian, gan Elasticsearch var izmantot, lai efektīvi apkopotu iepriekš apkopotus datus un analizētu tos gandrīz reālā laikā, lai gan tie izmanto būtībā atšķirīgas tehnoloģijas. Tomēr šķiet, ka bijušais galu galā kļuva par novecojušu un mazāk populāru risinājumu atvērtā pirmkoda rīku konkurences dēļ IT tirgū. Turklāt, rakstot Mondrian shēmas, nepieciešama augstāka mācīšanās līkne, un tas var būt nogurdinošs process.

Elastīgo meklēšanu vairāk saņem izstrādātāju kopiena (it īpaši DevOps inženieri), un tā Mondrian sniedz informāciju dažādos aspektos: plašāks atbalstīto datu tipu klāsts, mērogojamība, spēja sazināties, izmantojot REST saskarni, un spēcīgs sabiedrības atbalsts. Turklāt tas ir lieliski piemērots žurnālu analīzei. Citas galvenās funkcijas ir gandrīz reāllaika meklēšana un arhitektūra bez shēmām. Mēs iesakām iegūt praktisku pieredzi, lai pārliecinātos, ka Elasticsearch ir paredzēts vieglai datu integrēšanai un paturot prātā izcilu veiktspēju.

Salīdzinot popularitāti

Mūsu secinājumi par Elasticsearch un Mondrian popularitāti ir balstīti uz meklēšanas vaicājumu analīzi, izmantojot Google Trends. Tas parādīja, kā pēdējā desmitgadē mainījās interese par abiem risinājumiem. Tendenču diagrammā varat pamanīt, ka Mondrian bija pieprasīts pirmo 10 gadu laikā pēc tā izlaišanas, taču tā popularitātes samazināšanās 2014. gadā sakrita ar Elasticsearch popularitātes pieaugumu, kas sekoja drīz pēc tā nozīmīgākajiem atjauninājumiem.

Noslēguma domas

Mēs ceram, ka tagad jūs esat gatavs pieņemt pārdomātu lēmumu par sava projekta analītikas fona motoru.

Lai kādu risinājumu jūs izvēlētos, jūs vienmēr varat paļauties uz Flexmonster. Tas kalpo kā biznesa informācijas rīks jūsu datiem un paver plašas iespējas - varat izveidot savienojumu ar Elasticsearch vai Mondrian, iegūt apkopotus datus no indeksa vai OLAP kuba un sākt domu ātruma analīzi. Neatkarīgi no tā, cik liela ir jūsu datu kopa - Flexmonster var ar to rīkoties.

Sākotnēji publicēts vietnē www.flexmonster.com.