ʻO wai nā ʻenekini data, a pehea ʻoe e lilo ai i hoʻokahi?

Aloha hou mai! 'Ōlelo ke poʻo o ka 'atikala nona iho. I ka hoʻomaka ʻana o ka papa ʻEnekinia ʻIkepili Manaʻo mākou e hoʻomaopopo ʻoe ʻo wai ka ʻenekinia data. Nui nā loulou pono ma ka ʻatikala. Hauʻoli heluhelu.

ʻO wai nā ʻenekini data, a pehea ʻoe e lilo ai i hoʻokahi?

He alakaʻi maʻalahi e pili ana i ka hopu ʻana i ka nalu Data Engineering a ʻaʻole e ʻae iā ia e kauo iā ʻoe i loko o ka hohonu.

Me he mea lā e makemake ana nā mea a pau e lilo i Data Scientist i kēia mau lā. Akā, pehea e pili ana i Data Engineering? ʻO ka mea nui, he ʻano hybrid kēia o ka ʻikepili a me ka ʻepekema data; ʻO ka ʻenekinia ʻikepili ke kuleana maʻamau no ka hoʻokele ʻana i nā kahe hana, ka hoʻoili ʻana i nā pipeline, a me nā kaʻina hana ETL. Ma muli o ke koʻikoʻi o kēia mau hana, ʻo kēia kekahi jargon ʻoihana kaulana e hoʻoikaika ikaika nei.

ʻO nā uku kiʻekiʻe a me nā koi nui he wahi liʻiliʻi wale nō ia o ka mea e nani ai kēia hana! Inā makemake ʻoe e hui pū me nā pūʻali koa, ʻaʻole i lohi ka hoʻomaka ʻana e aʻo. Ma kēia pou, ua hōʻiliʻili wau i nā ʻike āpau e pono ai e kōkua iā ʻoe e hana i kāu mau hana mua.

No laila e hoʻomaka kākou!

He aha ka ʻenehana ʻikepili?

ʻO kaʻoiaʻiʻo, ʻaʻohe wehewehe maikaʻi ma mua o kēia:

"Hiki i ka ʻepekema ke ʻike i kahi hōkū hou, akā ʻaʻole hiki iā ia ke hana. Pono ʻo ia e noi i kahi ʻenekinia e hana iā ia."

–Gordon Lindsay Glegg

No laila, he mea koʻikoʻi ke kuleana o ka ʻenekini data.

E like me ka manaʻo o ka inoa, pili ka ʻenekinia data i ka ʻikepili, ʻo ia hoʻi ka hāʻawi ʻana, ka mālama ʻana a me ka hana ʻana. No laila, ʻo ka hana nui o nā ʻenekinia ka hāʻawi ʻana i kahi ʻōnaehana hilinaʻi no ka ʻikepili. Inā mākou e nānā i ka AI ​​hierarchy o nā pono, e noho ana ka ʻenehana data i nā pae mua 2-3: hōʻiliʻili, neʻe a mālama ʻana, hoʻomākaukau ʻikepili.

ʻO wai nā ʻenekini data, a pehea ʻoe e lilo ai i hoʻokahi?

He aha ka hana a ka ʻenekinia data?

Me ka hiki ʻana mai o ka ʻikepili nui, ua loli nui ke ʻano o ke kuleana. Inā ma mua i kākau ai kēia mau loea i nā nīnau SQL nui a me nā ʻikepili distilled me ka hoʻohana ʻana i nā mea hana e like me Informatica ETL, Pentaho ETL, Talend, i kēia manawa ua hoʻonui ʻia nā koi no nā ʻenekini data.

ʻO ka hapa nui o nā ʻoihana me nā hakahaka hāmama no ke kūlana o ka ʻenekini data e loaʻa i kēia mau koi:

  • ʻIke maikaʻi loa o SQL a me Python.
  • ʻO ka ʻike me nā paepae ao, ʻoi aku ka Amazon Web Services.
  • Makemake ʻia ka ʻike o Java/Scala.
  • ʻIke maikaʻi i nā ʻikepili SQL a me NoSQL (ka hoʻohālikelike ʻikepili, ka waihona ʻikepili).

E hoʻomanaʻo, ʻo kēia wale nō nā mea pono. Mai kēia papa inoa, hiki ke manaʻo ʻia he poʻe loea nā ʻenekini data ma ke kahua o ka hoʻomohala polokalamu a me ka backend.
No ka laʻana, inā hoʻomaka kahi hui e hana i ka nui o ka ʻikepili mai nā kumu like ʻole, ʻo kāu hana ma ke ʻano he ʻenekini data ʻo ia ka hoʻonohonoho ʻana i ka hōʻiliʻili ʻana o ka ʻike, kāna hana ʻana a me ka mālama ʻana.

ʻOkoʻa paha ka papa inoa o nā mea hana i hoʻohana ʻia i kēia hihia, pili ia i ka nui o kēia ʻikepili, ka wikiwiki o ka loaʻa ʻana a me ka heterogeneity. ʻAʻole pili ka hapa nui o nā ʻoihana i nā ʻikepili nui, no laila, ma ke ʻano he waihona kikowaena, kahi i kapa ʻia ʻo ka waihona data, hiki iā ʻoe ke hoʻohana i kahi waihona SQL (PostgreSQL, MySQL, etc.) me kahi pūʻulu liʻiliʻi o nā palapala e hānai i ka ʻikepili ka hale kūʻai.

ʻO nā mea nunui IT e like me Google, Amazon, Facebook a i ʻole Dropbox he mau koi kiʻekiʻe aʻe: ʻike iā Python, Java a i ʻole Scala.

  • ʻIke me ka ʻikepili nui: Hadoop, Spark, Kafka.
  • Ka ʻike o nā algorithms a me nā hoʻolālā ʻikepili.
  • ʻO ka hoʻomaopopo ʻana i nā kumu o nā ʻōnaehana puʻupuʻu.
  • ʻO ka ʻike me nā mea hana ʻike ʻikepili e like me Tableau a i ʻole ElasticSearch e lilo i mea hoʻohui.

ʻO ia hoʻi, aia kahi hoʻololi akaka i ka ʻikepili nui, ʻo ia hoʻi i kāna hana ʻana ma lalo o nā ukana kiʻekiʻe. Ua hoʻonui kēia mau ʻoihana i nā koi no ka ʻae ʻana i ka hewa ʻōnaehana.

ʻEnekinia ʻIkepili Vs. ʻepekema ʻikepili

ʻO wai nā ʻenekini data, a pehea ʻoe e lilo ai i hoʻokahi?
ʻAe, he hoʻohālikelike maʻalahi a ʻakaʻaka (ʻaʻohe mea pilikino), akā ʻoiaʻiʻo, ʻoi aku ka paʻakikī.

ʻO ka mea mua, pono ʻoe e ʻike he nui ka ambiguity i ka wehewehe ʻana i nā kuleana a me nā mākau o kahi ʻepekema data a me kahi ʻenekini data. ʻO ia hoʻi, hiki iā ʻoe ke huikau maʻalahi e pili ana i nā mākau e pono ai e lilo i ʻenekini data holomua. ʻOiaʻiʻo, aia kekahi mau mākau e pili ana i nā kuleana ʻelua. Akā, aia kekahi mau mākau diametrically kū'ē.

He ʻoihana koʻikoʻi ka ʻepekema data, akā ke neʻe nei mākou i kahi honua o ka ʻepekema data hana kahi e hiki ai i nā loea ke hana i kā lākou ʻikepili ponoʻī. I mea e hiki ai i nā pipeline ʻikepili a me nā hoʻonohonoho ʻikepili i hoʻohui ʻia, pono ʻoe i nā ʻenekini data, ʻaʻole nā ​​ʻepekema data.

ʻOi aku ka makemake o kahi ʻenekini data ma mua o ka ʻepekema data?

- ʻAe, no ka mea ma mua o hiki iā ʻoe ke hana i nā kāloti kāloti, pono ʻoe e ʻohi mua, ʻili a me nā kāloti kūʻai!

Hoʻomaopopo ka ʻenekinia ʻikepili i ka hoʻolālā ʻoi aku ka maikaʻi ma mua o nā ʻepekema data, akā i ka wā e pili ana i nā helu helu, he ʻoiaʻiʻo ka ʻaoʻao.

Akā, eia ka pono o ka ʻenekinia data:

Inā ʻaʻole ʻo ia, ʻo ka waiwai o ke kumu hoʻohālike, ʻo ka hapa nui o ke code maikaʻi ʻole i loko o kahi faila Python, i loaʻa mai kahi ʻepekema ʻikepili a i ʻole e hana i kahi hopena, e like me ka zero.

Me ka ʻole o ka ʻenehana ʻikepili, ʻaʻole e lilo kēia code i papahana a ʻaʻohe pilikia ʻoihana e hoʻoponopono maikaʻi ʻia. Ke hoʻāʻo nei ka ʻenehana data e hoʻohuli i kēia mau mea a pau i huahana.

ʻIke kumu e ʻike ʻia e ka ʻenekinia ʻikepili

ʻO wai nā ʻenekini data, a pehea ʻoe e lilo ai i hoʻokahi?

No laila, inā hoʻopuka kēia hana i ka mālamalama i loko o ʻoe a hauʻoli ʻoe - hiki iā ʻoe ke aʻo iā ia, hiki iā ʻoe ke haku i nā mākau pono āpau a lilo i hōkū pōhaku maoli ma ke kahua o ka ʻenekinia data. A, ʻae, hiki iā ʻoe ke huki i kēia me ka ʻole o nā mākau polokalamu a i ʻole nā ​​​​ʻike loea ʻē aʻe. He paʻakikī, akā hiki!

He aha nā ʻanuʻu mua?

Pono ʻoe i ka manaʻo maʻamau o ka mea.

ʻO ka mea mua, ʻo Data Engineering e pili ana i ka ʻepekema kamepiula. ʻOi aku ka kikoʻī, pono ʻoe e hoʻomaopopo i nā algorithm kūpono a me nā ʻōnaehana data. ʻO ka lua, no ka hana ʻana o nā ʻenekinia ʻikepili me ka ʻikepili, pono e hoʻomaopopo i nā loina o nā ʻikepili a me nā hale i lalo o lākou.

No ka laʻana, hoʻokumu ʻia nā waihona ʻikepili B-tree SQL maʻamau i ka hoʻonohonoho ʻikepili B-Tree, a me, i loko o nā hale waihona puʻupuʻu hou, LSM-Tree a me nā hoʻololi ʻē aʻe o nā papa hash.

* Hoʻokumu ʻia kēia mau ʻanuʻu ma kahi ʻatikala maikaʻi loa ʻO Adilya Khashtamova. No laila, inā ʻike ʻoe i ka Lūkini, e kākoʻo i kēia mea kākau a heluhelu kona pou.

1. Algorithms a me nā hoʻonohonoho ʻikepili

Hiki i ka hoʻohana ʻana i ka ʻikepili kūpono ke hoʻomaikaʻi nui i ka hana o kahi algorithm. ʻO ke kūpono, pono mākou e aʻo e pili ana i nā hoʻolālā ʻikepili a me nā algorithms i kā mākou mau kula, akā ʻaʻole i uhi ʻia kēia. ʻO kēlā me kēia hihia, ʻaʻole i lōʻihi ke kamaʻāina.
No laila, eia kaʻu mau papa manuahi punahele no ke aʻo ʻana i ka ʻikepili a me nā algorithm:

Mai poina e pili ana i ka hana maʻamau a Thomas Corman ma nā algorithms - Introduction to Algorithms. ʻO kēia ka ʻōlelo kuhikuhi kūpono inā pono ʻoe e hōʻoluʻolu i kou hoʻomanaʻo.

  • No ka hoʻomaikaʻi ʻana i kāu mau akamai, hoʻohana Leetcode.

Hiki iā ʻoe ke luʻu i ka honua o nā waihona me nā wikiō kupaianaha mai ke Kulanui ʻo Carnegie Mellon ma Youtube:

2. E aʻo iā SQL

ʻO ko mākou ola holoʻokoʻa ka ʻikepili. A no ka unuhi ʻana i kēia ʻikepili mai ka waihona, pono ʻoe e "'ōlelo" i ka ʻōlelo like me ia.

ʻO SQL (Structured Query Language) ka ʻōlelo kamaʻilio ma ka waihona ʻikepili. Ma waho o ka mea a kekahi e ʻōlelo ai, ua ola ʻo SQL, ua ola, a e ola no ka manawa lōʻihi loa.

Inā lōʻihi ʻoe i ka hoʻomohala ʻana, ua ʻike paha ʻoe i nā lono e pili ana i ka make kokoke ʻana o SQL i kēlā me kēia manawa. Ua hoʻomohala ʻia ka ʻōlelo i nā makahiki 70 mua a kaulana loa i waena o nā mea loiloi, nā mea hoʻomohala a me nā mea hoihoi.
Me ka ʻike ʻole o SQL ʻaʻohe mea e hana ai i ka ʻenekinia data no ka mea e pono ʻoe e hana i nā nīnau e kiʻi i ka ʻikepili. Kākoʻo nā hale kūʻai ʻikepili nui hou i ka SQL:

  • Amazon RedShift
  • HP Vertica
  • kahi e'ōlelo ai
  • Pūnaehana SQL

... a me nā mea ʻē aʻe he nui.

No ke kālailai ʻana i kahi papa nui o ka ʻikepili i mālama ʻia i loko o nā ʻōnaehana hoʻolaha e like me HDFS, ua hana ʻia nā ʻenekini SQL: Apache Hive, Impala, a pēlā aku.

Pehea e aʻo ai iā SQL? E hana wale ma ka hana.

No ka hana ʻana i kēia, makemake wau e nānā i kahi aʻoaʻo maikaʻi loa, ma ke ala, manuahi ʻole, mai Kānāwai Kūlana.

  1. SQL waena
  2. Hoʻohui i ka ʻikepili ma SQL

ʻO ka mea e hoʻokalakupua ai kēia mau papa ʻo ia ka loaʻa ʻana o kahi kaiapuni pili kahi e hiki ai iā ʻoe ke kākau a holo i nā nīnau SQL ma kāu polokalamu kele pūnaewele. Punawai SQL hou ʻaʻole e hoʻonui. A hiki iā ʻoe ke hoʻohana i kēia ʻike i Nā hana Leetcode ma ka ʻāpana ʻikepili.

3. Papahana ma Python a me Java/Scala

No ke aha ʻoe e aʻo ai i ka ʻōlelo papahana Python, ua kākau wau ma ka ʻatikala ʻO Python vs R. Ke koho ʻana i ka mea hana maikaʻi loa no AI, ML a me ʻIke ʻIke. I ka hiki ʻana mai iā Java a me Scala, kākau ʻia ka hapa nui o nā mea hana no ka mālama ʻana a me ka hoʻoili ʻana i ka nui o nā ʻikepili i kēia mau ʻōlelo. ʻo kahi laʻana:

  • Apache Kafka (Scala)
  • Hadoop, HDFS (Java)
  • Apache Spark (Scala)
  • Apache Cassandra (Java)
  • HBase (Java)
  • Apache Hive (Java)

No ka hoʻomaopopo ʻana i ka hana ʻana o kēia mau mea hana, pono ʻoe e ʻike i nā ʻōlelo i kākau ʻia ai lākou. Hiki iā Scala ke hoʻoponopono pono i nā pilikia hoʻoili ʻikepili like. ʻO Python, ʻaʻole naʻe, ʻaʻole hiki ke kaena i ka wikiwiki a me ka hana like. Ma ka laulā, maikaʻi ka ʻike o nā ʻōlelo a me nā paradigms hoʻonohonoho no ka laulā o nā ala e hoʻoponopono ai i nā pilikia.

No ka luʻu ʻana i ka ʻōlelo Scala, hiki iā ʻoe ke heluhelu Ka papahana ma Scala mai ka mea kākau o ka ʻōlelo. Ua hoʻopuka pū ʻo Twitter i kahi alakaʻi hoʻolauna maikaʻi - Kula Scala.

No Python, ke manaʻoʻiʻo nei au Python maʻalahi puke pae waena maikaʻi loa.

4. Nā mea hana no ka hana ʻana me ka ʻikepili nui

Eia ka papa inoa o nā mea hana kaulana loa i ka honua o ka ʻikepili nui:

  • Apache Spark
  • Apache Kafka
  • Apache Hadoop (HDFS, HBase, Hive)
  • Apache cassandra

Hiki iā ʻoe ke ʻike i ka ʻike hou aku e pili ana i ke kūkulu ʻana i nā poloka ʻikepili nui i kēia mea kupaianaha kaiapuni pili. ʻO nā mea hana kaulana loa ʻo Spark a me Kafka. Pono lākou e aʻo, pono e hoʻomaopopo i ke ʻano o kā lākou hana mai loko. Ua paʻi ʻo Jay Kreps (ka mea kākau pū o Kafka) i kahi hana nui i ka makahiki 2013 ʻO ka Log: He aha ka mea e ʻike ai kēlā me kēia mea hoʻomohala polokalamu e pili ana i ka Abstraction Data Aggregation Real-TimeMa ke ala, ua hoʻohana ʻia nā manaʻo nui mai kēia Talmud e hana iā Apache Kafka.

5. Nā paepae ao

ʻO wai nā ʻenekini data, a pehea ʻoe e lilo ai i hoʻokahi?

Aia ka ʻike o ka liʻiliʻi o hoʻokahi paepae kapua ma ka papa inoa o nā koi kumu no nā mea noi no ke kūlana o ka ʻenekinia ʻikepili. Hāʻawi ka poʻe hana i ka makemake i ka Amazon Web Services, me ka Google cloud platform ma ka lua a me Microsoft Azure e hoʻopuni ana i nā luna ʻekolu.

Pono ʻoe i ka ʻike maikaʻi o Amazon EC2, AWS Lambda, Amazon S3, DynamoDB.

6. Pūnaehana hoʻolaha

ʻO ka hana ʻana me ka ʻikepili nui e hōʻike ana i ka hiki ʻana mai o nā pūʻulu o nā kamepiula hana kūʻokoʻa, ke kamaʻilio ʻana ma waena o ia mea ma kahi pūnaewele. ʻO ka nui o ka pūʻulu, ʻoi aku ka nui o ka hiki ʻole o kāna mau lālā lālā. No ka lilo ʻana i ʻepekema data maikaʻi, pono ʻoe e hoʻomaopopo i nā pilikia a me nā hoʻonā e kū nei no nā ʻōnaehana puʻupuʻu. He kahiko a paʻakikī kēia wahi.

Ua manaʻo ʻia ʻo Andrew Tanenbaum he paionia ma kēia kahua. No ka poʻe makaʻu ʻole i ke kumumanaʻo, paipai wau i kāna puke "Nā Pūnaehana Hoʻolaha", he mea paʻakikī paha ia no ka poʻe hoʻomaka, akā e kōkua maoli ia iā ʻoe e hone i kou akamai.

Kuhi wau Hoʻolālā ʻana i nā palapala noiʻi ʻikepili na Martin Kleppmann puke hoʻolauna maikaʻi loa. Ma ke ala, he mea kupanaha ko Martin blog. E kōkua kāna hana i ka hoʻonohonoho ʻana i ka ʻike e pili ana i ke kūkulu ʻana i kahi ʻenehana hou no ka mālama ʻana a me ka hoʻoili ʻana i ka ʻikepili nui.
No ka poʻe makemake e nānā i nā wikiō, aia kahi papa ma Youtube Pūnaehana lolouila hāʻawi.

7. Nā paipuʻikepili

ʻO wai nā ʻenekini data, a pehea ʻoe e lilo ai i hoʻokahi?

ʻO nā pipeline ʻikepili kahi mea hiki ʻole iā ʻoe ke ola me ka ʻole o ka ʻenekini data.

ʻO ka hapa nui o ka manawa, kūkulu ka ʻenekini data i kahi pipeline data i kapa ʻia, ʻo ia hoʻi, hana ʻo ia i kahi kaʻina no ka hāʻawi ʻana i ka ʻikepili mai kahi wahi a i kekahi. He mau palapala maʻamau paha kēia e hele ana i ka API o kahi lawelawe waho a i ʻole e hana i kahi nīnau SQL, hoʻonui i ka ʻikepili, a waiho i loko o kahi hale kūʻai kikowaena (data warehouse) a i ʻole kahi hale kūʻai ʻikepili i kūkulu ʻole ʻia (nā loko data).

No ka hōʻuluʻulu manaʻo: ka papa kuhikuhi kumu no kahi ʻenekinia ʻikepili

ʻO wai nā ʻenekini data, a pehea ʻoe e lilo ai i hoʻokahi?

No ka hōʻuluʻulu ʻana, pono ka ʻike maikaʻi o kēia mau mea:

  • Pūnaehana ʻIke;
  • Hoʻomohala polokalamu (Agile, DevOps, Design Techniques, SOA);
  • Pūnaehana hoʻokaʻawale a me nā polokalamu like;
  • Nā Kuleana Pūnaewele - Hoʻolālā, Hoʻolālā, Hana a me nā pilikia;
  • Hoʻolālā o nā hoʻokolohua - Nā hoʻāʻo A/B e hōʻoia i nā manaʻo, e hoʻoholo i ka hilinaʻi, ka hana ʻōnaehana, a me ka hoʻomohala ʻana i nā ala hilinaʻi e hoʻopuka koke i nā hopena maikaʻi.

He liʻiliʻi wale nō kēia o nā koi e lilo i ʻenekinia ʻikepili, no laila e aʻo a hoʻomaopopo i nā ʻōnaehana ʻikepili, nā ʻōnaehana ʻike, ka hoʻouna mau ʻana/ka hoʻokomo ʻana, nā ʻōlelo papahana, a me nā kumuhana ʻepekema kamepiula ʻē aʻe (ʻaʻole nā ​​kumuhana āpau).

A ʻo ka mea hope loa, ʻo ka mea nui aʻu e makemake ai e ʻōlelo.

ʻAʻole maʻalahi ke ala e lilo ai i Data Engineering. ʻAʻole ʻo ia e kala aku, hoʻonāukiuki ʻo ia, a pono ʻoe e mākaukau no kēia. Hiki i kekahi mau manawa o kēia huakaʻi ke hoʻoikaika iā ʻoe e haʻalele. Akā he hana maoli kēia a he hana aʻo.

Mai hoʻokaʻawale wale i ke kō mai ka hoʻomaka ʻana. ʻO ke kumu holoʻokoʻa o ka huakaʻi ʻo ia ke aʻo i ka mea hiki a mākaukau no nā luʻi hou.
Eia kahi kiʻi maikaʻi aʻu i ʻike ai e hōʻike maikaʻi ana i kēia wahi:

ʻO wai nā ʻenekini data, a pehea ʻoe e lilo ai i hoʻokahi?

A ʻae, e hoʻomanaʻo e pale i ka puhi ʻana a me ka hoʻomaha. He mea nui loa keia. Pōmaikaʻi iā ʻoe

Pehea kou manaʻo no ka ʻatikala, e nā hoaaloha? Ke kono aku nei makou ia oe e webinar manuahi, i keia la ma ka hora 20.00. I ka wā o ka webinar, e kūkākūkā mākou pehea e kūkulu ai i kahi ʻōnaehana ʻikepili kūpono a hiki ke hoʻonui ʻia no kahi ʻoihana liʻiliʻi a i ʻole ka hoʻomaka ʻana ma ke kumu kūʻai liʻiliʻi. Ma ke ʻano he hoʻomaʻamaʻa, e kamaʻāina mākou i nā mea hana ʻikepili Google Cloud. A hui hou!

Source: www.habr.com

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