আমার প্রায় 200 মিলিয়ন রেকর্ড সহ একটি টেবিল রয়েছে। আমি বাউন্ডিং বাক্স বাদে ডিফল্ট ব্যবহার করে একটি স্থানিক সূচক তৈরি করি। আমি লক্ষ্য করছি যে কিছু প্রশ্ন অত্যন্ত দ্রুত এবং কিছু অত্যন্ত ধীর। নির্ধারক ফ্যাক্টর ক্যোয়ারিতে ব্যবহৃত বহুভুজের আকারে উপস্থিত হয়।
বৃহত্তর অনুসন্ধানের ক্ষেত্রগুলিতে, WITH(INDEX(SIX_FT5))
ক্যোরিয়াকে যথেষ্ট গতি কমিয়ে দেয় (0 সেকেন্ড থেকে 15+ সেকেন্ড)। ছোট অনুসন্ধানের অঞ্চলে, ঠিক এটির ঠিক বিপরীতে।
আমি যে পরীক্ষাগুলি দিয়ে পরীক্ষা করছি সেগুলির কয়েকটি এখানে:
ফাস্ট:
SELECT TOP(1000) * FROM [FT5] WHERE (shape.STIntersects(geometry::STGeomFromText('POLYGON ((-133462.805381701 -668610.241000959, 2934415.68824241 -668610.241000959, 2934415.68824241 2200521.65831815, -133462.805381701 2200521.65831815, -133462.805381701 -668610.241000959))', 2264)) = 1)
মন্থর:
SELECT TOP(1000) * FROM [FT5] WITH(INDEX(SIX_FT5)) WHERE (shape.STIntersects(geometry::STGeomFromText('POLYGON ((-133462.805381701 -668610.241000959, 2934415.68824241 -668610.241000959, 2934415.68824241 2200521.65831815, -133462.805381701 2200521.65831815, -133462.805381701 -668610.241000959))', 2264)) = 1)
কেউ কি জানেন এখানে কী চলছে?