News for hackers. Stuff that matters.
Re:Do you really need foreign keys? by ndriscoll on Thursday December 21, 2023 @04:31PM (#38727273)
Batch processing is also WAY faster (like 1-2 orders of magnitude), but for whatever reason people don't talk about it much (cynically, I guess because it's too straightforward and old-hat). As far as I can tell, Rails doesn't have multithreading/async, so the OP is presumably not batching requests. That seems like a much better place to start than giving up referential integrity.
Re:Do you really need foreign keys? by cogman10 on Thursday December 21, 2023 @04:59PM (#38727631)
We are batch processing. I don't know why you assume we aren't. FK constraints are simply too much burden for us. I'm not the OP, however, my company has experienced the performance headaches of FKs.
Re:Do you really need foreign keys? by ndriscoll on Thursday December 21, 2023 @05:36PM (#38728090)
I didn't assume anything about you; I said OP uses a framework that (as far as I know) makes it difficult to batch requests, so they're probably not batching requests. And they mention doing a `before_create` hook, which again suggests they're operating on individual models. If you're already batching and still running into a wall, then yeah you might need to remove constraint validation or shard. But batching alone can probably take most people far past the scale they'll ever see.