我有一个数据库,我需要存储来自不同用户(即租户)的数据(例如资源)。
这些资源可以在多个用户之间共享。
因此,我有一个Users表,一个Resources表和一个多对多表UserResources。
TABLE Users (GUID userId, String username);
TABLE Resources (GUID resourceId, String resourcePath, DateTime createdAt, DateTime updatedAt, int property1, ...);
TABLE UserResources (GUID userId, GUID resourceId);
“UserResources”表的水平分区最有效的策略是什么?
即
我应该将哪些列用作UserResources中的分区列,以获得最佳的查询效果(就执行时间而言)?
谢谢大家!
cghersi
答案 0 :(得分:0)
分区多对多表是没有意义的。你不太可能获得任何表现。事实上,表现可能会受到影响。
我对多对多表(对于MySQL)的提示:http://mysql.rjweb.org/doc.php/index_cookbook_mysql#many_to_many_mapping_table