Tôi có một ứng dụng về cơ bản tôi có một bảng khổng lồ (100 triệu bản ghi) thông tin, với mỗi hàng chứa một giá trị lat/long.Các tính năng Dữ liệu không gian của SQL Server 2008 có hữu ích cho các truy vấn ánh xạ không?
Tôi liên tục truy vấn bảng này để nhận tất cả các bản ghi vừa với bán kính xung quanh một điểm nhất định. Ví dụ, "tất cả hồ sơ trong vòng 5 dặm của 39,89288, -104,919434"
Đối với điều này, tôi có một chỉ số trên các cột Lat/Long, và tôi nhận được "bounding vuông" của các điểm, và sau đó loại bỏ tất cả những điểm nằm ngoài vòng tròn trong ứng dụng ASP.Net của tôi, vì nó nhanh hơn so với tính toán vòng tròn trong SQL Server.
LƯU Ý: Đây là tất cả dữ liệu về Hoa Kỳ, vì vậy tôi xem xét trái đất là phẳng để tính toán của tôi, đó là chính xác, đủ cho nhu cầu của tôi.
Bây giờ, vấn đề chính với chỉ số Lat/Long là "hình vuông" của các điểm và vì tôi đang cố gắng tìm "Độ lệch giữa x và y" và "Dài giữa x và y", không thể thực sự sử dụng chỉ mục siêu hiệu quả, vì nó có thể nếu tôi đang tìm kiếm trên "một dòng" của các điểm.
Tôi đã đọc về các tính năng không gian của SQL 2008, nhưng tôi chưa tìm thấy đủ thông tin cụ thể để biết liệu điều này có hữu ích cho tôi hay không. Vì vậy, câu hỏi đặt ra là: Liệu SQL 2008 có một loại loại chỉ mục khác nhau sẽ làm cho loại truy vấn cụ thể này nhanh hơn nhiều so với SQL 2005?
Câu hỏi hay! Tôi đã làm một cái gì đó rất giống với những gì bạn đang làm bây giờ trong SQL2005, vì vậy tôi muốn được quan tâm để nghe những gì mọi người đến với –