Cli*_*ote 9 mysql database database-design scalability
我通常将所有varchars设置为255以确保安全.它在磁盘空间或其他方面有什么不同吗?拥有更大的varchars/ints /其他领域是否有任何不足之处?
如果您允许255个字符,那么有人可能会使用255个字符.因此,每个报告和在线数据输入屏幕必须能够处理255个字符.乱.
我有一个现实世界的例子:在我们的系统中,有人决定部门名称可能是200个字符长.当有人投入相当长的价值时,它会搞砸几个HTML表单的布局,将其他字段从右侧推出并使其无法访问.所以需要一些补救工作......
将较大的数据项加载到内存中需要更多的时间和更多的磁盘传输。为列定义较大的最大大小会增加表行的大小。对于许多 DBMS 服务器来说,表行就是传输的项目。因此,定义太厚的列确实会减慢速度。
对于物品来说,这种影响很小VARCHAR。但VARCHAR比整数等数据类型慢很多。八字节整数的传输时间是两字节整数的四倍。因此,如果数据库是为了最终性能而设计的,那么将数据列限制在实际需要的范围内将会加快速度。这种影响的程度取决于磁盘通道是否是瓶颈。
另一个可能的瓶颈是连接服务器和客户端的通道,通常是网络通道。通过不请求永远不会使用的数据的查询可以减少此通道中的瓶颈,但仅在需要时请求数据和进行过多的往返之间需要权衡。
在针对最佳性能进行设计和针对需求变化进行过度设计之间还需要进行权衡。
| 归档时间: |
|
| 查看次数: |
298 次 |
| 最近记录: |