Cum să căutați date rapid și ușor cu Whale

Cum să căutați date rapid și ușor cu Whale
Acest articol vorbește despre cel mai simplu și mai rapid instrument de descoperire a datelor, a cărui activitate o vedeți pe KDPV. Interesant este că whale este conceput pentru a fi găzduit pe un server git la distanță. Detalii sub croiala.

Cum mi-a schimbat viața instrumentul Airbnb pentru descoperirea datelor

În cariera mea, am avut norocul să lucrez la câteva probleme distractive: am studiat matematica fluxului în timp ce îmi făceam diploma la MIT, am lucrat la modele incrementale și cu un proiect open source. pylift la Wayfair și a implementat noi modele de direcționare a paginii de pornire și îmbunătățiri CUPED la Airbnb. Dar toată această muncă nu a fost niciodată plină de farmec – de fapt, mi-am petrecut adesea cea mai mare parte a timpului căutând, cercetând și validând date. Deși aceasta era o stare constantă la locul de muncă, nu mi-a trecut prin minte că aceasta era o problemă până când am ajuns la Airbnb unde a fost rezolvată cu un instrument de descoperire a datelor - portal de date.

Unde pot găsi {{date}}? portal de date.
Ce înseamnă această coloană? portal de date.
Cum merge {{metric}} astăzi? portal de date.
Ce este un simț al vieții? ÎN portal de date, probabil.

Bine, ai prezentat poza. Găsirea datelor și înțelegerea a ceea ce înseamnă, cum au fost create și cum să le folosiți totul durează doar câteva minute, nu ore. Mi-aș putea petrece timpul trăgând concluzii simple sau algoritmi noi (... sau răspunzând la întrebări aleatorii despre date), în loc să caut prin note, să scriu interogări SQL repetitive și să menționez colegii pe Slack pentru a încerca să recreeze contextul că altcineva deja. a avut.

Care este problema?

Mi-am dat seama că majoritatea prietenilor mei nu aveau acces la un astfel de instrument. Puține companii sunt dispuse să dedice resurse uriașe pentru construirea și întreținerea unui instrument de platformă precum Dataportal. Și, deși există câteva soluții open source, acestea tind să fie proiectate la scară, ceea ce face dificilă configurarea și întreținerea fără un inginer DevOps dedicat. Așa că am decis să creez ceva nou.

Whale: Un instrument prost de simplu pentru descoperirea datelor

Cum să căutați date rapid și ușor cu Whale

Si da, prin stupid de simplu ma refer la stupid. Balena are doar două componente:

  1. O bibliotecă Python care colectează metadate și le formatează în MarkDown.
  2. Interfață de linie de comandă Rust pentru căutarea acestor date.

Din punct de vedere al infrastructurii interne de întreținere, există doar o mulțime de fișiere text și un program care actualizează textul. Asta este, așa că găzduirea pe un server git precum Github este banală. Nici un nou limbaj de interogare de învățat, nicio infrastructură de management, nicio copie de rezervă. Toată lumea cunoaște Git, așa că sincronizarea și colaborarea sunt gratuite. Să aruncăm o privire mai atentă asupra funcționalității Balena v1.0.

GUI complet bazat pe git

Whale este proiectat să înoate în oceanul unui server git la distanță. El foarte usor configurabil: definiți unele conexiuni, copiați scriptul Github Actions (sau scrieți unul pentru platforma CI/CD aleasă) și veți avea imediat un instrument web de descoperire a datelor. Veți putea căuta, vizualiza, documenta și partaja foile de calcul direct pe Github.

Cum să căutați date rapid și ușor cu Whale
Un exemplu de tabel stub generat folosind Github Actions. Demo completă de lucru vezi in aceasta sectiune.

Căutare CLI rapidă pentru depozitul dvs

Whale trăiește și respiră pe linia de comandă, oferind căutări puternice, în milisecunde, pe tabelele dvs. Chiar și cu milioane de tabele, am reușit să facem whale incredibil de performant prin utilizarea unor mecanisme inteligente de caching și, de asemenea, prin reconstruirea backend-ului în Rust. Nu veți observa nicio întârziere de căutare [bună ziua, Google DS].

Cum să căutați date rapid și ușor cu Whale
Demo de balenă, căutare de milioane de mese.

Calculul automat al valorilor [în versiune beta]

Unul dintre lucrurile mele cele mai puțin preferate ca om de știință de date este să execut aceleași interogări din nou și din nou doar pentru a verifica calitatea datelor utilizate. Whale acceptă capacitatea de a defini valori în SQL simplu, care vor fi programate să ruleze împreună cu conductele de curățare a metadatelor. Definiți un bloc de valori YAML în interiorul tabelului stub, iar Whale va rula automat conform unui program și va rula interogări imbricate în valori.

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

Cum să căutați date rapid și ușor cu Whale
Combinată cu Github, această abordare înseamnă că balena poate servi ca o sursă centrală ușoară de adevăr pentru definițiile metrice. Whale salvează chiar și valorile împreună cu marcajul de timp în „~/. whale/metrics” dacă doriți să faceți niște diagrame sau cercetări mai aprofundate.

Viitorul

După ce am vorbit cu utilizatorii versiunilor noastre pre-lansare ale balenei, am realizat că oamenii au nevoie de mai multe funcționalități. De ce un instrument de căutare a tabelelor? De ce nu un instrument de căutare a valorilor? De ce nu monitorizare? De ce nu un instrument de execuție a interogărilor SQL? În timp ce whale v1 a fost conceput inițial ca un simplu instrument însoțitor CLI Dataportal/Amundsen, a evoluat deja într-o platformă autonomă cu funcții complete și sperăm că va deveni o parte integrantă a setului de instrumente Data Scientist.

Dacă doriți să vedeți ceva în procesul de dezvoltare, alăturați-vă pentru comunitatea Slack, deschide Probleme la Githubsau chiar contact direct LinkedIn. Avem deja o serie de funcții interesante - șabloane Jinja, marcaje, filtre de căutare, alerte Slack, integrare Jupyter, chiar și un tablou de bord CLI pentru valori - dar ne-ar plăcea contribuția dvs.

Concluzie

Whale este dezvoltat și întreținut de Dataframe, un startup pe care recent am avut plăcerea de a-l co-fonda împreună cu alți oameni. În timp ce whale este creat pentru oamenii de știință de date, Dataframe este creat pentru oamenii de știință de date. Pentru cei dintre voi care doresc să colaboreze mai strâns, nu ezitați abordarete vom adauga pe lista de asteptare.

Cum să căutați date rapid și ușor cu Whale
Și prin cod promoțional HABR, puteți obține un suplimentar de 10% la reducerea indicată pe banner.

Mai multe cursuri

Articole Promovate

Sursa: www.habr.com