top of page

Integracja danych pogodowych
z REST API do bazy danych SQL

Obejrzyj wideo

Wyjaśnimy, jak łączyć aktualizacje warunków pogodowych z bazą danych SQL.

Obejrzyj krótki film Jane z inanalytics.io, w którym wyjaśni, jak działa integracja interfejsu API REST na podstawie danych pogodowych z przykładem potoku bazy danych Azure SQL.

Dzięki uproszczonemu interfejsowi API JS , wymagane są tylko dwie krótkie funkcje JavaScript.
Napisz je tak, aby mogły wchodzić w interakcje z witryną https://openweathermap.org/ , pobierać prognozę pogody dla miasta (np. Krakowa) i rejestrować dane na serwerze bazy danych Azure SQL co minutę.

  • onStartup

  •  

    InDriver.import("RestApi");

     

    RestApi.defineRequest('krakow','{"url":"https://api.openweathermap.org/data/2.5/weather?appid={your_app_id}&q=krakow","timeout":5000, "type":"get","headers":{"ContentTypeHeader":"application/json"}}');

    InDriver.installHook(60000);

  • onHook
     

  • RestApi.sendRequest('krakow');
    if (RestApi.isSucceeded()) {

            let ts = InDriver.hookTs();

    const data = RestApi.getData('krakow');

    InDriver.sqlExecute("azureserver", "insert into public.weather (source, timestamp, data )
    values ( 'krakow','"
    +ts.toISOString()+"',$$"+data+"$$);"

    }

    Tak to wygląda w programie InStudio.

    InStudio z konfiguracją dla Data Pipeline - RestApi JSON Prognoza pogody w bazie danych SQL

    Wyniki

    Co pełną minutę (zsynchronizowaną z zegarem komputera) do serwera bazy danych Azure SQL zostanie wstawiony nowy wiersz. Ten wiersz zawiera kolumny „źródło”, „znacznik czasu” i „dane”, zawierające aktualne dane pogodowe w formacie JSON pobrane z witryny https://openweathermap.org/ .

    select source, ts, data from public.wheather

    order by timestamp desc limit 1;

    źródło

    ts

    dane

    2023-1 0-04
    13:41:0 0+0 0

    Kraków

    Dane JSON prezentujące aktualne warunki pogodowe, otrzymane przez RestApi z openweathermap.org i zarejestrowane w bazie danych SQL

    Korzyści z użycia InDriver w tym przykładzie:

    • Prostota i minimalny wysiłek
      Wystarczy zainstalować InDriver, kliknąć „Dodaj nowe zadanie”, wprowadzić dwie funkcje wymienione powyżej, a następnie kliknąć „Zapisz i uruchom ponownie”.

    • Stabilność
      InDriver zapewnia dostępność 24 godziny na dobę, 7 dni w tygodniu, automatycznie nawiązując połączenie w przypadku awarii połączenia RestApi lub SQL.

    • Skalowalność
      Można zainstalować wiele programów InDriver na różnych komputerach, a każdy program InDriver może wykonywać wiele zadań jednocześnie.

    • Zarządzalność
      Dzięki InStudio zarządzanie InDriverami jest niezwykle proste. Możesz zdalnie sprawdzać ich dostępność, monitorować błędy i logi, aktualizować konfiguracje i edytować skrypty.

    • Minimalne koszty
      Aplikacja InDriver może wykonywać tego typu zadania nieograniczoną liczbę razy, gromadząc dane dla tysięcy miast, a płacisz tylko raz za abonament roczny.

    bottom of page