Kiel serĉi datumojn rapide kaj facile kun Whale

Kiel serĉi datumojn rapide kaj facile kun Whale
Ĉi tiu artikolo parolas pri la plej simpla kaj rapida datuma malkovra ilo, kies laboron vi vidas sur KDPV. Interese, baleno estas desegnita por esti gastigita sur fora git-servilo. Detaloj sub la tranĉo.

Kiel la Datuma Malkovra Ilo de Airbnb Ŝanĝis Mian Vivon

En mia kariero, mi bonŝancis labori pri iuj amuzaj problemoj: mi studis fluon matematikon dum mia diplomo ĉe MIT, laboris pri pliigaj modeloj kaj kun malfermkoda projekto. pylift ĉe Wayfair, kaj efektivigis novajn hejmpaĝajn celmodelojn kaj CUPED-plibonigojn ĉe Airbnb. Sed ĉi tiu tuta laboro neniam estis ŝika—fakte, mi ofte pasigis la plej grandan parton de mia tempo serĉante, esplorante kaj validigante datumojn. Kvankam ĉi tio estis konstanta stato en la laboro, ne venis al mi en la kapon, ke ĉi tio estas problemo ĝis mi alvenis al Airbnb, kie ĝi estis solvita per ilo por malkovro de datumoj − datumportilo.

Kie mi povas trovi {{ datumojn }}? datumportilo.
Kion signifas ĉi tiu kolumno? datumportilo.
Kiel fartas {{metriko}} hodiaŭ? datumportilo.
Kio estas vivsento? EN datumportilo, probable.

Bone, vi prezentis la bildon. Trovi datumojn kaj kompreni kion ĝi signifas, kiel ĝi estis kreita kaj kiel uzi ĝin ĉio bezonas nur kelkajn minutojn, ne horojn. Mi povus pasigi mian tempon desegnante simplajn konkludojn, aŭ novajn algoritmojn, (... aŭ respondante hazardajn demandojn pri la datumoj), prefere ol trafosi notojn, verki ripetemajn SQL-demandojn kaj mencii kolegojn sur Slack por provi rekrei kuntekston. ke iu alia jam havis.

Kio estas la problemo?

Mi konstatis, ke la plej multaj el miaj amikoj ne havas aliron al tia ilo. Malmultaj kompanioj pretas dediĉi grandegajn rimedojn al konstruado kaj konservado de platforma ilo kiel Dataportal. Kaj kvankam ekzistas kelkaj malfermfontaj solvoj, ili tendencas esti dezajnitaj por skalaj, malfaciligante instali kaj konservi sen dediĉita DevOps-inĝeniero. Do mi decidis krei ion novan.

Baleno: stulte simpla datuma malkovra ilo

Kiel serĉi datumojn rapide kaj facile kun Whale

Kaj jes, per stulte simpla mi celas stulte simpla. La baleno havas nur du komponentojn:

  1. Python-biblioteko kiu kolektas metadatenojn kaj formatas ĝin en MarkDown.
  2. Rust komandlinia interfaco por serĉi ĉi tiujn datumojn.

El la vidpunkto de la interna infrastrukturo por prizorgado, ekzistas nur multaj tekstaj dosieroj kaj programo, kiu ĝisdatigas la tekston. Jen ĝi, do gastigado sur git-servilo kiel Github estas bagatela. Neniu nova konsultlingvo por lerni, neniu administradinfrastrukturo, neniuj sekurkopioj. Ĉiuj konas Git, do sinkronigado kaj kunlaboro estas senpagaj. Ni rigardu pli detale la funkciojn Baleno v1.0.

Plena elstara git-bazita GUI

Baleno estas desegnita por naĝi en la oceano de fora git-servilo. Li tre facila agordebla: difinu iujn konektojn, kopiu la skripton de Github Actions (aŭ skribu unu por via elektita CI/CD-platformo) kaj vi tuj havos retan ilon pri malkovro de datumoj. Vi povos serĉi, vidi, dokumenti kaj dividi viajn kalkultabelojn rekte sur Github.

Kiel serĉi datumojn rapide kaj facile kun Whale
Ekzemplo de stumtabelo generita per Github-Agoj. Plena labordemo vidu en ĉi tiu sekcio.

Fulme rapida CLI serĉu vian deponejon

Baleno vivas kaj spiras sur la komandlinio, provizante potencajn, milisekundajn serĉojn tra viaj tabloj. Eĉ kun milionoj da tabloj, ni sukcesis fari balenon nekredeble efika uzante kelkajn lertajn kaŝmemormekanismojn kaj ankaŭ rekonstruante la backend en Rust. Vi ne rimarkos iun serĉan prokraston [saluton Google DS].

Kiel serĉi datumojn rapide kaj facile kun Whale
Baleno-demo, miliona tablo serĉo.

Aŭtomata kalkulo de metrikoj [en beta]

Unu el miaj malplej ŝatataj aferoj kiel datuma sciencisto faras la samajn demandojn denove kaj denove nur por kontroli la kvaliton de la datumoj uzataj. Whale subtenas la kapablon difini metrikojn en simpla SQL, kiu estos planita por funkcii kune kun viaj metadatumaj purigaj duktoj. Difinu YAML-metrikan blokon ene de la stumbtabelo, kaj Whale aŭtomate funkcios laŭ horaro kaj funkcios demandojn nestitajn en metrikoj.

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

Kiel serĉi datumojn rapide kaj facile kun Whale
Kombinita kun Github, ĉi tiu aliro signifas, ke baleno povas funkcii kiel facila centra fonto de vero por metrikaj difinoj. Whale eĉ konservas la valorojn kune kun la tempomarko en la "~/. baleno/metriko" se vi volas fari iun mapadon aŭ pli profundan esploron.

Estonteco

Post paroli kun uzantoj de niaj antaŭ-eldonaj versioj de baleno, ni rimarkis, ke homoj bezonas pli da funkcieco. Kial tabelserĉa ilo? Kial ne metrika serĉilo? Kial ne monitori? Kial ne SQL-demanda ekzekutilo? Dum baleno v1 estis origine koncipita kiel simpla CLI-akompanilo Dataportal/Amundsen, ĝi jam evoluis al plenefika memstara platformo, kaj ni esperas, ke ĝi fariĝos integra parto de la ilaro de Data Scientist.

Se estas io, kion vi volas vidi en la disvolva procezo, aliĝu al nia al la Slack-komunumo, malfermu Problemojn ĉe GitHubaŭ eĉ kontakti rekte LinkedIn. Ni jam havas kelkajn bonegajn funkciojn - Jinja-ŝablonojn, legosignojn, serĉfiltrilojn, Slack-atentigojn, Jupyter-integriĝon, eĉ CLI panelo por metrikoj - sed ni amus vian enigon.

konkludo

Whale estas evoluigita kaj prizorgata de Dataframe, ekentrepreno, kiun mi ĵus havis la plezuron kunfondi kun aliaj homoj. Dum baleno estas farita por datumsciencistoj, Dataframe estas farita por datumsciencistoj. Por tiuj el vi, kiuj volas kunlabori pli proksime, bonvolu adresoni aldonos vin al la atendolisto.

Kiel serĉi datumojn rapide kaj facile kun Whale
Kaj per promokodo HABR, vi povas ricevi plian 10% al la rabato indikita sur la standardo.

Pli da kursoj

Elstaraj Artikoloj

fonto: www.habr.com