我已经开发了一个信息流,它基本上会从SQL Server读取一个非常大的表(比如大约120-3亿条记录)并将其加载到另一个数据库中。 过滤标准是datetime2字段(记录插入表格时)。
在阅读之前和之后,我将在此时间戳字段上创建并删除非聚集索引。由于时间不够,我实际上无法进行性能测试。
您是否认为使用非聚集索引,基于时间戳字段的过滤是否可以?我的意思是关于性能如何的非常粗略的想法?我不希望表现得太厉害!
答案 0 :(得分:0)
创建NCI意味着阅读整个表格。因此,如果您每次需要运行此查询时都创建它,那么您的情况会更糟。你多久会使用一次信息流?如果频率意味着索引是值得的,那么使索引永久化。
答案 1 :(得分:0)
只是想补充一点,那个记录的数量是1亿。并且在时间戳字段上创建索引只需2.5分钟!
我现在正在尝试根据时间戳加载记录,比如说过去4-5天加载的记录,对我来说它真的是一个非常好的解决方案,它按预期工作。