Server analytics masisitimu

Ichi chikamu chechipiri chenhevedzano yezvinyorwa nezve analytical system (link kune part 1).

Server analytics masisitimu

Nhasi hapasisina kupokana kuti kunyatsogadzirisa data uye kududzirwa kwemhedzisiro kunogona kubatsira chero mhando yebhizinesi. Panyaya iyi, masisitimu ekuongorora ari kuramba achiremerwa nema parameter, uye huwandu hwezvinokonzeresa uye zviitiko zvevashandisi mumashandisirwo ari kukura.
Nekuda kweizvi, makambani ari kupa vaongorori vavo ruzivo rwakawanda uye rwakawanda kuti vaongorore uye vashandure kuita sarudzo dzakanaka. Kukosha kweiyo analytics system yekambani haifanirwe kurerutswa, uye iyo system pachayo inofanirwa kuve yakavimbika uye yakagadzikana.

Client vaongorori

Mutengi analytics ibasa iro kambani rinobatanidza kune webhusaiti yayo kana application kuburikidza neiyo SDK yepamutemo, inosanganisa mune yayo yega codebase uye inosarudza zvinokonzeresa zviitiko. Pane kuderera kuri pachena kune iyi nzira: data rese rakaunganidzwa rinogona kusagadziriswa sezvaungada nekuda kwezvisingakwanisi chero sevhisi yaunosarudza. Semuenzaniso, pane imwe system hazvizove nyore kumhanya MepuReduce mabasa, pane imwe iwe haugone kumhanyisa modhi yako. Chimwe chinokanganisa chichava chenguva dzose (chinofadza) bhiri remabasa.
Kune akawanda mutengi analytics mhinduro pamusika, asi nekukurumidza kana gare gare vaongorori vanotarisana nechokwadi chekuti hapana sevhisi yepasirese inokodzera chero basa (apo mitengo yeese masevhisi ichikwira nguva dzese). Mumamiriro ezvinhu akadaro, makambani anowanzo funga kugadzira yavo yekuongorora system ine ese anodiwa etsika marongero uye kugona.

Server vaongorori

Server-side analytics ibasa rinogona kuiswa mukati mekambani pamaseva ayo uye (kazhinji) nekuedza kwayo. Mumuenzaniso uyu, zviitiko zvese zvevashandisi zvakachengetwa pamaseva emukati, zvichibvumira vanogadzira kuti vaedze akasiyana dhatabhesi ekuchengetedza uye sarudza iyo yakanyanya nyore dhizaini. Uye kunyangwe iwe uchiri kuda kushandisa wechitatu-bato mutengi analytics kune mamwe mabasa, zvicharamba zvichigoneka.
Server-side analytics inogona kuiswa munzira mbiri. Chekutanga: sarudza zvimwe zvakavhurika sosi zvinoshandiswa, zvitumire pamakina ako uye gadzira bhizinesi pfungwa.

ΠŸΠ»ΡŽΡΡ‹
ΠœΠΈΠ½ΡƒΡΡ‹

Iwe unogona kugadzirisa chero chaunoda
Izvi kazhinji zvakaoma zvikuru uye zvinoda vagadziri vakasiyana

Chechipiri: tora maSaaS masevhisi (Amazon, Google, Azure) pane kuzviisa iwe pachako. Tichataura nezveSaaS zvakadzama muchikamu chechitatu.

ΠŸΠ»ΡŽΡΡ‹
ΠœΠΈΠ½ΡƒΡΡ‹

Inogona kunge yakachipa pamavhoriyamu ari pakati, asi nekukura kukuru icharamba ichidhura zvakanyanya
Izvo hazvizogone kudzora ese ma parameter

Kutonga kunoendeswa zvachose kumapfudzi emupi webasa
Hazviwanzozivikanwa zviri mukati mesevhisi (zvinogona kunge zvisingadiwi)

Maitiro ekuunganidza server analytics

Kana isu tichida kubva pakushandisa analytics yevatengi uye kuvaka yedu, chekutanga pane zvese isu tinofanirwa kufunga kuburikidza nekuvakwa kweiyo nyowani system. Pazasi ini ndichakuudza nhanho nhanho izvo zvaunoda kufunga, nei nhanho imwe neimwe ichidikanwa uye ndeapi maturusi aungashandisa.

1. Kugamuchira data

Sezvakangoita mutengi analytics, kutanga kwezvose, vaongorori vekambani vanosarudza mhando dzezviitiko zvavanoda kudzidza mune ramangwana uye kuzviunganidza mune runyorwa. Kazhinji, zviitiko izvi zvinoitika mune imwe hurongwa, inonzi "chiitiko chiitiko."
Tevere, fungidzira kuti nharembozha (webhusaiti) ine vashandisi venguva dzose (midziyo) uye akawanda maseva. Kuti utumire zvakachengeteka zviitiko kubva kumidziyo kuenda kumaseva, yepakati layer inodiwa. Zvichienderana nemavakirwo, panogona kunge paine mitsetse yezviitiko zvakasiyana.
Apache Kafka - ichi chi pub/sub queue, iyo inoshandiswa semutsetse wekuunganidza zviitiko.

Maererano ne post paQuora muna 2014, musiki weApache Kafka akasarudza kupa software zita raFranz Kafka nekuti "igadziriro yakagadziridzwa yekunyora" uye nekuti aida mabasa aKafka. - Wikipedia

Mumuenzaniso wedu, kune vakawanda vanogadzira data uye vatengi ve data (madhivhisi nemaseva), uye Kafka inobatsira kubatanidza kune mumwe nemumwe. Vatengi vachatsanangurwa zvakadzama mumatanho anotevera, kwavachange vari ivo zvidzidzo zvikuru. Iye zvino tichafunga chete vanogadzira data (zviitiko).
Kafka inoisa pfungwa dzemutsara uye kupatsanura; zviri nani kuverenga zvakanyanya nezve izvi kumwe kunhu (semuenzaniso, mu. zvinyorwa) Pasina kuenda mune zvakadzama, ngatimbofungidzira kuti nharembozha inotangwa kune maviri akasiyana maOS. Ipapo imwe neimwe vhezheni inogadzira yayo yega chiitiko rwizi. Vagadziri vanotumira zviitiko kuKafka, zvakanyorwa mumutsara wakakodzera.
Server analytics masisitimu
(mufananidzo kubva pano)

Panguva imwecheteyo, Kafka inokubvumira kuti uverenge muzvikamu uye kugadzirisa rwizi rwezviitiko mu mini-batches. Kafka chishandiso chiri nyore kwazvo chinoyera zvakanaka nekukura zvinodiwa (semuenzaniso, ne geolocation yezviitiko).
Kazhinji shard imwe inokwana, asi zvinhu zvinowedzera kuoma kana uchiyera (sezvavanogara vachiita). Pamwe hapana achada kushandisa shard imwe chete yemuviri mukugadzira, sezvo dhizaini ichifanirwa kuve nekutadza-kushivirira. Pamusoro peKafka, pane imwe mhinduro inozivikanwa - RabbitMQ. Hatina kuishandisa mukugadzira semutsetse wekuongorora chiitiko (kana uine ruzivo rwakadaro, tiudze nezvazvo mumashoko!). Nekudaro, isu takashandisa AWS Kinesis.

Tisati taenderera kune nhanho inotevera, isu tinofanirwa kutaura imwe yekuwedzera dhizaini yehurongwa - mbishi dhizaini yekuchengetedza. Iyi haisi dhizaini inodiwa, asi inobatsira kana chimwe chinhu chikatadza uye mitsetse yezviitiko muKafka ikaiswa patsva. Kuchengeta matanda mbishi hakudi mhinduro yakaoma uye inodhura; unogona kungozvinyora pane imwe nzvimbo nenzira kwayo (kunyangwe pane hard drive).
Server analytics masisitimu

2. Kugadzirisa zviitiko nzizi

Mushure mokunge tagadzirira zviitiko zvose uye tazviisa mumitsetse yakakodzera, tinopfuurira kune danho rekugadzirisa. Pano ini ndichakuudza nezve maviri akajairika maitiro ekugadzirisa.
Yekutanga sarudzo ndeye kugonesa Spark Kutenderera muApache system. Zvese zvigadzirwa zveApache zvinogara paHDFS, yakachengeteka faira system ine faira replicas. Spark Kutenderera chishandiso chiri nyore kushandisa chinobata kutenderera data uye zvikero zvakanaka. Zvisinei, zvingava zvakaoma kuchengetedza.
Imwe sarudzo ndeyekuvaka yako wega chiitiko chibatiso. Kuti uite izvi, iwe unoda, semuenzaniso, kunyora a Python application, ivake muDocker uye unyore kuKafka mutsara. Kana zvinokonzeresa zvasvika kune vanobata docker, kugadzirisa kunotanga. Neiyi nzira, iwe unofanirwa kuchengeta maapplication achimhanya nguva dzese.
Ngatifungei kuti takasarudza imwe yezvisarudzo zvinotsanangurwa pamusoro uye kuenderera mberi kune kugadzirisa pachako. Ma processor anofanirwa kutanga nekutarisa chokwadi che data, kusefa marara uye "zvakaputsika" zviitiko. Kusimbisa isu tinowanzo shandisa Cerberus. Mushure meizvi, iwe unogona kuita mepu yedata: data kubva kwakasiyana masosi yakajairwa uye yakamisikidzwa kuitira kuti iwedzerwe kune yakajairwa tafura.
Server analytics masisitimu

3. Database

Nhanho yechitatu ndeyekuchengetedza zviitiko zvakajairwa. Paunenge uchishanda neyakagadzirirwa-yakagadzirwa analytical system, isu tichafanirwa kuvawana kazhinji, saka zvakakosha kusarudza dhatabhesi iri nyore.
Kana iyo data inokodzera zvakanaka mune yakagadziriswa chirongwa, unogona kusarudza Clickhouse kana imwe imwe columnar database. Nenzira iyi kuunganidzwa kuchashanda nekukurumidza. Iyo yakashata ndeyokuti chirongwa chacho chakanyatsogadziriswa uye naizvozvo hazvizogoneki kuwedzera zvinhu zvisingagadziriswi pasina kuchinjwa (somuenzaniso, kana chiitiko chisina kujairika chikaitika). Asi unogona kuverenga chaizvo nekukurumidza.
Kune isina kurongeka data, unogona kutora NoSQL, semuenzaniso, Apache cassandra. Inomhanya paHDFS, inodzokorora zvakanaka, unogona kusimudza zviitiko zvakawanda, uye inoshivirira kukanganisa.
Iwe unogona zvakare kusimudza chimwe chinhu chakareruka, semuenzaniso, MongoDB. Inononoka uye yemavhoriyamu madiki. Asi chakanakira ndechekuti iri nyore uye saka yakakodzera kutanga.
Server analytics masisitimu

4. Aggregations

Sezvo tanyatsochengeta zviitiko zvese, tinoda kuunganidza ruzivo rwese rwakakosha kubva kubhechi rakasvika uye nekuvandudza dhatabhesi. Pasi rose, isu tinoda kuwana akakodzera dashboards uye metrics. Semuenzaniso, tora chimiro chemushandisi kubva kune zviitiko uye neimwe nzira kuyera maitiro. Zviitiko zvinounganidzwa, zvinounganidzwa, uye zvinochengetwa zvakare (mumatafura evashandisi). Panguva imwecheteyo, iwe unogona kuvaka sisitimu kuitira kuti iwe ugone kubatanidza sefa kune aggregator-coordinator: unganidza vashandisi kubva kune imwe mhando yechiitiko.
Mushure meizvozvo, kana mumwe munhu ari muchikwata achingoda kuongororwa kwepamusoro-soro, masisitimu ekunze ekuongorora anogona kubatanidzwa. Unogona kutora Mixpanel zvakare. asi sezvo ichidhura, hazvisi zvese zviitiko zvevashandisi zvinotumirwa ikoko, asi izvo zvinodiwa chete. Kuti tiite izvi, isu tinofanirwa kugadzira murongi anozotamisa zvimwe zviitiko zvisina tsarukano kana chimwe chinhu icho isu pachedu takaunganidza kare kune ekunze masisitimu, API kana mapuratifomu ekushambadzira.
Server analytics masisitimu

5. Frontend

Iwe unofanirwa kubatanidza iyo yekumberi kune yakagadzirwa system. Muenzaniso wakanaka ibasa redash, idatabase GUI inobatsira kuvaka dashboards. Kudyidzana kunoshanda sei:

  1. Mushandisi anoita SQL mubvunzo.
  2. Mukupindura anogamuchira chiratidzo.
  3. Iyo inogadzira 'itsva yekuona' yayo uye inowana yakanaka girafu yaunogona kuzvichengetera iwe.

Kuona musevhisi kuri kugadzirisa otomatiki, unogona kugadzirisa uye kuteedzera kutarisa kwako. Redash yemahara kana yakazvigashira, asi seSaaS inodhura madhora makumi mashanu pamwedzi.
Server analytics masisitimu

mhedziso

Mushure mekupedza matanho ese ari pamusoro, iwe uchagadzira yako server analytics. Ndokumbira utarise kuti izvi hazvisi nyore sekungobatanidza analytics yevatengi, nekuti zvese zvinoda kugadziridzwa iwe pachako. Naizvozvo, usati wagadzira yako wega sisitimu, zvakakodzera kuenzanisa kudiwa kweyakakomba analytics system nezviwanikwa zvauri kuda kugovera kwairi.
Kana iwe waita masvomhu uye wakaona kuti mitengo yakawandisa, muchikamu chinotevera ndichataura nezve nzira yekugadzira yakachipa shanduro ye server-side analytics.

Ndatenda nekuverenga! Ndichafara kubvunza mibvunzo mumhinduro.

Source: www.habr.com

Voeg