我正在寻找关于如何在标题中构造数据表的建议,以使其在查询和写入时更加高效。我存储有关通常数据类型,数字,短字符串等实体的信息。现在我需要存储具有大量数据(〜30 KB)的额外字段,我正在寻找两种选择:用大型文本字段构造数据库表
- 添加一列的
nvarchar(100000)
在实体表 - 创建单独的表来存储这种数据和链路从实体表
其他因素:
- 每个实体行将具有伴随的大文本字段
- 每个伴随文本字段将具有至少20 KB的数据
- 〜20%的针对实体表的查询也需要大字段。其他查询可以不用它的查询
- 〜95%寻求单一实体
- 我使用的是O/RM访问数据,所以所有列在(我可以挑选并通过使选择拉代码看起来很可怕)
现在我倾向于有一个单独的表,但它也有一个坏的一面,我必须记住一些关于保持数据一致性的担忧。
如果不做一个真正的基准测试就很难做出决定,但这可能需要几天的工作时间,所以我转而选择SO作为捷径。
我会在这个问题上给其他人留下建议,但是在提供结果方面需要查询大型文本字段中的数据吗?也许这会帮助人们提供更好的设计。 –
我想建议阅读全文搜索和ntext字段。 – sdrzymala
取决于您处理独立表的行数,可能是从存储角度看的一种解决方案:您可以将“附带数据”表放在单独的设备上,这可能是一个优势。 – Paolo