V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
tabris17
V2EX  ›  问与答

EAV 模型很糟糕?

  •  
  •   tabris17 · 2015-03-24 13:12:39 +08:00 · 3412 次点击
    这是一个创建于 3338 天前的主题,其中的信息可能已经有所发展或是发生改变。
    《高性能MySQL》的作者很不待见EAV模型。但是很多场景必须用到EAV模型。

    诸位有什么优化的建议?
    5 条回复    2015-03-26 13:50:07 +08:00
    Ison
        1
    Ison  
       2015-03-24 13:58:16 +08:00   ❤️ 1
    EAV主要用于多对象非统一属性情况
    俺建议索引属性还是靠表 非索引属性做序列化保存
    bash99
        2
    bash99  
       2015-03-24 13:59:06 +08:00   ❤️ 1
    sql那边没啥戏了,把实体结果 甚至 生成的页面缓存化吧,然后做好缓存的tag体系,及时自动的失效对应的缓存。
    tabris17
        3
    tabris17  
    OP
       2015-03-24 18:14:52 +08:00
    数据库里建个表,用text类型字段保存所有attribute values组成的JSON格式如何?
    tabris17
        4
    tabris17  
    OP
       2015-03-24 19:13:34 +08:00
    Magento2都抛弃EAV模型了。不知道Magento2是如何处理自定义模型的。
    bash99
        5
    bash99  
       2015-03-26 13:50:07 +08:00
    @tabris17 看代码吧,感觉上还是靠数据库结构变动。
    json存text很多,如果不怕数据库锁定,mariadb就自带了dynamic column功能
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1042 人在线   最高记录 6547   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 22:01 · PVG 06:01 · LAX 15:01 · JFK 18:01
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.