Cześć,
w dzisiejszym poście z cyklu Wyszperane w Internecie przedstawię Wam jedną z bibliotek Javascriptu, którą znalazłem i wydała mi się bardzo interesująca.
Mowa o processing.js. Biblioteka ta jest siostrzaną wersją języka programowania Processing, stworzonego przez Bena Fry'a i Casey Reas na MIT. Processing, wraz z całym środowiskiem IDE, miał pomagać uczyć się programowania ludziom z tym niezwiązanym. Miało to zostać osiągnięte przez efekty wizualne, jakie od razu się pojawiają po napisaniu kodu oraz jego uproszczeniu składni do tworzenie grafiki w Javie. Dlatego język ten wykorzystywany jest w sztuce elektronicznej i projektowaniu graficznym. Przełożeniem tego języka na Javascript jest właśnie biblioteka processing.js.
Twórcy biblioteki chwalą się, że jej możliwości można wykorzystać do wizualizacji danych, sztuki cyfrowej, interaktywnych animacji, tworzenia edukacyjnych wykresów, gier wideo bez używania dodatkowych pluginów.
Strona projektu zawiera wiele ciekawych przykładów wykorzystania biblioteki, jak na przykład wąż poruszający się za kursorem, interaktywne wykresy czy prosty zegar. Pod każdym przykładem jest kod, który generuje dany przykład. Jest to duży plus dla twórców.
Uważam, że biblioteka daje ogromne możliwości graficzne i nadaje się idealnie dla stron bazujących na wyświetlaniu grafiki (strony poświęcone ekonomii, blogi artystów, big data), ponieważ można osiągnąć świetne efekty przy małym nakładzie pracy i kodu. Tak więc jeśli tworzysz grafikę, a nie znasz tej biblioteki, to wiesz, co masz teraz przejrzeć :)
Damian
PS Na koniec jeszcze jeden ciekawy przykład - interaktywne akwarium
niedziela, 26 marca 2017
sobota, 25 marca 2017
Postownia cz. 4
Witajcie w kolejnym poście z cyklu Postownia. Tak jak co tydzień opiszę, co zrobiłem przez ostatni tydzień w projekcie.
Przechodząc do konkretów.
Dodałem kolejną funkcjonalność, która jest must have dla blogów, mikroblogów, forów itp. Mianowicie usuwanie postów.
Teraz po zalogowaniu się użytkownik widzi swoje posty wraz z przyciskiem Delete, tak jak to wygląda na screenie poniżej.
Oczywiście użytkownik może usuwać tylko swoje posty. Na zrzucie ekranu jestem zalogowany jako używkownik "Damian" i tylko mogę usunąć posty użytkownika "Damian".
Proces weryfikacji, czy faktycznie użytkownik usuwa swoje posty, jest dwuetapowy. O pierwszym etapie już wspomniałem przed chwilą. Drugim etapem jest weryfikacja po stronie serwera, czy usuwany post należy do użytkownika, który go usuwa. Jest to dodatkowe zabezpieczenia, aby nawet grzebiąc w kodzie strony, nikt niepowołany nie usuwał dowolnych postów.
Po usunięciu postu strona się odświeża z aktualną zawartością.
Myślę, że więcej nie muszę wyjaśniać. Ale jeśli macie jakieś pytania, śmiało zostawiajcie je w komentarzach. :)
Damian
Przechodząc do konkretów.
Dodałem kolejną funkcjonalność, która jest must have dla blogów, mikroblogów, forów itp. Mianowicie usuwanie postów.
Teraz po zalogowaniu się użytkownik widzi swoje posty wraz z przyciskiem Delete, tak jak to wygląda na screenie poniżej.
| Dodałem przycisk Delete |
Oczywiście użytkownik może usuwać tylko swoje posty. Na zrzucie ekranu jestem zalogowany jako używkownik "Damian" i tylko mogę usunąć posty użytkownika "Damian".
Proces weryfikacji, czy faktycznie użytkownik usuwa swoje posty, jest dwuetapowy. O pierwszym etapie już wspomniałem przed chwilą. Drugim etapem jest weryfikacja po stronie serwera, czy usuwany post należy do użytkownika, który go usuwa. Jest to dodatkowe zabezpieczenia, aby nawet grzebiąc w kodzie strony, nikt niepowołany nie usuwał dowolnych postów.
Po usunięciu postu strona się odświeża z aktualną zawartością.
Myślę, że więcej nie muszę wyjaśniać. Ale jeśli macie jakieś pytania, śmiało zostawiajcie je w komentarzach. :)
Damian
sobota, 18 marca 2017
Wyszperane w Internecie cz. 3
Cześć,
w kolejnym poście z cyklu Wyszperane w Internecie opowiem Wam o jednym z modułów, który pomógł mi zrobić jedną rzecz w Postownii, która na pierwszy rzut oka wydaje się prosta i banalna do stworzenia, ale taka nie jest.
Tym modułem jest ejs.js.
ejs.js <% Embedded JavaScript %> służy do generowania szablonu HTML na poziomie serwera przy wykorzystaniu Javascriptu. Pomiędzy znaczniki <% %> wpisujemy kod Javascriptu, którego działanie jest wyświetlone na naszej stronie. Jest to bardzo przydatne, gdy musimy wyświetlić spersonalizowaną treść.
Jednym z przykładów podanych na stronach twórców tutaj i tutaj jest wyświetlenie w punktach zawartości Javascriptowej listy. Tak więc jak to robimy?
W header przesyłamy tą listę wraz z nazwą zmiennej, po jakiej będziemy się do niej odwoływać, a w szablonie HTML piszemy w znacznikach podanych wyżej kod Javascriptu, który nam to wyświetli. Należy również pamiętać o tym, że plik z szablonem HTML i kodem ejs nie może mieć rozszerzenia .html, ale .ejs. Jeśli o tym zapomnimy, to wyświetli nam się błąd.
Drugą ważną rzeczą do zapamiętania korzystając z ejs.js jest funkcja wysyłająca szablon HTML do klienta. Gdy wysyłamy stronę z rozszerzeniem .ejs używamy funkcji render, gdzie pierwszy argument to szablon strony, a drugi to zmienne przesyłane do header. (drugi argument jest opcjonalny)
A do czego ja wykorzystałem ten moduł?
Tak jak wspomniałem wcześniej, do rzeczy wydającej się prosta i oczywista. Jednak taka nie była.
Za pomocą ejs.js chciałem wyświetlić nick użytkownika przy jego poście, który dopiero co dodał.
Jak to robię?
Przy logowaniu się użytkownika do Postownii przesyłam jego nick używając ejs.js i umieszczam go w input type hidden. Dzięki temu zabiegowi przy dodaniu nowego postu przez użytkownika sczytuję jego nick i mogę dodać nowy post do pliku JSON z nick'iem właściwego autora i wyświetlić na stronie post z nazwą autora.
Mam nadzieję, że ten krótki opis pomoże Wam wykorzystać moduł ejs.js we własnych projektach. W razie pytań zadawajcie je w komentarzach.
Damian
w kolejnym poście z cyklu Wyszperane w Internecie opowiem Wam o jednym z modułów, który pomógł mi zrobić jedną rzecz w Postownii, która na pierwszy rzut oka wydaje się prosta i banalna do stworzenia, ale taka nie jest.
Tym modułem jest ejs.js.
ejs.js <% Embedded JavaScript %> służy do generowania szablonu HTML na poziomie serwera przy wykorzystaniu Javascriptu. Pomiędzy znaczniki <% %> wpisujemy kod Javascriptu, którego działanie jest wyświetlone na naszej stronie. Jest to bardzo przydatne, gdy musimy wyświetlić spersonalizowaną treść.
Jednym z przykładów podanych na stronach twórców tutaj i tutaj jest wyświetlenie w punktach zawartości Javascriptowej listy. Tak więc jak to robimy?
W header przesyłamy tą listę wraz z nazwą zmiennej, po jakiej będziemy się do niej odwoływać, a w szablonie HTML piszemy w znacznikach podanych wyżej kod Javascriptu, który nam to wyświetli. Należy również pamiętać o tym, że plik z szablonem HTML i kodem ejs nie może mieć rozszerzenia .html, ale .ejs. Jeśli o tym zapomnimy, to wyświetli nam się błąd.
Drugą ważną rzeczą do zapamiętania korzystając z ejs.js jest funkcja wysyłająca szablon HTML do klienta. Gdy wysyłamy stronę z rozszerzeniem .ejs używamy funkcji render, gdzie pierwszy argument to szablon strony, a drugi to zmienne przesyłane do header. (drugi argument jest opcjonalny)
A do czego ja wykorzystałem ten moduł?
Tak jak wspomniałem wcześniej, do rzeczy wydającej się prosta i oczywista. Jednak taka nie była.
Za pomocą ejs.js chciałem wyświetlić nick użytkownika przy jego poście, który dopiero co dodał.
Jak to robię?
Przy logowaniu się użytkownika do Postownii przesyłam jego nick używając ejs.js i umieszczam go w input type hidden. Dzięki temu zabiegowi przy dodaniu nowego postu przez użytkownika sczytuję jego nick i mogę dodać nowy post do pliku JSON z nick'iem właściwego autora i wyświetlić na stronie post z nazwą autora.
Mam nadzieję, że ten krótki opis pomoże Wam wykorzystać moduł ejs.js we własnych projektach. W razie pytań zadawajcie je w komentarzach.
Damian
środa, 15 marca 2017
Postownia cz. 3
Cześć,
dzisiaj mijają równo 2 tygodnie od rozpoczęcia konkursu "Daj się poznać" i od kiedy robię projekt Postownia. Jest to intensywny czas nauki Javascriptu, ale bardzo mi się podoba takie tempo. Polubiłem ten język programowania. Jest przyjemniejszy do obsługi niż typowe języki obiektowe. Zawsze szybciej się odnajdywałem w rzeczach typowo funkcynych, aniżeli obiektowych.
Przez ostatni tydzień dodałem dwie całkiem ważne funkcjonalności do mojego mini portalu: zakładanie użytkowników oraz dodawanie nowych postów na stronie.
Użytkownik, chcąc założyć sobie konto, podaje tylko login i hasło i od razu zostaje przekierowany na stronę z postami, gdzie może już tworzyć komentarze. Loginy i hasła przechowuję w pliku JSON, gdzie login to klucz, a hasło to wartość hashmapy. Przy okazji poćwiczyłem pracę na plikach JSON oraz obsługę plików z poziomu node.js i modułu fs.js. Na razie możliwe jest utworzenie użytkownika o tej samej nazwie - po prostu hasło zostanie nadpisane.
Tak jak wspomniałem wyżej, drugą funkcjonalnością dodaną przeze mnie w tym tygodniu jest dodawanie nowych postów. Po zalogowaniu się użytkownik widzi posty innych użytkowników, a na dole pole tekstowe z przyciskiem, gdzie wpisuje treść komentarza. Całą strukturę postów przechowuję w pliku JSON - nick użytkownika, datę dodania oraz treść posta. Sam mechanizm dodawania postów nie jest skomplikowany - po stronie klienta widnieje prosty formularz, a po stronie serwera następuje pełna obsługa requesta - zapis do pliku JSON wymienionej trójki i wyświetlenie ponownie wszystkich postów wraz z nowym.
Jako, że dodałem możliwość rejestracji nowych użytkowników, musiałem również poprawić mechanizm logowania się. Wcześniej był tylko jeden użytkownik, więc wstawiłem na sztywno jego login i hasło. Teraz po podaniu loginu i hasła następuje weryfikacja, czy taki użytkownik istnieje w systemie. Jeśli tak, zostaje zalogowany i przekierowany na stronę z postami. W przeciwnym wypadku przenoszony jest ponownie na stronę logowania.
To był pracowity tydzień, ale widać też, jak dużo nowych rzeczy zostało dodanych. Coraz bardziej zaczyna mi się podobać mój mini portal. :)
W razie pytań - zostawcie komentarz poniżej.
Damian
dzisiaj mijają równo 2 tygodnie od rozpoczęcia konkursu "Daj się poznać" i od kiedy robię projekt Postownia. Jest to intensywny czas nauki Javascriptu, ale bardzo mi się podoba takie tempo. Polubiłem ten język programowania. Jest przyjemniejszy do obsługi niż typowe języki obiektowe. Zawsze szybciej się odnajdywałem w rzeczach typowo funkcynych, aniżeli obiektowych.
Przez ostatni tydzień dodałem dwie całkiem ważne funkcjonalności do mojego mini portalu: zakładanie użytkowników oraz dodawanie nowych postów na stronie.
Użytkownik, chcąc założyć sobie konto, podaje tylko login i hasło i od razu zostaje przekierowany na stronę z postami, gdzie może już tworzyć komentarze. Loginy i hasła przechowuję w pliku JSON, gdzie login to klucz, a hasło to wartość hashmapy. Przy okazji poćwiczyłem pracę na plikach JSON oraz obsługę plików z poziomu node.js i modułu fs.js. Na razie możliwe jest utworzenie użytkownika o tej samej nazwie - po prostu hasło zostanie nadpisane.
| Prosty formularz do rejestracji nowego użytkownika |
Tak jak wspomniałem wyżej, drugą funkcjonalnością dodaną przeze mnie w tym tygodniu jest dodawanie nowych postów. Po zalogowaniu się użytkownik widzi posty innych użytkowników, a na dole pole tekstowe z przyciskiem, gdzie wpisuje treść komentarza. Całą strukturę postów przechowuję w pliku JSON - nick użytkownika, datę dodania oraz treść posta. Sam mechanizm dodawania postów nie jest skomplikowany - po stronie klienta widnieje prosty formularz, a po stronie serwera następuje pełna obsługa requesta - zapis do pliku JSON wymienionej trójki i wyświetlenie ponownie wszystkich postów wraz z nowym.
| Zapraszam do postowania na Postownii :) |
Jako, że dodałem możliwość rejestracji nowych użytkowników, musiałem również poprawić mechanizm logowania się. Wcześniej był tylko jeden użytkownik, więc wstawiłem na sztywno jego login i hasło. Teraz po podaniu loginu i hasła następuje weryfikacja, czy taki użytkownik istnieje w systemie. Jeśli tak, zostaje zalogowany i przekierowany na stronę z postami. W przeciwnym wypadku przenoszony jest ponownie na stronę logowania.
To był pracowity tydzień, ale widać też, jak dużo nowych rzeczy zostało dodanych. Coraz bardziej zaczyna mi się podobać mój mini portal. :)
W razie pytań - zostawcie komentarz poniżej.
Damian
środa, 8 marca 2017
Postownia cz. 2
Witajcie,
dzisiaj następny post o postępach w projekcie Postownia. Dla nieśledzących od początku bloga - jestem w trakcie robienia projektu strony internetowej będącej mikroblogiem, a jednocześnie uczę się Javascriptu, HTML, CSS i node.js. Przyjemne z pożytecznym :)
W ciągu ostatniego tygodnia dodałem wyświetlanie postów na stronie po zalogowaniu się do Postowni. Po zaimplementowaniu tej funkcjonalności muszę przyznać, że spodobało mi się działanie na plikach typu JSON, ponieważ to w nim przechowuję posty. Tak, wiem, na dłuższą metę to się nie uda. Ale na początek myślę, że jest w porządku. I dodatkowo poznałem, jak taki plik obrabiać.
Oprócz JSON spodobało mi się rozwijanie serwera przy wykorzystaniu express.js. Nie sądziłem, że pisanie serwera może być takie przyjemne. Pamiętam, jak na drugim roku studiów mieliśmy programowanie i pisaliśmy prostą aplikację na architekturze klient - serwer. To był dramat. Od zera tworzenie socketów itp. Skutecznie się do tego zniechęciłem. Ale z poznaniem node.js i express.js moja wiara w pisanie serwerów wróciła.
Teraz następnym krokiem w projekcie jest możliwość dodawania postów po zalogowaniu. Teraz dopiero będzie się działo :)
Wracam do pisania Postowni. Udanego wieczoru
Damian
PS Link do repozytorium z projektem
dzisiaj następny post o postępach w projekcie Postownia. Dla nieśledzących od początku bloga - jestem w trakcie robienia projektu strony internetowej będącej mikroblogiem, a jednocześnie uczę się Javascriptu, HTML, CSS i node.js. Przyjemne z pożytecznym :)
W ciągu ostatniego tygodnia dodałem wyświetlanie postów na stronie po zalogowaniu się do Postowni. Po zaimplementowaniu tej funkcjonalności muszę przyznać, że spodobało mi się działanie na plikach typu JSON, ponieważ to w nim przechowuję posty. Tak, wiem, na dłuższą metę to się nie uda. Ale na początek myślę, że jest w porządku. I dodatkowo poznałem, jak taki plik obrabiać.
| Może graficznie nie rzuca na kolana, ale grafiką zajmę się później |
Oprócz JSON spodobało mi się rozwijanie serwera przy wykorzystaniu express.js. Nie sądziłem, że pisanie serwera może być takie przyjemne. Pamiętam, jak na drugim roku studiów mieliśmy programowanie i pisaliśmy prostą aplikację na architekturze klient - serwer. To był dramat. Od zera tworzenie socketów itp. Skutecznie się do tego zniechęciłem. Ale z poznaniem node.js i express.js moja wiara w pisanie serwerów wróciła.
Teraz następnym krokiem w projekcie jest możliwość dodawania postów po zalogowaniu. Teraz dopiero będzie się działo :)
Wracam do pisania Postowni. Udanego wieczoru
Damian
PS Link do repozytorium z projektem
wtorek, 7 marca 2017
Wyszperane w Internecie cz. 2
Cześć,
dzisiaj chciałbym Wam polecić ciekawą książkę do nauki JavaScriptu, którą polecił mi mój przyjaciel Marcin.
Mowa tutaj o Eloquent JavaScript.
Jest to interaktywna książka do nauki podstaw, a nawet powiedziałbym absolutnych podstaw nie tylko JavaScriptu, ale i ogólnie programowania i konceptów programistycznych. Książka zaczyna się od wprowadzenia do zmiennych, typów zmiennych i operatorów, więc każda osoba nie mająca do czynienia z programowaniem powinna sobie poradzić.
Tak jak wspomniałem na początku postu, książka jest interaktywna. Oznacza to, że zapisane w niej kawałki kodu możemy uruchamiać. Co lepsze, możemy ten kod dowolnie edytować i uruchamiać. Jest to świetne do eksperymentowania z kodem oraz do próbowania zrozumienia, jak działa kod.
Inną zaletą książki są rozdziały polegające na pisaniu projektu. Jest to na przykład symulator życia w wyimaginowanym środowisku lub stworzenie własnego języka programowania. Każdy etap projektu wraz z kodem jest dokładnie opisany, co ułatwia pisanie oraz zrozumienie toku myślowego Autora.
Oprócz JavaScriptu poznajemy również niewielki fragment HTML, DOMa oraz node.js. Są to absolutne podstawy do utworzenia funkcjonalnej strony internetowej. Mnie szczególnie ucieszył rozdział o node.js, ponieważ mogłem zobaczyć, jak wygląda postawienie serwera oraz komunikacja klient - serwer. Muszę przyznać, że architektura klient - serwer zawsze wydawała mi się trudna i skomplikowana, ale po przeczytaniu tego rozdziału więcej elementów mi się rozjaśniło. Dlatego jeśli boisz się serwerów, to szczerze polecam ten rozdział. A z tego co wiem, w pierwszej edycji książki nie było rozdziału o node.js.
Myślę, że dla niektórych osób wadą może być język angielski, ponieważ to w tym języku napisana została książka. Sam niejednokrotnie sięgałem po słownik, żeby zrozumieć sens wywodów Autora. Na pewno spowalnia to naukę, ale z drugiej strony szlifujemy język oraz poznajemy branżowe słownictwo.
Mam nadzieję, że tym postem zachęciłem Was do wejścia na stronę książki i przejrzenia jej. Uważam, że każdy, kto się uczy JavaScriptu, powinien do niej zajrzeć.
Udanego tygodnia
Damian
dzisiaj chciałbym Wam polecić ciekawą książkę do nauki JavaScriptu, którą polecił mi mój przyjaciel Marcin.
Mowa tutaj o Eloquent JavaScript.
| Źródło: http://eloquentjavascript.net/img/cover.png |
Jest to interaktywna książka do nauki podstaw, a nawet powiedziałbym absolutnych podstaw nie tylko JavaScriptu, ale i ogólnie programowania i konceptów programistycznych. Książka zaczyna się od wprowadzenia do zmiennych, typów zmiennych i operatorów, więc każda osoba nie mająca do czynienia z programowaniem powinna sobie poradzić.
Tak jak wspomniałem na początku postu, książka jest interaktywna. Oznacza to, że zapisane w niej kawałki kodu możemy uruchamiać. Co lepsze, możemy ten kod dowolnie edytować i uruchamiać. Jest to świetne do eksperymentowania z kodem oraz do próbowania zrozumienia, jak działa kod.
Inną zaletą książki są rozdziały polegające na pisaniu projektu. Jest to na przykład symulator życia w wyimaginowanym środowisku lub stworzenie własnego języka programowania. Każdy etap projektu wraz z kodem jest dokładnie opisany, co ułatwia pisanie oraz zrozumienie toku myślowego Autora.
Oprócz JavaScriptu poznajemy również niewielki fragment HTML, DOMa oraz node.js. Są to absolutne podstawy do utworzenia funkcjonalnej strony internetowej. Mnie szczególnie ucieszył rozdział o node.js, ponieważ mogłem zobaczyć, jak wygląda postawienie serwera oraz komunikacja klient - serwer. Muszę przyznać, że architektura klient - serwer zawsze wydawała mi się trudna i skomplikowana, ale po przeczytaniu tego rozdziału więcej elementów mi się rozjaśniło. Dlatego jeśli boisz się serwerów, to szczerze polecam ten rozdział. A z tego co wiem, w pierwszej edycji książki nie było rozdziału o node.js.
Myślę, że dla niektórych osób wadą może być język angielski, ponieważ to w tym języku napisana została książka. Sam niejednokrotnie sięgałem po słownik, żeby zrozumieć sens wywodów Autora. Na pewno spowalnia to naukę, ale z drugiej strony szlifujemy język oraz poznajemy branżowe słownictwo.
Mam nadzieję, że tym postem zachęciłem Was do wejścia na stronę książki i przejrzenia jej. Uważam, że każdy, kto się uczy JavaScriptu, powinien do niej zajrzeć.
Udanego tygodnia
Damian
sobota, 4 marca 2017
Wyszperane w Internecie cz. 1
Czy mieliście kiedyś taki problem, że musieliście przeanalizować dane albo załadować je do jednego miejsca, ale były one w różnych formatach, plikach, nawet w różnych typach plikach? Część danych było w pliku txt, część w CSV, a jeszcze inna część w bazie danych PostgreSQL i Oracle? Głowa może rozboleć od takiej kombinacji.
Ale ludzkość już z nie takich opresji wychodziła i tutaj również sobie poradziła. Mam na myśli programy typu ETL i o tym chciałbym Wam pokrótce opowiedzieć.
Skrót ETL, z angielskiego Extract, Transform, Load, właściwie mówi już wszystko, do czego służą tego typu programu. Najpierw jest Extraxt, to znaczy wyciągamy dane (tak jak wspomniałem wyżej nawet z różnych typów plików czy baz danych), następnie Transform, czyli przekształcamy dane do stanu przez nas pożądanego i Load - ładujemy dane do bazy danych, pliku itd.
To krótkie wyjaśnienie już pewnie pokazuje Ci, jak potężne jest to narzędzie i jak bardzo potrafi ono ułatwić życie.
Osobiście w pracy korzystam z jednej z dystrybucji ETL - Pentaho Kettle. Program jest bardzo prosty w konfiguracji jak i obsłudze, oraz daje duże możliwości do parametryzowania go pod swoje potrzeby.
Pierwszy przykład z brzegu - instalacja, a raczej jej brak. Program pobieramy stąd. Wypakowujemy na swoim komputerze, podajemy w pliku konfiguracyjnym liczbę pamięci RAM, jaką udostępniamy programowi i możemy działać.
Przygotowanie transformacji również nie jest skomplikowane. Polega ono na wybieraniu odpowiednich klocków i łączeniu ich, co jest zobrazowane poniżej.
Społeczność Pentaho Kettle jest duża, więc nie ma większych problemów ze znalezieniem pomocy w Internecie. Pentaho ma również swoją wiki, gdzie każdy klocek transformacji jest dokładnie opisany.
Inną zaletą Pentaho Kettle jest jego szybkość. Całe przetwarzanie danych w transformacji odbywa się na poziomie pamięci RAM. Nic nie jest zapisywane na dysku twardym bez naszej wiedzy. Wiadomo, że im więcej pamięci RAM udostępnimy programowi, tym szybciej będzie on przetwarzał dane. Ogranicza nas tutaj jedynie rodzaj JAVA'y - dla 32 bitowej wersji jest to maksymalnie 1 GB, a dla 64 bitowej 2 GB RAMu.
A do czego ja używam Pentaho? Na przykład do tworzenia interfejsów między systemami i bazami danych lub do zasilania bazy danych plikami tekstowymi lub CSV. Przygotowywanie update'ów, bądź inesrtów do bazy danych zajmowałyby za dużo czasu, a że jestem leniwy (tak jak powinien być każdy informatyk), to transformacja robi wszystko za mnie.
Czyż to nie jest piękne?
Jeśli będzie chcieli jeszcze artykuły o ETL, czy Pentaho Kettle, to dajcie znać w komentarzu.
Udanego dnia!
Damian
Ale ludzkość już z nie takich opresji wychodziła i tutaj również sobie poradziła. Mam na myśli programy typu ETL i o tym chciałbym Wam pokrótce opowiedzieć.
Skrót ETL, z angielskiego Extract, Transform, Load, właściwie mówi już wszystko, do czego służą tego typu programu. Najpierw jest Extraxt, to znaczy wyciągamy dane (tak jak wspomniałem wyżej nawet z różnych typów plików czy baz danych), następnie Transform, czyli przekształcamy dane do stanu przez nas pożądanego i Load - ładujemy dane do bazy danych, pliku itd.
To krótkie wyjaśnienie już pewnie pokazuje Ci, jak potężne jest to narzędzie i jak bardzo potrafi ono ułatwić życie.
Osobiście w pracy korzystam z jednej z dystrybucji ETL - Pentaho Kettle. Program jest bardzo prosty w konfiguracji jak i obsłudze, oraz daje duże możliwości do parametryzowania go pod swoje potrzeby.
Pierwszy przykład z brzegu - instalacja, a raczej jej brak. Program pobieramy stąd. Wypakowujemy na swoim komputerze, podajemy w pliku konfiguracyjnym liczbę pamięci RAM, jaką udostępniamy programowi i możemy działać.
Przygotowanie transformacji również nie jest skomplikowane. Polega ono na wybieraniu odpowiednich klocków i łączeniu ich, co jest zobrazowane poniżej.
![]() | |
| Źródło: http://www.pentaho.com/product/data-integration |
Społeczność Pentaho Kettle jest duża, więc nie ma większych problemów ze znalezieniem pomocy w Internecie. Pentaho ma również swoją wiki, gdzie każdy klocek transformacji jest dokładnie opisany.
Inną zaletą Pentaho Kettle jest jego szybkość. Całe przetwarzanie danych w transformacji odbywa się na poziomie pamięci RAM. Nic nie jest zapisywane na dysku twardym bez naszej wiedzy. Wiadomo, że im więcej pamięci RAM udostępnimy programowi, tym szybciej będzie on przetwarzał dane. Ogranicza nas tutaj jedynie rodzaj JAVA'y - dla 32 bitowej wersji jest to maksymalnie 1 GB, a dla 64 bitowej 2 GB RAMu.
A do czego ja używam Pentaho? Na przykład do tworzenia interfejsów między systemami i bazami danych lub do zasilania bazy danych plikami tekstowymi lub CSV. Przygotowywanie update'ów, bądź inesrtów do bazy danych zajmowałyby za dużo czasu, a że jestem leniwy (tak jak powinien być każdy informatyk), to transformacja robi wszystko za mnie.
Czyż to nie jest piękne?
Jeśli będzie chcieli jeszcze artykuły o ETL, czy Pentaho Kettle, to dajcie znać w komentarzu.
Udanego dnia!
Damian
Subskrybuj:
Posty (Atom)
