Roh*_*nga 9 database string performance long-integer
我需要在数据库中存储长字符串.字符串可以是5或6个句子长.你认为这是一个很好的设计策略吗?或者我应该为该字符串存储一个id,然后与另一个表创建一个关系,该表包含存储该字符串的文件的位置.请问两者的优点和缺点.
字符串已经过预处理并存储在数据库中.任何修改都会读取整个字符串并完全替换它.所以你可以假设字符串是不可分割的.
Jef*_*rey 11
将字符串存储在数据库中应该没问题.如果存储文件指针,则意味着每次要读取字符串时都需要执行文件I/O. 一些句子不是很长,如果需要,你总是可以使用longtext数据字段.显然你的数据库会有点大,因为你有文字,但没关系.它肯定是比存储文件更好的选择.
你提到的字符串根本不长.
当你提到"长"字符串时,我想的是32kB及以上 - 一些句子<1kb - 今天什么都没有.
你的诀窍是,存储一个Id会使事情变慢,因为你必须进行间接访问.
我唯一要建议的是,当需要最大性能时,您应该只选择您需要的那些列(省略SELECT*) - 因此在不需要时省略text列,因为字符串从服务器传输到应用程序成本最多的时间.这是一个很好的实践,不要触摸不需要的列(特别是当它们可能包含大量数据时).