如果只用一般的表关系如何实际性能最好(主要是检索)?或者是有啥特殊数据结构可以?
1
lazyfighter 2022-07-04 09:48:59 +08:00
mark 对标签系统很好奇,生产上没有实践过
|
2
ql562482472 2022-07-04 09:52:41 +08:00
你说的标签,是指 tag 还是 label ?
|
3
nicreve 2022-07-04 09:57:09 +08:00
标签系统是指有父子关系的标签树么?常规操作不是用邻接表存储么?
|
4
nutting OP 各位,不用太复杂,就是 tag
|
5
icyluna 2022-07-04 10:01:09 +08:00 via iPad 1
http://docs.typecho.org/database
不知道这篇是否有帮助 |
6
dqzcwxb 2022-07-04 10:03:41 +08:00
一对多设计,一个用户对应多个标,一个标一条记录
|
7
dzdh 2022-07-04 10:04:03 +08:00
|
8
realpg 2022-07-04 10:08:33 +08:00
基本的多对多三表结构解君愁
|
9
lower 2022-07-04 10:22:41 +08:00
像 es 那样搞个倒排表?词库就是标签库……好像跟多对多关系表搞出来本质差不多😂
|
10
westoy 2022-07-04 10:25:42 +08:00
教科书一点就 many to many 啊
但是你偷个懒直接存 json 、array 其实也可以, 反正前期数据小靠缓存顶顶问题也不大, 后期数据大也是要上 redis set 或者 es, 再配缓存的 |
11
tyit 2022-07-04 12:47:53 +08:00 via iPhone
redis 、mongodb
|
12
dunkelheit 2022-07-04 13:40:37 +08:00
toxi solution
|
13
BeautifulSoap 2022-07-04 13:47:32 +08:00
lz 你确定你的标签系统不用考虑别名? 比如 function, 函数, func 这些标签应该视为同一个标签之类的
|
14
THESDZ 2022-07-04 13:51:26 +08:00
多对多,建好索引
主体表,关系表,标签表 主体表可能有多个,关系表中就多个 主体字段(用于区分主体)。 |
16
wonderfulcxm 2022-07-04 13:54:43 +08:00 via iPhone
标准的多对多,可以参考 WordPress 的那几张 taxonomy 表的设计
|
17
issakchill 2022-07-04 13:59:16 +08:00
之前做过 偷懒做成 json 字段 然后有个主表做管理
|
18
meshell 2022-07-04 15:06:00 +08:00
直接 wordpress 结构吧
|
19
IDAEngine 2022-07-04 16:42:13 +08:00
直接存 mongodb
|
20
815979670 2022-07-04 17:05:13 +08:00
标签不多的话 用 bitmap ? 存储体积小 查起来也方便
|
21
zlowly 2022-07-04 17:45:54 +08:00
个人感觉,传统关系型数据库只能应付中小型数据量,单一标签查询需求的标签系统,如果是千万级以上数据量,有复合查询需求的,用关系型数据库实现性能会很差。
|