用户图片信息数据库存储该如何设计? 如图,我在mysql数据库中建立tab_pic数据表,用于存储不同用户上传的图片的信息。现在突然有个疑惑,要是该表中数据量叫多时(比如数十万条乃至数百万条不同记录),此时再从该表中查询某个用户在某个固定时间段的10张图片信息,我想对系统性能可能会产生不小的压力。后来我想到的方法是为每个用户建立一张该用户上传图片的表,不知这样可否?请教各位数据库大拿们,希望大拿们给个解决方法 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 用字段保存路径名及文件名,使用时再调用,如果用户比较多,可以考虑按用户分区。 图片存放在数据库里对数据库的性能影响很大的,最好把图片的路径存放数据库表某个字段中。 根据用户id 取10余数 建立分表取数据的时候到对应的分表里去查找这样单表数据量将只是原来的十分之一如果你之前有百万条数据 那用这种方法只需要在十万条数据里查找就可以了 其实 直接写入在硬盘里 通过IO读取的时候 性能不见得有多个高 数据库存放图片的路径,的确图片放在硬盘上。对I/O操作的确很大,但做成分布式文件系统,不就提高系统的性能了。 一般是把图片直接存储在磁盘上,然后在数据库中仅保存图片文件的名称。 mysql 的数据文件大小 sql问题 Mysql中如何清空整个数据库里面的数据。 如何在windows下自动备份Mysql,同时在备份期间数据库不断开? 请教简单mysql数据库优化问题 请问一下,怎么把mysql表关系导到visio里 请教如何将SQLServer中的数据库、表以及数据导入MySQL啊 插入的字符串中有单引号怎么办? 关于where条件的问题 mysql 根据父节点id获取父节点和所有子节点 在mysql数据库已有的表中新建一列,这一列的值为另外一已有数据的列的排名。 求高手sql如何写? mysql中root权限误删后如何恢复
按用户分区。
个字段中。
取数据的时候
到对应的分表里去查找
这样单表数据量将只是原来的十分之一
如果你之前有百万条数据 那用这种方法只需要在十万条数据里查找就可以了
分布式文件系统,不就提高系统的性能了。