【发布时间】:2011-08-31 02:32:00
【问题描述】:
我正在尝试摆脱我的连接表,转而采用对大型数据集更快的数据库设计。我打算这样做的方式是将孩子的 id 存储在父记录中。 像这样:
父母表:
id, child1_id, child2_id, child3_id,... child(100)_id
儿童桌:
id,grandchild1_id,grandchild2_id,... 孙子(100)_id
型号:
家长
has_many :children, :dependent => :destroy
接受嵌套属性:儿童
儿童
属于_to :parent
has_many :grandchildren, :dependent => :destroy
接受嵌套属性:孙子
孙子
属于_to :child
我的最终结果是能够以相同的形式编辑父母、子女和孙子女。这已经可以通过使用连接表实现,但我热衷于提高性能
当我依赖连接表提供的功能时,我如何才能获得更好的数据库性能? 请帮忙,我已经在网上搜索了很多天了:/ 谢谢!
【问题讨论】:
-
这是一个糟糕的设计。虽然它可能会加快一种情况的读/写速度,但它仅限于此 - 不仅如此,而且它不正常。如果这确实是您的目标,那么非关系型数据库肯定会更好。
-
Arsen:我更新了我的帖子有一个问题,谢谢
标签: ruby-on-rails performance has-many-through