Integrace datové sady

Hlavní návod popisující postup integrace nové datové sady: od analýzy, přes implementaci příjmu PUSH dat/periodické stahování PULL dat, transformaci a uložení do databáze, po zveřejnění a vystavení výstupního API nad daty.

1. Analýza datové sady

  • proces získání dat (PULL, PUSH)
  • typ a velikost dat
  • formát uložení a cílová DB (mongo, postgresql)

2. Vytvoření schémat pro dataset (Schema Definitions)

Viz: gitlab.com/operator-ict/golemio/code/schema-definitions-public/blob/master/docs/new_dataset_integration.md.

3. Input Gateway

  • git repo: https://gitlab.com/operator-ict/golemio/code/input-gateway
  • tento krok pouze pokud jsou data posílána aktivně ze zdroje (PUSH)
  • vytvoření endpointu pro příjem dat
  • validace příchozích dat
  • odeslání dat do fronty
  • dokumentace (OpenAPI)

Viz: gitlab.com/operator-ict/golemio/code/input-gateway/blob/master/docs/new_dataset_integration.md.

4. Integration Engine

  • git repo: gitlab.com/operator-ict/golemio/code/integration-engine
  • vytvoření transformace dat, např. modules/NewDataset/NewDatasetTransformation.ts
  • vytvoření workera, např. modules/NewDataset/NewDatasetWorker.ts
  • přidání záznamu do queueDefinitions.ts
  • nadefinování datového zdroje ve workeru, pouze pokud je data nutné aktivně stahovat (PULL)
  • nadefinování modelu ve workeru
  • samotná implementace metod pro zpracování zpráv z front, celá logika
  • napsání testů
  • dokumentace (docs/datasets.md)

Viz: gitlab.com/operator-ict/golemio/code/integration-engine/blob/master/docs/new_dataset_integration.md.

5. Definice cron tasku

6. Output Gateway

Viz: gitlab.com/operator-ict/golemio/code/output-gateway/blob/master/docs/new_dataset_integration.md.