Что такое ПРОСТРАНСТВЕННЫЙ ИНДЕКС и когда я должен его использовать? - PullRequest
41 голосов
/ 13 февраля 2010

Как и большинство обычных веб-разработчиков на PHP, я использую MySql в качестве СУБД. MySql (как и другие RDBMS) предлагает функции SPATIAL INDEX, но я не очень хорошо понимаю. Я гуглил это, но не нашел четких примеров из реальной жизни, чтобы прояснить мои плохие знания об этом.

Может ли кто-нибудь немного объяснить мне, что такое ПРОСТРАНСТВЕННЫЙ ИНДЕКС и когда я должен его использовать?

Ответы [ 3 ]

17 голосов
/ 13 февраля 2010

Вы можете использовать пространственный индекс для индексации геообъектов - фигур. Пространственный индекс позволяет эффективно искать объекты, которые перекрываются в пространстве

6 голосов
/ 04 мая 2013

Пространственный индекс подобен обычному индексу с той разницей, что пространственные объекты не являются одномерными точками данных, а находятся в пространстве более высоких измерений (например, 2D), и, таким образом, обычные индексы, такие как BTree, не подходят для индексации таких данных. Хорошо известной техникой пространственного индекса является R-дерево (Google it в Википедии)

0 голосов
/ 09 февраля 2015

Использование пространственного индекса лучше всего подходит для поиска по точному соответствию, а не для сканирования диапазона. Оно в основном поддерживается в таблицах MyISAM, но из выпуска MySQL 5.7.4 LAB также поддерживается Innodb.

Ссылка: - http://dev.mysql.com/doc/refman/5.5/en/creating-spatial-indexes.html http://mysqlserverteam.com/innodb-spatial-indexes-in-5-7-4-lab-release/

...