Com cercar dades de manera ràpida i senzilla amb Whale

Com cercar dades de manera ràpida i senzilla amb Whale
Aquest article parla de l'eina de descoberta de dades més senzilla i ràpida, el treball de la qual veieu a KDPV. Curiosament, whale està dissenyat per allotjar-se en un servidor git remot. Detalls sota el tall.

Com l'eina de descoberta de dades d'Airbnb va canviar la meva vida

Durant la meva carrera, he tingut el plaer de treballar en alguns problemes divertits: vaig estudiar matemàtiques de flux mentre feia la meva carrera al MIT, vaig treballar en models incrementals i amb un projecte de codi obert. pylift a Wayfair i va implementar nous models d'orientació a la pàgina d'inici i millores de CUPED a Airbnb. Però tot aquest treball mai va ser glamurós; de fet, sovint em passava la major part del temps buscant, investigant i validant dades. Tot i que es tractava d'un estat constant a la feina, no se'm va passar pel cap que era un problema fins que vaig arribar a Airbnb on es va resoldre amb una eina de descobriment de dades − portal de dades.

On puc trobar {{dades}}? portal de dades.
Què vol dir aquesta columna? portal de dades.
Com està {{metric}} avui? portal de dades.
Què és el sentit de la vida? EN portal de dades, probablement.

D'acord, has presentat la imatge. Trobar dades i entendre què significa, com es va crear i com utilitzar-ho tot triga uns minuts, no hores. Podria dedicar-me el temps a extreure conclusions senzilles o algorismes nous (... o responent preguntes aleatòries sobre les dades), en lloc de buscar entre notes, escriure consultes SQL repetitives i esmentar els companys de Slack per intentar recrear el context. tenia.

Quin és el problema?

Em vaig adonar que la majoria dels meus amics no tenien accés a aquesta eina. Poques empreses estan disposades a dedicar grans recursos a crear i mantenir una eina de plataforma com Dataportal. I tot i que hi ha algunes solucions de codi obert, tendeixen a estar dissenyades per escalar, cosa que dificulta la configuració i el manteniment sense un enginyer DevOps dedicat. Així que vaig decidir crear alguna cosa nova.

Whale: una eina de descobriment de dades estúpidament senzilla

Com cercar dades de manera ràpida i senzilla amb Whale

I sí, per estúpidament senzill vull dir estúpidament senzill. La balena només té dos components:

  1. Una biblioteca de Python que recopila metadades i les formata a MarkDown.
  2. Interfície de línia d'ordres Rust per cercar aquestes dades.

Des del punt de vista de la infraestructura interna de manteniment, només hi ha molts fitxers de text i un programa que actualitza el text. Això és tot, així que l'allotjament en un servidor git com Github és trivial. No hi ha cap llenguatge de consulta nou per aprendre, ni infraestructura de gestió, ni còpies de seguretat. Tothom coneix Git, de manera que la sincronització i la col·laboració són gratuïtes. Fem una ullada més de prop a la funcionalitat Balena v1.0.

GUI basada en git amb totes les funcions

Whale està dissenyat per nedar a l'oceà d'un servidor git remot. Ell molt fàcil configurable: definiu algunes connexions, copieu l'script Github Actions (o escriviu-ne un per a la vostra plataforma CI/CD escollida) i tindreu una eina web de descoberta de dades immediatament. Podreu cercar, visualitzar, documentar i compartir els vostres fulls de càlcul directament a Github.

Com cercar dades de manera ràpida i senzilla amb Whale
Un exemple d'una taula stub generada amb Github Actions. Demostració completa de treball veure en aquesta secció.

Cerca CLI ràpida per al vostre dipòsit

La balena viu i respira a la línia d'ordres, proporcionant cerques potents de mil·lisegons a les teves taules. Fins i tot amb milions de taules, vam aconseguir que whale tingués un rendiment increïble mitjançant alguns mecanismes de memòria cau intel·ligents i també reconstruint el backend a Rust. No notareu cap retard de cerca [hola Google DS].

Com cercar dades de manera ràpida i senzilla amb Whale
Demostració de balenes, cerca de taules de milions.

Càlcul automàtic de mètriques [en versió beta]

Una de les coses que menys m'agraden com a científic de dades és executar les mateixes consultes una i altra vegada només per comprovar la qualitat de les dades que s'utilitzen. Whale admet la possibilitat de definir mètriques en SQL senzill que es programaran per executar-se juntament amb els canals de neteja de metadades. Definiu un bloc de mètriques YAML dins de la taula de talons i Whale s'executarà automàticament segons una programació i executarà consultes imbricades a les mètriques.

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

Com cercar dades de manera ràpida i senzilla amb Whale
Combinat amb Github, aquest enfocament significa que la balena pot servir com a font central fàcil de veritat per a definicions mètriques. Whale fins i tot desa els valors juntament amb la marca de temps al fitxer "~/. whale/metrics" si voleu fer gràfics o investigacions més aprofundides.

El futur

Després de parlar amb els usuaris de les nostres versions prèvies de whale, ens vam adonar que la gent necessitava més funcionalitats. Per què una eina de cerca de taules? Per què no una eina de cerca de mètriques? Per què no fer un seguiment? Per què no una eina d'execució de consultes SQL? Mentre que whale v1 es va concebre originalment com una senzilla eina complementària CLI Dataportal/Amundsen, ja s'ha convertit en una plataforma autònoma amb totes les funcions, i esperem que esdevingui una part integral del conjunt d'eines del Data Scientist.

Si hi ha alguna cosa que voleu veure en el procés de desenvolupament, uneix-te al nostre a la comunitat Slack, obre Problemes a Githubo fins i tot contactar directament LinkedIn. Ja tenim una sèrie de funcions interessants: plantilles Jinja, adreces d'interès, filtres de cerca, alertes de Slack, integració de Jupyter, fins i tot un tauler CLI per a mètriques, però ens agradaria molt la vostra aportació.

Conclusió

Whale és desenvolupat i mantingut per Dataframe, una startup que fa poc vaig tenir el plaer de cofundar amb altres persones. Mentre que la balena està feta per a científics de dades, Dataframe està fet per a científics de dades. Per a aquells de vosaltres que vulgueu col·laborar més estretament, no dubteu a fer-ho adreçat'afegirem a la llista d'espera.

Com cercar dades de manera ràpida i senzilla amb Whale
I amb codi promocional HABR, pots obtenir un 10% addicional al descompte indicat al bàner.

Més cursos

Articles destacats

Font: www.habr.com