ฉันใช้ Query Layer บน SQL Server ใน ArcMap Query Layer ดำเนินการทันทีใน SQL Server แต่ใช้เวลานานในการดึงข้อมูลใน ArcMap ซึ่งระบบจะไม่ตอบสนองเป็นเวลาประมาณ 10 นาทีหรือนานกว่านั้น ในระหว่างการวาด ArcMap CPU ตัวใดตัวหนึ่งจะถูก maxed out ในกระบวนการ SQL Server
My Query คือ STIntersects ของบัฟเฟอร์บนฟีเจอร์ Line (Shannon) เทียบกับฟีเจอร์รูปหลายเหลี่ยม (Townlands) ดังนี้
SELECT TOWNLANDS.TL_ID,TOWNLANDS.Shape FROM dbo.TOWNLANDS as townlands
with(index(FDO_Shape))
JOIN dbo.Shannon on townlands.Shape.STIntersects
(Shannon.Shape.STBuffer(2.0))=1
แบบสอบถามส่งคืน 186 แถวทันที สิ่งเหล่านี้สามารถวาดในบานหน้าต่าง SQL Studio Management Spatial บานหน้าต่างโดยไม่มีปัญหา
เมื่อฉันสร้าง Query Layer ใน ArcMap ด้วยไวยากรณ์เดียวกันระบบจะไม่ตอบสนอง แต่จะวาดในที่สุด ดูเหมือนว่าบางที ArcMap ไม่ได้ใช้ดัชนีเชิงพื้นที่หรือกำลังทำเช่นนั้นแตกต่างจาก SQL Server ทำให้เกิดการสอบถามที่ไม่มีประสิทธิภาพบน SQL Server ที่ต้องใช้อายุในการส่งคืน
ใครสามารถให้คำแนะนำเกี่ยวกับวิธีการรักษา?
ขอบคุณ
ArcGIS Desktop: 10.2
ArcSDE: 10.2
RDBMS: Database and version: SQL Server 2008
OS: Windows Server