Како брзо и лесно да пребарувате податоци со Whale

Како брзо и лесно да пребарувате податоци со Whale
Оваа статија зборува за наједноставната и најбрзата алатка за откривање податоци, чија работа ја гледате на KDPV. Интересно е тоа што whale е дизајниран да биде хостиран на далечински git сервер. Детали под сечењето.

Како Алатката за откривање податоци на Airbnb ми го промени животот

Во мојата кариера, имав доволно среќа да работам на некои забавни проблеми: студирав математика на проток додека дипломирав на МИТ, работев на инкрементални модели и со проект со отворен код. пилифт во Wayfair и имплементираа нови модели за таргетирање на почетната страница и подобрувања CUPED на Airbnb. Но, целата оваа работа никогаш не беше гламурозна - всушност, јас често го поминував поголемиот дел од моето време барајќи, истражувајќи и потврдувајќи податоци. Иако ова беше постојана состојба на работа, не ми падна на памет дека ова е проблем додека не стигнав до Airbnb каде што беше решено со алатка за откривање податоци - датапортал.

Каде можам да најдам {{податоци}}? датапортал.
Што значи оваа колумна? датапортал.
Како е денес {{metric}}? датапортал.
Што е чувство за живот? ВО датапортал, веројатно.

Добро, ја претставивте сликата. Пронаоѓањето податоци и разбирањето што значи тоа, како е создадено и како да се користи сето тоа трае само неколку минути, а не часови. Моето време би можел да го трошам во извлекување едноставни заклучоци или нови алгоритми (... или да одговарам на случајни прашања за податоците), наместо да копам низ белешки, да пишувам повторувачки SQL прашања и да ги спомнувам колегите на Slack за да се обидат да го рекреираат контекстот. имаше.

Што е проблемот?

Сфатив дека повеќето од моите пријатели немаат пристап до таква алатка. Малку компании се подготвени да посветат огромни ресурси за градење и одржување на алатка за платформа како Dataportal. И иако има неколку решенија со отворен код, тие имаат тенденција да бидат дизајнирани да се размеруваат, што го отежнува поставувањето и одржувањето без посветен инженер за DevOps. Затоа решив да создадам нешто ново.

Кит: глупаво едноставна алатка за откривање податоци

Како брзо и лесно да пребарувате податоци со Whale

И да, под глупаво едноставно мислам глупаво едноставно. Китот има само две компоненти:

  1. Библиотека на Python која собира метаподатоци и ги форматира во MarkDown.
  2. Интерфејс на командната линија Rust за пребарување низ овие податоци.

Од гледна точка на внатрешната инфраструктура за одржување, има само многу текстуални датотеки и програма што го ажурира текстот. Тоа е тоа, така што хостирањето на git сервер како Github е тривијално. Нема нов јазик за пребарување за учење, нема управувачка инфраструктура, нема резервни копии. Сите го знаат Git, па синхронизацијата и соработката се бесплатни. Ајде внимателно да ја разгледаме функционалноста Кит v1.0.

Целосно опремен GUI базиран на git

Whale е дизајниран да плива во океанот на далечински git сервер. Тој многу лесно може да се конфигурира: дефинирајте некои врски, копирајте ја скриптата Github Actions (или напишете една за вашата избрана CI/CD платформа) и веднаш ќе имате веб-алатка за откривање податоци. Ќе можете да пребарувате, прегледувате, документирате и споделувате вашите табели директно на Github.

Како брзо и лесно да пребарувате податоци со Whale
Пример за табела за никулци генерирана со помош на Github Actions. Целосна работна демо види во овој дел.

Молња брзо CLI пребарување за вашето складиште

Кит живее и дише на командната линија, обезбедувајќи моќни пребарувања во милисекунда низ вашите табели. Дури и со милиони табели, успеавме да го направиме китот неверојатно изведен со користење на некои паметни механизми за кеширање, а исто така и со обнова на задниот дел во Rust. Нема да забележите какво било одложување на пребарувањето [здраво Google DS].

Како брзо и лесно да пребарувате податоци со Whale
Демо за китови, пребарување на милиони табели.

Автоматско пресметување на метрика [во бета]

Една од моите најмалку омилени работи како научник за податоци е да ги извршувам истите прашања одново и одново само за да го проверам квалитетот на податоците што се користат. Whale ја поддржува способноста да се дефинираат метрика во обичен SQL што ќе биде планирано да работи заедно со вашите цевководи за чистење на метаподатоци. Дефинирајте метрички блок YAML во табелата за никулци, а Whale автоматски ќе работи според распоредот и ќе извршува прашања вгнездени во метрика.

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

Како брзо и лесно да пребарувате податоци со Whale
Во комбинација со Github, овој пристап значи дека китот може да послужи како лесен централен извор на вистината за метричките дефиниции. Кит дури и ги зачувува вредностите заедно со временскиот печат во „~/. кит/метрика“ ако сакате да направите траси или подлабоко истражување.

Иднината

Откако разговаравме со корисниците на нашите предобјавни верзии на кит, сфативме дека на луѓето им треба повеќе функционалност. Зошто алатка за пребарување табели? Зошто не и алатка за пребарување на метрика? Зошто да не се следи? Зошто не и SQL алатка за извршување? Додека кит v1 првично беше замислен како едноставна CLI придружна алатка Dataportal/Amundsen, таа веќе еволуираше во целосна самостојна платформа и се надеваме дека ќе стане составен дел од пакетот алатки на Data Scientist.

Ако има нешто што сакате да го видите во процесот на развој, придружете ни се на заедницата Slack, отворете прашања на Githubили дури и контактирајте директно Скопје. Веќе имаме голем број интересни функции - шаблони на Jinja, обележувачи, филтри за пребарување, Slack предупредувања, интеграција на Jupyter, дури и CLI панел за метрика - но го поздравуваме вашиот придонес.

Заклучок

Whale е развиен и одржуван од Dataframe, стартап што неодамна го имав задоволството да го основам со други луѓе. Додека китот е направен за научници за податоци, Dataframe е направен за научници за податоци. За оние од вас кои сакаат поблиску да соработуваат, слободно адресаќе ве додадеме на листата на чекање.

Како брзо и лесно да пребарувате податоци со Whale
И со промо код HABR, можете да добиете дополнителни 10% на попустот наведен на банерот.

Повеќе курсеви

Избрани статии

Извор: www.habr.com