我有一个大表(> 700,000行且不断增长)的联系人数据,其中包括:
此表在多边形字段上查看大量查询,在自由文本字段上查看大量单独查询。 (在同一查询中绝不是多边形和全文)。
我们最近在此表的查询中遇到了非常糟糕的性能,并且正在考虑创建一个“垂直分区”以将空间数据放入新表中并使用视图将两者结合起来以便应用程序看到相同的数据和以前一样。
这样对表进行分区是否会提高全文和空间索引查询的性能,即使结果需要连接两个表?
答案 0 :(得分:1)
简短回答 - 是的。
将表格拆分为两个,只有几何图形,几何查询似乎总体上更快。全文查询的性能大致相同。
我怀疑这是因为只有几何数据的新表格要小得多,而且对它的查询可以选择较少的索引,从而减少了执行计划。
但是 - 查询在其中一个基表中具有几何列的视图可以正常工作 - 但是对于查询区域和空间数据密度的某些组合,未选择空间索引且性能非常慢。您无法将空间索引的索引提示传递给视图上的查询,因此我最终直接查询了视图的基表,因此我可以强制使用空间索引。