Search Results for: ElasticSearch

Elasticsearch Index és a performancia

Az Elasticsearch alapértelmezetten nem spórol az indexekben tárolt dokumentumok kapcsán az erőforrásokkal. Ha az adott index nem rendelkezik egy jól felépített és átgondolt mappinggel, akkor az ES gyakorlatilag “szabadfolyást” tart, minden szöveges típust analizál, minden olyan adatot ami rendezhető vagy aggregálható azt inmemory bufferbe lapoz, ráadásul menedzsel egy csomó olyan virtuális fieldet is mint pl az: _all.

Ezzel az ES egy végtelen rugalmasságot és könnyed felhasználást teszt lehetővé, ami a legtöbb projekt esetén egyébként nagyon pozitívan értékelhető hozzáadott érték. Azonban ennek megvan az ára, ez pedig a performancia. Egy tetszőleges ES installment esetén elmondható, hogy néhány millió dokumentumig nem nagyon kell foglalkozni a mappingekkel, hiszen itt még bőven érvényesül az a fajta distributed processing hozzáállás, hogy ha kezd lassulni az indexelés vagy a keresés, akkor bővíteni kell a clustert egy-két extra node-dal (már persze ha az index shard beállításainál ügyeltünk arra, hogy ennek legyen értelme…) és máris normalizálódik a performancia.

Folytatás…

Big Data: Hadoop vs Elasticsearch, mond Te mit választanál?

Amikor napjainkban előkerül az a kifejezés, hogy Big Data, akkor ennek a hátterében (technológiai értelemben) vagy egy Hadoop alapú környezet, vagy egy Elasticsearch áll. Vagy persze ennek valamilyen jellegű kombinációja. (pl hdfs alapú adattárolás mellett nosource indexed elasticsearch kereséshez).

Ez a két technológia lényegében uralja a piacot. Előbbi ugye egy robosztus rendszer, ami modulok és célalkalmazások százait vonultatja fel, az utóbbi pedig leginkább keresésre való, de arra viszont nagyon. A megközelítéssel ugye az a baj, hogy a Big Data mint kifejezés pont annyira egzakt mint mondjuk a “cloud”. Tehát önmagában semmit sem jelent és lényegében bármire lehet használni.  A megvalószítás technológiai eszközének kiválasztásához nem árt végig gondolni, hogy mit is akarunk tárolni a big data-ban és mit is akarunk azzal csinálni.

Folytatás…

Zero downtime in ELK (Elasticsearch) environment

Nem visz rá a lélek, hogy ez a címet magyarul akarjam leírni… De miért is érdekes a zero downtime egy NoSQL megoldás kapcsán. A héten került megrendezésre a HOUG nevű szakmai konferencia Siófokon, ami a hazai Oracle felhasználók éves nagy konferenciája, ahol megannyi sales fókuszú előadás mellett bőven akadt szakmai előadás is, melyek egy része bőségesen adott gondolkodnivalót nekem is. Az egyik előadáson lőttem az alábbi ábrát (remélem nem kövez meg senki amiért nyúlom…):

Folytatás…

Hogyan joinoljunk Elasticsearchben?

Oké, ennyire hülye címet is már régen adtam bármilyen postnak. De lássuk csak, hogy miről is akar ez szólni. Ugye a JOIN egy közkedvelt eszköze a relációs (RDBMS) adatbáziskezelőknek, ami pont az a tulajdonságot használja ki, hogy az adatbázis relációs és annak tartalma normalizált ÉS feltételezhetően vannak benne relációk. Ezen relációk adják az RDBMS rendszerek valódi lépéselőnyét a saját pályájukon. A JOIN lényege az, hogy egy vagy több tábla között létrehozunk logikai kapcsolatot és ezen kapcsolatokon keresztül bonyolult lekéréseket tudunk létrehozni. (vagy éppen ki tudjuk nyírni az egész RDBMS-t egy gyönyörű kaszkád szorzással…)
Namost az Elasticsearch az sem nem RDBMS, sem nincsennek benne reálciók (óóó, dehogy nincs… lásd a cikk végén a parent/child relációt…) és úgy egyébként a JOIN-nak sincs semmi értelme benne. Miért is nincs értelme a JOIN-nak? Az Elasticsearch (és igaz ez a legtöbb key=value alapú NoSQL motorra) pont arra az elvre épül fel, hogy minden egyes dokumentum önálló elem melyek önmagukban értemezhetők és esetleg valamilyen statisztikai elemzést vagy aggregációt akarhatunk rajta végrehajta. Mivel erre van optimalizálva az egész motor, ezért semmi értelme az olyan relációs adatmodellnek, ahol egy indexben tárolunk mondjuk dokumentumokat és felhasználói ID-kat, egy másik indexben pedig tárolunk a felhasználói ID-khoz tartozó neveket és egyéb adatokat. Sokkal egyszerűbb minden releváns adatot minden dokumentum esetén tárolni, hiszen a háttérben a NoSQL motor gondoskodik arról, hogy ezek az adatok ne redundánsan tárolódjanak. Ráadásul az ilyen erőltetett kereszthivatkozások csak lassítják is a keresési performanciát.
Folytatás…

ELK: Több Elasticsearch [ES] node futtatása egy hoston

Aki ismeri az Elasticsearch [ES] filozófiáját, az pontosan tudja, hogy alap esetben semmi érteme nincs annak, hogy egy hoston több nodeot futtassunk, hiszen mi is az ES esszenciája: Végy egy halom középkategóriás, olcsón fenntartható gépet, majd minden különösebb technológiai tudás nélkül rakd fel rájuk az ES-t, kapcsold öket egy clusterbe és jöhet a fun. Ha pedig mégsem jön, mert ez így nem elég hatékony, akkor optimalizáld a shardok eloszlását, rakj hozzá a clusterhez még néhány gépet és ezen egyszerű eszközökkel lényegében bármikor tudod skálázni a clustert.

Azonban nagyvállalati környezetben előfordul, hogy középkategóriás olcsó gépek helyett komolyabb vasak kerülnek a kijelölésre. Ilyenkor meg kell tudni találni az ésszerű középutat. Egy önálló ES node kapcsán van néhány olyan technikai függőség, ami meghatározza, hogy maximum mennyi erőforrást tud optimálisan használni. Ezen függőségek közül a leginkább fontos talán a heap size:

  • Az elasticsearch technológiailag java virtuális gépben fut, aminek a heap kezelése erősen kihathat az ES működésére. Technológiai adottság, hogy 32Gb heap size alatt a JVM compressed object pointer (compressed oops) technológiát használ a heap kezelésére, ez felett már nem lehet használni ezt az opciót, ami jelentősen rontja a JVM hatékonyságát.

Folytatás…

Egy év – számokban, tényekben, viccekben…

Kicsit lekéstem az évfordulót… Tavaly május elején rebootoltam a blog ‘crypto’ részlegét, amivel akkor le is zártam egy jó időre a bigdata, ElasticSearch és machine learning szekciót. Megmondom őszintén amikor megírtam az első cikket a reboot után álmomba se gondoltam volna, hogy ennyire be fog húzni újra a kripto és blockchain világ. Szó szerint megfordult körülöttem a világ, ami persze a kezdeti toporgás után azért javarészt tudatos építkezés volt. A reboot post egyébként pont arról szólt, hogy újra “bányászunk“. A többesszám akkor is már barátomra és azóta üzlettársammá lett Petyatraderre vonatkozott, akivel akkor már jónéhány hónapja elemezgettük, hogy mit is kellene kezdeni ezzel a témával.


A Zcash témával foglalkozó cikksorozat első részében a bitcoin mellett létező alternatív coinok térhódításáról írtam. Ha érdekel, hogy mik ezek az alternatív coinok és mi milyen módon védettek az ASIC mining ellen, akkor olvasd el ezt a cikket: Zcash (ZEC) – újra bányászunk!


Akkori naivitásom egyik legjobb mementója a reboot cikk. Van abban minden, pl “LightCoin”-névre kereszt LTC 🙂

Hogy mi minden történt ebben az egy évben a “Variance” brand alatt?

  • Megközelítőleg 50 nyilvános és legalább még egyszer ennyi zártkörű rendezvényen evangelizáltam, prezentáltam, paneleztem. Meséltem majd 50.000 embernek a Bitcoinról, a kriptopénzekről, a blockláncról, az ICO-król és a tokenizációról. Mindenhol arról, ami az adott közönséget leginkább érdekelte. Volt olyan nap, amikor kora reggel egy konferencián adtam elő, majd napközben oktattam és az estére még becsúszott egy A38 hajós kerekasztal beszélgetés a Bitcoinról… Mondanom sem kell, a napvégi kaland minden volt már, csak nem produktív. A leginkább emlékezetes események: Blockchaineum, Blockchain Budapest Conf, a Simonyi konferencia és a Simonyi napok, A BME Blockchain kurzusa, a FintechShow… és még hosszan sorolhatnám. Talán a legviccesebb az volt, amikor bő három hónapos elkészítés után a Veszprémi Agórában tartottam egy előadást, amiről nemes egyszerűséggel elfelejtettem írni a blogon és az egész leutazáson azon agyaltunk, hogy vajon egyébként lesz-e bárki is a rendezvényen… Persze a szervezők leleményessége és a téma a különösebb reklámozás nélkül is elég volt ahhoz, hogy megteljen a nagy előadó.
  • Ezeken túl a naptáram szerint közel 100 alkalommal ültem le face2face beszélgetésre olvasókkal az “egy kávéra jó vagyok bármikor” jelige alatt… Személyes kudarcom, hogy ennél nagyságrendekkel több igény lett volna, ezekre a személyes beszélgetésekre… A levelesládámban most is ott vannak az immáron több hónapja felflagelt: “kéne erről beszélni” levelek… Néha tényleg nyomasztóan kevés ez a napi 24 óra…
  • 261 db cikk született a blogon
  • A tavalyi évben született majd 200 postba 178828 szó került (javarésze természetesen elgépelve…), az idén eddig született 52 postba pedig eddig 45752 szó. (Számomra) érdekes módon a tavalyi és az idei words/post arány is szinte pontosan megegyezik: 880.9 és 879.8
  • Hogy miről szóltak a cikkek? Meg se kellett néznem, hiszen mindenki tudja, hogy ha Variance, akkor Bitcoin maximalism… De a számok is alátámasztják ezt: 151 pontban szerepelt a Bitcoint tag. Ehhez képest a bitcoin cash csak 29 postban került említésre, ami persze már önmagában is nagyon soknak tekinthető lévénhogy közismert a BCH kapcsán viseltetett véleményem. A (számomra) partvonalon mozgó ethereum is kapott 24 postot, a bányászat 21 postban került említésre, a Zcash pedig 17-ben. A 10+-os kategóriában még ott van a segwit, segwit2x, satoshi, ico és a lightning network tag is.
  • Ezekhez 5072 alkalommal szóltatok hozzá komment formában.
  • A blogra picit kevesebb mint egymillió alkalommal jutottatok el, ebből csak a nyitóoldal gyűjtött be 395651 hitet.
  • A blog legolvasottabb napja 2017 november 27 volt, amikor napon belül 7593 alkalommal érezték fontosnak az olvasók, hogy idetévedjenek. A naphoz egyébként nem kapcsolódik semmilyen extra nagy dolog, leszámítva, hogy akkoriban indult be a Bitcoin árfolyamának elszabadulása és a csapból is a Bitcoin ömlött… ja és talán pont aznap jelentették be a CME Bitcoinfuturest. Szóval lehet, hogy még is csak történt ott valami…
  • A legtöbbet olvasott postok az elmúlt egy évben:

  • A ‘hogyan jutottatok a blogra’ kérdés kapcsán toronymagasan a facebook és a portfolio.hu áll az élen. Ezúton is köszönöm mindenkinek, aki érdemesnek tartotta az írásaimat, hogy megossza facebookon és szintén örülök annak, hogy a portfolio is érdemesnek tartotta a blogomat, hogy bekerüljek a portfolio bloggers kategóriába. Persze köszönöm mindenki másnak is, aki érdemesnek tartotta az irományaimat arra, hogy forrásként felhasználja és linkelje a saját oldalán.
  • Persze a legtöbb új látogatót a keresőmotorok hozták. Csak az elmúlt egy évben 59 ezer alkalommal jutottatok el ide a blogra. A keresőkifejezések top listájában nincs semmi meglepetés: variance, bitcoin, crypto, bányászat, kriptopénz, stb. A sok-sok éves bloggeri múltam okán pontosan tudom, hogy általában ezen listák alsó szekciója rejtegeti az izgalmas csemegéket. Volt itt minden, kezdve a: “Hogyan tudok az aldiba Bitcoint venni?”-tól kezdve egészen a “Speciális erste megtakarítás”… Nem vagyok benne biztos, hogy mindenki meg is találta itt amit igazán keresett…
  • Más szempontból persze, de szintén érdekes (nekem), hogy mennyire tartottátok érdemesnek a blogpostokban szereplő linkeket arra, hogy meg is nézzétek a megjelölt forrást, vagy információt. Nyilván ezen a listán is első helyen állnak a social mediumok, úgy mint a twitter, facebook, medium vagy youtube. A fix tartalmak közül az első helyen az unalomig ismételt Bitcoin NVT ratio található, nemsokkal utána jön a fork.lol és a bitcoin mempool vizualizáció, látszik, hogy ezen témák is sokunkat izgatott az elmúlt évben. Vicces (?) módon a top20-as listában ott van status.kraken.com-is, amit ugye egyetlan alkalommal linkeltem csak, amikor éppen zajlott a kraken FUD és heteken keresztül használhatatlan volt az egész szolgáltatás.

Köszönet minden olvasónak/követőnek…

LF(?)M NodeJS/Python part-time/freelancer coder

Olyan jól sikerült az előző körös analyst recruit felhívás, hogy annak sikerét kihasználva szeretnék egy újabb felhívást tenni. Nem tudom megállni, hogy ne tegyek a téma kapcsán azonban egy fricskát: multis/nagybankos vezetőként közel 10 évig szenvedtem a(z) <insert random jobportal>-(va-)/(ve-)l, ahol kulcsfontosságú pozíciókra tudtak hozni negyedév alatt  3-4 egyébként teljesen alkalmatlan jelentkezőt. Ehhez képest a saját tematikus blogomra feldobok a saját stílusomban egy recuritot, amire egyből beesik több mint egy tucat jelentkező, akik nagy része egyébként már túl van a második körön és éppen a shortlist összeállításán ügyködünk. Emlékszem a 2000-es évek első felében volt ilyen a piac, amikor egy IT biztonsági szakértő vagy php fejlesztő pozícióra akár 40-60 ajánlat is érkezett, melyek igen nagy része egyébként teljesen passzolt is az avatarba.

Szóval ezen fellelkesülve futnék még egy kört: Jelenleg bejáratott frontend programozó csapattagunk üveghangon dolgozik most kb 3-4 projekten, viszont az élet nem áll meg, ezért szeretnénk bővíteni a csapatot. Jelenleg ebben a témában biztosan nem tudunk/akarunk fulltime foglalkoztatni valakit, ezért mindenképp freelancer vagy parttime munkaerőt keresnénk.

Elvárások: NodeJS/Javascript készségszintű tudás, ajax/async alapú dinamikus tartalom management. Nem kell felületeket és folyamatokat tervezni, ezeket készen kapod, viszont ne okozzon kihívást, ha egy vektorosan lerenderelt felülettervet pixel pontosan kell implementálnod a runtime kódban. RestAPI/WSGI és JSON leíró formátum készség szintű ismerete szintén elvárás.

Mivel kell foglalkozni: Az Inlock meglévő fejlesztései mellett számos egyéb kisebb/nagyobb jellemzően crypto és blockchain orientált projektek fejlesztése.

Ami előnyt jelent: komoly előny, ha pythonban foglalkoztál már WSGI-vel (pl Flask) vagy bármilyen más python alapú API frameworkkel. Az is jó persze, ha bármilyen más környezetben foglalkozál API fejlesztéssel… már persze, ha nem gond, hogy megtanuld ugyanezt python/flask-en is. Szintén nagyon komoly előnyt jelent, ha nem most ezt olvasva hallasz először az ElasticSearchről.  Ha mégis így lenne és szeretnél legalább képbe kerülni, akkor: https://variance.hu/?s=ElasticSearch

A projektek, fejlesztések és issuek trackelésére asanát használunk, így könnyedén tudsz akár a világ másik végérők is dolgozni, de persze komoly előnyt jelent, ha heti/két heti rendszerességgel azért el tudsz jönni egy followup meetingre, hogy személyesen is át tudjuk beszélni az progresst.

Szintén előnyt jelent, ha fejből vágod az összes WoW kieg 10+ raid instance főbossának nevét és halványan emlékszel is még esetleg a taktika főbb lépéseire, különösen ugye illidanra és c’thunra. Bár ezen előnynek úgy egyébként nincs semmi köze a konkrét munkához…

Mit kínálunk: blockchain, tokenizáció és kriptopénz alapú projekteken tudsz úgy tanulni, hogy közben a meglévő tudásodat és képességeidet is tudod hasznosítani. A jelenlegi informatika és pénzügyi szakma kreatív egyvelegét, ami a nálunk okosabbak szerint is meg fogja változtatni a világot, ha szerinted ott a helyed a jégtörők között, akkor keresve sem tudnál ennél jobb helyet találni magadnak. Mivel jelenleg freelancer pozícióba keresünk kódert, ezért minden projektnél magad fogod tudni eldönteni, hogy érdekel avagy sem az adott téma annyira, hogy csatlakozz. Persze ettől függetlenül nem zárjuk ki a lehetőséget, hogy záros határidőn belül internalizálnánk ezt a feladatot is.

Ha úgy gondolod, hogy szeretnél velünk dolgozni, akkor mindenek előtt NE küldj CV-t nekünk! Helyette végezd el a tovább után található feladatot, ennek eredményét küld el a blog kapcsolat email címére. Ha tetszik a gondolkodásmódod, akkor felvesszük veled a kapcsolatot… Már persze, ha kapunk az emailben elérhetőséget is.

Folytatás…

Passzív irodaház, megtapasztalva…

Az elmúlt években volt szerencsém nagyon sok ‘green’ filozófiában megihletett irodaházban járni, sőt büszke vagyok arra, hogy én is egy olyan irodaházban dolgozhatom, aminek a kialakítása során arra ügyeltek, hogy az irodaház alapterületével azonos mennyiségű zöld felületet alakítsanak ki az épületen belül, ezzel persze “hasznos irodaterületet” vesztettek el, de mégis egy sokkal élhetőbb környezetet varázsoltak, hiszen még az irodaház belső tereiben is van lehetőség az ablakokon kinézve gondos munkával ápolt kerteket látni. Na ezt az élményt sikerült a múlt heti brüsszeli látogatásom során überelni, amiről gondoltam írnék azért néhány gondolatot, csak hogy ne merüljön fel bárkiben is, hogy a nagy Elasticsearch és big data kalandozásom során megfeledkezem az ökolábnyom témakörről…

Folytatás…

Kijött az ES 5.3 és végre a top hits!!!

Kicsit bealudtam a post megírása kapcsán, de a hetem léggé sűrű volt. Volt szerencsém a héten Brüsszelbe utazni ahol többek között megnézhettem az egyik legnagyobb kereskedelmi (nem social!) bigdata kezdeményezést, amiről nyilván semmit nem beszélhetek, de eléggé lenyűgöző dolgokat hoztak össze… (ja és persze elasticsearch és hdfs alapokon). Szóval az utazás és az amúgy is sűrű munkanapok miatt csak lassan volt lehetőségem reagálni arra, hogy kijött az 5.3-as stabil főverzió az Elasticseachből és végre hivatalosan is implementálták mind az ES-ben, mind pedig Kibanában a “top hit” aggregációt. Ráadásul mindjárt elég komoly finomhangolásokkal együtt tették ezt. Közel már fél éve várom, hogy ez a feature megjelenjen az ES főveziójában is, eddig csak nagyon komoly hackeléssel lehetett beleerőszakolni a githubon fellelhető projektet. Amúgy ezúton is külön köszi a top hits értelmi szerzőjének “scampi”-nak. A tisztelére és a munkássága elismeréseként az imént említett Brüsszeli utazásomon életemben először megkóstoltam egy scampi (rákocska) alapú kaját. Jelentem túléltem. Nézzük az alap problémát:
Folytatás…

Tisztázzuk az alapokat: big data, nosql, ES, APM

Mielőtt nagyon belemélyednél a konkrét témákba (lásd címben), talán érdemes tisztázni, hogy mit is jelentenek ezek a fogalmak, mi közük van egymáshoz és konkrétan én mit értek ezeken. Ebben a postban véletlenül sem szeretném tudományos alapokig részletezni és szakmailag sem mennék bele. Célom csak egy általános kép kifejtése azoknak, akik csak most ismerkednek ezekkel a fogalmakkal.
Big data: kezdeném is mindjárt a legnagyobb lufival. Kezdetben vala a strukturált adattárolás, amikor (az ősidőkben) még luxus volt az adattár, jól végig gondoltuk, hogy mit is akarunk tárolni és törekedtünk arra, hogy ezt a leginkább optimális módon tegyük. Ezzel együtt eljött az internet, eljöttek a felhők (nem… nem a skynet) és eljött mindaz, ami ma jellemzi az adattárolást. Az olcsó adattárolás, a mesterséges(-nek tűnő) intelligencia (gépi tanulás) és strukturálhatatlan adatkörök miatt jöt létre az a valami, amit big datanak nevezünk. Mi jellemzi ezt: gyakorlatilag mindent tárolunk amilyen adatot csak elő tudunk állítani, annak minősége, jellege és értelme nélkül, mindezt tesszük azzal a szándékkal, hogy később feltételezhetően fel fogunk fedezni olyan összefüggéseket, amik értelmet adnak a strukturálatlan adatnak. A régi mondás, mely szerint “a kevesebb több”, mára átalakult a “több az több lehet” mondássá.
Folytatás…