Ako rýchlo a jednoducho vyhľadávať dáta pomocou Whale

Ako rýchlo a jednoducho vyhľadávať dáta pomocou Whale
Tento článok hovorí o najjednoduchšom a najrýchlejšom nástroji na zisťovanie údajov, ktorého prácu vidíte na KDPV. Zaujímavé je, že veľryba je navrhnutá tak, aby bola hosťovaná na vzdialenom serveri git. Detaily pod strihom.

Ako mi nástroj na zisťovanie údajov Airbnb zmenil život

Vo svojej kariére som mal to šťastie pracovať na niekoľkých zábavných problémoch: študoval som prietokovú matematiku počas štúdia na MIT, pracoval som na prírastkových modeloch a na projekte s otvoreným zdrojovým kódom. pylift na Wayfair a implementovali nové modely zacielenia na domovskú stránku a vylepšenia CUPED na Airbnb. Ale všetka táto práca nebola nikdy očarujúca – v skutočnosti som často trávil väčšinu času hľadaním, skúmaním a overovaním údajov. Hoci to bol konštantný stav v práci, nenapadlo ma, že ide o problém, kým som sa nedostal na Airbnb, kde sa to vyriešilo pomocou nástroja na zisťovanie údajov − dataportal.

Kde nájdem {{data}}? dataportal.
Čo znamená tento stĺpec? dataportal.
Ako sa {{metric}} dnes darí? dataportal.
Čo je to zmysel života? IN dataportal, pravdepodobne.

Dobre, predstavili ste obrázok. Nájdenie údajov a pochopenie toho, čo znamenajú, ako boli vytvorené a ako ich používať, to všetko trvá len niekoľko minút, nie hodiny. Mohol by som tráviť čas vykresľovaním jednoduchých záverov alebo nových algoritmov (... alebo odpovedaním na náhodné otázky o údajoch), namiesto toho, aby som sa hrabal v poznámkach, písal opakované SQL dotazy a spomínal kolegov na Slacku, aby som sa pokúsil znovu vytvoriť kontext. mal.

Aký je problém?

Uvedomil som si, že väčšina mojich priateľov k takémuto nástroju nemala prístup. Len málo spoločností je ochotných venovať obrovské zdroje na budovanie a údržbu nástroja platformy, akým je Dataportal. A hoci existuje niekoľko riešení s otvoreným zdrojom, majú tendenciu byť navrhnuté tak, aby sa škálovali, čo sťažuje ich nastavenie a údržbu bez špecializovaného inžiniera DevOps. Tak som sa rozhodol vytvoriť niečo nové.

Veľryba: hlúpo jednoduchý nástroj na zisťovanie údajov

Ako rýchlo a jednoducho vyhľadávať dáta pomocou Whale

A áno, hlúpo jednoduchým myslím hlúpo jednoduchým. Veľryba má iba dve zložky:

  1. Knižnica Python, ktorá zhromažďuje metadáta a formátuje ich v MarkDown.
  2. Rozhranie príkazového riadka Rust na vyhľadávanie v týchto údajoch.

Z pohľadu internej infraštruktúry pre údržbu je tu len množstvo textových súborov a program, ktorý text aktualizuje. To je všetko, takže hosťovanie na serveri git, ako je Github, je triviálne. Žiadny nový dopytovací jazyk na učenie, žiadna infraštruktúra správy, žiadne zálohy. Git pozná každý, takže synchronizácia a spolupráca sú bezplatné. Poďme sa bližšie pozrieť na funkčnosť Veľryba v1.0.

Plne funkčné GUI založené na GUI

Veľryba je navrhnutá tak, aby plávala v oceáne vzdialeného servera git. On veľmi ľahké konfigurovateľné: definujte niektoré pripojenia, skopírujte skript Github Actions (alebo ho napíšte pre vami zvolenú platformu CI/CD) a hneď budete mať webový nástroj na zisťovanie údajov. Svoje tabuľky budete môcť vyhľadávať, prezerať, dokumentovať a zdieľať priamo na Github.

Ako rýchlo a jednoducho vyhľadávať dáta pomocou Whale
Príklad tabuľky stub vygenerovanej pomocou akcií Github. Plne funkčné demo pozri v tejto časti.

Bleskovo rýchle CLI vyhľadávanie vášho úložiska

Veľryba žije a dýcha na príkazovom riadku a poskytuje výkonné milisekundové vyhľadávanie vo vašich stoloch. Dokonca aj s miliónmi stolov sa nám podarilo urobiť veľrybu neuveriteľne výkonnou pomocou niekoľkých šikovných mechanizmov ukladania do vyrovnávacej pamäte a tiež prebudovaním backendu v Ruste. Nezaznamenáte žiadne oneskorenie vyhľadávania [ahoj Google DS].

Ako rýchlo a jednoducho vyhľadávať dáta pomocou Whale
Ukážka veľryby, vyhľadávanie v tabuľke miliónov.

Automatický výpočet metrík [vo verzii beta]

Jednou z mojich najmenej obľúbených vecí ako dátového vedca je spúšťanie rovnakých dotazov znova a znova, len aby som skontroloval kvalitu používaných údajov. Whale podporuje schopnosť definovať metriky v obyčajnom SQL, ktoré budú naplánované na spustenie spolu s vašimi kanálmi čistenia metadát. Definujte blok metrík YAML v tabuľke stub a Whale sa automaticky spustí podľa plánu a spustí dotazy vnorené do metrík.

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

Ako rýchlo a jednoducho vyhľadávať dáta pomocou Whale
V kombinácii s Github tento prístup znamená, že veľryba môže slúžiť ako jednoduchý centrálny zdroj pravdy pre metrické definície. Veľryba dokonca uloží hodnoty spolu s časovou pečiatkou do súboru „~/. veľryba/metrika“, ak chcete urobiť nejaké mapovanie alebo hlbší prieskum.

budúcnosť

Po rozhovore s používateľmi našich predbežných verzií veľryby sme si uvedomili, že ľudia potrebujú viac funkcií. Prečo nástroj na vyhľadávanie v tabuľke? Prečo nie nástroj na vyhľadávanie metrík? Prečo nemonitorovať? Prečo nie nástroj na vykonávanie dotazov SQL? Zatiaľ čo whale v1 bol pôvodne koncipovaný ako jednoduchý sprievodný nástroj CLI Dataportal/Amundsen, sa už vyvinula na plnohodnotnú samostatnú platformu a dúfame, že sa stane neoddeliteľnou súčasťou sady nástrojov Data Scientist.

Ak chcete v procese vývoja niečo vidieť, pridajte sa k nám komunite Slack, otvorte Problémy na GitHubalebo dokonca kontaktovať priamo LinkedIn. Už máme množstvo skvelých funkcií – šablóny Jinja, záložky, filtre vyhľadávania, upozornenia Slack, integrácia Jupyter, dokonca aj informačný panel CLI pre metriky – boli by sme však radi, keby ste nám pomohli.

Záver

Whale je vyvinutý a udržiavaný Dataframe, startupom, ktorý som nedávno mal tú česť spoluzaložiť s ďalšími ľuďmi. Zatiaľ čo veľryba je stvorená pre dátových vedcov, Dataframe je stvorená pre dátových vedcov. Pre tých z vás, ktorí chcú užšie spolupracovať, neváhajte adresazaradíme vás do poradovníka.

Ako rýchlo a jednoducho vyhľadávať dáta pomocou Whale
A to pomocou promo kódu HABR, môžete získať ďalších 10% k zľave uvedenej na banneri.

Viac kurzov

Odporúčané články

Zdroj: hab.com