"Turning the database inside out with Apache Samza" by Martin Kleppmann

  Рет қаралды 185,525

Strange Loop Conference

Strange Loop Conference

Күн бұрын

Databases are global, shared, mutable state. That's the way it has been since the 1960s, and no amount of NoSQL has changed that. However, most self-respecting developers have got rid of mutable global variables in their code long ago. So why do we tolerate databases as they are?
A more promising model, used in some systems, is to think of a database as an always-growing collection of immutable facts. You can query it at some point in time - but that's still old, imperative style thinking. A more fruitful approach is to take the streams of facts as they come in, and functionally process them in real-time.
This talk introduces Apache Samza, a distributed stream processing framework developed at LinkedIn. At first it looks like yet another tool for computing real-time analytics, but it's more than that. Really it's a surreptitious attempt to take the database architecture we know, and turn it inside out.
At its core is a distributed, durable commit log, implemented by Apache Kafka. Layered on top are simple but powerful tools for joining streams and managing large amounts of data reliably.
What we have to gain from turning the database inside out? Simpler code, better scalability, better robustness, lower latency, and more flexibility for doing interesting things with data. After this talk, you'll see the architecture of your own applications in a completely new light.
Speaker: Martin Kleppmann @martinkl
Martin is committer on Apache Samza (a distributed stream processing framework), software engineer at LinkedIn, and author at O'Reilly (currently writing a book on designing data-intensive applications). He invented the infamous "LinkedIn Intro" email proxy. Previously he co-founded and sold two startups, Rapportive and Go Test It. He is based in Cambridge, UK.

Пікірлер: 35
@ChristopherOkhravi
@ChristopherOkhravi 7 жыл бұрын
2017 and this is still incredible interesting. Thank you.
@darkodzalevski1422
@darkodzalevski1422 3 жыл бұрын
2021 still awesome! Thank you!
@FofoMoMo1234
@FofoMoMo1234 9 жыл бұрын
Brilliant talk, I disagree only with the comment "Kill REST APIs" but do agree with reducing the focus on request/response systems. Req/Res are implementations details of HTTP, REST can work over websockets. REST is a concept for building distributed systems, it is in no way is it limited to APIs or HTTP(req/res). That being said most "REST" APIs are implemented incorrectly since they lack Hypermedia controls in their message structure.
@kang-licheng8282
@kang-licheng8282 5 жыл бұрын
Martin Kleppmann The God of Distributed Systems! Thanks Strange Loop for sharing this
@richardjblackman
@richardjblackman 6 ай бұрын
amazing speaker. explaining a difficult concept with simplicity. 2024 still interesting !
@metaocloudstudio2221
@metaocloudstudio2221 2 жыл бұрын
This talk is the most important talk in the century about all kind of computer future logic
@raghavendrargv783
@raghavendrargv783 4 жыл бұрын
Still Relevant! Awesome content Martin :)
@mcscubin8935
@mcscubin8935 2 жыл бұрын
I really enjoy this kind of thinking. Thanks for the talk.
@shunxiancai5878
@shunxiancai5878 Жыл бұрын
really digging these hand written slides
@lokthar6314
@lokthar6314 4 жыл бұрын
I like Martin Kleppmann, he's a very bright person and a good teacher. I disagree though with his statement "Kill REST". In this talk he proposes to use streams over REST but imo this is all use case dependent. Also the idea of a stream is not so new, publish/subscribe communication flow is pretty widely used already, just think about web sockets. Think about an application that doesn't need to be updated about any CRUD operations within the DB in real time (like 95% of applications). Would you still introduce a complex stream based backend over simple REST?
@pveentjer
@pveentjer 8 жыл бұрын
Excellent presentation.
@maverick88NL
@maverick88NL 9 жыл бұрын
CQRS?
@OverG88
@OverG88 8 жыл бұрын
+maverick88NL Totally! However, in upcoming period, I bet that many people will feel uncomfortable by switching from CRUD to CQRS. Worst issues I encountered was the essential separation of write model from read model. Especially, how to fit everything with specific technology. Implementation of CQRS pattern can be ridiculous sometimes. :)
@123wordbird321
@123wordbird321 8 жыл бұрын
MQTT is a publish/subscribe server with open source JavaScript web socket libraries that's been around for a long time. I used it in the public safety sector for officers to subscribe to streams published by the dispatch center. I guess I'm fuzzy on how this differs from that other than fuzzing the lines between the MQTT server and the database it may ride on.
@MaartenvanGijssel
@MaartenvanGijssel 9 жыл бұрын
Amazing! Thanks!
@MsMadvas
@MsMadvas 9 жыл бұрын
I wonder if this guy knows Datomic. I think it's exactly what he wants :)
@tyrsius
@tyrsius 8 жыл бұрын
+Matúš Lešťan He mentions this IN THE VIDEO...
@MartinClausen
@MartinClausen 8 жыл бұрын
+Matúš Lešťan He compares to Datomic at 43:05
@sunnyshah4459
@sunnyshah4459 8 жыл бұрын
+Matúš Lešťan Yes, He has mentioned Datomic in his book Designing Data Intensive Applications, 2nd chapter.
@arunsatyarth9097
@arunsatyarth9097 4 жыл бұрын
If he wants it, chances are he probably built it.
@jesusisalive2
@jesusisalive2 10 жыл бұрын
good presentation. very interesting.
@ashconnor
@ashconnor 8 жыл бұрын
So Event Sourcing then?
@tenstairs
@tenstairs 5 жыл бұрын
"Martin Kleppmann - Event Sourcing and Stream Processing at Scale" - kzbin.info/www/bejne/l6fMXoeQfp6naKs
@ba8e
@ba8e 8 жыл бұрын
24:22 "Kappa" Architecture. :)
@StealThisKarl
@StealThisKarl 8 жыл бұрын
I wonder what Martin Kleppmann thinks of relay and graphql
@zoumzoumzou
@zoumzoumzou 5 жыл бұрын
more like redux ...
@TheDroidMate
@TheDroidMate 5 жыл бұрын
Does anyone know what software was used to draw theses slides? Would be great for university thanks folks
@cyberlad24
@cyberlad24 4 жыл бұрын
iPad Pro with pen would suffice :)
@stephaneislistening6103
@stephaneislistening6103 4 жыл бұрын
I read the phrase "When a client reads from a materialized view, it can keep the net‐ work connection open." from Martin's book "Making sense..." and wondered where was that coming from. How a materialized view offers such a feature ?
@igboman2860
@igboman2860 Жыл бұрын
Kafka streams seems to have killed Samza
@jesusisalive2
@jesusisalive2 10 жыл бұрын
databases are so 1970's
@MrGarkin
@MrGarkin 9 жыл бұрын
Turing machines are so 1940's
@MrGarkin
@MrGarkin 9 жыл бұрын
Pants are so 1800's
@ky5069
@ky5069 4 жыл бұрын
Wheels are so 4000 BC
"Transactions: myths, surprises and opportunities" by Martin Kleppmann
41:08
Strange Loop Conference
Рет қаралды 72 М.
Building real-time data products at LinkedIn with Apache Samza
49:42
Martin Kleppmann
Рет қаралды 22 М.
If Barbie came to life! 💝
00:37
Meow-some! Reacts
Рет қаралды 69 МЛН
天使救了路飞!#天使#小丑#路飞#家庭
00:35
家庭搞笑日记
Рет қаралды 88 МЛН
Doing This Instead Of Studying.. 😳
00:12
Jojo Sim
Рет қаралды 36 МЛН
"Performance Matters" by Emery Berger
42:15
Strange Loop Conference
Рет қаралды 482 М.
CRDTs and the Quest for Distributed Consistency
43:39
InfoQ
Рет қаралды 54 М.
"The Mess We're In" by Joe Armstrong
45:50
Strange Loop Conference
Рет қаралды 379 М.
"I See What You Mean" by Peter Alvaro
52:29
Strange Loop Conference
Рет қаралды 55 М.
Martin Kleppmann - Event Sourcing and Stream Processing at Scale
51:34
Domain-Driven Design Europe
Рет қаралды 53 М.
🍎 Зачем покупают Magic Trackpad от Apple?
0:32
ЗЕ МАККЕРС
Рет қаралды 242 М.
Сделал из зарядного устройства нечто!
0:48
GOOGLE PIXEL 9 против iPHONE 15: ЭТО ЖЕСТЬ!
25:42
Арсений Петров
Рет қаралды 67 М.