Zapisywanie danych z Pentaho Kettle do Excel
Najlepszym sposobem na sprawną pracę w Excelu jest... unikanie Excela. Jest to szczególnie widoczne przy pracy z dużymi wolumenami danych. Wszystkie modyfikacje danych i obliczenia wykonasz sprawniej i szybciej w Pentaho a rezultat zapiszesz w formacie Excel. Poniżej znajdziesz odpowiedź jak stworzyć formuły, dodać komentarze, użyć szablonów, utworzyć aktualne wykresy oraz inne przydatne informacje.
Przygotuj Pentaho na pracę z Excelem
Jeśli używasz Pentaho w domyślnej konfiguracji, całkiem prawdopodobne jest że przy otwarciu większego pliku pojawi się błąd "java.lang.OutOfMemoryError: GC overhead limit exceeded". Pentaho napisany jest w Java która bardzo lubi pamięć. Dodatkowo pliki Excela są "ciężkie" - ten format wymaga dużo zasobów by przechować dane. Rozwiązaniem jest przydzielenie Penatho większej ilości pamięci. W katalogu "pdi-ce-x.x.x.x-xxx\data-integration" znajdź plik spoon.bat, otwórz go w notatniku i zmodyfikuj linię:
if "%PENTAHO_DI_JAVA_OPTIONS%"=="" set PENTAHO_DI_JAVA_OPTIONS="-Xms1024m" "-Xmx2048m"
Zmieniając parametr "-Xmx". Ustaw go np. na "-Xmx4g". Ponownie uruchom Penatho po zmianie.
Praca z dużymi plikami MS Excel - co zrobić by Excel działał szybciej
Największe firmy mimo deklaracji posiadania "data lake" i podejmowania "data driven" decyzji posługują się często... plikami Excela. Głównymi powodami dlaczego tak robią jest brak niezbędnych umiejętności wśród pracowników. Excel jest znaną aplikacją, zatem jeśli jest do przygotowania raport czy analiza używane jest narzędzie które jest znane. Pozyskanie nowych umiejętności wymaga inwestycji; czy to czasu czy też środków na szkolenie. Excel kusi łatwością tworzenia - szybko możesz stworzyć coś w arkuszu lub kilku. Rezygnacja z takiego stylu pracy wymaga też determinacji i uporządkowana obiegu informacji wewnątrz firmy.
Co "zyskujesz" analizując dane w Excelu? Eksportowanie dużych ilości danych z wielu źródeł jest czasochłonne, nudne i podatne na błędy. Dopiero po zakończeniu raportowania wiesz, co się dzieje. Zazwyczaj jest to tylko raz w tygodniu. Do tego czasu utracono wiele okazji do optymalizacji i podjęcia działań naprawczych. Do czasu wypełnienia raportu jest on prawie nieaktualny. Niezbyt dobra sytuacja.
Konsekwencja pracy z Excelem jest powstawanie "silosów" - dane i rezultaty są bardzo lokalne. Nie musisz rezygnować z Excela całkowicie. Używaj go jednak tam gdzie ma to sens. Najczęściej najlepszym powodem będzie przygotowanie raportu ad hoc na niewielkiej ilości zagregowanych danych, sprawdzenie obliczeń, nadanie raportowi finalnego wyglądu, stworzenie nietypowych wykresów na podstawie przygotowanych danych, użycie go jako formularza do spontanicznego zebrania potrzebnych danych od współpracowników.... Microsoft Excel ma swoje miejsce w firmie ale używaj go z głową.
Uruchamianie skryptów Python w Pentaho PDI
Python jest jednym z najbardziej popularnych języków programowania. Różne statystyki pokazują że jest to albo lider albo zajmuje jedno z trzech miejsc na podium. Dlaczego Python jest tak popularny? Python to język wysokiego poziomu, który charakteryzuje się bardzo prostą składnią. Jest językiem o bardzo szerokim zastosowaniu, pozwalającym na napisanie dosłownie wszystkiego przy użyciu odpowiednich bibliotek lub frameworków. Python jest też często używany jako język skryptowy w aplikacjach napisanych w innych językach. Trzeba podkreślić również fakt, że środowisko Python jest banalnie proste do instalacji a rozszerzanie możliwości przez dodatkowe biblioteki błyskawicznie szybkie i nie absorbujące użytkownika.
Czasami w Pantaho robimy rzeczy które trudno zrealizować używając standardowych komponentów - dlatego bardzo łatwo możemy rozszerzyć możliwości Pentaho wstawiając odpowiedni skrypt napisany w Python'ie.
Google Colaboratory
Czy słyszałe(a)ś o notatniku Jupyter? Jeśli nie, możesz przeczytać ten artykuł by dowiedzieć się czym jest ten projekt i jak go używać. Notatnik Jupyter integruje kod i jego dane wyjściowe w jednym dokumencie, który łączy wizualizacje, opis, równania matematyczne i inne multimedia. Jest to dokument, w którym można uruchamiać kod, wyświetlać dane wyjściowe, a także dodawać objaśnienia, formuły, wykresy i sprawić, że praca będzie bardziej przejrzysta, zrozumiała, powtarzalna i udostępniana. Sam notatnik pobierasz np. jako pakiet Python i po uruchomieniu serwisu masz dostęp do prostego serwisu web w którym tworzysz i zarządzasz swoimi notatnikami. Lokalnie.
Wyobraź sobie że jest jednak znacznie wygodniejsze środowisko by tworzyć notatniki zawierające szczegóły twoich projektów w języku Python. Środowisko gotowe do użycia, zawierające wszystko czego potrzebujesz bez tracenia czasu na instalację, pobierania wymaganych modułów i pakietów. Tym gotowym serwisem jest Google Colaboratory - w skócie Google Colab.
Co to jest Colaboratory?
Colaboratory (czyli w skrócie „Colab”) to usługa opracowana przez Google Research. Colab umożliwia każdemu użytkownikowi pisanie i uruchamianie w przeglądarce dowolnego kodu Python. Usługa ta nadaje się zwłaszcza do analizy danych, 'machine learning' i nauki. Od strony technicznej Colab to hostowana usługa notatników Jupyter, do której używania nie trzeba niczego konfigurować. Zapewnia ona bezpłatny dostęp do zasobów obliczeniowych obejmujących m.in. układy GPU.