Ki moun ki enjenyè done, e ki jan ou vin youn?

Bonjou ankò! Tit atik la pale pou kont li. Nan patisipe nan kòmansman an nan kou a Enjenyè Done Nou sijere ou konprann ki moun ki enjenyè done yo ye. Gen anpil lyen itil nan atik la. Bon lekti.

Ki moun ki enjenyè done, e ki jan ou vin youn?

Yon gid senp sou kòman yo trape vag nan Jeni Done epi yo pa kite l trennen ou nan gwo twou san fon an.

Li sanble ke tout moun vle vin yon Syantis done jou sa yo. Men, e Done Jeni? Esansyèlman, sa a se yon kalite ibrid nan yon analis done ak yon syantis done; Yon enjenyè done se tipikman responsab pou jere workflows, pwosesis tiyo, ak pwosesis ETL. Akòz enpòtans fonksyon sa yo, sa a se kounye a yon lòt jagon pwofesyonèl popilè ki aktivman pran momantòm.

Salè wo ak demann gwo yo se jis yon ti pati nan sa ki fè travay sa a trè atire! Si ou vle rantre nan ran yo nan ewo, li pa janm twò ta yo kòmanse aprann. Nan pòs sa a, mwen kolekte tout enfòmasyon ki nesesè pou ede w fè premye etap ou yo.

Se konsa, kite a kòmanse!

Ki sa ki done Jeni?

Onètman, pa gen pi bon eksplikasyon pase sa a:

"Yon syantis ka dekouvri yon nouvo etwal, men li pa ka kreye youn. Li pral oblije mande yon enjenyè fè li pou li."

-Gordon Lindsay Glegg

Kidonk, wòl yon enjenyè done se byen enpòtan.

Kòm non an sijere, jeni done konsène ak done, sètadi livrezon li yo, depo ak pwosesis. An konsekans, travay prensipal enjenyè yo se bay yon enfrastrikti serye pou done yo. Si nou gade nan yerachi AI nan bezwen, jeni done okipe premye etap yo 2-3: koleksyon, mouvman ak depo, preparasyon done.

Ki moun ki enjenyè done, e ki jan ou vin youn?

Kisa yon enjenyè done fè?

Avèk avenman done gwo, sijè ki abòde lan responsablite te chanje dramatikman. Si anvan ekspè sa yo te ekri gwo demann SQL ak done distile lè l sèvi avèk zouti tankou Informatica ETL, Pentaho ETL, Talend, kounye a kondisyon yo pou enjenyè done yo te ogmante.

Pifò konpayi ki gen pòs ki vid pou pozisyon enjenyè done yo gen kondisyon sa yo:

  • Ekselan konesans nan SQL ak Python.
  • Eksperyans ak platfòm nwaj yo, patikilyèman Amazon Web Services.
  • Konesans nan Java/Scala pi pito.
  • Bon konpreyansyon sou baz done SQL ak NoSQL (modèl done, depo done).

Kenbe nan tèt ou, sa yo se sèlman esansyèl yo. Soti nan lis sa a, li ka sipoze ke enjenyè done yo se espesyalis nan jaden an nan devlopman lojisyèl ak backend.
Pou egzanp, si yon konpayi kòmanse jenere yon gwo kantite done ki soti nan divès sous, travay ou kòm yon enjenyè done se òganize koleksyon enfòmasyon, pwosesis li yo ak depo.

Lis la nan zouti yo itilize nan ka sa a ka diferan, li tout depann sou volim nan done sa a, vitès la nan resi li yo ak eterojenite. Pifò konpayi yo pa fè fas ak gwo done ditou, kidonk kòm yon depo santralize, yon sa yo rele depo done, ou ka itilize yon baz done SQL (PostgreSQL, MySQL, elatriye) ak yon ti seri scripts ki bay done yo nan. depo a.

Gran IT tankou Google, Amazon, Facebook oswa Dropbox gen pi wo kondisyon: konesans nan Python, Java oswa Scala.

  • Eksperyans ak done gwo: Hadoop, Spark, Kafka.
  • Konesans nan algoritm ak estrikti done.
  • Konprann baz sistèm distribiye yo.
  • Eksperyans ak zouti vizyalizasyon done tankou Tableau oswa ElasticSearch pral yon avantaj.

Sa vle di, gen yon chanjman klè nan direksyon gwo done, sètadi nan pwosesis li yo anba chaj segondè. Konpayi sa yo te ogmante kondisyon pou tolerans fay sistèm.

Done Enjenyè vs. syantifik done yo

Ki moun ki enjenyè done, e ki jan ou vin youn?
Oke, se te yon konparezon senp ak komik (pa gen anyen pèsonèl), men an reyalite li pi konplike.

Premyèman, ou ta dwe konnen ke gen anpil anbigwite nan delimitasyon wòl ak konpetans yon syantis done ak yon enjenyè done. Sa vle di, ou ka fasilman konfonn sou ki konpetans yo bezwen yo dwe yon enjenyè done siksè. Natirèlman, gen sèten ladrès ki sipèpoze ak tou de wòl yo. Men, gen tou yon kantite konpetans dyametralman opoze.

Syans done se biznis serye, men nou ap deplase nan direksyon pou yon mond nan syans done fonksyonèl kote pratikan yo kapab fè pwòp analiz yo. Pou pèmèt tiyo done ak estrikti done entegre, ou bezwen enjenyè done, pa syantis done.

Èske yon enjenyè done plis nan demann pase yon syantis done?

- Wi, paske anvan ou ka fè gato kawòt, ou bezwen kolekte, kale ak stock kawòt!

Yon enjenyè done konprann pwogramasyon pi byen pase nenpòt syantis done, men lè li rive estatistik, opoze a se vre.

Men, isit la se avantaj yon enjenyè done:

San li / li, valè modèl pwototip la, ki pi souvan ki fòme ak yon moso kòd bon jan kalite terib nan yon dosye Python, yo jwenn nan men yon syantis done ak yon jan kanmenm pwodwi yon rezilta, gen tandans a zewo.

San yo pa yon enjenyè done, kòd sa a p'ap janm tounen yon pwojè epi pa gen okenn pwoblèm biznis yo pral efektivman rezoud. Enjenyè done a ap eseye vire tout bagay sa yo nan yon pwodwi.

Enfòmasyon debaz yon enjenyè done ta dwe konnen

Ki moun ki enjenyè done, e ki jan ou vin youn?

Se konsa, si travay sa a pote limyè a nan ou epi ou trè chofe - ou ka aprann li, ou ka metrize tout ladrès ki nesesè yo epi vin yon etwal wòch reyèl nan jaden an nan jeni done. Epi, wi, ou ka rale sa a menm san ladrès pwogramasyon oswa lòt konesans teknik. Li difisil, men posib!

Ki premye etap yo?

Ou ta dwe gen yon lide jeneral sou sa ki sa ki.

Premye a tout, Jeni Done refere a syans òdinatè. Plis espesyalman, ou dwe konprann algoritm efikas ak estrikti done. Dezyèmman, depi enjenyè done yo travay ak done, li nesesè yo konprann prensip yo nan baz done ak estrikti ki kache yo.

Pou egzanp, baz done konvansyonèl B-Tree SQL yo baze sou estrikti done B-Tree, osi byen ke, nan depo modèn distribiye, LSM-Tree ak lòt modifikasyon nan tab hash.

*Etap sa yo baze sou yon gwo atik Adilya Khashtamova. Se konsa, si ou konnen Ris, sipòte otè sa a epi li pòs li.

1. Algoritm ak estrikti done

Sèvi ak bon estrikti done ka siyifikativman amelyore pèfòmans yon algorithm. Idealman, nou tout ta dwe aprann sou estrikti done ak algorithm nan lekòl nou yo, men sa a se raman janm kouvri. Nan nenpòt ka, li pa janm twò ta fè konesans.
Se konsa, isit la se kou gratis mwen pi renmen pou aprann estrikti done ak algoritm:

Anplis de sa, pa bliye sou travay klasik Thomas Corman sou algoritm - Entwodiksyon nan algoritm. Sa a se referans pafè lè ou bezwen rafrechi memwa ou.

  • Pou amelyore konpetans ou, sèvi ak Leetcode.

Ou kapab tou plonje nan mond lan nan baz done ak videyo etonan soti nan Carnegie Mellon University sou Youtube:

2. Aprann SQL

Tout lavi nou se done. Epi yo nan lòd yo ekstrè done sa yo nan baz done a, ou bezwen "pale" menm lang ak li.

SQL (Structured Query Language) se lang kominikasyon nan domèn done yo. Kèlkeswa sa nenpòt moun di, SQL te viv, li vivan, epi li pral viv pou yon tan trè lontan.

Si ou te nan devlopman pou yon tan long, ou te pwobableman remake ke rimè sou lanmò a iminan nan SQL pop up detanzantan. Lang lan te devlope nan kòmansman ane 70 yo epi li toujou trè popilè nan mitan analis, devlopè ak tou senpleman amater.
San konesans nan SQL pa gen anyen fè nan jeni done kòm ou pral inevitableman gen yo kreye demann yo rekipere done. Tout gwo depo done modèn sipòte SQL:

  • Amazon RedShift
  • HP Vètikal
  • Oracle
  • SQL sèvè

... ak anpil lòt moun.

Pou analize yon gwo kouch done ki estoke nan sistèm distribiye tankou HDFS, motè SQL yo te envante: Apache Hive, Impala, elatriye Gade, li pa pral nenpòt kote.

Ki jan yo aprann SQL? Jis fè li nan pratik.

Pou fè sa, mwen ta rekòmande tcheke deyò yon leson patikilye ekselan, ki, nan chemen an, se gratis, soti nan Mòd Analytics.

  1. SQL entèmedyè
  2. Rantre nan done nan SQL

Ki sa ki fè kou sa yo espesyal se ke yo gen yon anviwònman entèaktif kote ou ka ekri ak kouri demann SQL dwat nan navigatè ou a. Resous SQL modèn pa pral initil. Epi ou ka aplike konesans sa a Travay Leetcode nan seksyon baz done yo.

3. Pwogramasyon nan Python ak Java/Scala

Poukisa ou ta dwe aprann langaj pwogramasyon Python, mwen te deja ekri nan atik la Python vs R. Chwazi pi bon zouti pou AI, ML ak syans done. Lè li rive Java ak Scala, pi fò nan zouti pou estoke ak trete gwo kantite done yo ekri nan lang sa yo. Pa egzanp:

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

Pou konprann ki jan zouti sa yo travay, ou bezwen konnen lang yo ekri yo. Apwòch fonksyonèl Scala a pèmèt ou efektivman rezoud pwoblèm paralèl pwosesis done. Python, malerezman, pa ka vante vitès ak pwosesis paralèl. An jeneral, konesans nan plizyè lang ak paradigm pwogram se yon bon bagay pou lajè apwòch yo rezoud pwoblèm.

Pou plonje nan lang Scala, ou ka li Pwogramasyon nan Scala soti nan otè lang lan. Twitter pibliye tou yon bon gid entwodiksyon - Lekòl Scala.

Kòm pou Python, mwen kwè Fluent Python pi bon liv nivo mwayen.

4. Zouti pou travay ak gwo done

Isit la se yon lis zouti ki pi popilè nan mond lan nan done gwo:

  • Apache etensèl
  • Apache Kafka
  • Apache Hadoop (HDFS, HBase, Hive)
  • Apache cassandra

Ou ka jwenn plis enfòmasyon sou bati gwo blòk done nan etonan sa a anviwònman entèaktif. Zouti ki pi popilè yo se Spark ak Kafka. Yo definitivman vo etidye, li se konseye yo konprann ki jan yo travay soti nan andedan an. Jay Kreps (ko-otè Kafka) te pibliye yon travay moniman an 2013 Log la: Ki sa chak devlopè lojisyèl ta dwe konnen sou abstrè agrégasyon done an tan reyèlBy wout la, lide prensipal yo soti nan Talmud sa a yo te itilize yo kreye Apache Kafka.

5. Cloud platfòm

Ki moun ki enjenyè done, e ki jan ou vin youn?

Konesans nan omwen yon platfòm nwaj se sou lis la nan kondisyon debaz pou aplikan pou pozisyon nan enjenyè done. Anplwayè yo pito Amazon Web Services, ak platfòm nwaj Google nan dezyèm plas ak Microsoft Azure awondi twa pi gwo yo.

Ou dwe gen bon konesans nan Amazon EC2, AWS Lambda, Amazon S3, DynamoDB.

6. Sistèm distribye

Travay ak done gwo implique prezans nan grap nan òdinatè opere poukont yo, kominikasyon ant ki te pote soti sou yon rezo. Pi gwo gwoup la, se pi gwo pwobabilite pou echèk nœuds manm li yo. Pou vin yon gwo syantis done, ou bezwen konprann pwoblèm yo ak solisyon ki egziste deja pou sistèm distribiye. Zòn sa a fin vye granmoun ak konplèks.

Andrew Tanenbaum konsidere kòm yon pyonye nan domèn sa a. Pou moun ki pa pè teyori, mwen rekòmande liv li a "Sistèm distribiye", li ka sanble redoutable pou débutan, men li pral reyèlman ede ou amelyore konpetans ou.

mwen panse Konsepsyon aplikasyon pou done entansif pa Martin Kleppmann pi bon liv entwodiksyon. By wout la, Martin gen yon bèl bagay Blog. Travay li pral ede sistematize konesans sou bati yon enfrastrikti modèn pou estoke ak trete done gwo.
Pou moun ki renmen gade videyo, gen yon kou sou Youtube Sistèm òdinatè distribiye.

7. Done tuyaux

Ki moun ki enjenyè done, e ki jan ou vin youn?

Tiyo done yo se yon bagay ou pa ka viv san kòm yon enjenyè done.

Pifò nan tan an, yon enjenyè done bati yon sa yo rele tiyo done, se sa ki, li kreye yon pwosesis pou fournir done soti nan yon kote nan yon lòt. Sa yo ta ka scripts koutim ki ale nan API yon sèvis ekstèn oswa fè yon rechèch SQL, ogmante done yo, epi mete l nan yon magazen santralize (depo done) oswa yon magazen done san estrikti (lak done).

Pou rezime: lis verifikasyon debaz pou yon enjenyè done

Ki moun ki enjenyè done, e ki jan ou vin youn?

Pou rezime, yo mande yon bon konpreyansyon sou bagay sa yo:

  • Sistèm Enfòmasyon;
  • Devlopman lojisyèl (Agile, DevOps, Design Techniques, SOA);
  • Sistèm distribiye ak pwogramasyon paralèl;
  • Fondamantal baz done - Planifikasyon, konsepsyon, operasyon ak depanaj;
  • Konsepsyon eksperyans - Tès A/B pou pwouve konsèp, detèmine fyab, pèfòmans sistèm, epi devlope chemen serye pou bay bon solisyon rapidman.

Sa yo se sèlman kèk nan kondisyon yo vin yon enjenyè done, kidonk aprann epi konprann sistèm done, sistèm enfòmasyon, livrezon kontinyèl / deplwaman / entegrasyon, langaj pwogramasyon, ak lòt sijè syans enfòmatik (se pa tout matyè).

Epi finalman, dènye bagay la men trè enpòtan mwen vle di.

Chemen pou vin Done Jeni se pa senp jan li ta ka sanble. Li pa padone, li fristre, epi ou dwe prepare pou sa. Kèk moman nan vwayaj sa a ka pouse ou abandone. Men, sa a se yon travay reyèl ak yon pwosesis aprantisaj.

Jis pa sugarcoat li depi nan kòmansman an. Tout pwen nan vwayaje se aprann otank posib epi yo dwe pare pou nouvo defi.
Men yon bèl foto mwen te rankontre ki montre pwen sa a byen:

Ki moun ki enjenyè done, e ki jan ou vin youn?

Epi wi, sonje pou evite boule ak repoze. Sa a se tou trè enpòtan. Bon chans!

Kisa ou panse de atik la, zanmi? Nou envite w webinar gratis, ki pral pran plas jodi a nan 20.00. Pandan webinar a, nou pral diskite sou fason pou konstwi yon sistèm tretman done efikas ak évolutive pou yon ti konpayi oswa yon demaraj a yon pri minimòm. Kòm yon pratik, nou pral fè konesans ak Google Cloud zouti pwosesis done. Na wè!

Sous: www.habr.com

Add nouvo kòmantè