Действительно ли функции SQL Server 2008 Spatial Data полезны для отображения запросов?

ws2007HttpBinding, определенный ОАЗИСОМ, является более новой версией, чем wsHttpBinding.

Это добавило ReliableSession, безопасность и протоколы TransactionFlow сверху Транзакций, Надежного обмена сообщениями и Обращающихся к WS протоколов wsHttpBinding.

могло быть легче запуститься с простой привязки, и при необходимости в будущем, можно всегда представлять существующие сервисы в более новой привязке, сосуществующей с более старой версией.

7
задан 2 revs 2 October 2010 в 21:08
поделиться

3 ответа

Да! Прочтите эту статью о пространственных индексах. Вы увидите, что эти типы индексов работают лучше, чем подход «индексированного прямоугольника». Кроме того, вы сможете не только эффективно запрашивать «находится точка рядом с другой точкой», но и выполнять все другие виды географических операций. Вот полный список всех доступных методов для этого типа.

5
ответ дан 7 December 2019 в 03:18
поделиться

Да, это очень хорошо можно сделать с пространственными данными SQL 2008. Существует некоторый опыт / метод проб и ошибок (?) В настройке пространственной индексации на нужном уровне сетки, но после этого предполагается, что она будет отличной (как сообщили мне друзья, я сам не использовал ее в производстве).

Для ваших целей (широта / долгота) вы будете использовать географический графический тип, а не гео метрику . Я считаю, что пространственные индексы устанавливают тип индексации «вложенный ограничивающий треугольник», который является улучшением по сравнению с типом предварительной обработки «ограничивающий прямоугольник», который мы вынуждены делать в SQL без него.

Хорошо, я бы предложил начать на этот пост в блоге Гранта Фритчи «Дом страшного администратора базы данных» (скажите ему, что я послал вам, если вы хотите задать вопросы :-)).

1
ответ дан 7 December 2019 в 03:18
поделиться

Нашел это:

Для SQL 2008:
http://blogs.lessthandot.com/index.php/DataMgmt/DataDesign/sql-server-2008-proximity-search -with-th

Очевидно, это возможно

ПРИМЕЧАНИЕ. Версия этой статьи для SQL 2005 работает не очень хорошо. Я пробовал такие вещи, и лучше просто получить квадрат из SQL Server, а затем отбросить круг в вашем собственном коде.

Другие интересные ссылки:

http://msdn.microsoft. com / en-us / library / bb964712.aspx
(Наконец-то объяснение !!)

И пример запроса ... По-видимому, вот как выполнять поиск, который я хочу (точки в 5-мильном круге):

DECLARE @Location GEOGRAPHY
SET @Location = GEOGRAPHY::STPointFromText('POINT(73.9517061 40.7934358)',4326).STBuffer(5 * 1600);
SELECT [fields] FROM [table] WHERE LocGeog.STIntersects(@Location) = 1

(LocGeog - столбец География)

Как ни странно, это выполняется НАМНОГО медленнее, чем мой обычный старый запрос (в 7 раз медленнее ), так что очевидно, что я все еще делаю что-то очень не так.

3
ответ дан 7 December 2019 в 03:18
поделиться
Другие вопросы по тегам:

Похожие вопросы: