Jak rychle a snadno vyhledávat data pomocí Whale

Jak rychle a snadno vyhledávat data pomocí Whale
Tento článek hovoří o nejjednodušším a nejrychlejším nástroji pro zjišťování dat, jehož práci vidíte na KDPV. Zajímavé je, že velryba je navržena tak, aby byla hostována na vzdáleném git serveru. Detaily pod střihem.

Jak mi nástroj pro zjišťování dat Airbnb změnil život

Ve své kariéře jsem měl to potěšení pracovat na několika zábavných problémech: studoval jsem flow matematiku při studiu na MIT, pracoval na inkrementálních modelech a na projektu s otevřeným zdrojovým kódem. pylift na Wayfair a implementoval nové modely cílení na domovskou stránku a vylepšení CUPED na Airbnb. Ale veškerá tato práce nebyla nikdy okouzlující – ve skutečnosti jsem často trávil většinu času hledáním, zkoumáním a ověřováním dat. Ačkoli to byl konstantní stav v práci, nenapadlo mě, že jde o problém, dokud jsem se nedostal na Airbnb, kde to bylo vyřešeno pomocí nástroje pro zjišťování dat − datový portál.

Kde najdu {{data}}? datový portál.
Co znamená tento sloupec? datový portál.
Jak se dnes {{metric}} daří? datový portál.
Co je to smysl života? V datový portál, pravděpodobně.

Dobře, předložil jsi obrázek. Nalezení dat a pochopení toho, co to znamená, jak byly vytvořeny a jak je používat, to vše trvá jen několik minut, nikoli hodiny. Mohl bych trávit čas vypracováváním jednoduchých závěrů nebo nových algoritmů (… nebo odpovídáním na náhodné otázky o datech), než abych se prohraboval poznámkami, psaním opakujících se SQL dotazů a zmiňováním kolegů na Slacku, abych se pokusil znovu vytvořit kontext. měl.

Co je za problém?

Uvědomil jsem si, že většina mých přátel k takovému nástroji přístup neměla. Jen málo společností je ochotno věnovat obrovské prostředky na budování a údržbu nástroje platformy, jako je Dataportal. A i když existuje několik řešení s otevřeným zdrojovým kódem, bývají navržena pro škálování, takže je obtížné je nastavit a udržovat bez specializovaného inženýra DevOps. Tak jsem se rozhodl vytvořit něco nového.

Velryba: hloupě jednoduchý nástroj pro zjišťování dat

Jak rychle a snadno vyhledávat data pomocí Whale

A ano, hloupě jednoduchým myslím hloupě jednoduchým. Velryba má pouze dvě složky:

  1. Knihovna Pythonu, která shromažďuje metadata a formátuje je v MarkDown.
  2. Rozhraní příkazového řádku Rust pro vyhledávání v těchto datech.

Z pohledu vnitřní infrastruktury pro údržbu je zde pouze spousta textových souborů a program, který text aktualizuje. To je vše, takže hostování na git serveru, jako je Github, je triviální. Žádný nový dotazovací jazyk k učení, žádná infrastruktura pro správu, žádné zálohy. Git zná každý, takže synchronizace a spolupráce je zdarma. Pojďme se blíže podívat na funkčnost Velryba v1.0.

Plně funkční GUI založené na git

Whale je navržen tak, aby plaval v oceánu vzdáleného git serveru. On velmi snadné konfigurovatelné: definujte některá připojení, zkopírujte skript Github Actions (nebo jej napište pro vámi vybranou platformu CI/CD) a hned budete mít webový nástroj pro zjišťování dat. Budete moci vyhledávat, prohlížet, dokumentovat a sdílet své tabulky přímo na Github.

Jak rychle a snadno vyhledávat data pomocí Whale
Příklad tabulky se zakázaným inzerováním generované pomocí Github Actions. Plně funkční demo viz v této sekci.

Bleskově rychlé CLI vyhledávání vašeho úložiště

Velryba žije a dýchá na příkazovém řádku a poskytuje výkonné milisekundové vyhledávání napříč vašimi tabulkami. I s miliony stolů se nám podařilo udělat velrybu neuvěřitelně výkonnou pomocí několika chytrých mechanismů ukládání do mezipaměti a také přebudováním backendu v Rustu. Nezaznamenáte žádné zpoždění vyhledávání [ahoj Google DS].

Jak rychle a snadno vyhledávat data pomocí Whale
Velryba demo, milionové vyhledávání v tabulce.

Automatický výpočet metrik [ve verzi beta]

Jednou z mých nejméně oblíbených věcí jako datového vědce je spouštění stejných dotazů znovu a znovu, jen abych zkontroloval kvalitu používaných dat. Whale podporuje schopnost definovat metriky v prostém SQL, které budou naplánovány tak, aby se spouštěly spolu s vašimi kanály čištění metadat. Definujte blok metrik YAML uvnitř tabulky se zakázaným inzerováním a Whale se automaticky spustí podle plánu a spustí dotazy vnořené do metrik.

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

Jak rychle a snadno vyhledávat data pomocí Whale
V kombinaci s Github tento přístup znamená, že velryba může sloužit jako snadný centrální zdroj pravdy pro metrické definice. Whale dokonce uloží hodnoty spolu s časovým razítkem do "~/. velryba/metriky“, pokud chcete provést nějaké mapování nebo podrobnější výzkum.

Budoucnost

Po rozhovoru s uživateli našich předběžných verzí velryby jsme si uvědomili, že lidé potřebují více funkcí. Proč nástroj pro vyhledávání v tabulce? Proč ne nástroj pro vyhledávání metrik? Proč ne sledování? Proč ne nástroj pro provádění dotazů SQL? Zatímco whale v1 byl původně koncipován jako jednoduchý doprovodný nástroj CLI Dataportal/Amundsen, již se vyvinul v plně funkční samostatnou platformu a doufáme, že se stane nedílnou součástí sady nástrojů Data Scientist.

Pokud chcete v procesu vývoje něco vidět, připojte se k nám do komunity Slack, otevřete Problémy na GitHubnebo dokonce kontaktovat přímo LinkedIn. Již máme řadu skvělých funkcí – šablony Jinja, záložky, vyhledávací filtry, upozornění Slack, integraci Jupyter, dokonce i řídicí panel CLI pro metriky – ale byli bychom rádi, když nám napíšete.

Závěr

Whale je vyvíjen a udržován společností Dataframe, startupem, který jsem nedávno měl tu čest spoluzaložit s dalšími lidmi. Zatímco velryba je stvořena pro datové vědce, Dataframe je stvořena pro datové vědce. Pro ty z vás, kteří chtějí blíže spolupracovat, neváhejte adresazařadíme vás do pořadníku.

Jak rychle a snadno vyhledávat data pomocí Whale
A to pomocí promo kódu HABR, můžete získat dalších 10 % ke slevě uvedené na banneru.

Více kurzů

Doporučené články

Zdroj: www.habr.com