- 121
- 284 869
TigerBeetle
Приєднався 4 гру 2020
The financial transactions database designed for mission critical safety and performance.
Episode 050: Implementing Time
Join live on Twitch on Thursday, 17:00 UTC at www.twitch.tv/tigerbeetle !
Source code: github.com/tigerbeetle/tigerbeetle/
Playlist: ua-cam.com/play/PL9eL-xg48OM3pnVqFSRyBFleHtBBw-nmZ.html
Source code: github.com/tigerbeetle/tigerbeetle/
Playlist: ua-cam.com/play/PL9eL-xg48OM3pnVqFSRyBFleHtBBw-nmZ.html
Переглядів: 124
Відео
Episode 049: Everything You Don't Want to But Have to Know About Time
Переглядів 4529 годин тому
Join live on Twitch on Thursday, 17:00 UTC at www.twitch.tv/tigerbeetle ! Source code: github.com/tigerbeetle/tigerbeetle Playlist: ua-cam.com/play/PL9eL-xg48OM3pnVqFSRyBFleHtBBw-nmZ.html
Episode 048: Why TigerBeetle Is So Slow, With Tobi!
Переглядів 1,6 тис.День тому
Join live on Twitch on Thursday, 17:00 UTC at www.twitch.tv/tigerbeetle ! Source code: github.com/tigerbeetle/tigerbeetle/tree/IronBeetle Playlist: ua-cam.com/play/PL9eL-xg48OM3pnVqFSRyBFleHtBBw-nmZ.html
Episode 047: Compaction Strikes Again, Part II
Переглядів 31814 днів тому
Join live on Twitch on Thursday, 17:00 UTC at www.twitch.tv/tigerbeetle ! Source code: github.com/tigerbeetle/tigerbeetle/tree/IronBeetle Playlist: ua-cam.com/play/PL9eL-xg48OM3pnVqFSRyBFleHtBBw-nmZ.html
Episode 046: Compaction Strikes Again, Part I
Переглядів 392Місяць тому
Join live on Twitch on Thursday, 17:00 UTC at www.twitch.tv/tigerbeetle ! Source code: github.com/tigerbeetle/tigerbeetle/tree/IronBeetle Playlist: ua-cam.com/play/PL9eL-xg48OM3pnVqFSRyBFleHtBBw-nmZ.html
Episode 045: The Grand Recap, Part || (and III!!!)
Переглядів 228Місяць тому
Join live on Twitch on Thursday, 17:00 UTC at www.twitch.tv/tigerbeetle ! Source code: github.com/tigerbeetle/tigerbeetle/tree/IronBeetle Playlist: ua-cam.com/play/PL9eL-xg48OM3pnVqFSRyBFleHtBBw-nmZ.html
Episode 044: The Grand Recap, Part I
Переглядів 611Місяць тому
Join live on Twitch on Thursday, 17:00 UTC at www.twitch.tv/tigerbeetle ! Source code: github.com/tigerbeetle/tigerbeetle/tree/IronBeetle Playlist: ua-cam.com/play/PL9eL-xg48OM3pnVqFSRyBFleHtBBw-nmZ.html
Durability and the Art of Consensus by Joran Dirk Greef
Переглядів 3,5 тис.Місяць тому
Which letter in ACID, if you pull it out, would undo the others? And if you put it back, would set you on the path, not only of replication, but (surprisingly) consensus too? Let's push past the limits, over-specifications and assumptions of popular protocols, to build a backup system from first principles. Talk from Systems Distributed '24: systemsdistributed.com Join the chat at slack.tigerbe...
Episode 043: The End of the Compaction (Finally!)
Переглядів 349Місяць тому
Join live on Twitch on Thursday, 17:00 UTC at www.twitch.tv/tigerbeetle ! Source code: github.com/tigerbeetle/tigerbeetle/tree/IronBeetle Playlist: ua-cam.com/play/PL9eL-xg48OM3pnVqFSRyBFleHtBBw-nmZ.html
Rethinking Authentication by Frank Denis
Переглядів 3,1 тис.Місяць тому
In distributed systems, authentication is vital for ensuring security. However, traditional systems frequently struggle to provide adequate performance, and they often remain vulnerable to real-world attacks. We’re going to explore simple and practical authentication schemes that address these limitations, significantly enhancing performance, latency, and privacy while strenghtening overall sec...
Garden of Forking Paths by Alex Petrov
Переглядів 1,6 тис.Місяць тому
Traditional randomized testing, both in the field of Databases and outside of it, might be a somewhat inefficient way to hunt for bugs. However, in this talk, we’re going to empower you with the knowledge of how to make your tests cover more grounds. By controlling the inputs of random number generation, we can make our software try less of the same thing and instead, explore new, creative ways...
Iron Beetle 042: Compaction MERGE!
Переглядів 3792 місяці тому
Join live on Twitch on Thursday, 17:00 UTC at www.twitch.tv/tigerbeetle ! Source code: github.com/tigerbeetle/tigerbeetle/tree/IronBeetle Playlist: ua-cam.com/play/PL9eL-xg48OM3pnVqFSRyBFleHtBBw-nmZ.html
Systems Distributed '24 Lightning Talks
Переглядів 8 тис.2 місяці тому
Lightning talks from Systems Distributed ‘24 00:00 Intro 00:45 div, IDE, and Conquer by Loris Cro x.com/croloris 05:18 Zero Downtime: The Holy Grail of Infrastructure by Shivansh Vij x.com/confusedqubit 10:21 Sometimes You Don't Need A Distributed System by Amey Chaugule www.linkedin.com/in/ameychaugule/ 15:11 Data & Databases in Procedural Voxel Games by Nathan Bourgeois www.linkedin.com/in/nb...
5 Lessons from 5 Years of Building Databases at Scale by Sammy Steele
Переглядів 7 тис.2 місяці тому
What is the fastest way to divide a group of systems engineers? Ask them to choose the best database. What actually unites most systems engineers? The idea that databases are hard. The CAP theorem isn’t just a theory. Database engineers deal with the realities of these trade offs every day. When debugging outages, they often simultaneously encounter scaling bottlenecks, availability impacts, ne...
Episode 041: Compaction Input
Переглядів 3242 місяці тому
Join live on Twitch on Thursday, 17:00 UTC at www.twitch.tv/tigerbeetle ! Source code: github.com/tigerbeetle/tigerbeetle/tree/IronBeetle Playlist: ua-cam.com/play/PL9eL-xg48OM3pnVqFSRyBFleHtBBw-nmZ.html
Being our own worst customer by Brian Lagoda & John Murray
Переглядів 1,3 тис.2 місяці тому
Being our own worst customer by Brian Lagoda & John Murray
Systems Resurgent? by Amod Malviya
Переглядів 1,5 тис.2 місяці тому
Systems Resurgent? by Amod Malviya
Bet Against SQL: Queries as Code by James Cowling & Sujay Jayakar
Переглядів 7 тис.2 місяці тому
Bet Against SQL: Queries as Code by James Cowling & Sujay Jayakar
Jepsen 15: What Even Are Transactions? by Kyle Kingsbury
Переглядів 7 тис.2 місяці тому
Jepsen 15: What Even Are Transactions? by Kyle Kingsbury
Distributed DDL Replication at Global Scale by Gwen Shapira
Переглядів 1,6 тис.2 місяці тому
Distributed DDL Replication at Global Scale by Gwen Shapira
Distributed Pure Functions by Richard Feldman
Переглядів 8 тис.3 місяці тому
Distributed Pure Functions by Richard Feldman
Lessons Learned from 2 Decades of Building Data Infra Products by Deepti Srivastava
Переглядів 2,7 тис.3 місяці тому
Lessons Learned from 2 Decades of Building Data Infra Products by Deepti Srivastava
Distributed Asynchronous Await • A new programming model for distributed applications - by D. Tornow
Переглядів 9 тис.3 місяці тому
Distributed Asynchronous Await • A new programming model for distributed applications - by D. Tornow
A Systems-Minded Approach to Creating a Music Player Application by Andrew Kelley
Переглядів 38 тис.3 місяці тому
A Systems-Minded Approach to Creating a Music Player Application by Andrew Kelley
Episode 037: The Mutable and the Immutable Tables
Переглядів 1873 місяці тому
Episode 037: The Mutable and the Immutable Tables
Episode 036: A Cache That Always Hits
Переглядів 1,3 тис.3 місяці тому
Episode 036: A Cache That Always Hits
that was so good holy shit
great talk
19:29 banger
5:07 "you might even lose some hair if you try to deal with that"
The link provided in the description does not work btw.
Oh dear, thanks for noticing!
I do walk&talk technique in other areas of my life as it helps me with thinking. I LOVE it, but others really HATE it. :D
Chipper(*), competent, dirty hands w/OSS, and doesn't wear her genius on her sleeve. IT needs more peeps like this. (*) - admittedly, somewhat less so once i realized I'd been listening on 1.5x and slowed down, but still....
heresy! boo hsss
He cut his hair ❤❤❤
Why wouldn't it be deterministic? If the algorithm is replicated then it should be. Even if an RNG were used, you can assure that the same random sequence is used.
Really changes the way u think about coding
19:26 - So good (on top of the interesting talk!) - Thanks Andrew for putting this out there!
What if Jesus was a database and comes back tomorrow?
So really - have design phase be important and assign more time to it - assert errors that can happen due to programmer errors and not simply for recoverable errors - build simulation tools that can stress the system and bring things down.
On Unix, you can use lpr/lpd/etc to implement an audio player and queue. 😎
I love to have that wallpaper
TigerLang when?
We used this style in university, it was called defensive programming.
Just starting with TigerStyle. Baby steps though. Trying to add at least two assertion per function.
i didnt understand a lot, but maybe in a year i will
Same here. I think it takes a lot of practice. Also, try to read document on their website bc it’s easier to digest.
First of all, thank you for this series, really really informative!! I just wanted to ask what is it that you use for searching all files in VSCode?
This feature is called search editor: code.visualstudio.com/docs/editor/codebasics#_search-editor
Learnt so much! Kinda like the silver bullet or the promise of agile/scrum :)
You tout Zig's default assertions for arithmetic overflow, but 5 minutes earlier you dinged languages that turn off assertions in production builds--which Zig does. The inconsistency is due to talking (and thinking) in terms of absolutes. The reality is that there's a tradeoff between performance and safety, and the Zig compiler makes the often reasonable assumption that frequently executed assertions like arithmetic and buffer overflow are too expensive to retain in production. But the language could do a lot better--the length of an array should be constrained to a range type, and indices should be constrained to a range type with min and max 1 less than the length type. Always check that values with a range type are valid. Check that the range type of an index value is within the actual length of the array--such checks can be done once when the array length is known--certainly lifted out of loops. Actual index bounds checks can be eliminated. For arithmetic overflow, we just need control over which blocks are checked under which build types. By default they should be on for debug builds and off for production builds. BTW, after listening to the whole talk, I still don't know what "Tiger Style" is, but did hear some stuff about sculpting and painting that struck me as irrelevant filler.
In fact, Zig allows fine-grained enabling/disabling of runtime safety checks (including assertions) right down to the block scope level. Notwithstanding, TigerBeetle always drives with seatbelts on :)
Conversational transactions == State the problem is micro services sold to masses - that's the bad abstraction
12 minutes in. so far nothing was said.
Amazing talk
Why even do DDL inside transaction. This is should be a BUG
I'll probably have to think about this for the next week. It can surely change the way in which I program
These guys are probably the only devs openly talking about how to do event sourcing and machine sympathy correctly there are others but they keep their success/research to themselves this is gold in the right hands
Louis CK is one of the best programmers I know!
i aspire to be as enthusiastic about my projects as joran is about his
wow! Very good talk!
Have couple of questions; 1. How do you develop new versions? 2. (to be continued)
This makes me think of the RethinkDB query language with explicit index range.
if someone comes here wondering - like I was - about what the animation is showing when talking about quicksort, I believe it's the Lomuto partitioning.
The thousandth like was given
The Grand recap without Tracy?😢
19:51 DATOMIC
Amazing talk! Thank you Kyle for helping us fix this in MariaDB. The good news is that, since version 10.6.18, MariaDB includes the variable `innodb_snapshot_isolation`.
Awesome talk. Not a database guy, but learned a lot about DBs just by watching to Joran's talks
Awesome facts. Thanks, Joran :)
Such a great talk. Thanks Joran!
A pleasure @anusko!
Great talk! Loved the pragmatic approach to the system and trade-offs of working to enable a product focussed company. Aligns a lot with what I've been experiencing at my work, all the lessons learned rang incredibly true to me.
Insightful talk, I would love to see better alternatives to JWT become common. However server side sessions still seem like a solid alternative, with far fewer problems/attack surface than any of the signed token approaches discussed.
Server side sessions are also a big headache, and more challenging to scale, especially cross-region.
@@pikzelmore of a headache than jwt? Maybe for native mobile apps How would cross region scaling be difficult?
Fastly have done some fantastic work in this area, it's great to hear about it! I would like to warn about putting more than one capability into a credential. Once you do this, the lovely mathematical properties that object-capability systems grant you don't entirely hold, even if the weakness is nicely scoped. Being able to re-use one credential for a different resource is at the root of a wide variety of vulnerabilities, especially attacks involving enumeration or ibac.
Isn’t the fact that he has a black card authorization and not authentication?
This is a bit of a rabbit hole, as the distinction isn't always quite so clear. Yes, the card names a Subject, but at this point in the day, it's unlikely that staff are verifying that the human wearing the card is the subject so named. Indeed, we probably don't even care if they weren't - what we mostly care about is whether someone has paid the appropriate amount for a human to be there. The example more commonly used (and clearer) is the car key, but variety is the spice of life, I guess.
yes but can i test a sum function with this thing? lol
You have to look into meta data checksums in ZFS as it enables bitrot correction. Unlike Linux, Solaris and later BSD added ZFS exactly because of oblivious data loss caused by bitrot. And get this, ZFS was introduced with Solaris 10 a full decade before Fsyncgate… While you can’t easily update the IO used in a database, you can install a BSD distribution and format your database storage disk array with ZFS for handling all mission critical data. An enterprise would probably go with Oracle DB on Solaris . That said, for financial data, TigerBeetle is currently the single best option because not everyone has the time and expertise to gronk BSD / ZFS or the money for Oracle on Solaris.
Dang we got a Borges reference... sign me up!
You're Telling Me: Database Scaling - Because You Want Me to Believe its Cheap to Transmit Data on your Networks. I can come To America. build a Website in My Garage. Steal somethings from your Basement and Have a Successful E-Commerce Web Store. So You're Telling Me Database Scaling: "Come explore lessons learned from 5 years of building databases at petabyte scale at Dropbox and Figma" - You Want Me To Come for an Education at Dropbox/Figma. Where You'll Teach a Pr0stitute of Yours to Fu*ck Me.