HackerTube
HomeLongsLikedHistoryWatch laterCategoriesPlaylistsSettings

Introduction to NoSQL • Martin Fowler • GOTO 2012

GOTO Conferences6 HN recommenders · recommended in 6 months, 2015-2021
YouTube
1M views · 13 years ago · talk · evergreen

Martin Fowler's GOTO 2012 introduction to NoSQL databases: where they came from, their data models, how consistency thinking differs, and when to use them. He argues they won't make relational databases obsolete and introduces polyglot persistence.

HN repeatedly recommends it as a balanced, beginner-friendly overview of SQL versus NoSQL, and some teachers assign it to students.

Databases & storageSoftware architecture & design#nosql#martinfowler#polyglotpersistence#consistency#datamodels

10 comments from Hacker News

@shaicoleman2021 · in “What I'm Up to Now”

> It turned out that they [The Guardian] were burnt, and wrote about their painful migration to a RDBMS and to safety It's not really fair to judge technical decisions retroactively. PostgreSQL in 2012 wasn't the same as in 2018. PostgreSQL was uncommon back then, there was a limited talent pool, it was painful to operate/failover/scale/shard, and it wasn't yet available on RDS. JSONB support only arrived to Postgres in Dec/2014. The alternatives (e.g. MySQL) were also problematic, e.g. locking tables every time a new column was added was likely a deal-breaker. They only migrated to PostgreSQL because they didn't want the pain and downtime of self-hosting MongoDB, but there didn't seem to be any major architectural issues. In this case it seemed like specific issues with MongoDB in production rather than NoSQL in general. He briefly touches on the downsides during the talk, but the purpose of a talk is to excite and pique somebody's interest. ▶ this video In the book he uses more nuanced language and warns that it's not something to be used on every occasion. * "It’s essential to test your expectations about programmer productivity and/or performance before committing to using a NoSQL technology." * "Most applications, particularly nonstrategic ones, should stick with relational technology—at least until the NoSQL ecosystem becomes more mature." * "But we also realize that there are many cases, indeed the majority of cases, where you’re better off sticking with the default option

CitesView on HN
@charlysl2021 · in “What I'm Up to Now”

My main point was that we should focus first on learning and applying well ageless fundamentals and mature solutions, rather than on shoehorning the latest fad. Only in extreme cases should that new idea from a FAANG be adopted. Martin Fowler is dangerous in this regard, there isn't a bandwagon he doesn't jump on making it sound like it is the new normal, and, although, as you say, he does mention counterindications, his presentations are still very unbalanced, hyping what is still inmature and extremelly risky. He is an excellent popularizer, I actually enjoy listening to him, but too many buy it uncritically. I meantioned CQRS, the wider context is microservices. Thank you for presenting so much evidence, you are right, but the thing is, the wider context where it was said, all the hype, is still missing. Here is one example from a few years ago in youtube [1], at the height of the NoSQL craze this time. He proudly mentioned how his mates at The Guardian adopted it, because "a news article is a natural aggregate", or something like that. He does indeed add later, in passing, that "some NoSQL databases are immature , we don't have the tools, the experience, the knowledge to work with them well; we've got decades of experience with sql databases". It turned out that they were burnt at The Guardian, and wrote about their painful migration to a RDBMS and to safety [2]. Now, one can argue, rightly, that this is just anecdotal evidence against NoSQL. The problem is that he used i

CriticalView on HN
@node-bayarea2021 · in “The Impedance Mismatch Test: Is Your Data Layer a Complex Mess?”

"Object-Relational Impedance Mismatch"[1] is been around for decades. Martin Fowler[2] and others who are deeply technical (think Sr. architects, CTOs) use this all the time. [1] link [2] ▶ this video

CitesView on HN
@databrecht2021 · in “Ask HN: SQL or NoSQL?”

Exactly, but it goes further than that. The mentality never made sense since the term NoSQL never made sense to start. It's amazing how many people use a term that just originated from a meeting to talk about alternative databases. How we keep using it, although it's practically impossible to say what NoSQL is. Depending on whom you ask that term means different things. This is a very good introduction to the term: ▶ this video Graph databases are considered 'NoSQL' yet they have relations and transactions. Schemaless is often also one of the properties give to NoSQL, but it's also a bit strange to consider that a NoSQL attribute. Some traditional databases offer schemaless options and databases like Cassandra has schema yet is considered NoSQL. I work at Fauna which has relations, stronger consistency than many traditional databases. It is schemaless at this point but that might change in the future. Since it doesn't offer SQL it's thrown into the NoSQL bucket with the assumptions that come along with it. None of these one-liners in computer science make sense IMHO and we listen way too often to colleagues who use them. Similarly "Use SQL for enforced schema" might be accurate in many cases but in essence it depends on your situation, and we need to do research about what we use instead of following one-liners ;)

RecommendsView on HN
@WoodenChair2017 · in “Ask HN: Learning NoSQL, papers and books”

As a starting point, if you have little background in NoSQL, I strongly recommend this 1 hour talk by Martin Fowler: ▶ this video It's slightly dated, but it still gives a strong overview of the different paradigms. The truth is what you want to learn probably differs greatly depending on the paradigm that fits your application. NoSQL databases can broadly be categorized into document-oriented, key-value store, columnar, and graph. This video will help you understand what (at least three) of those are. Then you can focus in on books/articles about the paradigm that makes the most sense for you.

Strongly recommendsView on HN
@rolandm2017 · in “Ask HN: Learning NoSQL, papers and books”

Video from Martin Fowler about Introduction to NoSQL: ▶ this video Tutorial from Felix Gessert about NoSQL link and Slides link

RecommendsView on HN
@joeclark772016 · in “Ask HN: What's your favorite tech talk?”

First, the "Mother of all Demos" by Doug Engelbart: link This was in 1968, at a time when most people thought about computers as being machines for solving computation problems, like processing payrolls or calculating rocket trajectories. Engelbart and his students had the radical idea that computers could be used for human "knowledge worker" productivity. In one 90 minute presentation, he introduces everything from the idea of a GUI, to the mouse, to word processing, hypertext, computer graphics, and (simulated) videoconferencing. You have to be able to put yourself in the shoes of the audience that has never seen this stuff before, and it'll blow you away. Something more recent: Martin Fowler's great introduction to NoSQL: ▶ this video Not so technical, this is a great overview of the reasons why (and when) NoSQL is valuable. He crams a lot into a short speech, so it's one of the rare videos I've required students in my database classes to watch. Now, really getting away from the technical, I have to recommend watching the IDEO shopping cart video: link This is the classic introduction of Design Thinking to the world, in 1999. If you're using the Lean Startup or an Agile method, but have never heard of IDEO's shopping cart, you may be able to get along fine at work, but you should be kind of embarrassed like a physicist who's never read Newton.

Strongly recommendsView on HN
@mrwilliamchang2015 · in “I Dreamed of a Perfect Database”

"There is as yet no absolute challenger to the relational model. When people think database, they still think SQL. But if there is a true challenger, it is in the graph model." This article is quite biased towards graph databases with regards to the SQL versus NoSQL tension. This video presents a much more balanced view of SQL versus NoSQL, in my opinion. ▶ this video

RecommendsView on HN
@joeclark772015 · in “Why some NoSQL DBs only let you perform transactions on a single data item”

The idea is that you won't need database-wide transactions if your data is structured into "natural aggregates" such as orders, articles, profiles, etc. In a relational database, something as simple as an "order" has components in lots of different tables -- customer, product, order, line_item, shipping_method, etc -- so you have to lock all of those tables when doing an INSERT or UPDATE. In the ideal MongoDB implementation, an "order" would be a document of its own, and all the other parts would be attributes or nested structures. So you only really need a transaction for the document itself. Other documents could be inserted/updated at the same time without creating a conflict. That's the theory, at least. Martin Fowler has a good Youtube on "Introduction to NoSQL" that I sometimes show to my students: ▶ this video The other thing about NoSQL is that it's often used for write-once, then read-only applications. Twitter, Facebook, or Instagram would be good examples. When 1% of your queries are INSERTs and 99% are SELECTS (with UPDATE and DELETE almost never occurring), you really don't run as much risk of anomalies. I would not recommend NoSQL for something like a banking application where you're doing lots of updates and need to guarantee consistency.

RecommendsView on HN
@alfonsodev2015 · in “Ask HN: When should i use a NoSql database”

▶ this video In this video Martin Fowler have some recommendations of when to choose a relational, graph or noSql database.

RecommendsView on HN
Event Sourcing • Greg Young • GOTO 201454:25

Event Sourcing • Greg Young • GOTO 2014

GOTO Conferences
102K views • 12 years ago
Rich Hickey: Deconstructing the Database1:06:24

Rich Hickey: Deconstructing the Database

InfoQ
106K views • 14 years ago
An Introduction to SQLite51:02

An Introduction to SQLite

Google TechTalks
80K views • 19 years ago
"Datafun: a functional query language" by Michael Arntzenius42:31

"Datafun: a functional query language" by Michael Arntzenius

Strange Loop Conference
9K views • 9 years ago
The Many Meanings of Event-Driven Architecture • Martin Fowler • GOTO 201750:06

The Many Meanings of Event-Driven Architecture • Martin Fowler • GOTO 2017

GOTO Conferences
677K views • 9 years ago
AWS re:Invent 2018: Amazon DynamoDB Deep Dive: Advanced Design Patterns for DynamoDB (DAT401)59:56

AWS re:Invent 2018: Amazon DynamoDB Deep Dive: Advanced Design Patterns for DynamoDB (DAT401)

Amazon Web Services
468K views • 7 years ago
Thesis: Partial State in Dataflow-Based Materialized Views45:50

Thesis: Partial State in Dataflow-Based Materialized Views

Jon Gjengset
17K views • 6 years ago
Rust at speed — building a fast concurrent database52:54

Rust at speed — building a fast concurrent database

Jon Gjengset
225K views • 7 years ago
Modern SQL: A lot has changed since SQL-92 by Markus Winand55:06

Modern SQL: A lot has changed since SQL-92 by Markus Winand

Devoxx
6K views • 8 years ago
"Turning the database inside out with Apache Samza" by Martin Kleppmann47:43

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

Strange Loop Conference
205K views • 12 years ago
"I See What You Mean" by Peter Alvaro52:29

"I See What You Mean" by Peter Alvaro

Strange Loop Conference
59K views • 11 years ago
Greg Young — A Decade of DDD, CQRS, Event Sourcing48:04

Greg Young — A Decade of DDD, CQRS, Event Sourcing

Domain-Driven Design Europe
190K views • 10 years ago
How Modern SQL Databases Come up with Algorithms that You Would Have Never Dreamed Of by Lukas Eder50:31

How Modern SQL Databases Come up with Algorithms that You Would Have Never Dreamed Of by Lukas Eder

Devoxx
55K views • 9 years ago
Greg Young - CQRS and Event Sourcing - Code on the Beach 20141:03:48

Greg Young - CQRS and Event Sourcing - Code on the Beach 2014

Code on the Beach
170K views • 12 years ago
AWS re:Invent 2019: [REPEAT 1] Amazon DynamoDB deep dive: Advanced design patterns (DAT403-R1)59:13

AWS re:Invent 2019: [REPEAT 1] Amazon DynamoDB deep dive: Advanced design patterns (DAT403-R1)

AWS Events
115K views • 6 years ago
Lucas Cavalcanti & Edward Wible - Exploring four hidden superpowers of Datomic40:42

Lucas Cavalcanti & Edward Wible - Exploring four hidden superpowers of Datomic

ClojureTV
29K views • 11 years ago
The Forgotten Art of Structured Programming - Kevlin Henney [C++ on Sea 2019]1:29:27

The Forgotten Art of Structured Programming - Kevlin Henney [C++ on Sea 2019]

cpponsea
245K views • 7 years ago
Andrew Kelley: A Practical Guide to Applying Data Oriented Design (DoD)46:40

Andrew Kelley: A Practical Guide to Applying Data Oriented Design (DoD)

ChimiChanga
415K views • 2 years ago
Conflict Resolution for Eventual Consistency • Martin Kleppmann • GOTO 201651:36

Conflict Resolution for Eventual Consistency • Martin Kleppmann • GOTO 2016

GOTO Conferences
46K views • 9 years ago
CRDTs and the Quest for Distributed Consistency43:39

CRDTs and the Quest for Distributed Consistency

InfoQ
68K views • 8 years ago