środa, 6 grudnia 2017

Wizualizacja danych - jakie książki warto przeczytać?

Na rynku pojawia się coraz więcej książek o tematyce wzualizacji danych i budowy dashboardów (głównie w wersji anglojęzycznej). Niektóre z tych tyułów dorobiły się już miana kultowych bestsellerów (książki autorstwa Stephena Few czy Edwarda Tufte). Cześć z nich nie wnosi kompletnie nic nowego i jest zwykłym "skokiem na kasę" w dobie popularności tematyki wizualizacji danych. W takim razie na co warto wydać nasze ciężko zarobione pieniądze?

Przedstawiam swoją subiektywną listę najciekawszych książek, jakie udało mi się do tej pory dorwać. Uwaga - na liście nie uwzględniałem pozycji stricte technicznych dotyczących samej obsługi Tableau - w tej kwestii moim numerem jeden pozostaje druga edycja książki Dana Murray'a, którą zrecenzowałem w tym artykule.

Książki, które musicie przeczytać:

  1. Show Me the Numbers: Designing Tables and Graphs to Enlighten (Stephen Few)
  2. Now You See It: Simple Visualization Techniques for Quantitative Analysis (Stephen Few)
  3. Information Dashboard Design: The Effective Visual Communication of Data (Stephen Few)
  4. Signal: Understanding What Matters in a World of Noise (Stephen Few)
  5. The Visual Display of Quantitative Information (Edward Tufte)
  6. Envisioning Information (Edward Tufte)
  7. Beautiful Evidence (Edward Tufte)
Książki, które warto przeczytać:
  1. The Functional Art: An Introduction to Information Graphics and Visualization (Alberto Cairo)
  2. The Truthful Art: Data, Charts, and Maps for Communication (Alberto Cairo)
  3. Storytelling with Data: A Data Visualization Guide for Business Professionals (Cole Nussbaumer Knaflic)

czwartek, 30 listopada 2017

Jak przygotować się do egzaminu Tableau Desktop 10 Certified Professional?

Ostatnio miałem okazję przekonać się na własnej skórze jak dużym wyzwaniem jest Tableau Desktop Certified Professional Exam i chciałbym się z Wami podzielić tą wiedzą. Zgodnie z tym co można usłyszeć od ludzi z branży/ w internecie, egzamin jest naprawdę trudny i może stanowić wyzwanie nawet dla ludzi, którzy profesjonalnie zajmują się Tableau od kilku lat i znają jego funkcjonalności "na wylot". Trudność ta nie polega jednak na samym zakresie materiału, który jest bardzo podobny do tego z QA (przynajmniej od strony wiedzy technicznej, jaką należy posiąść). Tym razem chodzi przede wszystkim o znajomość dobrych praktyk wizualizacji danych oraz umiejętność sprawnego korzystania ze wszelkich dobrodzejstw oferowanych przez Tableau do rozwiązywania realnych problemów biznesowych.

Sam egzamin trwa około 3 godziny i uwieżcie mi, że wcale nie jest to dużo czasu biorąc pod uwagę ilość zadań, jakie dostaniecie do rozwiązania. Presja czasu jest po prostu nieziemska, więc nie ma tutaj miejsca na dylematy i rozważania na temat poszczególnych wyborów - wszystko dzieje się w takim tempie, że nawet nie ma co liczyć na możliwość powrotu do pominiętych wcześniej zadań, bo im dalej w las tym więcej drzew. Do tego dochodzą jeszcze bardzo nieprzyjemne problemy ze stabilnością połączenia (egzamin zdajecie na wirtalnej maszynie w obecności opiekuna), które mogą powodować okropne lagi i ogólne problemy z działaniem Tableau. Niestety straconego w ten sposób czasu nikt Wam nie zrekompensuje. Jeśli problemy będą bardzo poważne, to oczywiście macie prawo przerwać egzamin i zażądać podejścia w innym terminie (tak było w moim przypadku). Dodam jeszcze tylko, że egzamin zdawałem na stacjonarnym PC podłączonym do sieci po kablu (nawet nie próbujcie tego robić na bezprzewodowym internecie) przy naprawdę dobrych parametrach łącza (250Mbps DL/ 20Mbps UP i latency na poziomie 40ms) 

Egzamin został podzielony na 3 moduły:
  1. Best Practices (15%) - trzy zadania polegające na zaproponowaniu alternatywnej wizualizacji danych (z uzasadnieniem)
  2. Advanced Skills (20%) - 3 problemy do rozwiązania przy pomocy zaawansowanych funkcjonalności Tableau (joiny, uniony, sety, parametry, table calculations, LoD)
  3. Storytelling (65%) - moduł polegający na utworzeniu kompleksowego dashboardu odpowiadającego na około 4 biznesowe pytania + przedstawienie spójnej historii za pomoca funkcji Story (4-6 storypoints)
Dokładna punktacja oczywiście nie jest znana, natomiast powszechnie wiadomo, że oceniający przykładaja dużą uwagę nawet do najmniejszych szczegółów związanych z formatowaniem (czcionki, tła, tooltipy, nagłówki, etc.). Jak widzicie ostatni moduł jest tutaj kluczowy i nie bezpodstawnie zaleca się poświęcenie na niego nawet 110 min. Problem w tym, że zadania w dwóch pierwszych modułach również wymagają określonego formatowania, więc czasu jest naprawdę niewiele. Tableau tłumaczy to istotą szybkiego podejmowania decyzji, jednak powiedzmy sobie szczerze - nie są to warunki, które znamy z naszej codziennej praktyki zawodowej, gdzie na rozwiązanie każdego problemu mamy zdecydowanie więcej czasu.

Jeśli dodamy do tego dosyć wygórówaną cenę (600 USD), to nasuwa się podstawowe pytanie - czy warto w ogóle próbować? Moja odpowiedź to tak, o ile naprawdę czujecie, że macie już wystarczające doświadczenie w zakresie wizualizacji danych i bez zastanowienia korzystacie ze wszystkich funkcjonalności tableau, które zostały wymienione w oficjalnym CP Exam Guide. Na pewno warto rozwiązać przykładowe zadania zamieszczone na stronie producenta żeby sprawdzić, jak sobie poradzimy z realnymi problemami przy mocno ograniczonej ilości czasu. Jeśli widzicie, że idzie Wam zbyt wolno, to polecam jeszcze poczekać i nabyć trochę więcej doświadczenia. Warto również przeczytać kilka książek traktujących o wizualizacji danych (polecam wszystkie publikacje rewelacyjnego Stephena Few), aby poszerzyć trochę swoje perspektywy i ogólną wiedzę z tego zakresu. Życzę Wam wszystkim powodzenia! Jeśli macie dodatkowe pytania związane z certyfikacją Tableau, to piszcie śmiało w komentarzach :)

środa, 29 listopada 2017

Ruszyła beta Project Maestro

Właśnie ruszyła pierwsza beta długo wyczekiwanego Projektu Maestro, czyli nowego narzędzia ETL od twórców Tableau. Wersja opatrzona numerem 0.1 prezentuje się dosyć ubogo i oferuje jedynie kilka podstawowych funkcjonalności z zakresu przetwarzania danych, które od dłuższego czasu były już dostępne w Tableau.


Wśród funkcjonalności oferowanych przez pierwszą betę znajdziecie m.in.:
  • łączenie się z plikami tekstowymi, excelami i najpopularniejszymi sytemami baz danych
  • podstawowe tranformacje takie jak joiny, uniony, agregacje, filtrowanie pól i wierszy
  • czyszczenie danych poprzez kalkulację, zmiany typu danych, splity, automatyczne parsowanie dat, zmiany nazw i zastępowanie wartości, klastrowanie metodą "rozmytego grupowania"
  • zapisywanie do formatu tableau extract
Oczywiście to dopiero początek - twórcy obiecują, że dużo więcej funkcji pojawi sie już wkrótce w ramach kolejnych faz programu beta. Póki co nie zostaje nam nic innego, niż uzbrojenie się w cierpliwość i nadzieja, że nowe narzędzie umocni pozycję Tableau w segmencie rozwiązań do przetwarzania danych.

sobota, 25 listopada 2017

Zmiany w systemie certyfikacji Tableau

W ostatnim czasie nastąpiły pewne zmiany w systemie certyfikacji o których wypada wspomnieć. Od października tego roku zniesiono system przyznawania certyfikatów dla konkretnej wersji oprogramowania Tableau Desktop/Server (v8, 9, 10 etc) - teraz będziemy otrzymywać po prostu tytuł "Qualified Associate" albo "Professional", co wydaje się bardzo sensownym podejściem biorąc pod uwagę tempo pojawiania się nowych wersji programu. Niestety w wyniku takiego zabiegu wszystkie otrzymane certyfikaty będą miały swój "termin ważności" i po pewnym czasie będziemy musieli do nich podejść ponownie.

  • Qualified Associate będzie ważny przez 2 lata
  • Certified Professional będzie ważny przez 3 lata
Historyczne tytuły mają działać bezterminowo, jednak musimy zaznaczyć, że zostały otrzymane dla konkretnej wersji. Od teraz wszystkie egzaminy będą przeprowadzane na aktualnej wersji oprogramowania. Jeśli chodzi o cenę samych egzaminów i ich formułę, to nic się nie zmienia.

Po szczegółowe informacje na temat ostatnich zmian odsyłam do tego dokumentu.

W najbliższym czasie postaram się zamieścić szczegółowy artykuł o egzaminie Tableau Desktop Certified Professional, który jest zdecydowowanie trudniejszy niż QA i potrafi sprawić problem nawet największym wyjadaczom Tableau :)

czwartek, 12 października 2017

Tableau 10.5 Beta, czyli spore zmiany na horyzoncie


Właśnie dobiega końca coroczna konferencja Tableau w Las Vegas, na której prezentowana jest między innymi kolejna wersja naszego ulubionego oprogramowania do wizualizacji danych. Wersja 10.5 niesie ze sobą szereg istotnych zmian, takich jak wsparcie Tableau Server dla systemów linuksowych (nareszcie) oraz ostateczną przesiadkę na 64 bitową architekturę (koniec wspierania wersji 32 bitowej).



Jednym z najgorętszych tematów jest na pewno Hyper, czyli nowy mechanizm typu in-memory, który wkrótce ma zastąpić wysłużony tableau data engine. Producenci przekonują, że nowy system przechowywania danych będzie pozwalał na jeszcze szybsze tworzenie i odświeżanie ekstraktów danych przy użyciu Tableau zarówno w wersji desktopowej, jak i serwerowej. Co ciekawe dostaniemy również możliwość bezproblemowego upgradowania starych ekstraktów do nowego formatu (*.hyper) za pomocą jednego kliknięcia. Po przeprowadzonej operacji oraz zapisaniu pliku w nowym formacie zmiany będą już nieodwracalne.



Oto lista pozostałych nowości w wersji 10.5:

  • możliwość wykorzystania miniatur wizualizacji w tooltipach (nice!)
  • możliwość zmiany nazwy workbooków z poziomu tableau server oraz poprawiona funkcja kompatybilności, czyli możliwość eksportu w starszej wersji bez grzebania w xml
  • więcej opcji customizacji subskrypcji
Ja osobiście najbardziej czekam jednak na możliwość przetestowania wczesnej wersji Project Maestro, czyli długo wyczekiwanego narzędzia do ETL i przygotowania danych - publiczna beta ruszy podobno jeszcze w tym roku, więc warto śledzić temat na bieżąco :)

Tableau 10.5 ma zadebiutować w ostatnim kwartale tego roku. W trakcie oczekiwania na nową wersję oprogramowania polecam zapoznać się z licznymi materiałami z Tableau Conference 2017 udostępnionymi na tej stronie. Do zobaczenia!

czwartek, 22 czerwca 2017

Rusza Tableau 10.4 Beta

Właśnie ruszył program betatestów kolejnej wersji oprogramowania Tableau. Co nowego czeka nas tym razem?

  • System rekomendacji i certyfikacji opublikowanych źródeł danych (tableau server)
  • Dashboard spacing - funkcja umożliwiająca precyzyjną kontrolę nad formatowaniem naszego dashboardu (dotyczy głównie pustych przestrzeni, tzw. "white spaces")
  • Dalsze usprawnienia w web authoringu - tym razem dodano m.in możliwość edycji osi, filtrów, aliasów i grup (kolejny krok w kierunku przeniesienia najważniejszych funkcji desktopa do wersji online)
  • Poprawa geocodingu i garść nowych konektorów (to już standard)
  • Wsteczna kompatybilność przy publikowaniu na starszą wersję tableau server (do 10.2 włącznie)
  • Zupełnie nowy system komentowania dashboardów (z poprzedniego chyba nikt nie korzystał)
  • Integracja z Matlabem
  • Wprowadzenie funkcji geometrii liniowej umożliwiająca wizualizację sieci połączeń


Według informacji zamieszczonej na stronie producenta, program beta potrwa do połowy sierpnia. Tradycyjnie odsyłam do pełnej listy zmian na stronie producenta.

czwartek, 8 czerwca 2017

Tableau Performance Tuning - część II

W ostatnim artykule poświęconym Performance Tuningowi dashboardów prayglądaliśmy się wszystkim czynnikom na poziomie środowiska oraz źródła danych, które mogą poważnie wpłynać na wydajność naszych raportów. Tym razem pora zastanowić się nad konkretnymi działaniami oraz tzw. dobrymi praktykami, które możemy zastosować w trakcie tworzenia dashboardów aby przyśpieszyć ich działanie.

Wyłącz automatyczną aktualizację danych


Jeśli pracujemy z wyjątkowo dużym zbiorem danych w trybie live, warto rozważyć tymczasowe zablokowanie automatycznych update'ów (pause auto updates) do czasu dodania wszystkich dodatkowych miar i wymiarów - dzięki temu unikniemy niezwykle irytującego oczekiwania na wyrenderowanie się widoku przy każdej modyfikacji. Po zakończeniu całej operacji wystarczy ponownie włączyć opcję "resume auto updates" lub wymusić ręczny update poprzez użycie kolejnego buttona "Run Update" (również dostępny po wciśnięciu F9).

Opcje Pause Auto Updates i Run Update


Połączenie ze źródłem danych


Staraj się nie korzystać z Custom SQL, jeśli nie jest to absolutnie konieczne. Pozwoli to uniknąć kosztownych podzapytań generowanych przez Tableau. Generalnie dobrą praktyką jest używanie jak najmnijeszej liczby źródeł danych (jakkolwiek trywialnie by to nie zabrzmiało) i usuwanie na bieżąco niepotrzebnych połączeń, które mogą się stać dodatkowym obcążeniem.


Filtry kontekstowe


Nie wahaj się korzystać z filtrów kontekstowych (context filters) jeśli wiesz, że dany worksheet potrzebuje jedynie małego fragmentu całego zbioru danych np. ściśle sprecyzowanego okresu czasu, produktu czy klienta. Złota reguła mówi, że jeśli na dzień dobry musimy odfiltrować 90% naszych danych, to użycie filtra kontekstowego powinno znacznie przyśpieszyć całą operację (szczególnie, jeśli mamy do czynienia z tzw. "slow changing dimensions").

Opcja użycia filtra kontekstowego

Kolejny sposób na wykorzystanie filtrów kontekstowych w celu poprawy wydajności to zastosowanie pozornie bezsensownego filtra typu "include all" w celu zmateralizowania joinów wykonywanych przez Tableau. Dzięki takiemu prostemu zabiegowi zostanie stworzona tableau tymczasowa, która powinna kilkukrotnie przyśpieszyć dostęp do danych (pod warunkiem, że korzystamy z joinów w tableau). Jak stworzyć taki filtr? Najprościej wykorzystać Exclude none :)

teoretycznie nieistniejący filtr, czyli "exclude none"


Ekstrakty


O ekstraktach i wszystkich pozytywnych aspektach ich wykorzystywania pisaliśmy w jednym z poprzednich artykułów. Warto pamiętać o tym, że ekstrakty w Tableau są niezwykle wydajne i pozwalają w znaczny sposób przyśpieszyć dostęp do największych źródeł danych. Wyjątkowo przydatne opcję, które możemy wykorzystać przy tworzeniu ekstraktu to:

  • Hide All Unused Fields - pozwala wykluczyć wszystkie nieużywane pola w celu "odchudzenia" ekstraktu i znacznego wzrostu wydajności
  • Aggregate data for visible dimensions - czyli agregacja danych na poziomie wykorzystywanym przez wizualizację (szczególnie przydatne przy pracy z danymi transakcyjnymi )


Filtry


Istnieją pewne sytuacje, w których zwykłe filtry potrafią w znacząc sposób wpłynąc na wydajność naszego workbooka.

Staraj się unikać opcji Exclude - w przypadku zastosowania tej opcji Tableau musi każdorazowo przeskanować wszystkie dane. Dodatkowo można wtedy zapomnieć o wszystkich korzyściach związanych z wykorzystaniem indeksów na poziomie bazy danych!

Fltrowanie wymiaru czasu po indywidualnych datach (Individual dates and times) również nie jest najlepszym pomysłem w przypadku pracy z wielomilionową tabelą - zdecydowanie lepiej zastosować filtrowanie kaskadowe (np. rok, miesiąc, dzień) i wyświetlić tylko cześć danych, która nas interesuję. W celu ograniczenia dużych zbiorów danych można też wykorzystać tzw. relative date filters (np ostatni dzień, miesiąc, rok).

Opcja Only Relevant Values dostępna w przypadku quick filters powinna być wykorzystywana z rozwagą i jedynie wtedy, gdy jest naprawdę wymagana. Jej wykorzystanie może drastycznie wpłynąć na szybkość działania dashboardu!

W większości przypadków filtering dashboard actions są szybsze, niż quick filters. Wynika to z tego, że w przypadku tych drugich tableau jest zmuszone do każdorazowego skanowania całego wymaru przed wyśwetleniem listy dostępnych wartości. W przypadku dashboard actions nie jest to wymagane, ponieważ filtry te wykorzystują wyrenderowane wizualizację, które posiadają już taką informację. Warto również zwrócić uwagę na to, co ma się dziać z widokiem bo resecie selekcji (opcja "clearing the selection will" w menu Dashboard->Actions). Jeśli pracujemy z wyjątkowo dużym zbiorem danych, zaleca się wykorzystanie opcji "Exclude all values" w celu uniknięcia wyświetlania dużych ilość danych w trybie "defaultowym".

Edytowanie dashboard action


W kolejnym artykule z tej serii postramy się przyjrzeć dobrym praktykom związanym z tworzeniem kalkulacji w Tableau, dzięki którym możemy bezpośrednio wpłynąć na wzrost wydajności całego dashboardu. Do zobaczenia następnym razem!