3 ms·
I would go the other way around. Why start with an SQL database? When I start something new, I don't want to fiddle around with tables every time I change my m
by k__ 4y ago
I would go the other way around.
Why start with an SQL database? When I start something new, I don't want to fiddle around with tables every time I change my model.
- quickthrower2 4y agoI agree but the baby of “joins” is often thrown out with the bathwater of “schemas” Is there a relational schemaless DB I wonder?
- Aeolun 4y agoSounds like a contradiction in terms to me.
- layer8 4y agoNo contradiction at all. Imagine a relational database where the only column type is a variant (union) of the usual datatypes, and where new tables and new columns are auto-created whenever an insert/update references them (and, possibly, unused tables and columns are garbage-collected). You’d still use regular SQL and have joins and everything, the tables would still be relations, but there’s no defined schema.
- falcolas 4y agoThere are, but they’re pretty niche because their performance is really bad. Niche enough I can’t recall a single name today. But really, my advice for early prototyping is split in two: either keep it in memory and serialize to disk, or use SQLite. Note that even using serialized memory constructs will require data migrations, aka schema updates.
- giraffe_lady 4y agoYeah it's postgres's jsonb type.
- alex_suzuki 4y agoMost of my tables have a column called “metadata”, “extra” or “ payload” with jsonb type… for the data i don’t want to model the rigid way. It’s no longer relational vs. NoSQL, you can get the best of both worlds. Assuming of course you don’t need “planetscale”.
- quickthrower2 4y agoNice, and by the looks of it you can still do joins to what is inside the jsonb. I presume indexes are possible too (or if not just pull that data out to actual columns).
- alex_suzuki 4y agoYup, it’s way more than a blob. You can query it.
- cpursley 4y agoThen use a Postgres jsonb column. Makes it easier to migrate to a table when you have you model down.