Kinsa ang mga inhenyero sa datos, ug giunsa ka mahimong usa?

Hello usab! Ang ulohan sa artikulo nagsulti alang sa iyang kaugalingon. Sa pagpaabot sa pagsugod sa kurso Data Engineer Gisugyot namon nga masabtan nimo kung kinsa ang mga inhenyero sa datos. Adunay daghang mapuslanon nga mga link sa artikulo. Malipayon nga pagbasa.

Kinsa ang mga inhenyero sa datos, ug giunsa ka mahimong usa?

Usa ka yano nga giya kung giunsa pagdakop ang wave sa Data Engineering ug dili kini tugotan nga magguyod kanimo sa bung-aw.

Morag ang tanan gusto nga mahimong Data Scientist karong mga adlawa. Apan komosta ang Data Engineering? Sa pagkatinuod, kini usa ka matang sa hybrid sa usa ka data analyst ug usa ka data scientist; Ang usa ka inhenyero sa datos kasagarang responsable sa pagdumala sa mga workflow, pagproseso sa mga pipeline, ug mga proseso sa ETL. Tungod sa kahinungdanon niini nga mga gimbuhaton, kini sa pagkakaron usa pa ka sikat nga propesyonal nga jargon nga aktibo nga nakakuha og momentum.

Ang taas nga suweldo ug dako nga panginahanglan usa lamang ka gamay nga bahin sa hinungdan nga kini nga trabaho labi ka madanihon! Kung gusto nimo nga moapil sa ranggo sa mga bayani, dili pa ulahi aron magsugod sa pagkat-on. Sa kini nga post, nakolekta nako ang tanan nga kinahanglan nga kasayuran aron matabangan ka sa paghimo sa imong una nga mga lakang.

Mao nga magsugod kita!

Unsa ang Data Engineering?

Sa tinuud, wala’y mas maayo nga katin-awan kaysa niini:

β€œAng siyentista makadiskobre ug bag-ong bituon, apan dili siya makahimo ug usa. Kinahanglan niyang hangyoon ang usa ka enhinyero sa pagbuhat niini alang kaniya."

–Gordon Lindsay Glegg

Busa, ang papel sa usa ka data engineer kay mahinungdanon kaayo.

Sama sa gisugyot sa ngalan, ang data engineering nabalaka sa datos, nga mao ang paghatud, pagtipig ug pagproseso niini. Tungod niini, ang panguna nga tahas sa mga inhenyero mao ang paghatag usa ka kasaligan nga imprastraktura alang sa datos. Kung atong tan-awon ang hierarchy sa AI sa mga panginahanglan, ang data engineering nag-okupar sa unang 2-3 nga mga yugto: pagkolekta, paglihok ug pagtipig, pag-andam sa datos.

Kinsa ang mga inhenyero sa datos, ug giunsa ka mahimong usa?

Unsa ang gibuhat sa usa ka data engineer?

Sa pag-abut sa dagkong datos, ang kasangkaran sa responsibilidad nausab pag-ayo. Kung kaniadto kini nga mga eksperto nagsulat sa dagkong mga pangutana sa SQL ug distilled data gamit ang mga himan sama sa Informatica ETL, Pentaho ETL, Talend, karon ang mga kinahanglanon alang sa mga inhenyero sa datos miuswag.

Kadaghanan sa mga kompanya nga adunay bukas nga mga bakante alang sa posisyon sa data engineer adunay mga mosunod nga kinahanglanon:

  • Maayo kaayo nga kahibalo sa SQL ug Python.
  • Kasinatian sa mga cloud platform, labi na sa Amazon Web Services.
  • Ang kahibalo sa Java/Scala gipalabi.
  • Maayong pagsabot sa SQL ug NoSQL databases (data modeling, data warehousing).

Hinumdomi, kini ang mga kinahanglanon lamang. Gikan sa kini nga lista, mahimo’g hunahunaon nga ang mga inhenyero sa datos mga espesyalista sa natad sa pagpalambo sa software ug backend.
Pananglitan, kung ang usa ka kompanya nagsugod sa pagmugna og daghang mga datos gikan sa lainlaing mga gigikanan, ang imong tahas isip usa ka inhenyero sa datos mao ang pag-organisar sa pagkolekta sa kasayuran, pagproseso ug pagtipig niini.

Ang lista sa mga himan nga gigamit niini nga kaso mahimong magkalainlain, kini tanan nagdepende sa gidaghanon sa kini nga datos, ang katulin sa resibo niini ug heterogeneity. Kadaghanan sa mga kompanya wala gyud mag-atubang sa dagkong datos, mao nga isip usa ka sentralisadong repositoryo, usa ka gitawag nga data warehouse, mahimo nimong gamiton ang SQL database (PostgreSQL, MySQL, ug uban pa) nga adunay gamay nga hugpong sa mga script nga nagpakaon sa datos sa. ang bodega.

Ang mga higante sa IT sama sa Google, Amazon, Facebook o Dropbox adunay mas taas nga mga kinahanglanon: kahibalo sa Python, Java o Scala.

  • Kasinatian sa dagkong datos: Hadoop, Spark, Kafka.
  • Kahibalo sa mga algorithm ug istruktura sa datos.
  • Pagsabut sa mga sukaranan sa gipang-apod-apod nga mga sistema.
  • Ang kasinatian sa data visualization tools sama sa Tableau o ElasticSearch mahimong usa ka plus.

Sa ato pa, adunay klaro nga pagbalhin padulong sa dagkong datos, nga mao ang pagproseso niini ubos sa taas nga mga karga. Kini nga mga kompanya nagdugang mga kinahanglanon alang sa pagtugot sa sayup sa sistema.

Mga Inhenyero sa Data Vs. mga siyentipiko sa datos

Kinsa ang mga inhenyero sa datos, ug giunsa ka mahimong usa?
Okay, kana usa ka yano ug kataw-anan nga pagtandi (walay personal), apan sa tinuud kini labi ka komplikado.

Una, kinahanglan nimong mahibal-an nga adunay daghang kalibog sa pagdelinear sa mga tahas ug kahanas sa usa ka data scientist ug usa ka inhenyero sa datos. Sa ato pa, dali ka maglibog kung unsang mga kahanas ang gikinahanglan aron mahimong usa ka malampuson nga inhenyero sa datos. Siyempre, adunay pipila ka mga kahanas nga nagsapaw sa duha nga mga tahas. Apan adunay usab usa ka gidaghanon sa mga kahanas nga sukwahi sa diametric.

Ang siyensya sa datos usa ka seryoso nga negosyo, apan naglihok kami padulong sa usa ka kalibutan sa functional data science diin ang mga practitioner makahimo sa ilang kaugalingon nga analytics. Aron mahimo ang data pipelines ug integrated data structures, kinahanglan nimo ang data engineers, dili ang data scientists.

Mas gipangayo ba ang usa ka inhenyero sa datos kaysa usa ka siyentipiko sa datos?

- Oo, tungod kay sa dili ka pa makahimo og carrot cake, kinahanglan una nimo nga anihon, panit ug stock ang mga carrots!

Ang usa ka inhenyero sa datos mas nakasabut sa pagprograma kaysa bisan unsang data scientist, apan kung bahin sa estadistika, sukwahi ang tinuod.

Apan ania ang bentaha sa usa ka data engineer:

Kung wala siya, ang kantidad sa modelo nga prototype, nga kasagaran naglangkob sa usa ka piraso sa makalilisang nga kalidad nga code sa usa ka file sa Python, nga nakuha gikan sa usa ka data scientist ug sa usa ka paagi naghimo usa ka sangputanan, lagmit nga zero.

Kung wala ang usa ka inhenyero sa datos, kini nga code dili mahimo nga usa ka proyekto ug walay problema sa negosyo nga epektibong masulbad. Ang data engineer naningkamot sa paghimo niining tanan nga usa ka produkto.

Panguna nga kasayuran nga kinahanglan mahibal-an sa usa ka data engineer

Kinsa ang mga inhenyero sa datos, ug giunsa ka mahimong usa?

Mao nga, kung kini nga trabaho nagdala sa kahayag kanimo ug ikaw madasigon - mahimo nimo kini mahibal-an, mahimo nimong ma-master ang tanan nga kinahanglan nga kahanas ug mahimong usa ka tinuud nga bituon sa bato sa natad sa data engineering. Ug, oo, mahimo nimo kini makuha bisan kung wala ang mga kahanas sa programming o uban pang teknikal nga kahibalo. Lisud kini, apan posible!

Unsa ang unang mga lakang?

Kinahanglan nga adunay usa ka kinatibuk-ang ideya kung unsa.

Una sa tanan, ang Data Engineering nagtumong sa siyensya sa kompyuter. Mas espesipiko, kinahanglan nimong masabtan ang mga episyente nga algorithm ug istruktura sa datos. Ikaduha, tungod kay ang mga inhenyero sa datos nagtrabaho uban ang datos, kinahanglan nga masabtan ang mga prinsipyo sa mga database ug ang mga istruktura nga nagpailalom niini.

Pananglitan, ang naandan nga B-tree SQL database gibase sa B-Tree data structure, ingon man, sa modernong gipang-apod-apod nga mga repository, LSM-Tree ug uban pang mga kausaban sa hash tables.

*Kini nga mga lakang gibase sa usa ka maayo nga artikulo Adilya Khashtamova. Busa, kung nahibal-an nimo ang Ruso, suportahi kini nga tagsulat ug basaha iyang post.

1. Algorithm ug mga istruktura sa datos

Ang paggamit sa husto nga istruktura sa datos mahimong makapauswag sa paghimo sa usa ka algorithm. Sa tinuud, kinahanglan kitang tanan makakat-on bahin sa mga istruktura sa datos ug mga algorithm sa atong mga eskuylahan, apan panagsa ra kini nga nasakup. Sa bisan unsa nga kaso, dili pa ulahi ang tanan aron masinati.
Mao nga ania ang akong paborito nga libre nga mga kurso alang sa pagkat-on sa mga istruktura ug algorithm sa datos:

Dugang pa ayaw kalimti ang bahin sa klasiko nga trabaho ni Thomas Corman sa mga algorithm - Pasiuna sa Algorithm. Kini ang hingpit nga pakisayran kung kinahanglan nimo nga i-refresh ang imong panumduman.

  • Aron mapauswag ang imong kahanas, gamita Leetcode.

Mahimo ka usab nga mosalom sa kalibutan sa mga database nga adunay mga katingalahang video gikan sa Carnegie Mellon University sa Youtube:

2. Pagkat-on sa SQL

Ang among tibuok kinabuhi kay data. Ug aron makuha kini nga datos gikan sa database, kinahanglan nimo nga "mosulti" sa parehas nga lengguwahe niini.

Ang SQL (Structured Query Language) mao ang lengguwahe sa komunikasyon sa dominyo sa datos. Bisan unsa pa ang gisulti ni bisan kinsa, ang SQL nabuhi, buhi, ug mabuhi sa taas nga panahon.

Kung dugay ka nga nag-uswag, tingali nakamatikod ka nga ang mga hungihong bahin sa nagkaduol nga pagkamatay sa SQL pop up matag karon ug unya. Ang pinulongan naugmad sa sayong bahin sa 70s ug popular gihapon kaayo sa mga analista, developer ug yanong mga mahiligon.
Kung wala’y kahibalo sa SQL wala’y mahimo sa engineering sa datos tungod kay dili ka malikayan nga maghimo mga pangutana aron makuha ang datos. Ang tanan nga modernong dagkong data bodega nagsuporta sa SQL:

  • Amazon RedShift
  • HP Vertica
  • pulong sa Dios
  • SQL Server

... ug uban pa.

Aron pag-analisar sa usa ka dako nga layer sa datos nga gitipigan sa mga sistema nga gipang-apod-apod sama sa HDFS, ang mga makina sa SQL giimbento: Apache Hive, Impala, ug uban pa. Tan-awa, dili kini moadto bisan asa.

Unsaon pagkat-on sa SQL? Buhata lang kini sa praktis.

Aron mahimo kini, girekomenda ko ang pagsusi sa usa ka maayo kaayo nga panudlo, nga, sa tinuud, libre, gikan sa Mode Analytics.

  1. Intermediate nga SQL
  2. Pag-apil sa Data sa SQL

Ang nakapahimo niining mga kurso nga espesyal mao nga sila adunay usa ka interactive nga palibot diin ikaw makasulat ug makadagan sa mga pangutana sa SQL diha mismo sa imong browser. Kapanguhaan Modernong SQL dili mahimong sobra. Ug mahimo nimong magamit kini nga kahibalo Mga buluhaton sa Leetcode sa seksyon sa Mga Database.

3. Pagprograma sa Python ug Java/Scala

Ngano nga kinahanglan nimo mahibal-an ang Python programming language, gisulat ko na sa artikulo Python vs R. Pagpili sa Labing Maayo nga Himan alang sa AI, ML ug Data Science. Kung bahin sa Java ug Scala, kadaghanan sa mga himan alang sa pagtipig ug pagproseso sa daghang mga datos gisulat sa kini nga mga lengguwahe. Pananglitan:

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

Aron masabtan kung giunsa kini nga mga himan molihok, kinahanglan nimo mahibal-an ang mga sinultian diin kini gisulat. Gitugotan ka sa functional nga pamaagi sa Scala nga epektibo nga masulbad ang parehas nga mga problema sa pagproseso sa datos. Ang Python, sa walay palad, dili makapanghambog sa katulin ug parallel nga pagproseso. Sa kinatibuk-an, ang kahibalo sa daghang mga sinultian ug mga paradigma sa programming maayo alang sa gilapdon sa mga pamaagi sa pagsulbad sa mga problema.

Aron mosalom sa pinulongang Scala, makabasa ka Pagprograma sa Scala gikan sa tagsulat sa pinulongan. Gipatik usab sa Twitter ang usa ka maayong pasiuna nga giya - Scala School.

Sama sa Python, nagtuo ko Maayo nga Python labing maayo nga libro sa tungatunga nga lebel.

4. Mga himan alang sa pagtrabaho uban sa dako nga data

Ania ang usa ka lista sa labing inila nga mga himan sa kalibutan sa dagkong datos:

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

Makapangita ka ug dugang nga impormasyon bahin sa pagtukod ug dagkong mga bloke sa datos niining talagsaon interactive nga palibot. Ang labing popular nga mga himan mao ang Spark ug Kafka. Talagsaon sila nga tun-an, maayo nga masabtan kung giunsa nila pagtrabaho gikan sa sulod. Si Jay Kreps (co-author sa Kafka) nagpatik sa usa ka monumental nga buhat sa 2013 Ang Log: Unsa ang Kinahanglan Mahibal-an sa Matag Software Developer Bahin sa Real-Time Data Aggregation AbstractionPinaagi sa dalan, ang mga nag-unang ideya gikan niini nga Talmud gigamit sa paghimo sa Apache Kafka.

5. Mga plataporma sa panganod

Kinsa ang mga inhenyero sa datos, ug giunsa ka mahimong usa?

Ang kahibalo sa labing menos usa ka cloud platform naa sa lista sa mga batakang kinahanglanon alang sa mga aplikante alang sa posisyon sa data engineer. Gipalabi sa mga employer ang Amazon Web Services, nga ang cloud platform sa Google sa ikaduhang dapit ug ang Microsoft Azure nga naglibot sa top three.

Kinahanglan adunay ka maayong kahibalo sa Amazon EC2, AWS Lambda, Amazon S3, DynamoDB.

6. Gipanagtag nga mga sistema

Ang pagtrabaho uban ang dagkong datos nagpasabot sa presensya sa mga pungpong sa mga kompyuter nga independente nga nag-operate, ang komunikasyon tali niini gihimo sa usa ka network. Kon mas dako ang cluster, mas dako ang posibilidad nga mapakyas ang mga member node niini. Aron mahimong usa ka maayo nga data scientist, kinahanglan nimo nga masabtan ang mga problema ug adunay mga solusyon alang sa gipang-apod-apod nga mga sistema. Kini nga dapit kay karaan ug komplikado.

Si Andrew Tanenbaum gikonsiderar nga usa ka payunir sa kini nga natad. Alang niadtong dili mahadlok sa teorya, girekomendar nako ang iyang libro "Gibahin nga mga Sistema", kini ingon og makahahadlok alang sa mga nagsugod, apan kini makatabang gayud kanimo sa paghashas sa imong mga kahanas.

Sa akong hunahuna Pagdesinyo sa Data-Intensive nga mga Aplikasyon ni Martin Kleppmann labing maayo nga pasiuna nga libro. By the way, nindot kaayo si Martin blog. Ang iyang trabaho makatabang sa pag-systematize sa kahibalo bahin sa pagtukod og modernong imprastraktura alang sa pagtipig ug pagproseso sa dagkong datos.
Sa mga ganahan motan-aw ug videos, naay course sa Youtube Giapod-apod nga mga sistema sa kompyuter.

7. Data pipelines

Kinsa ang mga inhenyero sa datos, ug giunsa ka mahimong usa?

Ang mga pipeline sa data usa ka butang nga dili nimo mabuhi kung wala ingon usa ka inhenyero sa datos.

Kasagaran, ang usa ka inhenyero sa datos nagtukod usa ka gitawag nga pipeline sa datos, nga mao, naghimo siya usa ka proseso alang sa paghatud sa datos gikan sa usa ka lugar ngadto sa lain. Mahimo kini nga mga kostumbre nga script nga moadto sa usa ka eksternal nga serbisyo sa API o maghimo usa ka pangutana sa SQL, pagdugang sa datos, ug ibutang kini sa usa ka sentralisado nga tindahan (data bodega) o usa ka wala’y istruktura nga tindahan sa datos (data lakes).

Sa pag-summarize: ang batakang checklist alang sa usa ka data engineer

Kinsa ang mga inhenyero sa datos, ug giunsa ka mahimong usa?

Sa pag-summarize, gikinahanglan ang maayong pagsabot sa mosunod:

  • Sistema sa Impormasyon;
  • Pagpalambo sa software (Agile, DevOps, Design Techniques, SOA);
  • Gipanagtag nga mga sistema ug parallel programming;
  • Mga Sukaranan sa Database - Pagplano, Disenyo, Operasyon ug Pag-troubleshoot;
  • Disenyo sa mga eksperimento - Mga pagsulay sa A/B aron pamatud-an ang mga konsepto, mahibal-an ang pagkakasaligan, pasundayag sa sistema, ug paghimo og kasaligan nga mga agianan aron mahatagan dayon ang maayong mga solusyon.

Pipila lang kini sa mga kinahanglanon aron mahimong usa ka inhenyero sa datos, busa tun-i ug sabton ang mga sistema sa datos, sistema sa impormasyon, padayon nga paghatud/pag-deploy/integrasyon, programming language, ug uban pang mga topiko sa computer science (dili tanang subject areas).

Ug sa katapusan, ang katapusan apan importante kaayo nga butang nga gusto nakong isulti.

Ang dalan sa pagkahimong Data Engineering dili ingon ka yano sama sa daw kini. Siya dili mopasaylo, siya mapakyas, ug kamo kinahanglan nga andam alang niini. Ang pipila ka mga gutlo niini nga panaw mahimong magtukmod kanimo sa paghunong. Apan kini tinuod nga trabaho ug usa ka proseso sa pagkat-on.

Ayaw lang ug sugarcoat gikan sa sinugdanan. Ang tibuuk nga punto sa pagbiyahe mao ang pagkat-on kutob sa mahimo ug pag-andam alang sa bag-ong mga hagit.
Ania ang usa ka maayo nga litrato nga akong nakit-an nga naghulagway niini nga punto nga maayo:

Kinsa ang mga inhenyero sa datos, ug giunsa ka mahimong usa?

Ug oo, hinumdomi nga likayan ang burnout ug pagpahulay. Kini usab hinungdanon kaayo. Good luck!

Unsa ang imong hunahuna sa artikulo, mga higala? Gidapit ka namo sa libre nga webinar, nga mahitabo karong 20.00. Atol sa webinar, atong hisgutan kung unsaon pagtukod ang usa ka epektibo ug scalable nga sistema sa pagproseso sa datos alang sa usa ka gamay nga kompanya o pagsugod sa gamay nga gasto. Ingon usa ka praktis, masinati namon ang mga himan sa pagproseso sa datos sa Google Cloud. Magkita ta!

Source: www.habr.com

Idugang sa usa ka comment