是否要分表
我有一个新闻库:
create table NEWS(
ID int IDENTITY(1,1) NOT NULL , createdate datetime,title varchar(100),content ntest,...
)
content 可能内容很大。随着时间推移,记录接近亿级别了。查询速度越来越慢。
他们建议说,把内容和标题分开两个表,通过ID关联。
create table NEWS_CONTENT(
ID int NOT NULL ,content ntest
)
create table NEWS_TITLE(
ID int , createdate datetime,title varchar(100),...
)
这样设计,是否能提高速度,其实记录条数还是没变,都是一一对应过去的,只是表空间变小而已。
因为每次只显示标题,点标题才出来新闻,所以就考虑到表里没有新闻内容,需要时根据ID关联
请问有没有必要这么设计的,理由是什么? 分表
[解决办法]
不用分离,加多一个索引更简单。这个量级需要正确设计,否则慢是必然的
[解决办法]
大数据字段,有必要拆出来,像XML,NTEXT。
好处:其它表跟此表关联时,如果用不到content字段,会大大提高速度。