19. Dátový tok v reálnom čase
1.Z predajne chodia 10tky JSON správ za sekundu
2.Na 2 týždne sa uložia do Kafky
3.Spark Streaming číta z Kafky
4.Dáta v pôvodnom tvare ukladá do Cassandry
5.Zagregované do Influxu
6.Node.js číta z Influxu cez HTTP API
20. Zdroje dát
WiFi na mobiloch
Real-time location system - presná poloha
Kamery (nie video) - počítanie ľudí, pohlavie, vek
POS transakcie
Služby tretích strán (počasie, atď.)
Chceme byť nezávislí od konkrétneho HW
26. Prekrásny funkcionálny objektový jazyk pre JVM
Silné statické typovanie
Immutability by default
Bohatá štandardná knižnica
Oveľa menej kódu ako v Jave
27.
28.
29.
30. Sada nástrojov na paralelné a distribuované appky
Futures, Actors
Clustering / remoting
Let it crash!
"Without Resilience, Nothing Else Matters" - Jonas Bonér
31. Batchové aj streamové spracovanie dát
Ďalšia generácia po Hadoop MapReduce
Bohaté API - Scala, Python, R, Java
Strojové učenie
Interaktívny režim
Veľa spôsobov nasadenia
36. Databáza pre časové údaje
Bohaté API
Jednoduchá integrácia s grafovými nástrojmi
Priekopnícky spolupracujeme s autormi
Spravili sme vlastný reaktívny driver
42. Lambda architektúra
Immutable master dataset
Donekonečna pribúdajúce dáta, zdroj všetkej pravdy
Každá query je fcia na všetkými dátami
Batch vrstva
Pre každú query pregeneruje view z master datasetu
Speed vrstva
Kompenzuje pomalosť batchu
ale môže vniesť nekonzistentnosť
43.
44. Vďaka Sparku sú algoritmy
pre batch aj speed vrstvu
naimplementované iba raz
46. Priemerná konverzia nakupujúcich
Počet odchádzajúcich ľudí / počet tých čo nakúpili
Zdroje dát:
1. info o pohybe ľudí z kamier
2. POS transakcie z pokladní
50. Join nie je ľahký
Spojenie dvoch prúdov dát do jedného
Čo ak niektoré správy prídu o hodinu (deň) neskôr?
Čo ak niektoré prídu viac razy?
Čo ak sa popredbiehajú?
Cassandra ho nepodporuje
54. Garancia doručenia správ
Najviac raz
správy sa strácajú
Aspoň raz
nič sa nestráca ale môže prísť viackrát
Práve raz
nedá sa - viď. Byzantínci
55. Naozaj sa "práve raz" nedá?
Nevadí, sú spôsoby ako sa s tým vysporiadať:
idempotencia
transakcie
Výsledok je ako keby bola každá správa doručená práve raz
75. Historické dáta sú nuda
Treba predpovedať budúcnosť
Priamo povedať prevádzkarovi čo robiť
Nech odpoveď nehľadá v grafoch a reportoch
"O týždeň v stredu príde 17 žien v strednom veku a nakúpia Alpu.
Doobjednaj ďalšie na sklad."
76. Spark Machine Learning library
Klasifikácia, regresia, clustering, ...
Prediktívna analýza pre existujúce metriky
SW riešenie namiesto HW:
okoloidúci vs. návštevníci z intenzity WIFI signálu