Dako ug gamay nga data tester: uso, teorya, akong istorya

Kumusta sa tanan, ang akong ngalan mao si Alexander, ug ako usa ka inhenyero sa Kalidad sa Data nga nagsusi sa datos alang sa kalidad niini. Kini nga artikulo maghisgot bahin sa kung giunsa nako kini nahimo ug ngano nga sa 2020 kini nga lugar sa pagsulay naa sa tumoy sa usa ka balud.

Dako ug gamay nga data tester: uso, teorya, akong istorya

Global nga uso

Ang kalibutan karon nakasinati og laing teknolohikal nga rebolusyon, usa ka aspeto niini mao ang paggamit sa natipon nga datos sa tanang matang sa mga kompaniya aron sa pagpasiugda sa ilang kaugalingong flywheel sa halin, kita ug PR. Morag ang presensya sa maayo (kalidad) nga datos, ingon man ang mga hanas nga utok nga makakwarta gikan niini (sa husto nga pagproseso, paghanduraw, paghimo og mga modelo sa pagkat-on sa makina, ug uban pa), nahimong yawe sa kalampusan sa kadaghanan karon. Kung 15-20 ka tuig na ang milabay dako nga mga kompanya ang nag-una nga nalambigit sa intensive trabaho uban sa data accumulation ug monetization, karon kini mao ang daghan sa halos tanan nga mga tawo nga walay pulos.

Niining bahina, pipila ka tuig na ang milabay, ang tanan nga mga portal nga gipahinungod sa pagpangita sa trabaho sa tibuuk kalibutan nagsugod nga napuno sa mga bakante alang sa mga Data Scientist, tungod kay ang tanan nakasiguro nga, nga nagsuhol sa ingon nga espesyalista, posible nga magtukod usa ka supermodel sa pagkat-on sa makina. , pagtagna sa umaabot ug paghimo og "quantum leap" alang sa kompanya. Sa paglabay sa panahon, ang mga tawo nakaamgo nga kini nga pamaagi hapit dili gayud molihok bisan asa, tungod kay dili tanan nga mga datos nga nahulog sa mga kamot sa maong mga espesyalista angay alang sa mga modelo sa pagbansay.

Ug ang mga hangyo gikan sa mga Data Scientist nagsugod: "Magpalit kita og dugang nga datos gikan niini ug niadtong ...", "Wala kami igo nga datos ...", "Nagkinahanglan kami og dugang nga datos, mas maayo nga usa ka taas nga kalidad..." . Pinasukad sa kini nga mga hangyo, daghang mga interaksyon ang nagsugod sa pagtukod tali sa mga kompanya nga adunay usa o lain nga hugpong sa datos. Siyempre, gikinahanglan niini ang teknikal nga organisasyon niini nga proseso - pagkonektar sa tinubdan sa datos, pag-download niini, pagsusi nga kini puno sa load, ug uban pa. mga espesyalista - Mga inhenyero sa Kalidad sa Data - kadtong mag-monitor sa dagan sa datos sa sistema (mga pipeline sa datos), ang kalidad sa datos sa input ug output, ug paghimog mga konklusyon mahitungod sa ilang pagkaigo, integridad ug uban pang mga kinaiya.

Ang uso alang sa mga inhenyero sa Kalidad sa Data mianhi kanamo gikan sa USA, diin, taliwala sa kusog nga panahon sa kapitalismo, walay usa nga andam nga mapildi sa gubat alang sa datos. Sa ubos naghatag ako og mga screenshot gikan sa duha sa labing inila nga mga site sa pagpangita og trabaho sa US: www.monster.com ΠΈ www.dice.com β€” nga nagpakita sa datos sa Marso 17, 2020 sa gidaghanon sa mga posted nga bakante nga nadawat gamit ang mga keyword: Data Quality ug Data Scientist.

www.monster.com

Data Scientists - 21416 nga mga bakante
Kalidad sa Data - 41104 nga mga bakante

Dako ug gamay nga data tester: uso, teorya, akong istorya
Dako ug gamay nga data tester: uso, teorya, akong istorya

www.dice.com

Data Scientists - 404 nga mga bakante
Kalidad sa Data - 2020 nga mga bakante

Dako ug gamay nga data tester: uso, teorya, akong istorya
Dako ug gamay nga data tester: uso, teorya, akong istorya

Dayag nga kini nga mga propesyon dili gyud makigkompetensya sa usag usa. Uban sa mga screenshot, gusto lang nako nga iilustrar ang karon nga kahimtang sa merkado sa pamuo sa mga termino sa mga hangyo alang sa mga inhenyero sa Kalidad sa Data, nga labi pa ang gikinahanglan karon kaysa sa mga Data Scientist.

Kaniadtong Hunyo 2019, ang EPAM, nga nagtubag sa mga panginahanglanon sa modernong merkado sa IT, nagbulag sa Kalidad sa Data sa usa ka lahi nga praktis. Ang mga inhenyero sa Kalidad sa Data, sa dagan sa ilang adlaw-adlaw nga trabaho, nagdumala sa datos, susihon ang pamatasan niini sa bag-ong mga kondisyon ug sistema, pag-monitor sa kalabotan sa datos, igo ug kalabotan niini. Sa tanan niini, sa praktikal nga diwa, ang mga inhenyero sa Kalidad sa Data naggugol gyud ug gamay nga oras sa pagsulay sa klasikal nga pagpaandar, APAN kini nagdepende pag-ayo sa proyekto (maghatag ako usa ka pananglitan sa ubos).

Ang mga responsibilidad sa usa ka inhenyero sa Kalidad sa Data dili limitado lamang sa naandan nga manual/awtomatikong pagsusi alang sa "nulls, counts ug sums" sa mga lamesa sa database, apan nanginahanglan usa ka lawom nga pagsabut sa mga panginahanglanon sa negosyo sa kustomer ug, sa ingon, ang abilidad sa pagbag-o sa magamit nga datos ngadto sa mapuslanon nga impormasyon sa negosyo.

Teorya sa Kalidad sa Data

Dako ug gamay nga data tester: uso, teorya, akong istorya

Aron mas hingpit nga mahanduraw ang papel sa ingon nga inhenyero, atong mahibal-an kung unsa ang Data Quality sa teorya.

Kalidad sa Data β€” usa sa mga yugto sa Pagdumala sa Data (usa ka tibuuk kalibutan nga among ibilin aron ikaw magtuon sa imong kaugalingon) ug responsable sa pag-analisar sa datos sumala sa mga musunud nga pamatasan:

Dako ug gamay nga data tester: uso, teorya, akong istorya
Sa akong hunahuna dili kinahanglan nga i-decipher ang matag usa sa mga punto (sa teorya gitawag sila nga "mga sukod sa datos"), kini maayo nga gihulagway sa litrato. Apan ang proseso sa pagsulay mismo wala magpasabut nga estrikto nga pagkopya niini nga mga bahin sa mga kaso sa pagsulay ug pagsusi niini. Sa Data Quality, sama sa bisan unsang ubang matang sa pagsulay, gikinahanglan, una sa tanan, ang pagtukod sa mga kinahanglanon sa kalidad sa datos nga giuyonan sa mga partisipante sa proyekto nga naghimo sa mga desisyon sa negosyo.

Depende sa proyekto sa Data Quality, ang usa ka inhenyero makahimo sa lain-laing mga gimbuhaton: gikan sa usa ka ordinaryo nga automation tester nga adunay usa ka taphaw nga pagsusi sa kalidad sa datos, ngadto sa usa ka tawo nga nagpahigayon og lawom nga profiling sa datos sumala sa mga criteria sa ibabaw.

Ang usa ka detalyado kaayo nga paghulagway sa Data Management, Data Quality ug may kalabutan nga mga proseso maayo nga gihulagway sa libro nga gitawag "DAMA-DMBOK: Data Management Body of Knowledge: 2nd Edition". Girekomenda ko kini nga libro ingon usa ka pasiuna sa kini nga hilisgutan (makita nimo ang usa ka link niini sa katapusan sa artikulo).

Akong istorya

Sa industriya sa IT, nagtrabaho ko gikan sa usa ka Junior tester sa mga kompanya sa produkto ngadto sa usa ka Lead Data Quality Engineer sa EPAM. Human sa mga duha ka tuig nga pagtrabaho isip usa ka tester, ako adunay lig-on nga kombiksyon nga ako nakahimo sa hingpit nga tanan nga matang sa pagsulay: regression, functional, stress, kalig-on, seguridad, UI, ug uban pa - ug misulay sa usa ka dako nga gidaghanon sa mga himan sa pagsulay, nga adunay nagtrabaho sa samang higayon sa tulo ka mga programming language: Java, Scala, Python.

Sa paghinumdom, nasabtan nako kung nganong lainlain ang akong set sa kahanasβ€”naapil ko sa mga proyekto nga gipatuyok sa datos, dako ug gamay. Kini ang nagdala kanako sa usa ka kalibutan sa daghang mga himan ug mga oportunidad alang sa pagtubo.

Aron maapresyar ang lain-laing mga himan ug mga oportunidad alang sa pag-angkon og bag-ong kahibalo ug kahanas, tan-awa lang ang hulagway sa ubos, nga nagpakita sa pinakasikat sa kalibutan nga "Data & AI".

Dako ug gamay nga data tester: uso, teorya, akong istorya
Kini nga matang sa ilustrasyon gihugpong kada tuig sa usa sa mga bantog nga venture capitalist nga si Matt Turck, nga gikan sa software development. Dinhi link sa iyang blog ug venture capital nga kompanya, diin siya nagtrabaho isip kauban.

Nagtubo ako nga propesyonal labi na kadali sa dihang ako ra ang tigsulay sa proyekto, o labing menos sa pagsugod sa proyekto. Sa ingon nga higayon nga kinahanglan ka nga responsable sa tibuuk nga proseso sa pagsulay, ug wala ka’y higayon nga moatras, sa unahan lang. Sa sinugdan makahadlok, apan karon ang tanan nga mga bentaha sa ingon nga pagsulay klaro alang kanako:

  • Nagsugod ka sa pagpakigsulti sa tibuuk nga grupo nga wala pa kaniadto, tungod kay wala’y proxy alang sa komunikasyon: bisan ang manedyer sa pagsulay o kauban nga mga tigsulay.
  • Ang pagpaunlod sa proyekto nahimong hilabihan ka lawom, ug ikaw adunay impormasyon mahitungod sa tanang mga sangkap, sa kinatibuk-an ug sa detalye.
  • Ang mga nag-develop wala magtan-aw kanimo nga "kanang tawo gikan sa pagsulay nga wala mahibal-an kung unsa ang iyang gibuhat," apan usa ka managsama nga nagpatunghag dili katuohan nga mga benepisyo alang sa team sa iyang awtomatiko nga mga pagsulay ug pagpaabut sa mga bug nga makita sa usa ka piho nga sangkap sa produkto.
  • Isip resulta, mas epektibo ka, mas kwalipikado, ug mas in demand.

Samtang nagdako ang proyekto, sa 100% sa mga kaso nahimo akong magtutudlo alang sa mga bag-ong tester, gitudloan sila ug gipasa ang kahibalo nga akong nakat-unan sa akong kaugalingon. Sa parehas nga oras, depende sa proyekto, wala ako kanunay makadawat sa labing kataas nga lebel sa mga espesyalista sa pagsulay sa awto gikan sa pagdumala ug adunay panginahanglan nga bansayon ​​sila sa automation (alang sa mga interesado) o maghimo mga himan aron magamit sa adlaw-adlaw nga mga kalihokan (mga himan. alang sa pagmugna og datos ug pagkarga niini ngadto sa sistema , usa ka himan alang sa pagpahigayon sa load testing/stability testing "dali", ug uban pa).

Pananglitan sa usa ka piho nga proyekto

Ikasubo, tungod sa dili pagbutyag nga mga obligasyon, dili ako makasulti sa detalye bahin sa mga proyekto nga akong gitrabahoan, apan maghatag ako mga pananglitan sa kasagaran nga mga buluhaton sa usa ka Data Quality Engineer sa usa sa mga proyekto.

Ang esensya sa proyekto mao ang pagpatuman sa usa ka plataporma alang sa pag-andam sa datos alang sa pagbansay sa mga modelo sa pagkat-on sa makina base niini. Ang kustomer usa ka dako nga kompanya sa parmasyutiko gikan sa USA. Sa teknikal, kini usa ka cluster Kubernetes, misaka sa AWS EC2 mga higayon, nga adunay daghang mga microservice ug ang nagpahiping Open Source nga proyekto sa EPAM - lehiyon, gipahiangay sa mga panginahanglan sa usa ka piho nga kustomer (karon ang proyekto natawo pag-usab sa odahu). Ang mga proseso sa ETL giorganisar gamit apache airflow ug mibalhin data gikan sa Pagbaligya mga sistema sa kustomer sa AWS S3 Mga balde. Sunod, usa ka imahe sa Docker sa usa ka modelo sa pagkat-on sa makina ang gipakaylap sa plataporma, nga gibansay sa presko nga datos ug, gamit ang interface sa REST API, nagpatunghag mga panagna nga interesado sa negosyo ug nakasulbad sa mga piho nga problema.

Sa biswal, ang tanan ingon niini:

Dako ug gamay nga data tester: uso, teorya, akong istorya
Adunay daghan nga functional testing niini nga proyekto, ug tungod sa katulin sa feature development ug sa panginahanglan sa pagpadayon sa dagan sa release cycle (duha ka semana nga sprints), gikinahanglan nga hunahunaon dayon ang mahitungod sa pag-automate sa pagsulay sa labing kritikal nga mga bahin sa ang sistema. Kadaghanan sa plataporma nga nakabase sa Kubernetes mismo nasakup sa mga autotest nga gipatuman sa Robot Framework + Python, apan kinahanglan usab nga suportahan ug mapalapad kini. Dugang pa, alang sa kasayon ​​​​sa kustomer, usa ka GUI ang gihimo aron pagdumala sa mga modelo sa pagkat-on sa makina nga gipakatap sa cluster, ingon man ang abilidad sa pagtino kung asa ug asa kinahanglan ibalhin ang datos alang sa pagbansay sa mga modelo. Kining halapad nga pagdugang nagkinahanglan ug pagpalapad sa automated functional testing, nga kasagaran gihimo pinaagi sa REST API nga mga tawag ug gamay nga gidaghanon sa end-2-end UI nga mga pagsulay. Sa palibot sa ekwador sa tanan niini nga kalihukan, kami giubanan sa usa ka manual tester nga naghimo sa usa ka maayo kaayo nga trabaho sa pagdawat pagsulay sa mga bersyon sa produkto ug pagpakigsulti sa kustomer bahin sa pagdawat sa sunod nga pagpagawas. Dugang pa, tungod sa pag-abot sa usa ka bag-ong espesyalista, nakahimo kami sa pagdokumento sa among trabaho ug nakadugang sa daghang importante kaayo nga mga pagsusi sa manwal nga lisud i-automate dayon.

Ug sa katapusan, pagkahuman namong makab-ot ang kalig-on gikan sa plataporma ug ang GUI add-on sa ibabaw niini, nagsugod kami sa pagtukod sa mga ETL pipeline gamit ang Apache Airflow DAGs. Ang awtomatikong pagsusi sa kalidad sa datos gihimo pinaagi sa pagsulat sa mga espesyal nga Airflow DAG nga nagsusi sa datos base sa mga resulta sa proseso sa ETL. Isip kabahin niini nga proyekto, swerte kami ug gihatagan kami sa kustomer og access sa wala mailhi nga mga set sa datos nga among gisulayan. Gisusi namon ang linya sa datos sa linya alang sa pagsunod sa mga tipo, ang presensya sa nabuak nga datos, ang kinatibuk-ang gidaghanon sa mga rekord sa wala pa ug pagkahuman, pagtandi sa mga pagbag-o nga gihimo sa proseso sa ETL alang sa pagtipon, pagbag-o sa mga ngalan sa kolum, ug uban pang mga butang. Dugang pa, kini nga mga tseke gi-scale sa lainlaing mga gigikanan sa datos, pananglitan, dugang sa SalesForce, usab sa MySQL.

Ang katapusan nga mga pagsusi sa kalidad sa datos gihimo na sa lebel sa S3, diin kini gitipigan ug andam nga gamiton alang sa pagbansay sa mga modelo sa pagkat-on sa makina. Aron makuha ang datos gikan sa katapusang CSV file nga nahimutang sa S3 Bucket ug ma-validate kini, ang code gisulat gamit mga kliyente sa boto3.

Adunay usab usa ka kinahanglanon gikan sa kustomer nga tipigan ang bahin sa datos sa usa ka S3 Bucket ug bahin sa lain. Nagkinahanglan usab kini og pagsulat og dugang nga mga tseke aron masusi ang pagkakasaligan sa maong paghan-ay.

Kinatibuk-ang kasinatian gikan sa ubang mga proyekto

Usa ka pananglitan sa pinakakinatibuk-ang listahan sa mga kalihokan sa usa ka Data Quality engineer:

  • Pag-andam sa datos sa pagsulay (balido nga dili balido nga dako nga gamay) pinaagi sa usa ka automated nga himan.
  • I-upload ang giandam nga set sa datos ngadto sa orihinal nga tinubdan ug susiha nga andam na kini gamiton.
  • Ilunsad ang mga proseso sa ETL alang sa pagproseso sa usa ka set sa datos gikan sa source storage ngadto sa final o intermediate storage gamit ang usa ka set sa mga setting (kung mahimo, itakda ang ma-configure nga mga parameter para sa buluhaton sa ETL).
  • I-verify ang datos nga giproseso sa proseso sa ETL alang sa kalidad niini ug pagsunod sa mga kinahanglanon sa negosyo.

Sa parehas nga oras, ang panguna nga pokus sa mga pagsusi kinahanglan dili lamang sa kamatuoran nga ang daloy sa datos sa sistema, sa prinsipyo, nagtrabaho ug nakab-ot ang pagkompleto (nga bahin sa functional testing), apan kasagaran sa pagsusi ug pag-validate sa datos alang sa pagsunod sa gipaabot nga mga kinahanglanon, pag-ila sa mga anomaliya ug uban pang mga butang.

Mga himan

Usa sa mga teknik alang sa ingon nga pagkontrol sa datos mahimong ang organisasyon sa mga pagsusi sa kadena sa matag yugto sa pagproseso sa datos, ang gitawag nga "data chain" sa literatura - pagkontrol sa datos gikan sa gigikanan hangtod sa punto sa katapusan nga paggamit. Kini nga mga matang sa mga tseke kasagarang gipatuman pinaagi sa pagsulat sa pagsusi sa mga pangutana sa SQL. Klaro nga ang ingon nga mga pangutana kinahanglan nga gaan kutob sa mahimo ug susihon ang indibidwal nga mga piraso sa kalidad sa datos (metadata sa mga lamesa, blangko nga linya, NULL, Mga sayup sa syntax - uban pang mga kinaiya nga gikinahanglan alang sa pagsusi).

Sa kaso sa regression testing, nga naggamit ug ready-made (dili mausab, gamay nga mausab) data sets, ang autotest code mahimong mag-store ug ready-made templates alang sa pagsusi sa datos alang sa pagsunod sa kalidad (deskripsyon sa gipaabot nga table metadata; row sample objects nga mahimong gipili nga random sa panahon sa pagsulay, ug uban pa).

Usab, sa panahon sa pagsulay, kinahanglan nimong isulat ang mga proseso sa pagsulay sa ETL gamit ang mga balangkas sama sa Apache Airflow, Apache Spark o bisan usa ka black-box cloud type tool GCP Dataprep, GCP Dataflow Ug uban pa. Kini nga sirkumstansya nagpugos sa inhenyero sa pagsulay nga isubsob ang iyang kaugalingon sa mga prinsipyo sa operasyon sa mga himan sa ibabaw ug labi ka epektibo nga pareho nga nagpahigayon mga pagsulay sa pag-andar (pananglitan, adunay mga proseso sa ETL sa usa ka proyekto) ug gigamit kini aron masusi ang datos. Sa partikular, ang Apache Airflow adunay andam nga mga operator alang sa pagtrabaho sa mga sikat nga analytical database, pananglitan GCP BigQuery. Ang labing sukaranan nga pananglitan sa paggamit niini gilatid na dinhi, para dili na nako balikon ang akong kaugalingon.

Gawas sa mga andam nga solusyon, walay usa nga nagdili kanimo sa pagpatuman sa imong kaugalingon nga mga teknik ug mga himan. Dili lamang kini mapuslanon alang sa proyekto, apan alang usab sa Data Quality Engineer mismo, nga sa ingon mapauswag ang iyang mga teknikal nga kapunawpunawan ug kahanas sa coding.

Giunsa kini molihok sa usa ka tinuud nga proyekto

Usa ka maayong ilustrasyon sa katapusang mga parapo bahin sa "data chain", ETL ug ubiquitous nga mga pagsusi mao ang mosunud nga proseso gikan sa usa sa mga tinuud nga proyekto:

Dako ug gamay nga data tester: uso, teorya, akong istorya

Dinhi, ang lainlaing mga datos (natural, giandam namo) mosulod sa input nga "funnel" sa among sistema: balido, dili balido, gisagol, ug uban pa, unya kini gisala ug natapos sa usa ka intermediate nga pagtipig, unya sila usab moagi sa usa ka serye sa mga pagbag-o. ug gibutang sa katapusan nga pagtipig , diin, sa baylo, pag-analisa, pagtukod sa mga data mart ug pagpangita alang sa mga panan-aw sa negosyo himuon. Sa ingon nga sistema, nga wala’y praktikal nga pagsusi sa operasyon sa mga proseso sa ETL, gipunting namon ang kalidad sa datos sa wala pa ug pagkahuman sa mga pagbag-o, ingon man sa output sa analytics.

Sa pag-summarize sa ibabaw, bisan unsa pa ang mga lugar diin ako nagtrabaho, bisan diin ako naapil sa mga proyekto sa Data nga nag-ambit sa mga musunud nga bahin:

  • Pinaagi lamang sa automation mahimo nimong sulayan ang pipila ka mga kaso ug makab-ot ang siklo sa pagpagawas nga madawat sa negosyo.
  • Ang usa ka tester sa ingon nga proyekto mao ang usa sa labing respetado nga mga miyembro sa team, tungod kay kini nagdala og daghang mga benepisyo sa matag usa sa mga partisipante (pagpadali sa pagsulay, maayong datos gikan sa Data Scientist, pag-ila sa mga depekto sa unang mga yugto).
  • Dili igsapayan kung nagtrabaho ka sa imong kaugalingon nga hardware o sa mga panganod - ang tanan nga mga kapanguhaan gi-abstract sa usa ka cluster sama sa Hortonworks, Cloudera, Mesos, Kubernetes, ug uban pa.
  • Ang mga proyekto gitukod sa usa ka pamaagi sa microservice, gipang-apod-apod ug parallel computing ang nangibabaw.

Gusto nakong timan-an nga kung maghimo pagsulay sa natad sa Data Quality, ang usa ka espesyalista sa pagsulay nagbalhin sa iyang propesyonal nga pokus sa code sa produkto ug ang mga himan nga gigamit.

Mga lahi nga bahin sa pagsulay sa Kalidad sa Data

Dugang pa, alang sa akong kaugalingon, nahibal-an nako ang mga musunud (Maghimo dayon ako usa ka reserbasyon nga sila VERY generalized ug eksklusibo nga suhetibo) lahi nga mga bahin sa pagsulay sa mga proyekto sa Data (Big Data) (mga sistema) ug uban pang mga lugar:

Dako ug gamay nga data tester: uso, teorya, akong istorya

Mapuslanon nga mga link

  1. Teorya: DAMA-DMBOK: Data Management Body of Knowledge: 2nd Edition.
  2. Sentro sa pagbansay EPAM 
  3. Girekomenda nga mga materyales alang sa usa ka nagsugod nga Data Quality engineer:
    1. Libre nga kurso sa Stepik: Pasiuna sa mga database
    2. Kurso sa Pagkat-on sa LinkedIn: Mga Pundasyon sa Data Science: Data Engineering.
    3. Mga Artikulo:
    4. Video:

konklusyon

Kalidad sa Data usa ka batan-on kaayo nga nagsaad nga direksyon, nga mahimong usa ka bahin nga nagpasabut nga mahimong bahin sa usa ka pagsugod. Kung naa na sa Kalidad sa Data, maunlod ka sa daghang mga moderno, in-demand nga mga teknolohiya, apan ang labing hinungdanon, daghang mga oportunidad ang magbukas alang kanimo sa paghimo ug pagpatuman sa imong mga ideya. Mahimo nimong gamiton ang padayon nga pagpauswag nga pamaagi dili lamang sa proyekto, kondili alang usab sa imong kaugalingon, nga padayon nga nag-uswag isip usa ka espesyalista.

Source: www.habr.com

Idugang sa usa ka comment