Sel*_*Net 5 database asp.net normalization profiles
我正在开发一个需要用户表的快速项目,并且希望他们能够存储配置文件数据。当我意识到用户将永远只有一个配置文件时,我已经接触到ASP.NET配置文件提供程序。
我意识到,频繁更改的数据会影响诸如索引和内容之类的性能,但是太频繁了又太频繁了?
如果我每个月每个用户要更改1000个用户的个人资料,那么很多吗?
还是我们说的更像是用户每小时更改一次个人资料数据?
我意识到这不是一门精确的科学,但是我正在尝试确定阈值在何时达到峰值,并且由于我的用户个人资料数据可能很少改变,如果我应该费心额外的工作或仅等待几十年的时间成为一个问题。
要考虑的一件事是在表中添加大文本列将如何影响行的布局。一些数据库将存储与其他固定大小的列内联的大列;这将使行的大小可变,这意味着当数据库需要从磁盘中拉出一行时,数据库需要进行更多工作。其他数据库(例如PostgreSQL)将大文本列存储在固定大小的列之外。这会导致在表扫描等期间快速访问固定大小的行,但是需要额外的工作才能拉出文本列。
在数据库方面,1000个用户不是很多,因此不必担心一种方法或另一种方法。OTOH,很少的一次性项目有一个讨厌的习惯,就是当您不打算将其变成真正的任务关键型项目时,从一开始就正确地这样做是一个好主意。
我认为Justin Cave已经很好地涵盖了索引问题。
只要您正确地构造数据访问权限(即,对用户表的所有访问都通过一堆独立的代码进行),那么为用户更改数据架构将不会有太多工作。