场景:
- 两个数据库:DB_A和DB_Archive,其中有一个非常大的表,称为tableA。
- 每天都会将超过60天的记录从DB_A中删除,并移至DB_Archive,主要是为了使事情“分开”,因为过去两个月的记录都在DB_A上严重查询了tableA。
我想摆脱此过程,因为它速度慢且消耗大量资源。我正在考虑在date_Column上使用分区功能在DB_A上实现表分区,并在一个分区上存储所有<2个月的记录,在另一个分区上存储所有> 2个月的记录。我的问题:
- 如果我有2个不同的数据库,这种情况的行为会如何?如果我在tableA中查询记录> getdate()-30,它将读取归档分区吗?
- 我以为我也必须对索引进行分区,对吗?
- 我要如何处理明天我的分区函数将“更改”的事实,我的意思是,如果今天创建该函数(7月2日,其范围将是5月2日,但是明天将是5月3日)。我可以创建动态分区功能吗?