海量对象-属性-值三元组存储与搜索
随着数据的激增,高效存储和搜索海量的对象-属性-值三元组至关重要。本文探讨了如何设计表的结构来解决此问题。
问题:如何存储海量的对象-属性-值三元组,同时保持搜索效率?
答案:
一种设计方案是使用以下表结构:
- 主表:rel_id (int), obj_id (int), prop_id (int), val_type (int)
- 对象描述表:obj_id (int),obj_desc (string)
- 属性描述表:prop_id (int),prop_desc (String)
- 值表:rel_id (int),类型相关的字段(例如 val_bool 为布尔值)
这种方法允许灵活地添加新属性,并且可以使用主表的 val_type 字段存储不同类型的值。
探索其他选项:
- mongodb:提供高度自定义的文档存储,可以使用 json 来表示属性和值,但模糊查询需要 elasticsearch。
- 维基数据:将属性存储在 JSON 中,但搜索效率可能受到限制。
© 版权声明
文章版权归作者所有,未经允许请勿转载。
【小浪云服务商 - 服务器12元起 - 挂机宝5元起】
THE END
暂无评论内容