Jak szybko i łatwo wyszukiwać dane za pomocą Whale

Jak szybko i łatwo wyszukiwać dane za pomocą Whale
Ten artykuł mówi o najprostszym i najszybszym narzędziu do wyszukiwania danych, którego działanie można zobaczyć na KDPV. Co ciekawe, wieloryb jest przeznaczony do hostowania na zdalnym serwerze git. Detale pod rozcięciem.

Jak narzędzie do odkrywania danych Airbnb zmieniło moje życie

W swojej karierze miałem przyjemność pracować nad zabawnymi problemami: studiowałem matematykę przepływów podczas studiów na MIT, pracowałem nad modelami przyrostowymi i przy projekcie open source pylift w Wayfair i wdrożył nowe modele kierowania na stronę główną oraz ulepszenia CUPED w Airbnb. Ale cała ta praca nigdy nie była efektowna — w rzeczywistości często spędzałem większość czasu na wyszukiwaniu, badaniu i sprawdzaniu danych. Chociaż był to stały stan w pracy, nie przyszło mi do głowy, że to problem, dopóki nie trafiłem na Airbnb, gdzie został rozwiązany za pomocą narzędzia do wykrywania danych − portal danych.

Gdzie mogę znaleźć {{data}}? portal danych.
Co oznacza ta kolumna? portal danych.
Jak radzi sobie dziś {{metric}}? portal danych.
Czym jest sens życia? W portal danych, prawdopodobnie.

Ok, przedstawiłeś obraz. Znalezienie danych i zrozumienie, co to znaczy, jak zostało stworzone i jak to wszystko wykorzystać, zajmuje tylko kilka minut, a nie godzin. Mógłbym spędzać czas na wyciąganiu prostych wniosków lub nowych algorytmach (… lub odpowiadaniu na przypadkowe pytania dotyczące danych), zamiast przekopywania się przez notatki, pisania powtarzających się zapytań SQL i wspominania współpracowników na Slack, aby spróbować odtworzyć kontekst, który ktoś już miał. .

I jaki jest problem?

Zdałem sobie sprawę, że większość moich znajomych nie ma dostępu do takiego narzędzia. Niewiele firm jest skłonnych poświęcić ogromne środki na budowę i utrzymanie narzędzia platformy, takiego jak Dataportal. I chociaż istnieje kilka rozwiązań typu open source, są one zwykle projektowane z myślą o skalowaniu, co utrudnia konfigurację i konserwację bez dedykowanego inżyniera DevOps. Postanowiłem więc stworzyć coś nowego.

Wieloryb: Głupio proste narzędzie do odkrywania danych

Jak szybko i łatwo wyszukiwać dane za pomocą Whale

I tak, przez głupio proste mam na myśli głupio proste. Wieloryb ma tylko dwa elementy:

  1. Biblioteka Pythona, która zbiera metadane i formatuje je w MarkDown.
  2. Interfejs wiersza poleceń Rust do wyszukiwania tych danych.

Z punktu widzenia wewnętrznej infrastruktury do utrzymania to tylko dużo plików tekstowych i program aktualizujący tekst. To wszystko, więc hosting na serwerze git, takim jak Github, jest trywialny. Brak nowego języka zapytań do nauczenia się, brak infrastruktury zarządzania, brak kopii zapasowych. Wszyscy znają Git, więc synchronizacja i współpraca są bezpłatne. Przyjrzyjmy się bliżej funkcjonalności Wieloryb v1.0.

W pełni funkcjonalny graficzny interfejs użytkownika oparty na git

Whale jest przeznaczony do pływania w oceanie zdalnego serwera git. On bardzo łatwe konfigurowalny: zdefiniuj niektóre połączenia, skopiuj skrypt Github Actions (lub napisz go dla wybranej platformy CI/CD), a od razu będziesz mieć narzędzie internetowe do wykrywania danych. Będziesz mógł wyszukiwać, przeglądać, dokumentować i udostępniać swoje arkusze kalkulacyjne bezpośrednio w Github.

Jak szybko i łatwo wyszukiwać dane za pomocą Whale
Przykład tabeli pośredniczącej wygenerowanej przy użyciu Github Actions. Pełne działające demo patrz w tej sekcji.

Błyskawiczne wyszukiwanie CLI dla twojego repozytorium

Whale żyje i oddycha w wierszu poleceń, zapewniając potężne, milisekundowe wyszukiwania w twoich stołach. Nawet przy milionach tabel udało nam się sprawić, że wieloryb będzie niesamowicie wydajny, używając sprytnych mechanizmów buforowania, a także przebudowując backend w Rust. Nie zauważysz żadnych opóźnień w wyszukiwaniu [cześć Google DS].

Jak szybko i łatwo wyszukiwać dane za pomocą Whale
Demo wieloryba, wyszukiwanie w milionach tabel.

Automatyczne obliczanie wskaźników [w wersji beta]

Jedną z moich najmniej ulubionych rzeczy jako analityka danych jest wykonywanie w kółko tych samych zapytań tylko po to, aby sprawdzić jakość używanych danych. Whale obsługuje możliwość definiowania metryk w zwykłym języku SQL, które zostaną zaplanowane do uruchomienia wraz z potokami czyszczenia metadanych. Zdefiniuj blok metryk YAML w tabeli pośredniczącej, a Whale automatycznie uruchomi się zgodnie z harmonogramem i uruchomi zapytania zagnieżdżone w metrykach.

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

Jak szybko i łatwo wyszukiwać dane za pomocą Whale
W połączeniu z Githubem podejście to oznacza, że ​​whale może służyć jako łatwe centralne źródło prawdy dla definicji metrycznych. Whale zapisuje nawet wartości wraz ze znacznikiem czasu w pliku „~/. whale/metrics”, jeśli chcesz zrobić wykresy lub bardziej dogłębne badania.

Przyszłość

Po rozmowach z użytkownikami naszych przedpremierowych wersji wieloryba zdaliśmy sobie sprawę, że ludzie potrzebują większej funkcjonalności. Dlaczego narzędzie do wyszukiwania w tabeli? Dlaczego nie narzędzie do wyszukiwania metryk? Dlaczego nie monitorować? Dlaczego nie narzędzie do wykonywania zapytań SQL? Podczas gdy wieloryb v1 został pierwotnie pomyślany jako proste narzędzie towarzyszące CLI Dataportal/Amundsen, już przekształciła się w w pełni funkcjonalną samodzielną platformę i mamy nadzieję, że stanie się integralną częścią zestawu narzędzi Data Scientist.

Jeśli jest coś, co chciałbyś zobaczyć w procesie rozwoju, dołącz do nas społeczności Slacka, otwórz Problemy o godz Githublub nawet skontaktować się bezpośrednio LinkedIn. Mamy już wiele fajnych funkcji – szablony Jinja, zakładki, filtry wyszukiwania, alerty Slack, integrację Jupyter, a nawet pulpit nawigacyjny CLI dla metryk – ale bylibyśmy wdzięczni za Twój wkład.

wniosek

Whale jest rozwijany i utrzymywany przez Dataframe, startup, który niedawno miałem przyjemność współtworzyć z innymi osobami. Podczas gdy wieloryb jest stworzony dla naukowców zajmujących się danymi, Dataframe jest stworzony dla naukowców zajmujących się danymi. Ci z Państwa, którzy chcą ściślej współpracować, mogą to zrobić adresdodamy Cię do listy oczekujących.

Jak szybko i łatwo wyszukiwać dane za pomocą Whale
I za pomocą kodu promocyjnego Habr., możesz otrzymać dodatkowe 10% rabatu wskazanego na banerze.

Więcej kursów

Polecane artykuły

Źródło: www.habr.com