Przeskocz do zawartości głównej

Krok po kroku — przyrostowe ładowanie danych za pomocą polecenia Store

NA TEJ STRONIE

Krok po kroku — przyrostowe ładowanie danych za pomocą polecenia Store

Niniejszy przykład krok po kroku przedstawia sposób wykonywania operacji przyrostowego ładowania danych za pomocą polecenia Store w Qlik Sense SaaS.

Za pomocą polecenia Store można utworzyć plik QVD i załadować go do sekcji DataFiles. Ten plik może zawierać dane, takie jak rekordy, które są dostępne z bazy danych tylko przez ograniczony czas, na przykład określoną liczbę dni przed dniem bieżącym. Te dane historyczne mogą być ładowane z utworzonego pliku QVD, a następnie połączone z najnowszymi dostępnymi danymi ze źródłowej bazy danych. Następnie najnowsze dane mogą zostać wprowadzone z powrotem do pliku QVD. Ten przykład demonstruje taki sposób użycia.

Polecenia Store można również użyć, aby zapisać dane z połączenia tylko raz, a następnie dodać nowe dane z bazy danych. W ten sposób można skrócić czas trwania kolejnych operacji ładowania danych, a także zmniejszyć obciążenie serwerów bazy danych, sieci itp. Ten przykład nie uwzględnia takiego sposobu użycia. Jednak na ogół mają zastosowanie te same kroki.

W tym przykładzie tworzymy połączenie za pomocą interfejsu Standard Search Twitter API i wyszukujemy konkretny termin tekstowy. Pasujące wystąpienia są wyszukiwane w tweetach z ostatnich 7 dni, ponieważ takie ograniczenie nakłada serwis Twitter. Ponadto w tym przykładzie interfejs Standard Search Twitter API ogranicza ilość danych ładowanych z bazy danych serwisu Twitter.

Za pomocą polecenia Store można zapisać tabelę danych Twitter w pliku QVD i załadować go w sekcji DataFiles. Następnie tworzymy żądania dotyczące najnowszych danych z serwisu Twitter i ładujemy te dane do naszej aplikacji wraz z danymi z pliku QVD. Te dane są ładowane z powrotem do pliku QVD, co powoduje powiększenie pliku QVD.

Następnym etapem jest opublikowanie aplikacji i załadowanie najnowszych danych do opublikowanej aplikacji.

Aby uzyskać więcej informacji o zadaniach i pojęciach uwzględnionych w niniejszym przykładzie, odwiedź następujące strony:

Wymagania wstępne

  • Subskrypcja huba w chmurze (Qlik Sense SaaS).
  • Konto w serwisie Twitter w celu korzystania z interfejsu Twitter API.
  • Wiedza o tym, w jaki sposób utworzyć aplikację w hubie w chmurze. Więcej informacji można znaleźć w temacie Tworzenie aplikacji i dodawanie danych.
  • Konieczna jest znajomość zasad korzystania z edytora ładowania danych. Więcej informacji można znaleźć w temacie Korzystanie z edytora ładowania danych.

Zadania

W celu ukończenia tego przykładu należy wykonać następujące zadania:

  1. Tworzenie aplikacji i łączenie jej z serwisem Twitter
  2. Wybieranie danych z Twitter
  3. Dodawanie instrukcji skryptu w celu utworzenia i powiększenia pliku QVD poprzez dodawanie do niego danych z serwisu Twitter
  4. Uruchomienie skryptu
  5. Ustawianie harmonogramu przeładowywania danych

Tworzenie aplikacji i łączenie jej z serwisem Twitter

  1. Utwórz aplikację w swoim obszarze roboczym w hubie w chmurze.
  2. Otwórz edytor skryptów. Opcja pozwalająca na otwarcie edytora skryptów pojawia się w przypadku tworzenia nowej aplikacji. Dostęp do edytora skryptów można również uzyskać z poziomu edytora ładowania danych.
  3. W obszarze Powiązania między danymi w prawym menu kliknij pozycję Utwórz nowe połączenie. Zostanie otwarte okno Utwórz nowe połączenie.
  4. Z listy rozwijanej Źródła danych wybierz pozycję Twitter . Zostanie otwarte okno uwierzytelniania.
  5. Kliknij pozycję Authenticate (Uwierzytelnianie). Zostanie otwarte okno interfejsu uwierzytelniania Twitter API. Konieczne może być włączenie wyskakujących okien w przeglądarce.
  6. Aby autoryzować łączniki WWW Qlik do używania Twojego konta Twitter , wprowadź swoje poświadczenia umożliwiające korzystanie z serwisu Twitter .
  7. Kliknij pozycję Sign in (Zaloguj się). Zostanie wyświetlone okno serwisu Twitter z wyświetlonym kodem dostępu. Skopiuj kod.
  8. W oknie uwierzytelniania Qlik Sense wklej kod, a następnie kliknij pozycję Verify (Sprawdź). Połączenie zostanie uwierzytelnione.
  9. Kliknij pozycję Test Connection (Testuj połączenie), aby sprawdzić, czy połączenie zostało utworzone.
  10. Nazwij połączenie, a następnie kliknij pozycję Utwórz. Połączenie zostanie utworzone, a edytor ładowania danych zostanie otwarty. To połączenie zostanie dodane do Twojej listy Powiązania między danymi w prawym menu.

Wybieranie danych z Twitter

Po utworzeniu połączenia możesz wybrać dane, które będą ładowane z serwisu Twitter.

  1. Dodaj nową kartę do swojego skryptu w edytorze skryptów.
  2. Nazwij tę kartę. W tym przykładzie nadajemy karcie nazwę New Data (Twitter). Umieść kursor w oknie edytora skryptów.
  3. W edytorze ładowania danych kliknij pozycję Wybierz dane dla Twojego połączenia z serwisem Twitter.

    Zostanie otwarte okno Wybierz dane do załadowania.

  4. Wybierz tabelę o nazwie Search, a następnie wybierz termin do wyszukania. Na potrzeby naszego przykładu używamy nazwy „Kubernetes”.

     

    Okno ładowania danych z wybraną tabelą wyszukiwania

    Data load window with Search table selected.

  5. Kliknij pozycję Podgląd danych. Zostaną wyświetlone pola danych dla tabeli Search. Wybierz pola, które chcesz załadować. W naszym przykładzie wybieramy następujące pola: id, created_at, text, source oraz user_name.

     

    Okno ładowania danych z podglądem danych

    Data load window showing a preview of data.

  6. Kliknij polecenie Wstaw skrypt. Segment skryptu zostanie dodany do karty New data (Twitter) w edytorze skryptów w edytorze ładowania danych.

  7. Nazwij tabelę, dodając linię nad instrukcją Load. W naszym przykładzie nadajemy nazwę TwitterSearch

     

    Wynikowa karta powinna być podobna do przedstawionej na poniższym zrzucie ekranu (bez komentarzy):

     

    Nowa karta z danymi (Twitter) w edytorze ładowania danych

    New data (Twitter) tab in the data load editor.

  8. Aby sprawdzić, czy działa ładowanie danych, kliknij pozycję Ładuj dane w górnym menu. Dane zostaną załadowane.

     

    Okno postępu ładowania danych

    Data load progress window.

W razie potrzeby możesz wyświetlić dane w tabelach i polach w przeglądarce modelu danych. W celu wyświetlenia swoich bieżących danych możesz również utworzyć tabelę w swojej aplikacji.

Dodawanie instrukcji skryptu w celu utworzenia i powiększenia pliku QVD poprzez dodawanie do niego danych z serwisu Twitter

Po skonfigurowaniu aplikacji w celu ładowania danych z serwisu Twitter możesz zapisać te dane w pliku QVD. Serwis Twitter Standard API pozwala na pobieranie danych tylko z 7 dni wstecz, dlatego po załadowaniu danych nasz plik QVD początkowo będzie zawierał tylko te dane.

  1. Dodaj nową kartę do swojego skryptu w edytorze skryptów.
  2. Nazwij tę kartę. W tym przykładzie nadajemy karcie nazwę Historical data (QVD).
  3. Dodaj na karcie następujące instrukcje skryptu. Komentarze (//) zostały dodane w celach referencyjnych. Nie będą one uwzględniane, gdy ten skrypt zostanie uruchomiony.

     

    Uwaga: Jeśli kopiujesz i wklejasz z przeglądarki Firefox, wówczas najpierw konieczne może być wklejenie do innego dokumentu, takiego jak dokument Word, aby podziały wierszy były poprawnie wyświetlane w edytorze skryptów.

     

    //Method to test QVD file size. If the file does not exist returns <null> let size = FileSize('lib://DataFiles/AllTweets.qvd'); //Set the historical data pull range to a variable LET vRollingDate = Today()-90; //If the file exists and contains some data then the if statement is executed; //if the file does not exist, i.e. is null, then the if statement will be skipped if not isnull(size) then TwitterSearch: LOAD * FROM ['lib://DataFiles/AllTweets.qvd'](qvd) //Twitter ids are unique; ensures only new tweets added WHERE NOT EXISTS (Search.id) //Load last 90 days of data from the qvd file; //QVD file provides historical data beyond Twitter Standard API limit of 7 days. //Also ensures that stored incremented qvd file does not grow too large in size. AND FLOOR (Date([Search.created_at]))>=$(vRollingDate); end if

     

    Wynikowa karta powinna być podobna do przedstawionej na poniższym zrzucie ekranu:

     

    Karta Dane historyczne (QVD) w edytorze ładowania danych

    Historical Data (QVD) in the data load editor.

  4. Dodaj kolejną nową kartę do swojego skryptu.
  5. Nazwij tę kartę. W tym przykładzie nadajemy karcie nazwę Store to QVD.
  6. Dodaj na karcie następujące instrukcje skryptu.

     

    //Regardless of the QVD file existing previously or not, updated data gets stored into the QVD. STORE TwitterSearch INTO [lib://DataFiles/AllTweets.qvd](qvd);

     

    Wynikowa karta powinna być podobna do przedstawionej na poniższym zrzucie ekranu:

     

    Zapis na karcie QVD w edytorze ładowania danych

    Store to QVD tab in the data load editor.

Uruchomienie skryptu

Gdy uruchomisz skrypt po raz pierwszy, dane zostaną załadowane z serwisu Twitter, a plik QVD o nazwie AllTweets.qvd zostanie utworzony z danych z serwisu Twitter. Plik QVD zostanie dodany do Twojej przestrzeni DataFiles. Gdy uruchomisz skrypt ponownie, dane zostaną załadowane z serwisu Twitter oraz pliku QVD. Plik  QVD zostanie zaktualizowany z uwzględnieniem danych załadowanych z pliku QVD.

  1. Kliknij polecenie Ładuj dane. Gdy pierwszy raz uruchomisz skrypt, dane zostaną załadowane z serwisu Twitter i z tych danych zostanie utworzony plik AllTweets QVD. Plik QVD zostanie dodany do Twojej przestrzeni DataFiles i możliwe będzie jego wyświetlenie poprzez kliknięcie polecenia Select data.

     

    Gdy uruchomisz skrypt po raz pierwszy, powinien pojawić się komunikat podobny do poniższego:

     

    Okno postępu ładowania danych

    Data load progress window.

     

    Przy drugim ładowaniu danych i kolejnych ładowaniach powinien pojawić się komunikat podobny do poniższego:

     

    Okno postępu ładowania danych

    Data load progress window.

  2. Na podstawie danych utwórz w swojej aplikacji wykresy i tabele.

Ustawianie harmonogramu przeładowywania danych

Po załadowaniu danych można pokazać te dane w aplikacji. Jeden ze sposobów przeładowywania danych, który został przedstawiony, polega na otwarciu edytora skryptów i kliknięciu pozycji Ładuj dane. Jednak dane można również ładować ręcznie albo zgodnie z harmonogramem wybranym w interfejsie użytkownika huba w chmurze. Więcej informacji można znaleźć w temacie Ładowanie danych aplikacji w hubie w chmurze.