Jak postavit IoT datovou pipeline a nezbláznit se z toho

Jak postavit IoT datovou pipeline a nezbláznit se z toho

V Energomonitoru přijímáme v reálném čase data z tisíců různorodých zařízení po celém světě a zpracováváme je. Klíčovým prvkem přitom je naše datová pipeline. V přednášce popíšu, jak jsme ji během let postupně vystavěli, jak dnes funguje a kam ji chceme ještě posunout. Představím přitom technologie a nástroje, které používáme, a především ukážu, jak přemýšlet nad streamovým zpracováním dat, které dnes nabývá na stále větší důležitosti i v jiných oblastech než IoT.

Předneseno na TechMeetup Ostrava Konference 2018.

Ebe96461709771a430da9c7c58f9ae5f?s=128

David Majda

November 01, 2018
Tweet

Transcript

  1. Jak postavit IoT datovou pipeline a nezbláznit se z toho

    David Majda @dmajda TechMeetup Ostrava Konference 2018 · Ostrava · 1. listopadu 2018
  2. None
  3. None
  4. None
  5. Datová pipeline

  6. Proč o ní povídám?

  7. Streamové zpracování dat

  8. None
  9. imp → kWh → €

  10. 2013–2019

  11. Zjednodušuju!

  12. Aplikace Processing Redis S3 SQL Zařízení

  13. Aplikace Processing Redis S3 SQL Zařízení Real-time data

  14. None
  15. MQTT Normalizer Redis Aplikace Bridge Processing Redis S3 SQL Redis

    Zařízení Zařízení Reader
  16. MQTT Normalizer Redis Aplikace Bridge Processing Redis S3 SQL Redis

    Zařízení Zařízení Reader
  17. MQTT Normalizer Redis Aplikace Bridge Processing Redis S3 SQL Redis

    Zařízení Zařízení Reader Lepší ukládání dat
  18. None
  19. MQTT Normalizer Redis Aplikace Bridge Processing Redis S3 Influx SQL

    Redis Zařízení Zařízení Reader
  20. MQTT Normalizer Redis Aplikace Bridge Processing Redis S3 Influx SQL

    Redis Zařízení Zařízení Reader
  21. MQTT Normalizer Redis Aplikace Bridge Processing Redis S3 Influx SQL

    Redis Zařízení Zařízení Reader Více formátů dat na MQTT
  22. MQTT Normalizer Redis Aplikace Bridge Processing Redis S3 Influx SQL

    Redis Zařízení Zařízení Reader
  23. MQTT Normalizer Redis Aplikace Bridge Processing Redis S3 Influx SQL

    Redis Zařízení Zařízení Reader
  24. MQTT Normalizer Redis Aplikace Bridge Processing Redis S3 Influx SQL

    Redis Zařízení Zařízení Reader Flexibilita architektury Robustnost systému front
  25. None
  26. MQTT Normalizer Bridge Kafka Aplikace Bridge Processing Redis S3 Influx

    SQL Kafka Redis Zařízení Zařízení Reader
  27. MQTT Normalizer Bridge Kafka Aplikace Bridge Processing Redis S3 Influx

    SQL Kafka Redis Zařízení Zařízení Reader
  28. MQTT Normalizer Bridge Kafka Aplikace Bridge Processing Redis S3 Influx

    SQL Kafka Redis Zařízení Zařízení Reader Více vstupů a výstupů dat
  29. MQTT Normalizer Bridge DGI Kafka Aplikace Bridge Processing Redis S3

    Influx SQL Kafka Redis Zařízení Zařízení
  30. MQTT Normalizer Bridge DGI Kafka Aplikace Bridge Processing Redis S3

    Influx SQL Kafka Redis Zařízení Zařízení
  31. MQTT Normalizer Bridge DGI Kafka Aplikace Bridge Processing Redis S3

    Influx SQL Kafka Redis Zařízení Zařízení Možnosti a flexibilita processingu Výkon a stabilita processingu, technický dluh
  32. MQTT Normalizer DGI Kafka Aplikace Influx SQL Kafka Zařízení Nový

    processing Writer Kafka
  33. MQTT Normalizer DGI Kafka Aplikace Influx SQL Kafka Zařízení Nový

    processing Writer Kafka
  34. CoAP Kafka Energomonitor Kafka Processing HTTP MQTT … Zařízení Zařízení

    Zařízení Zařízení DGI DGI DGI DGI Streaming API Partner …
  35. Poučení

  36. Požadavky se mění a přibývají

  37. Nejdůležitější vlastností designu je flexibilita.

  38. Hodně malých, volně propojených komponent

  39. Inkrementální vývoj

  40. Streamové zpracování dat chce jiný mind-set

  41. Fakt real-time!

  42. Blokující operace jsou anti-pattern

  43. Ladění se počítá

  44. Lidsky čitelné datové formáty

  45. Minimum speciálních nástrojů

  46. Konec David Majda @dmajda