Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Data Streaming für Cloud Natives
Search
Nicolas Byl
May 04, 2017
Technology
39
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Data Streaming für Cloud Natives
Nicolas Byl
May 04, 2017
More Decks by Nicolas Byl
See All by Nicolas Byl
Platform Engineering ❤️ Developer Experience
nbyl
0
53
Die Flucht aus der Prototypen-Hölle
nbyl
0
57
Lean Prototyping for Industrial-IoT Projects
nbyl
0
76
DevSecOps - Vom Unikum zur gut geölten Maschine
nbyl
0
120
Securing your software supply chain
nbyl
0
390
Keeping-Up-WithUpstream.pdf
nbyl
0
190
Dr. Kube und der Helm - Anatomie einer CD-Pipeline
nbyl
0
150
Securing the "other" supply chain
nbyl
0
320
Kubernetes - Auf die Cluster, Fertig, Los!
nbyl
0
220
Other Decks in Technology
See All in Technology
AWSシリコン最前線 〜AI時代のチップ選択を読み解く〜
htokoyo
1
160
Oracle Cloud Infrastructure IaaS 新機能アップデート 2026/3 - 2026/5
oracle4engineer
PRO
1
200
Agentic Web
dynamis
1
160
AgentGatewayを試してみたかった
tkikuchi
0
120
Databricks における 生成AIガバナンスの実践
taka_aki
1
330
先取りMaven4 ~16年ぶりのメジャーアップデート、その進化とは?~
ogiwarat
0
150
Sony_KMP_Journey_KotlinConf2026
sony
2
210
新アーキテクチャ「TiDB X」解説とDedicated比較 TiDB Cloud Premiumのゲーム運用活用を検証
staffrecruiter
0
120
Rubyで音を視る
ydah
1
100
Platform Engineering as a Product: Criteria for Improvement and Multi-Tenant Design
kumorn5s
0
510
データ基盤をDataformで整えた話 〜 開発環境を添えて 〜
takapy
0
120
React、まだ楽しくて草
uhyo
7
4.1k
Featured
See All Featured
GitHub's CSS Performance
jonrohan
1033
470k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
WENDY [Excerpt]
tessaabrams
11
38k
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.5k
Tell your own story through comics
letsgokoyo
1
950
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
0
390
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.5k
The #1 spot is gone: here's how to win anyway
tamaranovitovic
2
1.1k
Building a Modern Day E-commerce SEO Strategy
aleyda
45
9.1k
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
1
340
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
360
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
220
Transcript
1 DATA STREAMING FÜR CLOUD NATIVES building IoT 2017 Nicolas
Byl, codecentric AG
2 . 1 Stream Processing, anyone?
2 . 2 Spring Cloud Dataflow
3 . 1 PROCESSING MODELL
3 . 2 Streams kleinste Einheit von Spring Cloud Dataflow
Verarbeitungsstrecke
3 . 3 Stream Struktur Source als Datenquelle Multiple Processor
Instanzen für nachfolgende Verarbeitungsschritte Sink als Ende der Verarbeitungskette
None
3 . 4 3 . 5 Verarbeitung Jeder Instanz der
Verarbeitungskette ist eine Spring Boot Applikation Pufferung zwischen Verarbeitungsschritten in Queue Pull Mechanismus für nächste Datensatz
3 . 6 Queueing
4 . 1 ARCHITEKTUR
None
4 . 2 4 . 3 Building Blocks Spring Boot
Spring Integration Spring Batch
4 . 4 Deployables Spring Boot Applikationen Spring Cloud Stream
Starters Spring Cloud Stream Spring Cloud Task
4 . 5 Deployer Spring Cloud Deployer - SPI
4 . 6 Interfaces Command Line Interface Dashboard Flo Editor
REST
5 . 1 BUILDING STREAMS
5 . 2 Command Line Interface Definition und Management der
vorhandenen Streams DSL zur Verkettung von Applikation mittels |
5 . 3 Beispiel 1: Ticktack stream create --name ticktock
--definition "time | log" --deploy
5 . 4 Beispiel 2: HTTP-Request stream create --name test
--definition "http | log" stream deploy test --properties "app.http.spring.cloud.deployer.kubernetes.c http post --target http://<IP>:8080 --data "Hello"
5 . 5 Grafischer Editor
6 . 1 CUSTOM APPLICATIONS
6 . 2 Programmiermodell - Spring Cloud Stream Source, Sink
& Processor sind normale Spring Beans Kopplung an Spring Integration Binding an den jeweiligen Typen Abstraktion des Queueing Providers durch das Framework
6 . 3 Beispiel 1: Direkte Bearbeitung in der Beans
@EnableBinding(Processor.class) public class TransformProcessor { @Autowired VotingService votingService; @StreamListener(Processor.INPUT) @SendTo(Processor.OUTPUT) public VoteResult handle(Vote vote) { return votingService.record(vote); } }
6 . 4 Beispiel 2: Spring Integration als Source @EnableBinding(Source.class)
public class TimerSource { @Value("${format}") private String format; @Bean @InboundChannelAdapter(value = Source.OUTPUT, poller = @Poller(fixedDelay public MessageSource<String> timerMessageSource() { return () -> new GenericMessage<>(new SimpleDateFormat(format).format( } }
6 . 5 Beispiel 3: Reative Processor @EnableRxJavaProcessor public class
RxJavaTransformer { private static Logger logger = LoggerFactory.getLogger(RxJavaTransformer @Bean public RxJavaProcessor<String,String> processor() { return inputStream -> inputStream.map(data -> { logger.info("Got data = " + data); return data; }) .buffer(5) .map(data -> String.valueOf(avg(data))); } [...] }
7 . 1 BEISPIELE
7 . 2 Beispiel 3: Twitter Analyse stream create --name
twitter-demo --definition "twitterstream --twitter.credentials.consumer-key=<...> [..] | field-value-counter --field-value-counter.fieldName=entities.hashtags.text --field-value-counter.name=hashtags"
8 . 1 ZUSAMMENFASSUNG
8 . 2 Andere Anwendungen Analytics Monitoring CRM ...
8 . 3 The End Copyright 2017