Pūnaehana hōʻike kikowaena

ʻO kēia ka ʻāpana ʻelua o nā ʻatikala e pili ana i nā ʻōnaehana analytical (loulou i ka ʻāpana 1).

Pūnaehana hōʻike kikowaena

I kēia lā, ʻaʻohe mea kānalua e hiki ke kōkua i ka hoʻoili ʻana i ka ʻikepili a me ka wehewehe ʻana i nā hopena i nā ʻano ʻoihana āpau. Ma kēia ʻano, ke hoʻonui nei nā ʻōnaehana analytical i nā ʻāpana, a ke ulu nei ka nui o nā mea hoʻoulu a me nā hanana mea hoʻohana i nā noi.
Ma muli o kēia, ke hāʻawi nei nā ʻoihana i kā lākou mea loiloi i ʻike hou aʻe e nānā a huli i nā hoʻoholo kūpono. ʻAʻole pono e hoʻohaʻahaʻa ʻia ke koʻikoʻi o kahi ʻōnaehana analytics no kahi ʻoihana, a ʻo ka ʻōnaehana ponoʻī pono e hilinaʻi a paʻa.

ʻO nā mea hoʻopuka kālā

ʻO ka ʻikepili o ka mea kūʻai aku kahi lawelawe e hoʻopili ai kahi hui i kāna pūnaewele a i ʻole ka noi ma o ka SDK kūhelu, hoʻohui i kāna codebase ponoʻī a koho i nā mea hoʻomaka hanana. Aia kekahi ʻaoʻao haʻahaʻa o kēia ala: ʻaʻole hiki ke hoʻoponopono ʻia nā ʻikepili a pau e like me kou makemake ma muli o nā palena o nā lawelawe āu e koho ai. No ka laʻana, ma kahi ʻōnaehana ʻaʻole e maʻalahi ka holo ʻana i nā hana MapReduce, ma kahi ʻē aʻe ʻaʻole hiki iā ʻoe ke holo i kāu kumu hoʻohālike. ʻO kekahi pōʻino ʻē aʻe ʻo ia ka bila maʻamau (kamahaʻo) no nā lawelawe.
He nui nā mea hoʻoponopono loiloi o nā mea kūʻai aku ma ka mākeke, akā ʻoi aku ka liʻiliʻi a i ʻole ka poʻe loiloi i ka ʻoiaʻiʻo ʻaʻohe lawelawe āpau kūpono no kēlā me kēia hana (ʻoiai ke piʻi nei nā kumukūʻai no kēia mau lawelawe āpau i nā manawa a pau). I kēlā ʻano kūlana, hoʻoholo pinepine nā hui e hana i kā lākou ʻōnaehana analytics me nā hoʻonohonoho maʻamau āpau a me nā hiki.

Nā mea kālailai kikowaena

ʻO ka ʻikepili ʻaoʻao kikowaena kahi lawelawe i hiki ke hoʻoili ʻia i loko o kahi hui ma kāna mau kikowaena ponoʻī a (maʻamau) me kāna mau hana ponoʻī. Ma kēia hoʻohālike, mālama ʻia nā hanana mea hoʻohana a pau ma nā kikowaena kūloko, e ʻae ana i nā mea hoʻomohala e hoʻāʻo i nā waihona waihona waihona ʻokoʻa a koho i ka hoʻolālā kūpono loa. A inā makemake ʻoe e hoʻohana i nā ʻikepili o nā mea kūʻai aku ʻekolu no kekahi mau hana, hiki nō ia.
Hiki ke kau ʻia nā ʻikepili ʻaoʻao kikowaena ma nā ala ʻelua. ʻO ka mea mua: e koho i kekahi mau mea hoʻohana open source, kau iā lākou ma kāu mau mīkini a hoʻomohala i ka loiloi ʻoihana.

Плюсы
Минусы

Hiki iā ʻoe ke hoʻonohonoho i nā mea āu e makemake ai
He mea paʻakikī loa kēia a makemake i nā mea hoʻomohala kaʻawale

ʻO ka lua: e lawe i nā lawelawe SaaS (Amazon, Google, Azure) ma kahi o ka hoʻohana ʻana iā ʻoe iho. E kamaʻilio mākou e pili ana iā SaaS i nā kikoʻī hou aku i ka hapakolu.

Плюсы
Минусы

He ʻoi aku ka liʻiliʻi ma nā puʻupuʻu liʻiliʻi, akā me ka ulu nui ʻana e lilo ia i mea nui loa
ʻAʻole hiki ke hoʻomalu i nā ʻāpana āpau

Hoʻololi piha ʻia ka hoʻokele i nā poʻohiwi o ka mea lawelawe
ʻAʻole ʻike mau ʻia ka mea i loko o ka lawelawe (ʻaʻole pono paha ia)

Pehea e hōʻiliʻili ai i ka ʻikepili kikowaena

Inā makemake mākou e haʻalele i ka hoʻohana ʻana i ka ʻikepili a ka mea kūʻai aku a kūkulu i kā mākou ponoʻī, ʻo ka mea mua pono mākou e noʻonoʻo ma o ka hoʻolālā ʻana o ka ʻōnaehana hou. Ma lalo wau e haʻi aku iā ʻoe i kēlā me kēia ʻanuʻu i nā mea e pono ai ʻoe e noʻonoʻo, no ke aha e pono ai kēlā me kēia ʻanuʻu a me nā mea hana āu e hoʻohana ai.

1. Loaʻa i ka ʻikepili

E like me ka hihia o nā mea kūʻai aku, ʻo ka mea mua, koho nā mea loiloi ʻoihana i nā ʻano hanana a lākou e makemake ai e aʻo i ka wā e hiki mai ana a hōʻiliʻili iā lākou i kahi papa inoa. ʻO ka mea maʻamau, loaʻa kēia mau hanana i kahi ʻano kikoʻī, i kapa ʻia he "hōʻailona hanana."
A laila, e noʻonoʻo e loaʻa i kahi polokalamu kelepona (pūnaewele) nā mea hoʻohana maʻamau (nā polokalamu) a me nā kikowaena he nui. No ka hoʻololi paʻa ʻana i nā hanana mai nā polokalamu i nā kikowaena, pono kahi papa waena. Ma muli o ka hoʻolālā ʻana, aia kekahi mau laina hanana like ʻole.
Apache Kafka Ua pub/sub queue, i hoʻohana ʻia ma ke ʻano he laina no ka hōʻiliʻili ʻana i nā hanana.

Wahi a hoʻouna ma Quora ma 2014, ua hoʻoholo ka mea nāna i hana ʻo Apache Kafka e kapa inoa i ka polokalamu ma hope o Franz Kafka no ka mea "he ʻōnaehana i hoʻopaʻa ʻia no ke kākau ʻana" a no kona aloha i nā hana a Kafka. — ʻO Wikipedia

Ma kā mākou laʻana, nui nā mea hana ʻikepili a me nā mea kūʻai aku ʻikepili (nā mea hana a me nā kikowaena), a kōkua ʻo Kafka e hoʻopili iā lākou i kekahi. E wehewehe ʻia nā mea kūʻai aku ma nā ʻanuʻu aʻe, kahi e lilo ai lākou i kumu nui. I kēia manawa e noʻonoʻo mākou i nā mea hana ʻikepili (nā hanana).
Hoʻopili ʻo Kafka i nā manaʻo o ka queue a me ka partition; ʻoi aku ka maikaʻi o ka heluhelu kikoʻī e pili ana i kēia ma nā wahi ʻē aʻe (e laʻa, ma palapala). Me ka hele ʻole ʻana i nā kikoʻī, e noʻonoʻo kākou ua hoʻomaka ʻia kahi polokalamu kelepona no nā OS ʻelua. A laila hana kēlā me kēia mana i kāna kahawai hanana kaʻawale. Hoʻouna nā mea hana i nā hanana i Kafka, ua hoʻopaʻa ʻia lākou i kahi laina kūpono.
Pūnaehana hōʻike kikowaena
(kiʻi mai kēia wahi)

Ma ka manawa like, ʻae ʻo Kafka iā ʻoe e heluhelu i nā puʻupuʻu a hoʻoponopono i kahi kahawai o nā hanana i nā pahu liʻiliʻi. He mea maʻalahi loa ʻo Kafka e hoʻohālikelike maikaʻi i nā pono ulu (no ka laʻana, ma ka geolocation o nā hanana).
ʻO ka maʻamau ka lawa ʻana o hoʻokahi shard, akā ʻoi aku ka paʻakikī o nā mea i ka wā e scaling (e like me ka hana mau). ʻAʻole paha makemake kekahi e hoʻohana i hoʻokahi shard kino wale nō i ka hana ʻana, no ka mea, ʻo ka hoʻolālā ʻana e hoʻomanawanui hewa. Ma kahi o Kafka, aia kekahi hopena kaulana - RabbitMQ. ʻAʻole mākou i hoʻohana iā ia i ka hana ʻana ma ke ʻano he laina no ka ʻikepili hanana (inā loaʻa iā ʻoe kēlā ʻike, e haʻi mai iā mākou ma nā ʻōlelo!). Eia naʻe, ua hoʻohana mākou iā AWS Kinesis.

Ma mua o ka neʻe ʻana i ka ʻanuʻu aʻe, pono mākou e haʻi i hoʻokahi papa hou aʻe o ka ʻōnaehana - raw log storage. ʻAʻole kēia he papa i koi ʻia, akā pono ia inā hewa kekahi mea a hoʻonohonoho hou ʻia nā pila hanana ma Kafka. ʻAʻole pono ka mālama ʻana i nā lāʻau maka i kahi hopena paʻakikī a paʻakikī hoʻi; hiki iā ʻoe ke kākau iā lākou ma kahi o ka hoʻonohonoho pololei (ʻoiai ma kahi pākiki).
Pūnaehana hōʻike kikowaena

2. Hoʻoponopono i nā kahawai hanana

Ma hope o ka hoʻomākaukau ʻana i nā hanana āpau a kau iā lākou i nā laina kūpono, neʻe mākou i ke kaʻina hana. Maʻaneʻi e haʻi aku wau iā ʻoe e pili ana i nā koho hana maʻamau ʻelua.
ʻO ka koho mua e hiki ai iā Spark Streaming ma ka ʻōnaehana Apache. Noho nā huahana Apache āpau ma HDFS, kahi ʻōnaehana waihona paʻa me nā kope kope. ʻO Spark Streaming kahi mea hana maʻalahi e hoʻohana pono i ka hoʻoheheʻe ʻana i ka ʻikepili a me nā unahi maikaʻi. Eia naʻe, paʻakikī paha ka mālama ʻana.
ʻO kahi koho ʻē aʻe ke kūkulu ʻana i kāu mea hoʻokele hanana. No ka hana ʻana i kēia, pono ʻoe, no ka laʻana, e kākau i kahi noi Python, kūkulu iā ia ma Docker a kau inoa i ka queue Kafka. Ke hōʻea nā mea hoʻoulu i nā mea lawelawe docker, e hoʻomaka ka hana. Me kēia ʻano, pono ʻoe e hoʻomau i ka holo ʻana o nā noi i nā manawa a pau.
E noʻonoʻo mākou ua koho mākou i kekahi o nā koho i hōʻike ʻia ma luna a neʻe aku i ka hana ponoʻī. Pono e hoʻomaka nā mea hana ma ka nānā ʻana i ka pono o ka ʻikepili, kānana ʻōpala a me nā hanana "haʻihaʻi". No ka hōʻoia ʻana mākou e hoʻohana pinepine ai ʻO Cerberus. Ma hope o kēia, hiki iā ʻoe ke hana i ka palapala ʻikepili: ʻike ʻia nā ʻikepili mai nā kumu like ʻole a hoʻohālikelike ʻia i mea e hoʻohui ʻia i kahi papa maʻamau.
Pūnaehana hōʻike kikowaena

3. ʻIkepili

ʻO ke kolu o ka hana e mālama i nā hanana maʻamau. I ka hana ʻana me kahi ʻōnaehana analytical mākaukau, pono mākou e komo pinepine iā lākou, no laila he mea nui e koho i kahi ʻikepili kūpono.
Inā kūpono ka ʻikepili i kahi hoʻolālā paʻa, hiki iā ʻoe ke koho Clickhouse a i ʻole kekahi waihona kolamu ʻē aʻe. Ma kēia ala e hana wikiwiki ai nā hui. ʻO ka ʻaoʻao haʻahaʻa ʻo ia ka paʻa paʻa ʻana o ka hoʻolālā a no laila ʻaʻole hiki ke hoʻohui i nā mea hoʻololi ʻole me ka ʻole o ka hoʻololi ʻana (e like me ke ʻano o kahi hanana maʻamau ʻole). Akā hiki iā ʻoe ke helu wikiwiki loa.
No ka ʻikepili i kūkulu ʻole ʻia, hiki iā ʻoe ke lawe iā NoSQL, no ka laʻana, Apache cassandra. Holo ʻo ia ma HDFS, hoʻopiʻi maikaʻi, hiki iā ʻoe ke hoʻāla i nā manawa he nui, a hoʻomanawanui hewa.
Hiki iā ʻoe ke hāpai i kahi mea maʻalahi, no ka laʻana, ʻO MongoDB. He lohi a no nā puke liʻiliʻi. Akā ʻo ka mea hoʻohui he mea maʻalahi loa ia a no laila kūpono no ka hoʻomaka.
Pūnaehana hōʻike kikowaena

4. Huina

Ma hope o ka mālama pono ʻana i nā hanana āpau, makemake mākou e hōʻiliʻili i nā ʻike koʻikoʻi a pau mai ka pūʻulu i hiki mai a hōʻano hou i ka waihona. Ma ke ao holoʻokoʻa, makemake mākou e kiʻi i nā dashboards kūpono a me nā ana. No ka laʻana, e hōʻiliʻili i kahi ʻaoʻao mea hoʻohana mai nā hanana a i kekahi ʻano e ana i ka ʻano. Hoʻohui ʻia nā hanana, hōʻiliʻili ʻia, a mālama hou ʻia (ma nā papa hoʻohana). I ka manawa like, hiki iā ʻoe ke kūkulu i kahi ʻōnaehana i hiki iā ʻoe ke hoʻohui pū i kahi kānana i ka aggregator-coordinator: e hōʻiliʻili i nā mea hoʻohana wale nō mai kahi ʻano hanana.
Ma hope o kēlā, inā makemake wale kekahi o ka hui i ka ʻikepili kiʻekiʻe, hiki ke hoʻopili ʻia nā ʻōnaehana ʻikepili waho. Hiki iā ʻoe ke lawe hou iā Mixpanel. akā, no ka mea he pipiʻi loa ia, ʻaʻole i hoʻouna ʻia nā hanana mea hoʻohana a pau ma laila, akā ʻo ka mea e pono ai. No ka hana ʻana i kēia, pono mākou e hana i kahi coordinator nāna e hoʻololi i kekahi mau hanana maka a i ʻole kekahi mea a mākou i hōʻuluʻulu mua ai i nā ʻōnaehana waho, API a i ʻole nā ​​kahua hoʻolaha.
Pūnaehana hōʻike kikowaena

5. Kaumua

Pono ʻoe e hoʻohui i ka frontend i ka ʻōnaehana i hana ʻia. ʻO kahi laʻana maikaʻi ka lawelawe ʻulaʻula, he GUI waihona e kōkua ana i ke kūkulu ʻana i nā dashboards. Pehea e hana ai ka pilina:

  1. Hana ka mea hoʻohana i kahi nīnau SQL.
  2. Ma ka pane, loaʻa iā ia kahi hōʻailona.
  3. Hoʻokumu ʻo ia i kahi 'kiʻi ʻike hou' nona a loaʻa i kahi pakuhi nani e hiki iā ʻoe ke mālama iā ʻoe iho.

ʻO nā hiʻohiʻona i loko o ka lawelawe ke hōʻano hou nei, hiki iā ʻoe ke hana a mālama i kāu nānā. He manuahi ʻo Redash inā hoʻokipa ponoʻī ʻia, akā ma ke ʻano he SaaS e uku ʻia ʻo $50 i kēlā me kēia mahina.
Pūnaehana hōʻike kikowaena

hopena

Ma hope o ka hoʻopau ʻana i nā ʻanuʻu āpau ma luna, e hana ʻoe i kāu analytics server. E ʻoluʻolu, ʻaʻole maʻalahi kēia e like me ka hoʻopili ʻana i ka ʻikepili o ka mea kūʻai aku, no ka mea pono e hoʻonohonoho pono ʻia nā mea āpau iā ʻoe iho. No laila, ma mua o ka hana ʻana i kāu ʻōnaehana ponoʻī, pono e hoʻohālikelike i ka pono o kahi ʻōnaehana analytics koʻikoʻi me nā kumuwaiwai āu e makemake ai e hoʻokaʻawale iā ia.
Inā ua hana ʻoe i ka makemakika a ʻike ʻoe he kiʻekiʻe loa nā kumukūʻai, ma ka ʻāpana aʻe e kamaʻilio wau e pili ana i ka hana ʻana i kahi ʻano haʻahaʻa o ka ʻaoʻao ʻaoʻao server.

Mahalo no ka heluhelu ʻana! E hauʻoli wau e nīnau i nā nīnau ma nā manaʻo.

Source: www.habr.com

Pākuʻi i ka manaʻo hoʻopuka