Kuidas Whale'iga andmeid kiiresti ja lihtsalt otsida

Kuidas Whale'iga andmeid kiiresti ja lihtsalt otsida
See artikkel räägib kõige lihtsamast ja kiireimast andmetuvastustööriistast, mille tööd näete KDPV-s. Huvitav on see, et vaal on loodud majutamiseks kaugserveris. Detailid lõike all.

Kuidas Airbnb andmete avastamise tööriist mu elu muutis

Oma karjääri jooksul on mul olnud õnn töötada mõne lõbusa probleemiga: õppisin MIT-is kraadiõppe ajal voolumatemaatikat, töötasin inkrementaalsete mudelite kallal ja avatud lähtekoodiga projektiga. pülift Wayfairis ning rakendas Airbnb-s uusi kodulehe sihtimismudeleid ja CUPED-i täiustusi. Kuid kogu see töö ei olnud kunagi glamuurne – tegelikult kulutasin sageli suurema osa ajast andmete otsimisele, uurimisele ja kinnitamisele. Kuigi see oli pidev tööseisund, ei tulnud mulle pähe, et see probleem oli enne, kui jõudsin Airbnb-sse, kus see lahendati andmete tuvastamise tööriistaga – andmeportaal.

Kust ma leian {{data}}? andmeportaal.
Mida see veerg tähendab? andmeportaal.
Kuidas {{metric}}-l täna läheb? andmeportaal.
Mis on elutunnetus? IN andmeportaal, ilmselt.

Olgu, olete pildi esitanud. Andmete leidmine ja arusaamine, mida need tähendavad, kuidas need loodi ja kuidas seda kõike kasutada, võtab vaid mõne minuti, mitte tunni. Ma võiksin kulutada aega lihtsate järelduste või uute algoritmide tegemisele (… või andmete kohta juhuslikele küsimustele vastamisele), selle asemel, et süveneda märkmetes, kirjutada korduvaid SQL-päringuid ja mainida kolleege Slackis, et proovida konteksti uuesti luua. et keegi teine ​​juba oli.

Mis on probleemiks?

Sain aru, et enamikul mu sõpradest polnud sellisele tööriistale ligipääsu. Vähesed ettevõtted on valmis pühendama tohutuid ressursse sellise platvormitööriista nagu Dataportal ehitamisele ja hooldamisele. Ja kuigi on olemas mõned avatud lähtekoodiga lahendused, on need tavaliselt kavandatud skaleerimiseks, muutes ilma spetsiaalse DevOpsi insenerita seadistamise ja hooldamise keeruliseks. Seega otsustasin luua midagi uut.

Vaal: rumalalt lihtne andmete avastamise tööriist

Kuidas Whale'iga andmeid kiiresti ja lihtsalt otsida

Ja jah, rumalalt lihtsa all pean ma silmas rumalalt lihtsat. Vaal koosneb ainult kahest komponendist:

  1. Pythoni teek, mis kogub metaandmeid ja vormindab need MarkDownis.
  2. Rust käsurea liides nende andmete otsimiseks.

Hoolduse sisemise infrastruktuuri seisukohalt on ainult palju tekstifaile ja teksti värskendav programm. See on kõik, nii et Githubi-taolises serveris hostimine on tühine. Pole vaja õppida uut päringukeelt, haldusinfrastruktuuri ega varukoopiaid. Kõik teavad Gitit, seega on sünkroonimine ja koostöö tasuta. Vaatame funktsionaalsust lähemalt Vaal v1.0.

Täielik git-põhine GUI

Vaal on loodud kaugserveri ookeanis ujumiseks. Ta väga lihtne konfigureeritav: määrake mõned ühendused, kopeerige Githubi toimingute skript (või kirjutage see valitud CI/CD platvormile) ja teil on kohe andmete avastamise veebitööriist. Saate oma arvutustabeleid otse Githubis otsida, vaadata, dokumenteerida ja jagada.

Kuidas Whale'iga andmeid kiiresti ja lihtsalt otsida
Näide Github Actionsi abil loodud tünnitabelist. Täielikult töötav demo vt selles jaotises.

Välkkiire CLI-otsing teie hoidla jaoks

Vaal elab ja hingab käsureal, pakkudes võimsaid millisekundiseid otsinguid teie tabelites. Isegi miljonite tabelitega suutsime muuta vaala uskumatult tõhusaks, kasutades mõningaid nutikaid vahemällu salvestamise mehhanisme ja taastades Rusti taustaprogrammi. Te ei märka otsingu viivitust [tere Google DS].

Kuidas Whale'iga andmeid kiiresti ja lihtsalt otsida
Vaalademo, miljonilauaotsing.

Mõõdikute automaatne arvutamine [beetaversioonis]

Üks minu kui andmeteadlase kõige vähem lemmikutest asjadest on samade päringute käitamine ikka ja jälle, et kontrollida kasutatavate andmete kvaliteeti. Whale toetab võimalust defineerida lihtsas SQL-is mõõdikuid, mis plaanitakse käitada koos teie metaandmete puhastuskonveieritega. Määrake tünnitabelis YAML-i mõõdikute plokk ja Whale töötab automaatselt ajakava alusel ja mõõdikutesse pesastatud päringuid.

```metrics
metric-name:
  sql: |
    select count(*) from table
```

Kuidas Whale'iga andmeid kiiresti ja lihtsalt otsida
Koos Githubiga tähendab see lähenemine, et vaal võib olla lihtne keskne tõeallikas meetriliste määratluste jaoks. Vaal salvestab isegi väärtused koos ajatempliga jaotisesse "~/. vaal/mõõdikud", kui soovite teha diagramme või põhjalikumat uurimistööd.

Tulevik

Pärast vaala väljalaskeeelsete versioonide kasutajatega rääkimist mõistsime, et inimesed vajavad rohkem funktsioone. Miks tabeliotsingu tööriist? Miks mitte mõõdikute otsingutööriist? Miks mitte jälgida? Miks mitte SQL-päringu täitmistööriist? Kuigi vaal v1 loodi algselt lihtsa CLI kaastööriistana Dataportal/Amundsen, on see juba arenenud täisfunktsionaalseks eraldiseisvaks platvormiks ja loodame, et sellest saab Data Scientisti tööriistakomplekti lahutamatu osa.

Kui soovid arendusprotsessis midagi näha, liitu meiega Slacki kogukonnale, avage Probleemid aadressil Githubvõi isegi otse ühendust võtta LinkedIn. Meil on juba mitmeid lahedaid funktsioone – Jinja mallid, järjehoidjad, otsingufiltrid, Slacki märguanded, Jupyteri integratsioon, isegi CLI armatuurlaud mõõdikute jaoks –, kuid me ootaksime teie panust.

Järeldus

Whale'i arendab ja hooldab Dataframe, idufirma, mille mul oli hiljuti rõõm koos teiste inimestega asutada. Kui vaal on loodud andmeteadlastele, siis Dataframe on loodud andmeteadlastele. Neile, kes soovivad tihedamat koostööd teha, tehke seda julgelt aadresslisame teid ootenimekirja.

Kuidas Whale'iga andmeid kiiresti ja lihtsalt otsida
Ja sooduskoodi järgi HABR, saate bänneril märgitud allahindlusele lisaks 10%.

Rohkem kursusi

Esiletõstetud artiklid

Allikas: www.habr.com