SQL Server性能规范化
我有一张桌子SQL Server性能规范化,sql,sql-server,hadoop,Sql,Sql Server,Hadoop,我有一张桌子 create table Objects ( ObjectID bigint not null primary key, ObjectRef1 varchar(50) not null, ObjectRef2 varchar(50) not null, ObjectRef3 varchar(250) not null ) 所有字段都是唯一的。该表大约有1亿行。所有列都有唯一的索引,并且经常用于查询 什么更快?要将每个varchar字段规范化为单独
create table Objects (
ObjectID bigint not null primary key,
ObjectRef1 varchar(50) not null,
ObjectRef2 varchar(50) not null,
ObjectRef3 varchar(250) not null
)
所有字段都是唯一的。该表大约有1亿行。所有列都有唯一的索引,并且经常用于查询
什么更快?要将每个varchar字段规范化为单独的表,还是保持原样?如果规范化,该表将只包含规范化表的ObjectID列和ID,我将进行内部联接以获取ObjectRefX的值
我是否应该考虑像Hadoop那样的其他数据库来处理这些数据?
< P>一个关于性能的事情是不能预测的,除非查询运行,否则我建议您保持表的原样,因为在不同的表中规范这个数据会增加依赖性,因为您将把表与外键连接起来。而且所有的列都是唯一的,因此没有可以减少的冗余。放置索引。并尝试优化查询,而不是此处的模式 欢迎对上述答案进行任何更正 希望我能帮上忙 谢谢Ashutosh Arya这可能是本文的主题,但您更有可能在服务器故障时收到有用的答案。