top of page

Integracja danych pogodowych
z REST API do bazy danych SQL

Obejrzyj wideo

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

Obejrzyj krótki film Jane z inanalytics.io, w którym wyjaśni ona integrację 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 współpracować z witryną https://openweathermap.org/ , pobierać prognozę pogody dla danego 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 Weather Forecast Data to SQL Database

    Wyniki

    Co pełną minutę (zsynchronizowaną z zegarem komputera) nowy wiersz zostanie wstawiony do Azure SQL Database Server. Ten wiersz zawiera kolumny „source”, „timestamp” i „data”, zawierające bieżące dane pogodowe w formacie JSON pobrane z https://openweathermap.org/ .

    select source, ts, data from public.wheather

    order by timestamp desc limit 1;

    source

    ts

    dane

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

    kraków

    Dane JSON przedstawiają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 aplikacji InDriver na różnych komputerach, a każda aplikacja InDriver może obsługiwać wiele zadań jednocześnie.

    • Zarządzalność
      Dzięki InStudio zarządzanie InDriverami jest dziecinnie proste. Możesz zdalnie sprawdzać ich dostępność, monitorować błędy i dzienniki, 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 za abonament roczny płacisz tylko raz.

    bottom of page