我看的django教程都是 固定设计好数据表.后端写视图函数 和 序列化
我的疑问是,
1 所有用户的数据(相同类型) 是放在一个表里?
放在一个表的话,用户多了,这个数据表会不会太多,会影响速度吗? 比如上千万级别的数据行数
比如一个零售管理系统,
使用零售管理系统的商家,商家本身有一个账号,
商家的客户有其 子账号
假定零售管理系统有1000个商家在用, 每个商家有1000个客户, 哪就是 1000乘1000 ,如果把每个客户有n条购买记录, 这些记录都放在一个表中,
那就是 1000乘1000乘n, 那这个表就是千万级的数据量
2 每个用户不同的数据表?
如果每个用户不同的数据表,就有些麻烦了,
1万个用户就有1万个数据表
当用户注册成功后,
如果是django后端:
要在后端先成modles ,再根据models就要在mysql中生成对应的数据表格
你的顾虑视乎是表数据量增大来带的性能问题,MySQL单表两千万简单的查询走索引没什么问题,量大可以做中间件水平切分屏蔽客户端复杂性,量大复杂查询可以同步到合适的数据分析存储库上(Elasticsearch,clickhouse)
可以采用一对多,多对多的关系降低数据表数量,另外客户的购买记录都是根据商品来的,建立数据表的核心就是祛除冗余,如果你需要的就是以上那些,写一个商家表,商家id主键对应客户表,再写产品表,客户ID对应产品表(购买记录或者购物车),商家表再对应产品表,基本就是这么个结构,并不需要多少代码。